Index: src/wp-cron.php
===================================================================
--- src/wp-cron.php	(revision 32571)
+++ src/wp-cron.php	(working copy)
@@ -64,8 +64,10 @@
 if ( isset($keys[0]) && $keys[0] > $gmt_time )
 	die();
 
-$doing_cron_transient = get_transient( 'doing_cron');
 
+// The cron lock: a unix timestamp from when the cron was spawned.
+$doing_cron_transient = get_transient( 'doing_cron' );
+
 // Use global $doing_wp_cron lock otherwise use the GET lock. If no lock, trying grabbing a new lock.
 if ( empty( $doing_wp_cron ) ) {
 	if ( empty( $_GET[ 'doing_wp_cron' ] ) ) {
@@ -79,7 +81,10 @@
 	}
 }
 
-// Check lock
+/*
+ * The cron lock (a unix timestamp set when the cron was spawned),
+ * must match $doing_wp_cron (the "key").
+ */
 if ( $doing_cron_transient != $doing_wp_cron )
 	return;
 
Index: src/wp-includes/cron.php
===================================================================
--- src/wp-includes/cron.php	(revision 32571)
+++ src/wp-includes/cron.php	(working copy)
@@ -225,9 +225,11 @@
 		return;
 
 	/*
-	* multiple processes on multiple web servers can run this code concurrently
-	* try to make this as atomic as possible by setting doing_cron switch
-	*/
+	 * A unix timestamp of when the last cron was spawned and has not finished running.
+	 *
+	 * Multiple processes on multiple web servers can run this code concurrently,
+	 * this lock attempts to make spawning as atomic as possible.
+	 */
 	$lock = get_transient('doing_cron');
 
 	if ( $lock > $gmt_time + 10 * MINUTE_IN_SECONDS )
@@ -266,6 +268,7 @@
 		return;
 	}
 
+	// Set the cron lock with the current unix timestamp, when the cron is being spawned.
 	$doing_wp_cron = sprintf( '%.22F', $gmt_time );
 	set_transient( 'doing_cron', $doing_wp_cron );
 
