Cron has been running for more than an hour and is most likely stuck
It seems that cron is locked, hence the semaphore variable needs to be deleted before running cron again. In your includes/common.inc file, on line 2755 you need to delete the variable from drupal_cron_run(). You can use the following code:

function drupal_cron_run() {
  //The following line will delete the semaphore variable.
  variable_del('cron_semaphore');
  // Try to allocate enough time to run all the hook_cron implementations.
  if (function_exists('set_time_limit')) {
    @set_time_limit(240);
}


Then visit http://yoursite/cron.php and check the logs for errors.
Note: You should comment out the line variable_del('cron_semaphore');, after cron runs successfully.
I know it is not recommended to hack the core, but this was the only solution I found useful. If there is any work-around to this solution, please let me know.