)]}'
{
  "log": [
    {
      "commit": "19504828b4bee5e471bcd35e214bc6fd0d380692",
      "tree": "30d4ffb6783daf9fadd47548c035646d3f0f073e",
      "parents": [
        "57d19e80f459dd845fb3cfeba8e6df8471bac142",
        "3cb6d1540880e767d911b79eb49578de2190f428"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 23 09:25:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 23 09:25:52 2011 -0700"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf tools: Fix sample size bit operations\n  perf tools: Fix ommitted mmap data update on remap\n  watchdog: Change the default timeout and configure nmi watchdog period based on watchdog_thresh\n  watchdog: Disable watchdog when thresh is zero\n  watchdog: Only disable/enable watchdog if neccessary\n  watchdog: Fix rounding bug in get_sample_period()\n  perf tools: Propagate event parse error handling\n  perf tools: Robustify dynamic sample content fetch\n  perf tools: Pre-check sample size before parsing\n  perf tools: Move evlist sample helpers to evlist area\n  perf tools: Remove junk code in mmap size handling\n  perf tools: Check we are able to read the event size on mmap\n"
    },
    {
      "commit": "57d19e80f459dd845fb3cfeba8e6df8471bac142",
      "tree": "8254766715720228db3d50f1ef3c7fe003c06d65",
      "parents": [
        "ee9ec4f82049c678373a611ce20ac67fe9ad836e",
        "e64851f5a0ad6ec991f74ebb3108c35aa0323d5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 23 09:12:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 23 09:12:26 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)\n  b43: fix comment typo reqest -\u003e request\n  Haavard Skinnemoen has left Atmel\n  cris: typo in mach-fs Makefile\n  Kconfig: fix copy/paste-ism for dell-wmi-aio driver\n  doc: timers-howto: fix a typo (\"unsgined\")\n  perf: Only include annotate.h once in tools/perf/util/ui/browsers/annotate.c\n  md, raid5: Fix spelling error in comment (\u0027Ofcourse\u0027 --\u003e \u0027Of course\u0027).\n  treewide: fix a few typos in comments\n  regulator: change debug statement be consistent with the style of the rest\n  Revert \"arm: mach-u300/gpio: Fix mem_region resource size miscalculations\"\n  audit: acquire creds selectively to reduce atomic op overhead\n  rtlwifi: don\u0027t touch with treewide double semicolon removal\n  treewide: cleanup continuations and remove logging message whitespace\n  ath9k_hw: don\u0027t touch with treewide double semicolon removal\n  include/linux/leds-regulator.h: fix syntax in example code\n  tty: fix typo in descripton of tty_termios_encode_baud_rate\n  xtensa: remove obsolete BKL kernel option from defconfig\n  m68k: fix comment typo \u0027occcured\u0027\n  arch:Kconfig.locks Remove unused config option.\n  treewide: remove extra semicolons\n  ...\n"
    },
    {
      "commit": "4eec42f392043063d0f019640b4ccc2a45570002",
      "tree": "32db1c354f9c12d1275093efed8101a2bd5db232",
      "parents": [
        "586692a5a5fc5740c8a46abc0f2365495c2d7c5f"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@chromium.org",
        "time": "Sun May 22 22:10:23 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 23 11:58:59 2011 +0200"
      },
      "message": "watchdog: Change the default timeout and configure nmi watchdog period based on watchdog_thresh\n\nBefore the conversion of the NMI watchdog to perf event, the\nwatchdog timeout was 5 seconds. Now it is 60 seconds. For my\nparticular application, netbooks, 5 seconds was a better\ntimeout. With a short timeout, we catch faults earlier and are\nable to send back a panic. With a 60 second timeout, the user is\nunlikely to wait and will instead hit the power button, causing\nus to lose the panic info.\n\nThis change configures the NMI period to watchdog_thresh and\nsets the softlockup_thresh to watchdog_thresh * 2. In addition,\nwatchdog_thresh was reduced to 10 seconds as suggested by Ingo\nMolnar.\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nCc: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1306127423-3347-4-git-send-email-msb@chromium.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c20110517071642.GF22305@elte.hu\u003e\n"
    },
    {
      "commit": "586692a5a5fc5740c8a46abc0f2365495c2d7c5f",
      "tree": "bc08228e67a968d83691c9efc5ea1feda9e6f98b",
      "parents": [
        "e04ab2bc41b35c0cb6cdb07c8443f91aa738cf78"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@chromium.org",
        "time": "Sun May 22 22:10:22 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 23 11:58:59 2011 +0200"
      },
      "message": "watchdog: Disable watchdog when thresh is zero\n\nThis restores the previous behavior of softlock_thresh.\n\nCurrently, setting watchdog_thresh to zero causes the watchdog\nkthreads to consume a lot of CPU.\n\nIn addition, the logic of proc_dowatchdog_thresh and\nproc_dowatchdog_enabled has been factored into proc_dowatchdog.\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nCc: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1306127423-3347-3-git-send-email-msb@chromium.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c20110517071018.GE22305@elte.hu\u003e\n"
    },
    {
      "commit": "e04ab2bc41b35c0cb6cdb07c8443f91aa738cf78",
      "tree": "511efcd50f74c0a3cf28cf5c68eaa5e70b45fbc7",
      "parents": [
        "824c6b7f6294101f30e141117def224a56c203e6"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@chromium.org",
        "time": "Sun May 22 22:10:21 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 23 11:58:58 2011 +0200"
      },
      "message": "watchdog: Only disable/enable watchdog if neccessary\n\nDon\u0027t take any action on an unsuccessful write to /proc.\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nCc: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1306127423-3347-2-git-send-email-msb@chromium.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "824c6b7f6294101f30e141117def224a56c203e6",
      "tree": "c609d4c12a1d5af1ceccb5c1c2275df2947d9e2c",
      "parents": [
        "3ac1bbcf13c56a19927df670f429eb0c3c11f8e5"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@chromium.org",
        "time": "Sun May 22 22:10:20 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 23 11:58:58 2011 +0200"
      },
      "message": "watchdog: Fix rounding bug in get_sample_period()\n\nIn get_sample_period(), softlockup_thresh is integer divided by\n5 before the multiplication by NSEC_PER_SEC. This results in\nsoftlockup_thresh being rounded down to the nearest integer\nmultiple of 5.\n\nFor example, a softlockup_thresh of 4 rounds down to 0.\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nCc: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1306127423-3347-1-git-send-email-msb@chromium.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e98bae7592a44bdce2e49ccd64f3c7ffe244a0f6",
      "tree": "1887da3331c5214c330226506d229222b454e960",
      "parents": [
        "4b382d0643603819e8b48da58efc254cabc22574",
        "f400bdb1d6de4344980cf39041497b288090dd33"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 22 22:06:24 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 22 22:06:24 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6: (28 commits)\n  sparc32: fix build, fix missing cpu_relax declaration\n  SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI\n  sparc32,leon: Remove unnecessary page_address calls in LEON DMA API.\n  sparc: convert old cpumask API into new one\n  sparc32, sun4d: Implemented SMP IPIs support for SUN4D machines\n  sparc32, sun4m: Implemented SMP IPIs support for SUN4M machines\n  sparc32,leon: Implemented SMP IPIs for LEON CPU\n  sparc32: implement SMP IPIs using the generic functions\n  sparc32,leon: SMP power down implementation\n  sparc32,leon: added some SMP comments\n  sparc: add {read,write}*_be routines\n  sparc32,leon: don\u0027t rely on bootloader to mask IRQs\n  sparc32,leon: operate on boot-cpu IRQ controller registers\n  sparc32: always define boot_cpu_id\n  sparc32: removed unused code, implemented by generic code\n  sparc32: avoid build warning at mm/percpu.c:1647\n  sparc32: always register a PROM based early console\n  sparc32: probe for cpu info only during startup\n  sparc: consolidate show_cpuinfo in cpu.c\n  sparc32,leon: implement genirq CPU affinity\n  ...\n"
    },
    {
      "commit": "be84bfcc3ed8f824751ab79349779e50cc98aa01",
      "tree": "ca42d81fbc402405614cae288bf7600bee82cc21",
      "parents": [
        "06f4e926d256d902dd9a53dcb400fd74974ce087"
      ],
      "author": {
        "name": "Kevin Cernekee",
        "email": "cernekee@gmail.com",
        "time": "Tue May 17 10:39:58 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:53:02 2011 -0700"
      },
      "message": "ipc: Add missing sys_ni entries for ipc/compat.c functions\n\nWhen building with:\n\n  CONFIG_64BIT\u003dy\n  CONFIG_MIPS32_COMPAT\u003dy\n  CONFIG_COMPAT\u003dy\n  CONFIG_MIPS32_O32\u003dy\n  CONFIG_MIPS32_N32\u003dy\n  CONFIG_SYSVIPC is not set\n  (and implicitly: CONFIG_SYSVIPC_COMPAT is not set)\n\nthe final link fails with unresolved symbols for:\n\n  compat_sys_semctl, compat_sys_msgsnd, compat_sys_msgrcv,\n  compat_sys_shmctl, compat_sys_msgctl, compat_sys_semtimedop\n\nThe fix is to add cond_syscall declarations for all syscalls in\nipc/compat.c\n\nSigned-off-by: Kevin Cernekee \u003ccernekee@gmail.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06f4e926d256d902dd9a53dcb400fd74974ce087",
      "tree": "0b438b67f5f0eff6fd617bc497a9dace6164a488",
      "parents": [
        "8e7bfcbab3825d1b404d615cb1b54f44ff81f981",
        "d93515611bbc70c2fe4db232e5feb448ed8e4cc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)\n  macvlan: fix panic if lowerdev in a bond\n  tg3: Add braces around 5906 workaround.\n  tg3: Fix NETIF_F_LOOPBACK error\n  macvlan: remove one synchronize_rcu() call\n  networking: NET_CLS_ROUTE4 depends on INET\n  irda: Fix error propagation in ircomm_lmp_connect_response()\n  irda: Kill set but unused variable \u0027bytes\u0027 in irlan_check_command_param()\n  irda: Kill set but unused variable \u0027clen\u0027 in ircomm_connect_indication()\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_transport()\n  be2net: Kill set but unused variable \u0027req\u0027 in lancer_fw_download()\n  irda: Kill set but unused vars \u0027saddr\u0027 and \u0027daddr\u0027 in irlan_provider_connect_indication()\n  atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_peer().\n  rxrpc: Kill set but unused variable \u0027local\u0027 in rxrpc_UDP_error_handler()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_process_connection()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_rotate_tx_window()\n  pkt_sched: Kill set but unused variable \u0027protocol\u0027 in tc_classify()\n  isdn: capi: Use pr_debug() instead of ifdefs.\n  tg3: Update version to 3.119\n  tg3: Apply rx_discards fix to 5719/5720\n  ...\n\nFix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c\nas per Davem.\n"
    },
    {
      "commit": "102dc1bae12a20214c9ee2d33a7402dc5175e30d",
      "tree": "dbc2364c164db3743bd86ff02557369daac0fac4",
      "parents": [
        "91444f47b2a0e50a15849f49db8c15382cd8de1b",
        "bbe7b8bef48c567f5ff3f6041c1fb011292e8f12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:38:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:38:28 2011 -0700"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  MAINTAINERS: Add drivers/clocksource to TIMEKEEPING\n  clockevents/source: Use u64 to make 32bit happy\n"
    },
    {
      "commit": "bc091c93a0f60717aa99e25c406892cd8c0187dc",
      "tree": "66fc7f6c97a11327c3acb0aee5c346717672a9f3",
      "parents": [
        "3ed4c0583daa34dedb568b26ff99e5a7b58db612",
        "a2d063ac216c1618bfc2b4d40b7176adffa63511"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:37:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:37:22 2011 -0700"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  extable, core_kernel_data(): Make sure all archs define _sdata\n  core_kernel_data(): Fix architectures that do not define _sdata\n"
    },
    {
      "commit": "3ed4c0583daa34dedb568b26ff99e5a7b58db612",
      "tree": "a531d4cc94acaa58fe0600cf83da9fb8b77f6e50",
      "parents": [
        "ad9471752ebae25daa133b4e5d9299809c35e155",
        "bd715d9a4f13f87bad5526c2cd41370949473b16"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:33:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:33:21 2011 -0700"
      },
      "message": "Merge branch \u0027ptrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc\n\n* \u0027ptrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc: (41 commits)\n  signal: trivial, fix the \"timespec declared inside parameter list\" warning\n  job control: reorganize wait_task_stopped()\n  ptrace: fix signal-\u003ewait_chldexit usage in task_clear_group_stop_trapping()\n  signal: sys_sigprocmask() needs retarget_shared_pending()\n  signal: cleanup sys_sigprocmask()\n  signal: rename signandsets() to sigandnsets()\n  signal: do_sigtimedwait() needs retarget_shared_pending()\n  signal: introduce do_sigtimedwait() to factor out compat/native code\n  signal: sys_rt_sigtimedwait: simplify the timeout logic\n  signal: cleanup sys_rt_sigprocmask()\n  x86: signal: sys_rt_sigreturn() should use set_current_blocked()\n  x86: signal: handle_signal() should use set_current_blocked()\n  signal: sigprocmask() should do retarget_shared_pending()\n  signal: sigprocmask: narrow the scope of -\u003esiglock\n  signal: retarget_shared_pending: optimize while_each_thread() loop\n  signal: retarget_shared_pending: consider shared/unblocked signals only\n  signal: introduce retarget_shared_pending()\n  ptrace: ptrace_check_attach() should not do s/STOPPED/TRACED/\n  signal: Turn SIGNAL_STOP_DEQUEUED into GROUP_STOP_DEQUEUED\n  signal: do_signal_stop: Remove the unneeded task_clear_group_stop_pending()\n  ...\n"
    },
    {
      "commit": "17d9f311eca13a42bf950198a358be1420d19c5f",
      "tree": "2d1a77f66ccd607f6ab2cf304f8031724a82c7fc",
      "parents": [
        "90d3ac15e5c637d45849e83c828ed78c62886737"
      ],
      "author": {
        "name": "Daniel Hellstrom",
        "email": "daniel@gaisler.com",
        "time": "Fri May 20 04:01:10 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 20 13:10:55 2011 -0700"
      },
      "message": "SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI\n\nSigned-off-by: Daniel Hellstrom \u003cdaniel@gaisler.com\u003e\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90d3ac15e5c637d45849e83c828ed78c62886737",
      "tree": "c5568365f32386559d2710e8981ed41e5fe0eb12",
      "parents": [
        "9fafbd806198eb690c9a9f9fe35a879db93a1b8d",
        "317f394160e9beb97d19a84c39b7e5eb3d7815a8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 20 13:10:22 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 20 13:10:22 2011 -0700"
      },
      "message": "Merge commit \u0027317f394160e9beb97d19a84c39b7e5eb3d7815a8\u0027\n\nConflicts:\n\tarch/sparc/kernel/smp_32.c\n\nWith merge conflict help from Daniel Hellstrom.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "268bb0ce3e87872cb9290c322b0d35bce230d88f",
      "tree": "c8331ade4a3e24fc589c4eb62731bc2312d35333",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 12:50:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 12:50:29 2011 -0700"
      },
      "message": "sanitize \u003clinux/prefetch.h\u003e usage\n\nCommit e66eed651fd1 (\"list: remove prefetching from regular list\niterators\") removed the include of prefetch.h from list.h, which\nuncovered several cases that had apparently relied on that rather\nobscure header file dependency.\n\nSo this fixes things up a bit, using\n\n   grep -L linux/prefetch.h $(git grep -l \u0027[^a-z_]prefetchw*(\u0027 -- \u0027*.[ch]\u0027)\n   grep -L \u0027prefetchw*(\u0027 $(git grep -l \u0027linux/prefetch.h\u0027 -- \u0027*.[ch]\u0027)\n\nto guide us in finding files that either need \u003clinux/prefetch.h\u003e\ninclusion, or have it despite not needing it.\n\nThere are more of them around (mostly network drivers), but this gets\nmany core ones.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0e299b1a91cbdb21ae08e382a4176200398bc36",
      "tree": "096a6b082fcf1bd816d78654057d11af823361c5",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 10:50:52 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 10:50:52 2011 +0200"
      },
      "message": "clockevents/source: Use u64 to make 32bit happy\n\nunsigned long is not 64bit on 32bit machine.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a2d063ac216c1618bfc2b4d40b7176adffa63511",
      "tree": "499d4cc67e296cb8b51f51215a49407c440c4690",
      "parents": [
        "c16dbd54a3fe126b539a0ef149d80221c667bbd5"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu May 19 21:34:58 2011 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 20 08:56:56 2011 +0200"
      },
      "message": "extable, core_kernel_data(): Make sure all archs define _sdata\n\nA new utility function (core_kernel_data()) is used to determine if a\npassed in address is part of core kernel data or not. It may or may not\nreturn true for RO data, but this utility must work for RW data.\n\nThus both _sdata and _edata must be defined and continuous,\nwithout .init sections that may later be freed and replaced by\nvolatile memory (memory that can be freed).\n\nThis utility function is used to determine if data is safe from\never being freed. Thus it should return true for all RW global\ndata that is not in a module or has been allocated, or false\notherwise.\n\nAlso change core_kernel_data() back to the more precise _sdata condition\nand document the function.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: linux-m68k@lists.linux-m68k.org\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Helge Deller \u003cdeller@gmx.de\u003e\nCc: JamesE.J.Bottomley \u003cjejb@parisc-linux.org\u003e\nLink: http://lkml.kernel.org/r/1305855298.1465.19.camel@gandalf.stny.rr.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n----\n arch/alpha/kernel/vmlinux.lds.S   |    1 +\n arch/m32r/kernel/vmlinux.lds.S    |    1 +\n arch/m68k/kernel/vmlinux-std.lds  |    2 ++\n arch/m68k/kernel/vmlinux-sun3.lds |    1 +\n arch/mips/kernel/vmlinux.lds.S    |    1 +\n arch/parisc/kernel/vmlinux.lds.S  |    3 +++\n kernel/extable.c                  |   12 +++++++++++-\n 7 files changed, 20 insertions(+), 1 deletion(-)\n"
    },
    {
      "commit": "c16dbd54a3fe126b539a0ef149d80221c667bbd5",
      "tree": "297a9b616ac100d8773373bd0cbf3fb4eb9d87a7",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051",
        "c5fc472171ec4f96d06d1ac039d88f9b89bb95db"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 20 08:54:05 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 20 08:54:08 2011 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 into perf/urgent\n\nMerge reason: One pending commit was left in perf/core after Linus merged\n              perf/core - continue v2.6.40 work in the perf/urgent reason.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "39ab05c8e0b519ff0a04a869f065746e6e8c3d95",
      "tree": "e73f0ba74c4ea7a80dff9b2dd9445a3a74190e28",
      "parents": [
        "1477fcc290b3d5c2614bde98bf3b1154c538860d",
        "c42d2237143fcf35cff642cefe2bcf7786aae312"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:24:11 2011 -0700"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (44 commits)\n  debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS\u003dy warning\n  sysfs: remove \"last sysfs file:\" line from the oops messages\n  drivers/base/memory.c: fix warning due to \"memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\"\n  memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION\n  SYSFS: Fix erroneous comments for sysfs_update_group().\n  driver core: remove the driver-model structures from the documentation\n  driver core: Add the device driver-model structures to kerneldoc\n  Translated Documentation/email-clients.txt\n  RAW driver: Remove call to kobject_put().\n  reboot: disable usermodehelper to prevent fs access\n  efivars: prevent oops on unload when efi is not enabled\n  Allow setting of number of raw devices as a module parameter\n  Introduce CONFIG_GOOGLE_FIRMWARE\n  driver: Google Memory Console\n  driver: Google EFI SMI\n  x86: Better comments for get_bios_ebda()\n  x86: get_bios_ebda_length()\n  misc: fix ti-st build issues\n  params.c: Use new strtobool function to process boolean inputs\n  debugfs: move to new strtobool\n  ...\n\nFix up trivial conflicts in fs/debugfs/file.c due to the same patch\nbeing applied twice, and an unrelated cleanup nearby.\n"
    },
    {
      "commit": "eb04f2f04ed1227c266b3219c0aaeda525639718",
      "tree": "7f224483a3cd0e439cd64a8666ec9dc5ed178a3d",
      "parents": [
        "5765040ebfc9a28d9dcfaaaaf3d25840d922de96",
        "80d02085d99039b3b7f3a73c8896226b0cb1ba07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:14:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:14:34 2011 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (78 commits)\n  Revert \"rcu: Decrease memory-barrier usage based on semi-formal proof\"\n  net,rcu: convert call_rcu(prl_entry_destroy_rcu) to kfree\n  batman,rcu: convert call_rcu(softif_neigh_free_rcu) to kfree_rcu\n  batman,rcu: convert call_rcu(neigh_node_free_rcu) to kfree()\n  batman,rcu: convert call_rcu(gw_node_free_rcu) to kfree_rcu\n  net,rcu: convert call_rcu(kfree_tid_tx) to kfree_rcu()\n  net,rcu: convert call_rcu(xt_osf_finger_free_rcu) to kfree_rcu()\n  net/mac80211,rcu: convert call_rcu(work_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(wq_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(phonet_device_rcu_free) to kfree_rcu()\n  perf,rcu: convert call_rcu(swevent_hlist_release_rcu) to kfree_rcu()\n  perf,rcu: convert call_rcu(free_ctx) to kfree_rcu()\n  net,rcu: convert call_rcu(__nf_ct_ext_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(net_generic_release) to kfree_rcu()\n  net,rcu: convert call_rcu(netlbl_unlhsh_free_addr6) to kfree_rcu()\n  net,rcu: convert call_rcu(netlbl_unlhsh_free_addr4) to kfree_rcu()\n  security,rcu: convert call_rcu(sel_netif_free) to kfree_rcu()\n  net,rcu: convert call_rcu(xps_dev_maps_release) to kfree_rcu()\n  net,rcu: convert call_rcu(xps_map_release) to kfree_rcu()\n  net,rcu: convert call_rcu(rps_map_release) to kfree_rcu()\n  ...\n"
    },
    {
      "commit": "78c4def67e8eebe602655a3dec9aa08f0e2f7c4b",
      "tree": "8c0c756bbff7325f5c2a773f8cc64d8390ebe5b5",
      "parents": [
        "7e6628e4bcb3b3546c625ec63ca724f28ab14f0c",
        "942c3c5c329274fa6de5998cb911cf3d0a42d0b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:45:08 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:45:08 2011 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  hrtimer: Make lookup table const\n  RTC: Disable CONFIG_RTC_CLASS from being built as a module\n  timers: Fix alarmtimer build issues when CONFIG_RTC_CLASS\u003dn\n  timers: Remove delayed irqwork from alarmtimers implementation\n  timers: Improve alarmtimer comments and minor fixes\n  timers: Posix interface for alarm-timers\n  timers: Introduce in-kernel alarm-timer interface\n  timers: Add rb_init_node() to allow for stack allocated rb nodes\n  time: Add timekeeping_inject_sleeptime\n"
    },
    {
      "commit": "7e6628e4bcb3b3546c625ec63ca724f28ab14f0c",
      "tree": "111a94cefa9d800ec5c5e59520f4b5d1880965d0",
      "parents": [
        "0f1bdc1815c4cb29b3cd71a7091b478e426faa0b",
        "ab0e08f15d23628dd8d50bf6ce1a935a8840c7dc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:44:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:44:40 2011 -0700"
      },
      "message": "Merge branch \u0027timers-clockevents-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-clockevents-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: hpet: Cleanup the clockevents init and register code\n  x86: Convert PIT to clockevents_config_and_register()\n  clockevents: Provide interface to reconfigure an active clock event device\n  clockevents: Provide combined configure and register function\n  clockevents: Restructure clock_event_device members\n  clocksource: Get rid of the hardcoded 5 seconds sleep time limit\n  clocksource: Restructure clocksource struct members\n"
    },
    {
      "commit": "80fe02b5daf176f99d3afc8f6c9dc9dece019836",
      "tree": "970b90d56870e1b87b4c8efff7ec31fc454445a7",
      "parents": [
        "df48d8716eab9608fe93924e4ae06ff110e8674f",
        "db670dac49b5423b39b5e523d28fe32045d71b10",
        "ec514c487c3d4b652943da7b0afbc094eee08cfa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:41:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:41:22 2011 -0700"
      },
      "message": "Merge branches \u0027sched-core-for-linus\u0027 and \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (60 commits)\n  sched: Fix and optimise calculation of the weight-inverse\n  sched: Avoid going ahead if -\u003ecpus_allowed is not changed\n  sched, rt: Update rq clock when unthrottling of an otherwise idle CPU\n  sched: Remove unused parameters from sched_fork() and wake_up_new_task()\n  sched: Shorten the construction of the span cpu mask of sched domain\n  sched: Wrap the \u0027cfs_rq-\u003enr_spread_over\u0027 field with CONFIG_SCHED_DEBUG\n  sched: Remove unused \u0027this_best_prio arg\u0027 from balance_tasks()\n  sched: Remove noop in alloc_rt_sched_group()\n  sched: Get rid of lock_depth\n  sched: Remove obsolete comment from scheduler_tick()\n  sched: Fix sched_domain iterations vs. RCU\n  sched: Next buddy hint on sleep and preempt path\n  sched: Make set_*_buddy() work on non-task entities\n  sched: Remove need_migrate_task()\n  sched: Move the second half of ttwu() to the remote cpu\n  sched: Restructure ttwu() some more\n  sched: Rename ttwu_post_activation() to ttwu_do_wakeup()\n  sched: Remove rq argument from ttwu_stat()\n  sched: Remove rq-\u003elock from the first half of ttwu()\n  sched: Drop rq-\u003elock from sched_exec()\n  ...\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Fix rt_rq runtime leakage bug\n"
    },
    {
      "commit": "df48d8716eab9608fe93924e4ae06ff110e8674f",
      "tree": "0fe10733a414b3651e1dae29518b7960a4da0aa4",
      "parents": [
        "acd30250d7d0f495685d1c7c6184636a22fcdf7f",
        "29510ec3b626c86de9707bb8904ff940d430289b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:36:08 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:36:08 2011 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (107 commits)\n  perf stat: Add more cache-miss percentage printouts\n  perf stat: Add -d -d and -d -d -d options to show more CPU events\n  ftrace/kbuild: Add recordmcount files to force full build\n  ftrace: Add self-tests for multiple function trace users\n  ftrace: Modify ftrace_set_filter/notrace to take ops\n  ftrace: Allow dynamically allocated function tracers\n  ftrace: Implement separate user function filtering\n  ftrace: Free hash with call_rcu_sched()\n  ftrace: Have global_ops store the functions that are to be traced\n  ftrace: Add ops parameter to ftrace_startup/shutdown functions\n  ftrace: Add enabled_functions file\n  ftrace: Use counters to enable functions to trace\n  ftrace: Separate hash allocation and assignment\n  ftrace: Create a global_ops to hold the filter and notrace hashes\n  ftrace: Use hash instead for FTRACE_FL_FILTER\n  ftrace: Replace FTRACE_FL_NOTRACE flag with a hash of ignored functions\n  perf bench, x86: Add alternatives-asm.h wrapper\n  x86, 64-bit: Fix copy_[to/from]_user() checks for the userspace address limit\n  x86, mem: memset_64.S: Optimize memset by enhanced REP MOVSB/STOSB\n  x86, mem: memmove_64.S: Optimize memmove by enhanced REP MOVSB/STOSB\n  ...\n"
    },
    {
      "commit": "acd30250d7d0f495685d1c7c6184636a22fcdf7f",
      "tree": "40f4e7e092de434c49a5f67f27ff1d3bf71000f9",
      "parents": [
        "6595b4a940c4c447b619ab5268378ed03e632694",
        "edf76f8307c350bcb81f0c760118a991b3e62956"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:30:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:30:15 2011 -0700"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: Export functions to allow modular irq drivers\n  genirq: Uninline and sanity check generic_handle_irq()\n  genirq: Remove pointless ifdefs\n  genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP\n  genirq: Add chip suspend and resume callbacks\n  genirq: Implement a generic interrupt chip\n  genirq: Support per-IRQ thread disabling.\n  genirq: irq_desc: Document preflow_handler and affinity_hint\n  genirq: Update DocBook comments\n  genirq: Forgotten updates/deletions after removal of compat code\n"
    },
    {
      "commit": "6595b4a940c4c447b619ab5268378ed03e632694",
      "tree": "e604f97bf8e947fca3dca4c5101d6ffdc432466d",
      "parents": [
        "cbdad8dc18b8ddd6c8b48c4ef26d46f00b5af923",
        "5db1256a5131d3b133946fa02ac9770a784e6eb2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:29:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:29:29 2011 -0700"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  seqlock: Don\u0027t smp_rmb in seqlock reader spin loop\n  watchdog, hung_task_timeout: Add Kconfig configurable default\n  lockdep: Remove cmpxchg to update nr_chain_hlocks\n  lockdep: Print a nicer description for simple irq lock inversions\n  lockdep: Replace \"Bad BFS generated tree\" message with something less cryptic\n  lockdep: Print a nicer description for irq inversion bugs\n  lockdep: Print a nicer description for simple deadlocks\n  lockdep: Print a nicer description for normal deadlocks\n  lockdep: Print a nicer description for irq lock inversions\n"
    },
    {
      "commit": "51509a283a908d73b20371addc67ee3ae7189934",
      "tree": "bb920f09799cc47d496f26f7deb78a315351150d",
      "parents": [
        "75f5076b12924f53340209d2cde73b98ed3b3095",
        "6538df80194e305f1b78cafb556f4bb442f808b3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 16:46:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 16:46:07 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (34 commits)\n  PM: Introduce generic prepare and complete callbacks for subsystems\n  PM: Allow drivers to allocate memory from .prepare() callbacks safely\n  PM: Remove CONFIG_PM_VERBOSE\n  Revert \"PM / Hibernate: Reduce autotuned default image size\"\n  PM / Hibernate: Add sysfs knob to control size of memory for drivers\n  PM / Wakeup: Remove useless synchronize_rcu() call\n  kmod: always provide usermodehelper_disable()\n  PM / ACPI: Remove acpi_sleep\u003ds4_nonvs\n  PM / Wakeup: Fix build warning related to the \"wakeup\" sysfs file\n  PM: Print a warning if firmware is requested when tasks are frozen\n  PM / Runtime: Rework runtime PM handling during driver removal\n  Freezer: Use SMP barriers\n  PM / Suspend: Do not ignore error codes returned by suspend_enter()\n  PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset\n  PM: Revert \"driver core: platform_bus: allow runtime override of dev_pm_ops\"\n  OMAP1 / PM: Use generic clock manipulation routines for runtime PM\n  PM: Remove sysdev suspend, resume and shutdown operations\n  PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM\n  PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM\n  PM / AVR32: Use struct syscore_ops instead of sysdevs for PM\n  ...\n"
    },
    {
      "commit": "c5fc472171ec4f96d06d1ac039d88f9b89bb95db",
      "tree": "b83af634894e5f70f042a67ebfee876e4b16183f",
      "parents": [
        "29510ec3b626c86de9707bb8904ff940d430289b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 20 01:22:14 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 20 01:27:16 2011 +0200"
      },
      "message": "core_kernel_data(): Fix architectures that do not define _sdata\n\nSome architectures such as Alpha do not define _sdata but _data:\n\n  kernel/built-in.o: In function `core_kernel_data\u0027:\n  kernel/extable.c:77: undefined reference to `_sdata\u0027\n\nSo expand the scope of the data range to the text addresses too,\nthis might be more correct anyway because this way we can\ncover readonly variables as well.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/n/tip-i878c8a0e0g0ep4v7i6vxnhz@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "80d02085d99039b3b7f3a73c8896226b0cb1ba07",
      "tree": "c310902423ecb00effadcb59c60cbf118d4037cb",
      "parents": [
        "11c476f31a0fabc6e604da5b09a6590b57c3fb20"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 12 01:08:07 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 19 23:25:29 2011 +0200"
      },
      "message": "Revert \"rcu: Decrease memory-barrier usage based on semi-formal proof\"\n\nThis reverts commit e59fb3120becfb36b22ddb8bd27d065d3cdca499.\n\nThis reversion was due to (extreme) boot-time slowdowns on SPARC seen by\nYinghai Lu and on x86 by Ingo\n.\nThis is a non-trivial reversion due to intervening commits.\n\nConflicts:\n\n\tDocumentation/RCU/trace.txt\n\tkernel/rcutree.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "80b816b736cfa5b9582279127099b20a479ab7d9",
      "tree": "94a2963c05e8e24d6153a0a2fae2f43fe05605bc",
      "parents": [
        "57f0fcbe1dea8a36c9d1673086326059991c5f81"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 21:33:42 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 19 14:24:16 2011 +0200"
      },
      "message": "clockevents: Provide interface to reconfigure an active clock event device\n\nSome ARM SoCs have clock event devices which have their frequency\nmodified due to frequency scaling. Provide an interface which allows\nto reconfigure an active device. After reconfiguration reprogram the\ncurrent pending event.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: LAK \u003clinux-arm-kernel@lists.infradead.org\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/%3C20110518210136.437459958%40linutronix.de%3E\n"
    },
    {
      "commit": "57f0fcbe1dea8a36c9d1673086326059991c5f81",
      "tree": "c56c00307052034a64d2577819fdf21271446ebe",
      "parents": [
        "847b2f42be203f3cff7f243fdd3ee50c1e06c882"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 21:33:41 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 19 14:24:15 2011 +0200"
      },
      "message": "clockevents: Provide combined configure and register function\n\nAll clockevent devices have the same open coded initialization\nfunctions. Provide an interface which does all necessary\ninitialization in the core code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/%3C20110518210136.331975870%40linutronix.de%3E\n"
    },
    {
      "commit": "724ed53e8ac2c5278af8955673049714c1073464",
      "tree": "51762a734e564fb973758014997ee99406693541",
      "parents": [
        "369db4c9524b7487faf1ff89646eee396c1363e1"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 21:33:40 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 19 14:24:15 2011 +0200"
      },
      "message": "clocksource: Get rid of the hardcoded 5 seconds sleep time limit\n\nSlow clocksources can have a way longer sleep time than 5 seconds and\neven fast ones can easily cope with 600 seconds and still maintain\nproper accuracy.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/%3C20110518210136.109811585%40linutronix.de%3E\n"
    },
    {
      "commit": "f721a465cddbe7f03e6cd2272008da558cf93818",
      "tree": "67cde95daa08e6e5967958f09e21f81140ce2e0b",
      "parents": [
        "a0374396375d06398c419ebb6857fb5809cff81f"
      ],
      "author": {
        "name": "Jonathan Cameron",
        "email": "jic23@cam.ac.uk",
        "time": "Tue Apr 19 12:43:47 2011 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:28 2011 +0930"
      },
      "message": "params.c: Use new strtobool function to process boolean inputs\n\nSigned-off-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "9d63487f86115b1d3ef69670043bcf2b83c4d227",
      "tree": "3833a5f467f0958eaeab9f86f207dca60868bb0d",
      "parents": [
        "403ed27846aa126ecf0b842b5b179c506b9d989c"
      ],
      "author": {
        "name": "Alessio Igor Bogani",
        "email": "abogani@kernel.org",
        "time": "Wed May 18 22:35:59 2011 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:27 2011 +0930"
      },
      "message": "module: Use binary search in lookup_symbol()\n\nThe function is_exported() with its helper function lookup_symbol() are used to\nverify if a provided symbol is effectively exported by the kernel or by the\nmodules. Now that both have their symbols sorted we can replace a linear search\nwith a binary search which provide a considerably speed-up.\n\nThis work was supported by a hardware donation from the CE Linux Forum.\n\nSigned-off-by: Alessio Igor Bogani \u003cabogani@kernel.org\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "403ed27846aa126ecf0b842b5b179c506b9d989c",
      "tree": "d47ce51b2548c80237e193b99ec159e8ef59470a",
      "parents": [
        "1a94dc35bc5c166d89913dc01a49d27a3c21a455"
      ],
      "author": {
        "name": "Alessio Igor Bogani",
        "email": "abogani@kernel.org",
        "time": "Wed Apr 20 11:10:52 2011 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:27 2011 +0930"
      },
      "message": "module: Use the binary search for symbols resolution\n\nTakes advantage of the order and locates symbols using binary search.\n\nThis work was supported by a hardware donation from the CE Linux Forum.\n\nSigned-off-by: Alessio Igor Bogani \u003cabogani@kernel.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Dirk Behme \u003cdirk.behme@googlemail.com\u003e\n"
    },
    {
      "commit": "de4d8d53465483168d6a627d409ee2d09d8e3308",
      "tree": "dadc9b82860842dcb970f2898f677e0d2373a2ab",
      "parents": [
        "01526ed0830643bd53a8434c3068e4c077e1b09d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Apr 19 21:49:58 2011 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:26 2011 +0930"
      },
      "message": "module: each_symbol_section instead of each_symbol\n\nInstead of having a callback function for each symbol in the kernel,\nhave a callback for each array of symbols.\n\nThis eases the logic when we move to sorted symbols and binary search.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Alessio Igor Bogani \u003cabogani@kernel.org\u003e\n"
    },
    {
      "commit": "01526ed0830643bd53a8434c3068e4c077e1b09d",
      "tree": "6fe0fecf55f6fe5bc94f95f9b0e01f67a53bf9d0",
      "parents": [
        "448694a1d50432be63aafccb42d6f54d8cf3d02c"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu May 19 16:55:26 2011 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:26 2011 +0930"
      },
      "message": "module: split unset_section_ro_nx function.\n\nSplit the unprotect function into a function per section to make\nthe code more readable and add the missing static declaration.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "448694a1d50432be63aafccb42d6f54d8cf3d02c",
      "tree": "bd066b7cdb04e8bdc61efdeaa0e358269f185f7e",
      "parents": [
        "4d10380e720a3ce19dbe88d0133f66ded07b6a8f"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu May 19 16:55:26 2011 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:26 2011 +0930"
      },
      "message": "module: undo module RONX protection correctly.\n\nWhile debugging I stumbled over two problems in the code that protects module\npages.\n\nFirst issue is that disabling the protection before freeing init or unload of\na module is not symmetric with the enablement. For instance, if pages are set\nto RO the page range from module_core to module_core + core_ro_size is\nprotected. If a module is unloaded the page range from module_core to\nmodule_core + core_size is set back to RW.\nSo pages that were not set to RO are also changed to RW.\nThis is not critical but IMHO it should be symmetric.\n\nSecond issue is that while set_memory_rw \u0026 set_memory_ro are used for\nRO/RW changes only set_memory_nx is involved for NX/X. One would await that\nthe inverse function is called when the NX protection should be removed,\nwhich is not the case here, unless I\u0027m missing something.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "4d10380e720a3ce19dbe88d0133f66ded07b6a8f",
      "tree": "9c652a201f13d67be5671a45e9815c7e7e3b4e0e",
      "parents": [
        "5d05c70849f760ac8f4ed3ebfeefb92689858834"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu May 19 16:55:25 2011 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:26 2011 +0930"
      },
      "message": "module: zero mod-\u003einit_ro_size after init is freed.\n\nReset mod-\u003einit_ro_size to zero after the init part of a module is unloaded.\nOtherwise we need to check if module-\u003einit is NULL in the unprotect functions\nin the next patch.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "5d05c70849f760ac8f4ed3ebfeefb92689858834",
      "tree": "631fb578b5a07cee38865f3866a57d8430ddc2ea",
      "parents": [
        "c5be0b2eb1ca05e0cd747f9c0ba552c6ee8827a0"
      ],
      "author": {
        "name": "Daniel J Blueman",
        "email": "daniel.blueman@gmail.com",
        "time": "Tue Mar 08 22:01:47 2011 +0800"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:25 2011 +0930"
      },
      "message": "minor ANSI prototype sparse fix\n\nFix function prototype to be ANSI-C compliant, consistent with other\nfunction prototypes, addressing a sparse warning.\n\nSigned-off-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "b4bc842802db3314f9a657094da0450a903ea619",
      "tree": "db9cadf46624dcd7e780850e8bda34b569a229b0",
      "parents": [
        "61c4f2c81c61f73549928dfd9f3e8f26aa36a8cf"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@vmware.com",
        "time": "Mon Feb 07 16:02:25 2011 -0800"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu May 19 16:55:24 2011 +0930"
      },
      "message": "module: deal with alignment issues in built-in module versions\n\nOn m68k natural alignment is 2-byte boundary but we are trying to\nalign structures in __modver section on sizeof(void *) boundary.\nThis causes trouble when we try to access elements in this section\nin array-like fashion when create \"version\" attributes for built-in\nmodules.\n\nMoreover, as DaveM said, we can\u0027t reliably put structures into\nindependent objects, put them into a special section, and then expect\narray access over them (via the section boundaries) after linking the\nobjects together to just \"work\" due to variable alignment choices in\ndifferent situations. The only solution that seems to work reliably\nis to make an array of plain pointers to the objects in question and\nput those pointers in the special section.\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@vmware.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "95950c2ecb31314ef827428e43ff771cf3b037e5",
      "tree": "1ecf9605cc280d362a5a9ddf96bf538cdb47c1aa",
      "parents": [
        "936e074b286ae779f134312178dbab139ee7ea52"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri May 06 00:08:51 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 19:24:51 2011 -0400"
      },
      "message": "ftrace: Add self-tests for multiple function trace users\n\nAdd some basic sanity tests for multiple users of the function\ntracer at startup.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "936e074b286ae779f134312178dbab139ee7ea52",
      "tree": "6b0497be4d5e6258ad9b1ec99b2a9feb25b2dd22",
      "parents": [
        "cdbe61bfe70440939e457fb4a8d0995eaaed17de"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 05 22:54:01 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 19:22:52 2011 -0400"
      },
      "message": "ftrace: Modify ftrace_set_filter/notrace to take ops\n\nSince users of the function tracer can now pick and choose which\nfunctions they want to trace agnostically from other users of the\nfunction tracer, we need to pass the ops struct to the ftrace_set_filter()\nfunctions.\n\nThe functions ftrace_set_global_filter() and ftrace_set_global_notrace()\nis added to keep the old filter functions which are used to modify\nthe generic function tracers.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "cdbe61bfe70440939e457fb4a8d0995eaaed17de",
      "tree": "6e82066db25ab6fa42455a42bb77783dac5260b8",
      "parents": [
        "b848914ce39589d89ee0078a6d1ef452b464729e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 05 21:14:55 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:51 2011 -0400"
      },
      "message": "ftrace: Allow dynamically allocated function tracers\n\nNow that functions may be selected individually, it only makes sense\nthat we should allow dynamically allocated trace structures to\nbe traced. This will allow perf to allocate a ftrace_ops structure\nat runtime and use it to pick and choose which functions that\nstructure will trace.\n\nNote, a dynamically allocated ftrace_ops will always be called\nindirectly instead of being called directly from the mcount in\nentry.S. This is because there\u0027s no safe way to prevent mcount\nfrom being preempted before calling the function, unless we\nmodify every entry.S to do so (not likely). Thus, dynamically allocated\nfunctions will now be called by the ftrace_ops_list_func() that\nloops through the ops that are allocated if there are more than\none op allocated at a time. This loop is protected with a\npreempt_disable.\n\nTo determine if an ftrace_ops structure is allocated or not, a new\nutil function was added to the kernel/extable.c called\ncore_kernel_data(), which returns 1 if the address is between\n_sdata and _edata.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b848914ce39589d89ee0078a6d1ef452b464729e",
      "tree": "542bf09ae3c2d9118833132621585fb458e2a003",
      "parents": [
        "07fd5515f3b5c20704707f63e7f4485b534508a8"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed May 04 09:27:52 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:50 2011 -0400"
      },
      "message": "ftrace: Implement separate user function filtering\n\nftrace_ops that are registered to trace functions can now be\nagnostic to each other in respect to what functions they trace.\nEach ops has their own hash of the functions they want to trace\nand a hash to what they do not want to trace. A empty hash for\nthe functions they want to trace denotes all functions should\nbe traced that are not in the notrace hash.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "07fd5515f3b5c20704707f63e7f4485b534508a8",
      "tree": "f018ec497f8c6b49a0fcfcd7a92a600e670f90f2",
      "parents": [
        "2b499381bc50ede01b3d8eab164ca2fad00655f0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu May 05 18:03:47 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:50 2011 -0400"
      },
      "message": "ftrace: Free hash with call_rcu_sched()\n\nWhen a hash is modified and might be in use, we need to perform\na schedule RCU operation on it, as the hashes will soon be used\ndirectly in the function tracer callback.\n\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2b499381bc50ede01b3d8eab164ca2fad00655f0",
      "tree": "3140c277582b03b1645fffcb829763d62e2f01fa",
      "parents": [
        "bd69c30b1d08032d97ab0dabd7a1eb7fb73ca2b2"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 22:49:52 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:49 2011 -0400"
      },
      "message": "ftrace: Have global_ops store the functions that are to be traced\n\nThis is a step towards each ops structure defining its own set\nof functions to trace. As the current code with pid\u0027s and such\nare specific to the global_ops, it is restructured to be used\nwith the global ops.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bd69c30b1d08032d97ab0dabd7a1eb7fb73ca2b2",
      "tree": "e8bd00dc87de4f10f049e0c41fd09f630b96585d",
      "parents": [
        "647bcd03d5b2fb44fd9c9ef1a4f50c2eee8f779a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 21:55:54 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:48 2011 -0400"
      },
      "message": "ftrace: Add ops parameter to ftrace_startup/shutdown functions\n\nIn order to allow different ops to enable different functions,\nthe ftrace_startup() and ftrace_shutdown() functions need the\nops parameter passed to them.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "647bcd03d5b2fb44fd9c9ef1a4f50c2eee8f779a",
      "tree": "32946158175458f16ae95c383ca7985162eefe09",
      "parents": [
        "ed926f9b35cda0988234c356e16a7cb30f4e5338"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 14:39:21 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:47 2011 -0400"
      },
      "message": "ftrace: Add enabled_functions file\n\nAdd the enabled_functions file that is used to show all the\nfunctions that have been enabled for tracing as well as their\nref counts. This helps seeing if any function has been registered\nand what functions are being traced.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ed926f9b35cda0988234c356e16a7cb30f4e5338",
      "tree": "32169b7aaf6b0ef7815b095a544cce93e884bb73",
      "parents": [
        "33dc9b1267d59cef46ff0bd6bc043190845dc919"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue May 03 13:25:24 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:47 2011 -0400"
      },
      "message": "ftrace: Use counters to enable functions to trace\n\nEvery function has its own record that stores the instruction\npointer and flags for the function to be traced. There are only\ntwo flags: enabled and free. The enabled flag states that tracing\nfor the function has been enabled (actively traced), and the free\nflag states that the record no longer points to a function and can\nbe used by new functions (loaded modules).\n\nThese flags are now moved to the MSB of the flags (actually just\nthe top 32bits). The rest of the bits (30 bits) are now used as\na ref counter. Everytime a tracer register functions to trace,\nthose functions will have its counter incremented.\n\nWhen tracing is enabled, to determine if a function should be traced,\nthe counter is examined, and if it is non-zero it is set to trace.\n\nWhen a ftrace_ops is registered to trace functions, its hashes\nare examined. If the ftrace_ops filter_hash count is zero, then\nall functions are set to be traced, otherwise only the functions\nin the hash are to be traced. The exception to this is if a function\nis also in the ftrace_ops notrace_hash. Then that function\u0027s counter\nis not incremented for this ftrace_ops.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "33dc9b1267d59cef46ff0bd6bc043190845dc919",
      "tree": "d5a3f78a6aabcd33b9848d3bf86b9b53ff6ea2e0",
      "parents": [
        "f45948e898e7bc76a73a468796d2ce80dd040058"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 02 17:34:47 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:46 2011 -0400"
      },
      "message": "ftrace: Separate hash allocation and assignment\n\nWhen filtering, allocate a hash to insert the function records.\nAfter the filtering is complete, assign it to the ftrace_ops structure.\n\nThis allows the ftrace_ops structure to have a much smaller array of\nhash buckets instead of wasting a lot of memory.\n\nA read only empty_hash is created to be the minimum size that any ftrace_ops\ncan point to.\n\nWhen a new hash is created, it has the following steps:\n\no Allocate a default hash.\no Walk the function records assigning the filtered records to the hash\no Allocate a new hash with the appropriate size buckets\no Move the entries from the default hash to the new hash.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f45948e898e7bc76a73a468796d2ce80dd040058",
      "tree": "483979d8030cc2cf156ed65218c03a2d6825d9f5",
      "parents": [
        "1cf41dd79993389b012e4542ab502ce36ae7343f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 02 12:29:25 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:45 2011 -0400"
      },
      "message": "ftrace: Create a global_ops to hold the filter and notrace hashes\n\nCombine the filter and notrace hashes to be accessed by a single entity,\nthe global_ops. The global_ops is a ftrace_ops structure that is passed\nto different functions that can read or modify the filtering of the\nfunction tracer.\n\nThe ftrace_ops structure was modified to hold a filter and notrace\nhashes so that later patches may allow each ftrace_ops to have its own\nset of rules to what functions may be filtered.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1cf41dd79993389b012e4542ab502ce36ae7343f",
      "tree": "e1d0b58b2256d5936cff0c9d29ca8f68a80cedd8",
      "parents": [
        "b448c4e3ae6d20108dba1d7833f2c0d3dbad87ce"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 29 20:59:51 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:44 2011 -0400"
      },
      "message": "ftrace: Use hash instead for FTRACE_FL_FILTER\n\nWhen multiple users are allowed to have their own set of functions\nto trace, having the FTRACE_FL_FILTER flag will not be enough to\nhandle the accounting of those users. Each user will need their own\nset of functions.\n\nReplace the FTRACE_FL_FILTER with a filter_hash instead. This is\ntemporary until the rest of the function filtering accounting\ngets in.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b448c4e3ae6d20108dba1d7833f2c0d3dbad87ce",
      "tree": "504e5a3640328458e652e41cfd2ed74e4652e5b3",
      "parents": [
        "94692349c4fc1bc74c19a28f9379509361a06a3b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 29 15:12:32 2011 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 18 15:29:44 2011 -0400"
      },
      "message": "ftrace: Replace FTRACE_FL_NOTRACE flag with a hash of ignored functions\n\nTo prepare for the accounting system that will allow multiple users of\nthe function tracer, having the FTRACE_FL_NOTRACE as a flag in the\ndyn_trace record does not make sense.\n\nAll ftrace_ops will soon have a hash of functions they should trace\nand not trace. By making a global hash of functions not to trace makes\nthis easier for the transition.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "edf76f8307c350bcb81f0c760118a991b3e62956",
      "tree": "35adb6aa29f61f64f5841b1ccb2e6a50eb250529",
      "parents": [
        "fe12bc2c996d3e492b2920e32ac79f7bbae3e15d"
      ],
      "author": {
        "name": "Jonathan Cameron",
        "email": "jic23@cam.ac.uk",
        "time": "Wed May 18 10:39:04 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 14:59:08 2011 +0200"
      },
      "message": "irq: Export functions to allow modular irq drivers\n\nExport handle_simple_irq, irq_modify_status, irq_alloc_descs,\nirq_free_descs and generic_handle_irq to allow their usage in\nmodules. First user is IIO, which wants to be built modular, but needs\nto be able to create irq chips, allocate and configure interrupt\ndescriptors and handle demultiplexing interrupts.\n\n[ tglx: Moved the uninlinig of generic_handle_irq to a separate patch ]\n\nSigned-off-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nLink: http://lkml.kernel.org/r/%3C1305711544-505-1-git-send-email-jic23%40cam.ac.uk%3E\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "fe12bc2c996d3e492b2920e32ac79f7bbae3e15d",
      "tree": "05af87563123d909d04c328aead3fe24599633d1",
      "parents": [
        "fe0514348452f5b0ad7e842b0d71b8322b1297de"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 12:48:00 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 14:59:08 2011 +0200"
      },
      "message": "genirq: Uninline and sanity check generic_handle_irq()\n\ngeneric_handle_irq() is missing a NULL pointer check for the result of\nirq_to_desc. This was a not a big problem, but we want to expose it to\ndrivers, so we better have sanity checks in place. Add a return value\nas well, which indicates that the irq number was valid and the handler\nwas invoked.\n\nBased on the pure code move from Jonathan Cameron.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\n"
    },
    {
      "commit": "fe0514348452f5b0ad7e842b0d71b8322b1297de",
      "tree": "bdf49e276958303c7b55b362eeffc0a149b1bb2f",
      "parents": [
        "c42321c76b0ef472e3bae4bfcb0f46ab19e038ef"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 12:53:03 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 14:59:07 2011 +0200"
      },
      "message": "genirq: Remove pointless ifdefs\n\nkernel/irq/ is only built when CONFIG_GENERIC_HARDIRQS\u003dy. So making\ncode inside of kernel/irq/ conditional on CONFIG_GENERIC_HARDIRQS is\npointless.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "91e7c75ba93c48a82670d630b9daac92ff70095d",
      "tree": "b44ac3dca1d03cce99cccc3f4ce55d4b5475d373",
      "parents": [
        "c650da23d59d2c82307380414606774c6d49b8bd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:26:00 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:26:00 2011 +0200"
      },
      "message": "PM: Allow drivers to allocate memory from .prepare() callbacks safely\n\nIf device drivers allocate substantial amounts of memory (above 1 MB)\nin their hibernate .freeze() callbacks (or in their legacy suspend\ncallbcks during hibernation), the subsequent creation of hibernate\nimage may fail due to the lack of memory.  This is the case, because\nthe drivers\u0027 .freeze() callbacks are executed after the hibernate\nmemory preallocation has been carried out and the preallocated amount\nof memory may be too small to cover the new driver allocations.\nUnfortunately, the drivers\u0027 .prepare() callbacks also are executed\nafter the hibernate memory preallocation has completed, so they are\nnot suitable for allocating additional memory either.  Thus the only\nway a driver can safely allocate memory during hibernation is to use\na hibernate/suspend notifier.  However, the notifiers are called\nbefore the freezing of user space and the drivers wanting to use them\nfor allocating additional memory may not know how much memory needs\nto be allocated at that point.\n\nTo let device drivers overcome this difficulty rework the hibernation\nsequence so that the memory preallocation is carried out after the\ndrivers\u0027 .prepare() callbacks have been executed, so that the\n.prepare() callbacks can be used for allocating additional memory\nto be used by the drivers\u0027 .freeze() callbacks.  Update documentation\nto match the new behavior of the code.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c650da23d59d2c82307380414606774c6d49b8bd",
      "tree": "b511dc2cda05ff910c745d49a309dc33445dc592",
      "parents": [
        "290c748725c170ed9a02522959ae67f528eefe98"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:25:10 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:25:10 2011 +0200"
      },
      "message": "PM: Remove CONFIG_PM_VERBOSE\n\nNow that we have CONFIG_DYNAMIC_DEBUG there is no need for yet\nanother flag causing dev_dbg() and pr_debug() statements in the\ncore PM code to produce output.  Moreover, CONFIG_PM_VERBOSE\ncauses so much output to be generated that it\u0027s not really useful\nand almost no one sets it.\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d23182\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "290c748725c170ed9a02522959ae67f528eefe98",
      "tree": "a920190b75c7e054af24d850e79cc54f5cf53263",
      "parents": [
        "2d2a9163bd4f3ba301f8138c32e4790edc30156c",
        "72874daa5e9064c4e8d689e6a04b1e96f687f872"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:23:46 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:23:46 2011 +0200"
      },
      "message": "Merge branch \u0027power-domains\u0027 into for-linus\n\n* power-domains:\n  PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset\n  PM: Revert \"driver core: platform_bus: allow runtime override of dev_pm_ops\"\n  OMAP1 / PM: Use generic clock manipulation routines for runtime PM\n  PM / Runtime: Generic clock manipulation rountines for runtime PM (v6)\n  PM / Runtime: Add subsystem data field to struct dev_pm_info\n  OMAP2+ / PM: move runtime PM implementation to use device power domains\n  PM / Platform: Use generic runtime PM callbacks directly\n  shmobile: Use power domains for platform runtime PM\n  PM: Export platform bus type\u0027s default PM callbacks\n  PM: Make power domain callbacks take precedence over subsystem ones\n"
    },
    {
      "commit": "2d2a9163bd4f3ba301f8138c32e4790edc30156c",
      "tree": "ac7d43e6c4f6a2f357454c42d762595cc358104d",
      "parents": [
        "1c1be3a949a61427a962771c85a347c822aeb991",
        "2e711c04dbbf7a7732a3f7073b1fc285d12b369d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:23:40 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:23:40 2011 +0200"
      },
      "message": "Merge branch \u0027syscore\u0027 into for-linus\n\n* syscore:\n  PM: Remove sysdev suspend, resume and shutdown operations\n  PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM\n  PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM\n  PM / AVR32: Use struct syscore_ops instead of sysdevs for PM\n  PM / Blackfin: Use struct syscore_ops instead of sysdevs for PM\n  ARM / Samsung: Use struct syscore_ops for \"core\" power management\n  ARM / PXA: Use struct syscore_ops for \"core\" power management\n  ARM / SA1100: Use struct syscore_ops for \"core\" power management\n  ARM / Integrator: Use struct syscore_ops for core PM\n  ARM / OMAP: Use struct syscore_ops for \"core\" power management\n  ARM: Use struct syscore_ops instead of sysdevs for PM in common code\n"
    },
    {
      "commit": "1c1be3a949a61427a962771c85a347c822aeb991",
      "tree": "f87ed0b7a008cfe5fb4bcb338352cc3febed18d5",
      "parents": [
        "ddeb648708108091a641adad0a438ec4fd8bf190"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 15 11:39:48 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:19:19 2011 +0200"
      },
      "message": "Revert \"PM / Hibernate: Reduce autotuned default image size\"\n\nThis reverts commit bea3864fb627d110933cfb8babe048b63c4fc76e\n(PM / Hibernate: Reduce autotuned default image size), because users\nare now able to resolve the issue this commit was supposed to address\nin a different way (i.e. by using the new /sys/power/reserved_size\ninterface).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "ddeb648708108091a641adad0a438ec4fd8bf190",
      "tree": "722367ce903d362af29898db7c2bc2c1058d80c5",
      "parents": [
        "13e381365614855bf14c8ad68f9b65e3afd3dd2c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 15 11:38:48 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:19:19 2011 +0200"
      },
      "message": "PM / Hibernate: Add sysfs knob to control size of memory for drivers\n\nMartin reports that on his system hibernation occasionally fails due\nto the lack of memory, because the radeon driver apparently allocates\ntoo much of it during the device freeze stage.  It turns out that the\namount of memory allocated by radeon during hibernation (and\npresumably during system suspend too) depends on the utilization of\nthe GPU (e.g. hibernating while there are two KDE 4 sessions with\ncompositing enabled causes radeon to allocate more memory than for\none KDE 4 session).\n\nIn principle it should be possible to use image_size to make the\nmemory preallocation mechanism free enough memory for the radeon\ndriver, but in practice it is not easy to guess the right value\nbecause of the way the preallocation code uses image_size.  For this\nreason, it seems reasonable to allow users to control the amount of\nmemory reserved for driver allocations made after the hibernate\npreallocation, which currently is constant and amounts to 1 MB.\n\nIntroduce a new sysfs file, /sys/power/reserved_size, whose value\nwill be used as the amount of memory to reserve for the\npost-preallocation reservations made by device drivers, in bytes.\nFor backwards compatibility, set its default (and initial) value to\nthe currently used number (1 MB).\n\nReferences: https://bugzilla.kernel.org/show_bug.cgi?id\u003d34102\nReported-and-tested-by: Martin Steigerwald \u003cMartin@Lichtvoll.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "13d53f8775c6a00b070a3eef6833795412eb7fcd",
      "tree": "4d8d2c2261c9c41bfc37b1199b8789f5037e49ad",
      "parents": [
        "c3b0795c98c08351567464150db66d11e05d7611"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue May 10 21:27:34 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:19:18 2011 +0200"
      },
      "message": "kmod: always provide usermodehelper_disable()\n\nWe need to prevent kernel-forked processes during system poweroff.\nSuch processes try to access the filesystem whose disks we are\ntrying to shutdown at the same time. This causes delays and exceptions\nin the storage drivers.\n\nA follow-up patch will add these calls and need usermodehelper_disable()\nalso on systems without suspend support.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "a144c6a6c924aa1da04dd77fb84b89927354fdff",
      "tree": "10cab9080a722a191086f58b9f304329e8a8b942",
      "parents": [
        "e1866b33b1e89f077b7132daae3dfd9a594e9a1a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri May 06 20:09:42 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:19:17 2011 +0200"
      },
      "message": "PM: Print a warning if firmware is requested when tasks are frozen\n\nSome drivers erroneously use request_firmware() from their -\u003eresume()\n(or -\u003ethaw(), or -\u003erestore()) callbacks, which is not going to work\nunless the firmware has been built in.  This causes system resume to\nstall until the firmware-loading timeout expires, which makes users\nthink that the resume has failed and reboot their machines\nunnecessarily.  For this reason, make _request_firmware() print a\nwarning and return immediately with error code if it has been called\nwhen tasks are frozen and it\u0027s impossible to start any new usermode\nhelpers.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nReviewed-by: Valdis Kletnieks \u003cvaldis.kletnieks@vt.edu\u003e\n"
    },
    {
      "commit": "ee940d8dccd899aa1777ea84da3d9cd04b1d2e8e",
      "tree": "0bb19033f820a485dea0c5fc848206b6479fc7df",
      "parents": [
        "3c431936087e93d2219a184a8e19eaa68077e379"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Apr 25 12:33:15 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:19:17 2011 +0200"
      },
      "message": "Freezer: Use SMP barriers\n\nThe freezer processes are dealing with multiple threads running\nsimultaneously, and on a UP system, the memory reads/writes do\nnot need barriers to keep things in sync.  These are only needed\non SMP systems, so use SMP barriers instead.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "3c431936087e93d2219a184a8e19eaa68077e379",
      "tree": "65b9bd696100c808ae02d6c235990a2c4fbb7104",
      "parents": [
        "c1d10d18c542278b7fbc413c289d3cb6219da6b3"
      ],
      "author": {
        "name": "MyungJoo Ham",
        "email": "myungjoo.ham@samsung.com",
        "time": "Fri Apr 22 22:00:54 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 17 23:19:16 2011 +0200"
      },
      "message": "PM / Suspend: Do not ignore error codes returned by suspend_enter()\n\nThe current implementation of suspend-to-RAM returns 0 if there is an\nerror from suspend_enter(), because suspend_devices_and_enter() ignores\nthe return value from suspend_enter().  This patch addresses this issue\nand properly keep the error return from suspend_enter() and let\nsuspend_devices_and_enter relay the error return.\n\nSigned-off-by: MyungJoo Ham \u003cmyungjoo.ham@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "a085963a2757b9ab0a7ec1cf4a14aa85935c1e2a",
      "tree": "65ba9b826cf1b2311534e10b944175a83467d654",
      "parents": [
        "c1d10d18c542278b7fbc413c289d3cb6219da6b3",
        "07f4beb0b5bbfaf36a64aa00d59e670ec578a95a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 17 08:02:04 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 17 08:02:04 2011 -0700"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tick: Clear broadcast active bit when switching to oneshot\n  rtc: mc13xxx: Don\u0027t call rtc_device_register while holding lock\n  rtc: rp5c01: Initialize drvdata before registering device\n  rtc: pcap: Initialize drvdata before registering device\n  rtc: msm6242: Initialize drvdata before registering device\n  rtc: max8998: Initialize drvdata before registering device\n  rtc: max8925: Initialize drvdata before registering device\n  rtc: m41t80: Initialize clientdata before registering device\n  rtc: ds1286: Initialize drvdata before registering device\n  rtc: ep93xx: Initialize drvdata before registering device\n  rtc: davinci: Initialize drvdata before registering device\n  rtc: mxc: Initialize drvdata before registering device\n  clocksource: Install completely before selecting\n"
    },
    {
      "commit": "07f4beb0b5bbfaf36a64aa00d59e670ec578a95a",
      "tree": "13c0fbeb4586cd0a9c7cd8258575c39e0481ca7a",
      "parents": [
        "557d97d57446f55d2c4a66593794ea31ffd0a74d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 16 11:07:48 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 16 23:35:41 2011 +0200"
      },
      "message": "tick: Clear broadcast active bit when switching to oneshot\n\nThe first cpu which switches from periodic to oneshot mode switches\nalso the broadcast device into oneshot mode. The broadcast device\nserves as a backup for per cpu timers which stop in deeper\nC-states. To avoid starvation of the cpus which might be in idle and\ndepend on broadcast mode it marks the other cpus as broadcast active\nand sets the brodcast expiry value of those cpus to the next tick.\n\nThe oneshot mode broadcast bit for the other cpus is sticky and gets\nonly cleared when those cpus exit idle. If a cpu was not idle while\nthe bit got set in consequence the bit prevents that the broadcast\ndevice is armed on behalf of that cpu when it enters idle for the\nfirst time after it switched to oneshot mode.\n\nIn most cases that goes unnoticed as one of the other cpus has usually\na timer pending which keeps the broadcast device armed with a short\ntimeout. Now if the only cpu which has a short timer active has the\nbit set then the broadcast device will not be armed on behalf of that\ncpu and will fire way after the expected timer expiry. In the case of\nChristians bug report it took ~145 seconds which is about half of the\nwrap around time of HPET (the limit for that device) due to the fact\nthat all other cpus had no timers armed which expired before the 145\nseconds timeframe.\n\nThe solution is simply to clear the broadcast active bit\nunconditionally when a cpu switches to oneshot mode after the first\ncpu switched the broadcast device over. It\u0027s not idle at that point\notherwise it would not be executing that code.\n\n[ I fundamentally hate that broadcast crap. Why the heck thought some\n  folks that when going into deep idle it\u0027s a brilliant concept to\n  switch off the last device which brings the cpu back from that\n  state? ]\n\nThanks to Christian for providing all the valuable debug information!\n\nReported-and-tested-by: Christian Hoffmann \u003cemail@christianhoffmann.info\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nLink: http://lkml.kernel.org/r/%3Calpine.LFD.2.02.1105161105170.3078%40ionos%3E\nCc: stable@kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "db670dac49b5423b39b5e523d28fe32045d71b10",
      "tree": "194220c83cb097504ddf7bcccc7ce93d6a23eac3",
      "parents": [
        "db44fc017d5989302713ab4e7f9e922b648f4b59"
      ],
      "author": {
        "name": "Stephan Baerwolf",
        "email": "stephan.baerwolf@tu-ilmenau.de",
        "time": "Wed May 11 18:03:29 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 16 11:01:18 2011 +0200"
      },
      "message": "sched: Fix and optimise calculation of the weight-inverse\n\nIf the inverse loadweight should be zero, function \"calc_delta_mine\"\ncalculates the inverse of \"lw-\u003eweight\" (in 32bit integer ops).\n\nThis calculation is actually a little bit impure (because it is\ninverting something around \"lw-weight\"+1), especially when\n\"lw-\u003eweight\" becomes smaller.\n\nThe correct inverse would be 1/lw-\u003eweight multiplied by\n\"WMULT_CONST\" for fixcomma-scaling it into integers.\n(So WMULT_CONST/lw-\u003eweight ...)\n\nThe old, impure algorithm took two divisions for inverting lw-\u003eweight,\nthe new, more exact one only takes one and an additional unlikely-if.\n\nSigned-off-by: Stephan Baerwolf \u003cstephan.baerwolf@tu-ilmenau.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/n/tip-0pz0wnyalr4tk4ln11xwumdx@git.kernel.org\n[ This could explain some aritmetical issues for small shares but nothing\n  concrete has been reported yet so we are not confident enough to queue\n  this up in sched/urgent and for -stable backport. But if anyone finds\n  this commit and sees it to fix some badness then we can certainly\n  change our mind! ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "db44fc017d5989302713ab4e7f9e922b648f4b59",
      "tree": "a6b8830b580fe5ebf7b0ff2f271c59173b15bc9b",
      "parents": [
        "61eadef6a9bde9ea62fda724a9cb501ce9bc925a"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Mon May 09 22:07:05 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 16 11:01:18 2011 +0200"
      },
      "message": "sched: Avoid going ahead if -\u003ecpus_allowed is not changed\n\nIf cpumask_equal(\u0026p-\u003ecpus_allowed, new_mask) is true, seems\nthere is no reason to prevent set_cpus_allowed_ptr() return\ndirectly.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nAcked-by: Hillf Danton \u003cdhillf@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20110509140705.GA2219@zhy\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61eadef6a9bde9ea62fda724a9cb501ce9bc925a",
      "tree": "52ffdd4251e921681f086ec6c4e14ad6e5f9472d",
      "parents": [
        "3e51e3edfd81bfd9853ad7de91167e4ce33d0fe7"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Fri Apr 29 08:36:50 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 16 11:01:17 2011 +0200"
      },
      "message": "sched, rt: Update rq clock when unthrottling of an otherwise idle CPU\n\nIf an RT task is awakened while it\u0027s rt_rq is throttled, the time between\nwakeup/enqueue and unthrottle/selection may be accounted as rt_time\nif the CPU is idle.  Set rq-\u003eskip_clock_update negative upon throttle\nrelease to tell put_prev_task() that we need a clock update.\n\nReported-by: Thomas Giesel \u003cskoe@directbox.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1304059010.7472.1.camel@marge.simson.net\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ec514c487c3d4b652943da7b0afbc094eee08cfa",
      "tree": "d6766fd9a3f6eec2816a8191cf02f14564ba7473",
      "parents": [
        "bd1a643e10eb8782b36b47c3602300319dd2fb00"
      ],
      "author": {
        "name": "Cheng Xu",
        "email": "chengxu@linux.vnet.ibm.com",
        "time": "Sat May 14 14:20:02 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 16 11:00:54 2011 +0200"
      },
      "message": "sched: Fix rt_rq runtime leakage bug\n\nThis patch is to fix the real-time scheduler bug reported at:\n\n  https://lkml.org/lkml/2011/4/26/13\n\nThat is, when running multiple real-time threads on every logical CPUs\nand then turning off one CPU, the kernel will bug at function\n__disable_runtime().\n\nFunction __disable_runtime() bugs and reports leakage of rt_rq runtime.\nThe root cause is __disable_runtime() assumes it iterates through all\nthe existing rt_rq\u0027s while walking rq-\u003eleaf_rt_rq_list, which actually\ncontains only runnable rt_rq\u0027s. This problem also applies to\n__enable_runtime() and print_rt_stats().\n\nThe patch is based on above analysis, appears to fix the problem, but is\nonly lightly tested.\n\nReported-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Cheng Xu \u003cchengxu@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4DCE1F12.6040609@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "47a150edc2ae734c0f4bf50aa19499e23b9a46f8",
      "tree": "beeba9befd531285f663559a76f6f0f7378a6c2b",
      "parents": [
        "381e7863d94891035a1a6b7836e9db72f9f1cba1"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serge.hallyn@canonical.com",
        "time": "Fri May 13 04:27:54 2011 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 13 11:45:33 2011 -0700"
      },
      "message": "Cache user_ns in struct cred\n\nIf !CONFIG_USERNS, have current_user_ns() defined to (\u0026init_user_ns).\n\nGet rid of _current_user_ns.  This requires nsown_capable() to be\ndefined in capability.c rather than as static inline in capability.h,\nso do that.\n\nRequest_key needs init_user_ns defined at current_user_ns if\n!CONFIG_USERNS, so forward-declare that in cred.h if !CONFIG_USERNS\nat current_user_ns() define.\n\nCompile-tested with and without CONFIG_USERNS.\n\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\n[ This makes a huge performance difference for acl_permission_check(),\n  up to 30%.  And that is one of the hottest kernel functions for loads\n  that are pathname-lookup heavy.  ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19e274630c9e23a84d5940af83cf5db35103f968",
      "tree": "334344b87c92cf9d9ec6ea04151e1bf65742c58f",
      "parents": [
        "40ae717d1e78d982bd469b2013a4cbf4ec1ca434"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 12 10:47:23 2011 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri May 13 18:56:02 2011 +0200"
      },
      "message": "job control: reorganize wait_task_stopped()\n\nwait_task_stopped() tested task_stopped_code() without acquiring\nsiglock and, if stop condition existed, called wait_task_stopped() and\ndirectly returned the result.  This patch moves the initial\ntask_stopped_code() testing into wait_task_stopped() and make\nwait_consider_task() fall through to wait_task_continue() on 0 return.\n\nThis is for the following two reasons.\n\n* Because the initial task_stopped_code() test is done without\n  acquiring siglock, it may race against SIGCONT generation.  The\n  stopped condition might have been replaced by continued state by the\n  time wait_task_stopped() acquired siglock.  This may lead to\n  unexpected failure of WNOHANG waits.\n\n  This reorganization addresses this single race case but there are\n  other cases - TASK_RUNNING -\u003e TASK_STOPPED transition and EXIT_*\n  transitions.\n\n* Scheduled ptrace updates require changes to the initial test which\n  would fit better inside wait_task_stopped().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n"
    },
    {
      "commit": "3e51e3edfd81bfd9853ad7de91167e4ce33d0fe7",
      "tree": "777d871949911f3e79a5b94545a7b6a55bdc2259",
      "parents": [
        "9cb5baba5e3acba0994ad899ee908799104c9965"
      ],
      "author": {
        "name": "Samir Bellabes",
        "email": "sam@synack.fr",
        "time": "Wed May 11 18:18:05 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 12 09:36:37 2011 +0200"
      },
      "message": "sched: Remove unused parameters from sched_fork() and wake_up_new_task()\n\nsched_fork() and wake_up_new_task() are defined with a parameter\n\u0027unsigned long clone_flags\u0027, which is unused.\n\nThis patch removes the parameters.\n\nSigned-off-by: Samir Bellabes \u003csam@synack.fr\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1305130685-1047-1-git-send-email-sam@synack.fr\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9cb5baba5e3acba0994ad899ee908799104c9965",
      "tree": "d5ff16000256a0bf56279926e6114b4603ede2b4",
      "parents": [
        "7142d17e8f935fa842e9f6eece2281b6d41625d6",
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 12 09:36:18 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 12 09:36:18 2011 +0200"
      },
      "message": "Merge commit \u0027v2.6.39-rc7\u0027 into sched/core\n"
    },
    {
      "commit": "2e711c04dbbf7a7732a3f7073b1fc285d12b369d",
      "tree": "dbc06a3fff744144d7937a205a91fd8ce71585d4",
      "parents": [
        "f5a592f7d74e38c5007876c731e6bf5580072e63"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Apr 26 19:15:07 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 11 21:37:15 2011 +0200"
      },
      "message": "PM: Remove sysdev suspend, resume and shutdown operations\n\nSince suspend, resume and shutdown operations in struct sysdev_class\nand struct sysdev_driver are not used any more, remove them.  Also\ndrop sysdev_suspend(), sysdev_resume() and sysdev_shutdown() used\nfor executing those operations and modify all of their users\naccordingly.  This reduces kernel code size quite a bit and reduces\nits complexity.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "36cb7035ea0c11ef2c7fa2bbe0cd181b23569b29",
      "tree": "d7d62149629bda6a916693232885b96ca34f30f3",
      "parents": [
        "9744997a8a2280e67984d4bffd87221d24f3b6b1"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 10 21:10:13 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 11 21:10:58 2011 +0200"
      },
      "message": "PM / Hibernate: Fix ioctl SNAPSHOT_S2RAM\n\nThe SNAPSHOT_S2RAM ioctl used for implementing the feature allowing\none to suspend to RAM after creating a hibernation image is currently\nbroken, because it doesn\u0027t clear the \"ready\" flag in the struct\nsnapshot_data object handled by it.  As a result, the\nSNAPSHOT_UNFREEZE doesn\u0027t work correctly after SNAPSHOT_S2RAM has\nreturned and the user space hibernate task cannot thaw the other\nprocesses as appropriate.  Make SNAPSHOT_S2RAM clear data-\u003eready\nto fix this problem.\n\nTested-by: Alexandre Felipe Muller de Souza \u003calexandrefm@mandriva.com.br\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "9744997a8a2280e67984d4bffd87221d24f3b6b1",
      "tree": "fde6744d42fcd742fb1cd1532609a1f13a1cc42d",
      "parents": [
        "87186475a402391a1ca7d42a675c9b35a18dc348"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 10 21:10:01 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 11 21:10:43 2011 +0200"
      },
      "message": "PM / Hibernate: Make snapshot_release() restore GFP mask\n\nIf the process using the hibernate user space interface closes\n/dev/snapshot after creating a hibernation image without thawing\ntasks, snapshot_release() should call pm_restore_gfp_mask() to\nrestore the GFP mask used before the creation of the image.  Make\nthat happen.\n\nTested-by: Alexandre Felipe Muller de Souza \u003calexandrefm@mandriva.com.br\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "87186475a402391a1ca7d42a675c9b35a18dc348",
      "tree": "01b52ab26eb3b4fed09ca7fb11da4fcc1dddb32a",
      "parents": [
        "54b333529df25b21da462c7dcc16c7dc779d9f26"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue May 10 21:09:53 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 11 21:10:14 2011 +0200"
      },
      "message": "PM: Fix warning in pm_restrict_gfp_mask() during SNAPSHOT_S2RAM ioctl\n\nA warning is printed by pm_restrict_gfp_mask() while the\nSNAPSHOT_S2RAM ioctl is being executed after creating a hibernation\nimage, because pm_restrict_gfp_mask() has been called once already\nbefore the image creation and suspend_devices_and_enter() calls it\nonce again.  This happens after commit 452aa6999e6703ffbddd7f6ea124d3\n(mm/pm: force GFP_NOIO during suspend/hibernation and resume).\n\nTo avoid this issue, move pm_restrict_gfp_mask() and\npm_restore_gfp_mask() from suspend_devices_and_enter() to its caller\nin kernel/power/suspend.c.\n\nReported-by: Alexandre Felipe Muller de Souza \u003calexandrefm@mandriva.com.br\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "932fed4e2e42c3d730c01bb63b1c4f812c533d5b",
      "tree": "11b1afac3a40d253cdb905c42901edfaae5e196e",
      "parents": [
        "57d524154ffe99d27fb55e0e30ddbad9f4c35806",
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 10 17:05:24 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 10 17:05:45 2011 +0200"
      },
      "message": "Merge commit \u0027v2.6.39-rc7\u0027 into perf/core\n\nMerge reason: pull in the latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40ae717d1e78d982bd469b2013a4cbf4ec1ca434",
      "tree": "4063fe2d86828c6b6c10b6f8c29b67ab27167b3b",
      "parents": [
        "2e4f7c7769a0b8b6b3e88b0436c6c634f146a4ef"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 06 11:52:22 2011 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon May 09 14:19:54 2011 +0200"
      },
      "message": "ptrace: fix signal-\u003ewait_chldexit usage in task_clear_group_stop_trapping()\n\nGROUP_STOP_TRAPPING waiting mechanism piggybacks on\nsignal-\u003ewait_chldexit which is primarily used to implement waiting for\nwait(2) and friends.  When do_wait() waits on signal-\u003ewait_chldexit,\nit uses a custom wake up callback, child_wait_callback(), which\nexpects the child task which is waking up the parent to be passed in\nas @key to filter out spurious wakeups.\n\ntask_clear_group_stop_trapping() used __wake_up_sync() which uses NULL\n@key causing the following oops if the parent was doing do_wait().\n\n  BUG: unable to handle kernel NULL pointer dereference at 00000000000002d8\n  IP: [\u003cffffffff810499f9\u003e] child_wait_callback+0x29/0x80\n  PGD 1d899067 PUD 1e418067 PMD 0\n  Oops: 0000 [#1] PREEMPT SMP\n  last sysfs file: /sys/devices/pci0000:00/0000:00:03.0/local_cpus\n  CPU 2\n  Modules linked in:\n\n  Pid: 4498, comm: test-continued Not tainted 2.6.39-rc6-work+ #32 Bochs Bochs\n  RIP: 0010:[\u003cffffffff810499f9\u003e]  [\u003cffffffff810499f9\u003e] child_wait_callback+0x29/0x80\n  RSP: 0000:ffff88001b889bf8  EFLAGS: 00010046\n  RAX: 0000000000000000 RBX: ffff88001fab3af8 RCX: 0000000000000000\n  RDX: 0000000000000001 RSI: 0000000000000002 RDI: ffff88001d91df20\n  RBP: ffff88001b889c08 R08: 0000000000000000 R09: 0000000000000000\n  R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000000\n  R13: ffff88001fb70550 R14: 0000000000000000 R15: 0000000000000001\n  FS:  00007f26ccae4700(0000) GS:ffff88001fd00000(0000) knlGS:0000000000000000\n  CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\n  CR2: 00000000000002d8 CR3: 000000001b8ac000 CR4: 00000000000006e0\n  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n  DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n  Process test-continued (pid: 4498, threadinfo ffff88001b888000, task ffff88001fb88000)\n  Stack:\n   ffff88001b889c18 ffff88001fb70538 ffff88001b889c58 ffffffff810312f9\n   0000000000000001 0000000200000001 ffff88001b889c58 ffff88001fb70518\n   0000000000000002 0000000000000082 0000000000000001 0000000000000000\n  Call Trace:\n   [\u003cffffffff810312f9\u003e] __wake_up_common+0x59/0x90\n   [\u003cffffffff81035263\u003e] __wake_up_sync_key+0x53/0x80\n   [\u003cffffffff810352a0\u003e] __wake_up_sync+0x10/0x20\n   [\u003cffffffff8105a984\u003e] task_clear_jobctl_trapping+0x44/0x50\n   [\u003cffffffff8105bcbc\u003e] ptrace_stop+0x7c/0x290\n   [\u003cffffffff8105c20a\u003e] do_signal_stop+0x28a/0x2d0\n   [\u003cffffffff8105d27f\u003e] get_signal_to_deliver+0x14f/0x5a0\n   [\u003cffffffff81002175\u003e] do_signal+0x75/0x7b0\n   [\u003cffffffff8100292d\u003e] do_notify_resume+0x5d/0x70\n   [\u003cffffffff8182e36a\u003e] retint_signal+0x46/0x8c\n  Code: 00 00 55 48 89 e5 53 48 83 ec 08 0f 1f 44 00 00 8b 47 d8 83 f8 03 74 3a 85 c0 49 89 c8 75 23 89 c0 48 8b 5f e0 4c 8d 0c 40 31 c0 \u003c4b\u003e 39 9c c8 d8 02 00 00 74 1d 48 83 c4 08 5b c9 c3 66 0f 1f 44\n\nFix it by using __wake_up_sync_key() and passing in the child as @key.\n\nI still think it\u0027s a mistake to piggyback on wait_chldexit for this.\nGiven the relative low frequency of ptrace use, we would be much\nbetter off leaving already complex wait_chldexit alone and using bit\nwaitqueue.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n"
    },
    {
      "commit": "2e4f7c7769a0b8b6b3e88b0436c6c634f146a4ef",
      "tree": "1e8a46790b0c0834006cd07c321aa4b7556a3d05",
      "parents": [
        "b013c399245a88a73aaa031279f0c4d7cea7fe68"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon May 09 13:48:56 2011 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon May 09 13:48:56 2011 +0200"
      },
      "message": "signal: sys_sigprocmask() needs retarget_shared_pending()\n\nsys_sigprocmask() changes current-\u003eblocked by hand. Convert this code\nto use set_current_blocked().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n"
    },
    {
      "commit": "fa4bbc4ca5795fbf1303b98c924e51a21a920f14",
      "tree": "91f504045a57d1c88b68a5a0102de01008828232",
      "parents": [
        "cb796ff338db9f064f4ecb7d41898e8bedcad4d9"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 12:08:29 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:51:09 2011 -0700"
      },
      "message": "perf,rcu: convert call_rcu(swevent_hlist_release_rcu) to kfree_rcu()\n\nThe rcu callback swevent_hlist_release_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(swevent_hlist_release_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "cb796ff338db9f064f4ecb7d41898e8bedcad4d9",
      "tree": "53ad56428dc26a4d59281e3862a347d083c3c5ec",
      "parents": [
        "1f8d36a1869f5efae4fadf6baf01f02211040b97"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 12:07:41 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:51:08 2011 -0700"
      },
      "message": "perf,rcu: convert call_rcu(free_ctx) to kfree_rcu()\n\nThe rcu callback free_ctx() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(free_ctx).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "025cea99db3fb110ebc8ede5ff647833fab9574f",
      "tree": "cfef202674eaf06953405b03b000e77251287099",
      "parents": [
        "f2da1c40dc003939f616f27a103b2592f1424b07"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 17:56:10 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:47 2011 -0700"
      },
      "message": "cgroup,rcu: convert call_rcu(__free_css_id_cb) to kfree_rcu()\n\nThe rcu callback __free_css_id_cb() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(__free_css_id_cb).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "f2da1c40dc003939f616f27a103b2592f1424b07",
      "tree": "a34d091b5652a7605269cff58b9e259dc94198a7",
      "parents": [
        "30088ad815802f850f26114920ccf9effd4bc520"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 17:55:16 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:46 2011 -0700"
      },
      "message": "cgroup,rcu: convert call_rcu(free_cgroup_rcu) to kfree_rcu()\n\nThe rcu callback free_cgroup_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(free_cgroup_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "30088ad815802f850f26114920ccf9effd4bc520",
      "tree": "7002a56ddb8873ae42921f1f6605fcc7b0fbbd71",
      "parents": [
        "1217ed1ba5c67393293dfb0f03c353b118dadeb4"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 17:53:46 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:45 2011 -0700"
      },
      "message": "cgroup,rcu: convert call_rcu(free_css_set_rcu) to kfree_rcu()\n\nThe rcu callback free_css_set_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(free_css_set_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "1217ed1ba5c67393293dfb0f03c353b118dadeb4",
      "tree": "a765356c8418e134de85fd05d9fe6eda41de859c",
      "parents": [
        "29ce831000081dd757d3116bf774aafffc4b6b20"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Wed May 04 21:43:49 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:45 2011 -0700"
      },
      "message": "rcu: permit rcu_read_unlock() to be called while holding runqueue locks\n\nAvoid calling into the scheduler while holding core RCU locks.  This\nallows rcu_read_unlock() to be called while holding the runqueue locks,\nbut only as long as there was no chance of the RCU read-side critical\nsection having been preempted.  (Otherwise, if RCU priority boosting\nis enabled, rcu_read_unlock() might call into the scheduler in order to\nunboost itself, which might allows self-deadlock on the runqueue locks\nwithin the scheduler.)\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8b061610dac3a3b89770c85ad63b481a47b0c38e",
      "tree": "3ab93ad7f8f3e8bd612cff4e59d55d5a36c0c1fa",
      "parents": [
        "c2bf807eb347325988b1c7f9139e934ed9b1d795",
        "174a7b1f9692acad7f0ca2b02f696894201a6d94"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 07 13:17:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 07 13:17:37 2011 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf tools: Makefile: Use gcc to determine ARCH\n  perf events, x86: Fix Intel Nehalem and Westmere last level cache event definitions\n  hw_breakpoints, powerpc: Fix CONFIG_HAVE_HW_BREAKPOINT off-case in ptrace_set_debugreg()\n  sh, hw_breakpoints: Fix racy access to ptrace breakpoints\n  arm, hw_breakpoints: Fix racy access to ptrace breakpoints\n  powerpc, hw_breakpoints: Fix racy access to ptrace breakpoints\n  x86, hw_breakpoints: Fix racy access to ptrace breakpoints\n  ptrace: Prepare to fix racy accesses on task breakpoints\n"
    },
    {
      "commit": "b50fa7c8077c625919b1e0a75fc37b825f024518",
      "tree": "c266234fe50b388b475b03a09a25908b508c2293",
      "parents": [
        "aabb6e1531b0c78423dca6a39620892249fef7f9"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu May 05 13:32:05 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 06 17:52:32 2011 -0700"
      },
      "message": "reboot: disable usermodehelper to prevent fs access\n\nIn case CONFIG_UEVENT_HELPER_PATH is not set to \"\", which it\nshould be on every system, the kernel forks processes during\nshutdown, which try to access the rootfs, even when the\nbinary does not exist. It causes exceptions and long delays in\nthe disk driver, which gets read requests at the time it tries\nto shut down the disk.\n\nThis patch disables all kernel-forked processes during reboot to\nallow a clean poweroff.\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nTested-By: Anton Guda \u003catu@dmeti.dp.ua\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a3a4a5acd3bd2f6f1e102e1f1b9d2e2bb320a7fd",
      "tree": "8ed40e1c0bb654d824e39e6b42d1619a2807e75d",
      "parents": [
        "e5e06985bec89414ce2b3f301c24d884f609b020"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Thu May 05 23:55:18 2011 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 06 13:20:59 2011 -0700"
      },
      "message": "Regression: partial revert \"tracing: Remove lock_depth from event entry\"\n\nThis partially reverts commit e6e1e2593592a8f6f6380496655d8c6f67431266.\n\nThat commit changed the structure layout of the trace structure, which\nin turn broke PowerTOP (1.9x generation) quite badly.\n\nI appreciate not wanting to expose the variable in question, and\nPowerTOP was not using it, so I\u0027ve replaced the variable with just a\npadding field - that way if in the future a new field is needed it can\njust use this padding field.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7142d17e8f935fa842e9f6eece2281b6d41625d6",
      "tree": "cf905dfa17b50e64d50f17cc5ea450117c91fad0",
      "parents": [
        "4934a4d3d3fa775601a9f1b35cc0e2aa93f81355"
      ],
      "author": {
        "name": "Hillf Danton",
        "email": "dhillf@gmail.com",
        "time": "Thu May 05 20:53:20 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 06 09:13:05 2011 +0200"
      },
      "message": "sched: Shorten the construction of the span cpu mask of sched domain\n\nFor a given node, when constructing the cpumask for its\nsched_domain to span, if there is no best node available after\nsearching, further efforts could be saved, based on small change\nin the return value of find_next_best_node().\n\nSigned-off-by: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nLink: http://lkml.kernel.org/r/BANLkTi%3DqPWxRAa6%2BdT3ohEP6Z%3D0v%2Be4EXA@mail.gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4934a4d3d3fa775601a9f1b35cc0e2aa93f81355",
      "tree": "e13675f377e6484c48b59fe6ca99572b4175f838",
      "parents": [
        "931aeeda0dca81152aec48f30be01e86a268bf89"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Wed May 04 22:53:46 2011 +0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri May 06 09:04:19 2011 +0200"
      },
      "message": "sched: Wrap the \u0027cfs_rq-\u003enr_spread_over\u0027 field with CONFIG_SCHED_DEBUG\n\ncfs_rq-\u003enr_spread_over is only used when CONFIG_SCHED_DEBUG is set.\nSo wrap it with CONFIG_SCHED_DEBUG.\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1304528026.15681.3.camel@localhost.localdomain\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29ce831000081dd757d3116bf774aafffc4b6b20",
      "tree": "0b992d993b02d3479a150e9fc508d110dc45631d",
      "parents": [
        "bad6e1393cb505fe17747344a23666464daa3fa7"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Wed May 04 16:31:03 2011 +0300"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 05 23:16:59 2011 -0700"
      },
      "message": "rcu: provide rcu_virt_note_context_switch() function.\n\nProvide rcu_virt_note_context_switch() for vitalization use to note\nquiescent state during guest entry.\n\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "bad6e1393cb505fe17747344a23666464daa3fa7",
      "tree": "521dcada78d0f19400d14547381f0f3b2e38fea2",
      "parents": [
        "b554d7de8d112fca4188da3bf0d7f8b56f42fb95"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 02 23:40:04 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 05 23:16:59 2011 -0700"
      },
      "message": "rcu: get rid of signed overflow in check_cpu_stall()\n\nSigned integer overflow is undefined by the C standard, so move\ncalculations to unsigned.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "b554d7de8d112fca4188da3bf0d7f8b56f42fb95",
      "tree": "3641a25b7356da1bdcb52f6ff160f605ed778cd4",
      "parents": [
        "2655d57ef35aa327a2e58a1c5dc7b65c65003f4e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 28 07:23:45 2011 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 05 23:16:59 2011 -0700"
      },
      "message": "rcu: optimize rcutiny\n\nrcu_sched_qs() currently calls local_irq_save()/local_irq_restore() up\nto three times.\n\nRemove irq masking from rcu_qsctr_help() / invoke_rcu_kthread()\nand do it once in rcu_sched_qs() / rcu_bh_qs()\n\nThis generates smaller code as well.\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n   2314\t    156\t     24\t   2494\t    9be\tkernel/rcutiny.old.o\n   2250\t    156\t     24\t   2430\t    97e\tkernel/rcutiny.new.o\n\nFix an outdated comment for rcu_qsctr_help()\nMove invoke_rcu_kthread() definition before its use.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "2655d57ef35aa327a2e58a1c5dc7b65c65003f4e",
      "tree": "4a71e82b23ee84705cad15cd16490f8c5aace74f",
      "parents": [
        "baa1ae0c9f1c618bc60706efa75fef3508bcee58"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Apr 07 22:47:23 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 05 23:16:59 2011 -0700"
      },
      "message": "rcu: prevent call_rcu() from diving into rcu core if irqs disabled\n\nThis commit marks a first step towards making call_rcu() have\nreal-time behavior.  If irqs are disabled, don\u0027t dive into the\nRCU core.  Later on, this new early exit will wake up the\nper-CPU kthread, which first must be modified to handle the\ncases involving callback storms.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "baa1ae0c9f1c618bc60706efa75fef3508bcee58",
      "tree": "e9a4558a3fcef41e42477d6461ccf655d01d5432",
      "parents": [
        "9ab1544eb4196ca8d05c433b2eb56f74496b1ee3"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Sat Mar 26 22:01:35 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu May 05 23:16:59 2011 -0700"
      },
      "message": "rcu: further lower priority in rcu_yield()\n\nAlthough rcu_yield() dropped from real-time to normal priority, there\nis always the possibility that the competing tasks have been niced.\nSo nice to 19 in rcu_yield() to help ensure that other tasks have a\nbetter chance of running.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    }
  ],
  "next": "9ab1544eb4196ca8d05c433b2eb56f74496b1ee3"
}
