)]}'
{
  "commit": "97813f2fe77804a4464564c75ba8d8826377feea",
  "tree": "5dc7154c5687edaee5712408c8baf605463ff093",
  "parents": [
    "27185016b806d5a1181ff501cae120582b2b27dd"
  ],
  "author": {
    "name": "Jon Hunter",
    "email": "jon-hunter@ti.com",
    "time": "Tue Aug 18 12:45:11 2009 -0500"
  },
  "committer": {
    "name": "Thomas Gleixner",
    "email": "tglx@linutronix.de",
    "time": "Fri Nov 13 20:46:24 2009 +0100"
  },
  "message": "nohz: Allow 32-bit machines to sleep for more than 2.15 seconds\n\nIn the dynamic tick code, \"max_delta_ns\" (member of the\n\"clock_event_device\" structure) represents the maximum sleep time\nthat can occur between timer events in nanoseconds.\n\nThe variable, \"max_delta_ns\", is defined as an unsigned long\nwhich is a 32-bit integer for 32-bit machines and a 64-bit\ninteger for 64-bit machines (if -m64 option is used for gcc).\nThe value of max_delta_ns is set by calling the function\n\"clockevent_delta2ns()\" which returns a maximum value of LONG_MAX.\nFor a 32-bit machine LONG_MAX is equal to 0x7fffffff and in\nnanoseconds this equates to ~2.15 seconds. Hence, the maximum\nsleep time for a 32-bit machine is ~2.15 seconds, where as for\na 64-bit machine it will be many years.\n\nThis patch changes the type of max_delta_ns to be \"u64\" instead of\n\"unsigned long\" so that this variable is a 64-bit type for both 32-bit\nand 64-bit machines. It also changes the maximum value returned by\nclockevent_delta2ns() to KTIME_MAX.  Hence this allows a 32-bit\nmachine to sleep for longer than ~2.15 seconds. Please note that this\npatch also changes \"min_delta_ns\" to be \"u64\" too and although this is\nunnecessary, it makes the patch simpler as it avoids to fixup all\ncallers of clockevent_delta2ns().\n\n[ tglx: changed \"unsigned long long\" to u64 as we use this data type\n  \tthrough out the time code ]\n\nSigned-off-by: Jon Hunter \u003cjon-hunter@ti.com\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nLKML-Reference: \u003c1250617512-23567-3-git-send-email-jon-hunter@ti.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4d438b0bc10a5c6849e7d56a8e102442ef67f27d",
      "old_mode": 33188,
      "old_path": "include/linux/clockchips.h",
      "new_id": "0cf725bdd2a1a76d2f9da0d6855268cf7a97955d",
      "new_mode": 33188,
      "new_path": "include/linux/clockchips.h"
    },
    {
      "type": "modify",
      "old_id": "6d7020490f94fdc3563f81c0582935492f724a34",
      "old_mode": 33188,
      "old_path": "kernel/hrtimer.c",
      "new_id": "c215b74cd95357118bd40642a8d951b8d21f6e0a",
      "new_mode": 33188,
      "new_path": "kernel/hrtimer.c"
    },
    {
      "type": "modify",
      "old_id": "620b58abdc3295307990978671b81173feb8ff47",
      "old_mode": 33188,
      "old_path": "kernel/time/clockevents.c",
      "new_id": "05e8aeedcdf344088df3643eecb67015d50d8b3d",
      "new_mode": 33188,
      "new_path": "kernel/time/clockevents.c"
    },
    {
      "type": "modify",
      "old_id": "a96c0e2b89cf82b574de560971256dc7f2bf0931",
      "old_mode": 33188,
      "old_path": "kernel/time/tick-oneshot.c",
      "new_id": "0a8a213016f005bfc51632b22b668f037a75c3f2",
      "new_mode": 33188,
      "new_path": "kernel/time/tick-oneshot.c"
    },
    {
      "type": "modify",
      "old_id": "fa00da108a1495a4821cd6941475646bb4e7784e",
      "old_mode": 33188,
      "old_path": "kernel/time/timer_list.c",
      "new_id": "665c76edbf1788e277390411810b09901264d416",
      "new_mode": 33188,
      "new_path": "kernel/time/timer_list.c"
    }
  ]
}
