)]}'
{
  "log": [
    {
      "commit": "20dd67407160eac577656cd2f8ee9a1fead960b8",
      "tree": "c3598a848330b8b23e243288f5672c6ef2660333",
      "parents": [
        "e815f0a84fc9a98e5cc3ef0b520122e5e18520e7"
      ],
      "author": {
        "name": "Sergey Senozhatsky",
        "email": "sergey.senozhatsky@gmail.com",
        "time": "Wed Mar 23 13:17:23 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 23 13:27:58 2011 +0100"
      },
      "message": "sched: Remove unused \u0027rq\u0027 variable and cpu_rq() call from alloc_fair_sched_group()\n\nSigned-off-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110323111722.GA4244@swordfish.minsk.epam.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16addf954d3954a72fd56abc02ffcba3c18529a1",
      "tree": "229d080de7a6f76562b9476e01c78adf9d0b22b5",
      "parents": [
        "58cbe2476abce8b5e3508d23bd05c2e2e8c394da"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Mar 18 09:34:53 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 19 19:19:36 2011 +0100"
      },
      "message": "sched: Fix yield_to kernel-doc\n\nAdd missing function parameters for yield_to():\n\n Warning(kernel/sched.c:5470): No description found for parameter \u0027p\u0027\n Warning(kernel/sched.c:5470): No description found for parameter \u0027preempt\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110318093453.8f7489a4.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "58cbe2476abce8b5e3508d23bd05c2e2e8c394da",
      "tree": "1b6cb3a16dd220a9bcd3c9a8e65670a6002bfb42",
      "parents": [
        "d10902812c9cd5583130a4ebb9ad19c60b68149d"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Mar 15 16:12:30 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 16 14:00:23 2011 +0100"
      },
      "message": "sched, kernel-doc: Fix runqueue_is_locked() description\n\nFix kernel-doc warning for runqueue_is_locked():\n\n  Warning(kernel/sched.c:664): missing initial short description\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110315161230.c4e1e8e3.rdunlap@xenotime.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5f6fb45466b2273ffb91c9cf209f164f666c33b1",
      "tree": "2b19f24b678ae379be1b19338c3095c1f76ed41d",
      "parents": [
        "3904afb41d4316f7a2968c615d689e19149a4f84",
        "c0185808eb85139f45dbfd0de66963c498d0c4db"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 19:23:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 19:23:40 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: (116 commits)\n  x86: Enable forced interrupt threading support\n  x86: Mark low level interrupts IRQF_NO_THREAD\n  x86: Use generic show_interrupts\n  x86: ioapic: Avoid redundant lookup of irq_cfg\n  x86: ioapic: Use new move_irq functions\n  x86: Use the proper accessors in fixup_irqs()\n  x86: ioapic: Use irq_data-\u003estate\n  x86: ioapic: Simplify irq chip and handler setup\n  x86: Cleanup the genirq name space\n  genirq: Add chip flag to force mask on suspend\n  genirq: Add desc-\u003eirq_data accessor\n  genirq: Add comments to Kconfig switches\n  genirq: Fixup fasteoi handler for oneshot mode\n  genirq: Provide forced interrupt threading\n  sched: Switch wait_task_inactive to schedule_hrtimeout()\n  genirq: Add IRQF_NO_THREAD\n  genirq: Allow shared oneshot interrupts\n  genirq: Prepare the handling of shared oneshot interrupts\n  genirq: Make warning in handle_percpu_event useful\n  x86: ioapic: Move trigger defines to io_apic.h\n  ...\n\nFix up trivial(?) conflicts in arch/x86/pci/xen.c due to genirq name\nspace changes clashing with the Xen cleanups.  The set_irq_msi() had\nmoved to xen_bind_pirq_msi_to_irq().\n"
    },
    {
      "commit": "420c1c572d4ceaa2f37b6311b7017ac6cf049fe2",
      "tree": "df04e6b4b756b7a46d9887462d54a3ad0e1f91d5",
      "parents": [
        "9620639b7ea3843983f4ced8b4c81eb4d8974838",
        "6e6823d17b157f185be09f4c70181299f9273f0b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:53:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:53:35 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: (62 commits)\n  posix-clocks: Check write permissions in posix syscalls\n  hrtimer: Remove empty hrtimer_init_hres_timer()\n  hrtimer: Update hrtimer-\u003estate documentation\n  hrtimer: Update base[CLOCK_BOOTTIME].offset correctly\n  timers: Export CLOCK_BOOTTIME via the posix timers interface\n  timers: Add CLOCK_BOOTTIME hrtimer base\n  time: Extend get_xtime_and_monotonic_offset() to also return sleep\n  time: Introduce get_monotonic_boottime and ktime_get_boottime\n  hrtimers: extend hrtimer base code to handle more then 2 clockids\n  ntp: Remove redundant and incorrect parameter check\n  mn10300: Switch do_timer() to xtimer_update()\n  posix clocks: Introduce dynamic clocks\n  posix-timers: Cleanup namespace\n  posix-timers: Add support for fd based clocks\n  x86: Add clock_adjtime for x86\n  posix-timers: Introduce a syscall for clock tuning.\n  time: Splitout compat timex accessors\n  ntp: Add ADJ_SETOFFSET mode bit\n  time: Introduce timekeeping_inject_offset\n  posix-timer: Update comment\n  ...\n\nFix up new system-call-related conflicts in\n\tarch/x86/ia32/ia32entry.S\n\tarch/x86/include/asm/unistd_32.h\n\tarch/x86/include/asm/unistd_64.h\n\tarch/x86/kernel/syscall_table_32.S\n(name_to_handle_at()/open_by_handle_at() vs clock_adjtime()), and some\ndue to movement of get_jiffies_64() in:\n\tkernel/time.c\n"
    },
    {
      "commit": "9620639b7ea3843983f4ced8b4c81eb4d8974838",
      "tree": "54266fac3bcf89e61ae06c7d36ca708df6e0ea33",
      "parents": [
        "a926021cb1f8a99a275eaf6eb546102e9469dc59",
        "6d1cafd8b56ea726c10a5a104de57cc3ed8fa953"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:37:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:37:30 2011 -0700"
      },
      "message": "Merge branch \u0027sched-core-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: (26 commits)\n  sched: Resched proper CPU on yield_to()\n  sched: Allow users with sufficient RLIMIT_NICE to change from SCHED_IDLE policy\n  sched: Allow SCHED_BATCH to preempt SCHED_IDLE tasks\n  sched: Clean up the IRQ_TIME_ACCOUNTING code\n  sched: Add #ifdef around irq time accounting functions\n  sched, autogroup: Stop claiming ownership of the root task group\n  sched, autogroup: Stop going ahead if autogroup is disabled\n  sched, autogroup, sysctl: Use proc_dointvec_minmax() instead\n  sched: Fix the group_imb logic\n  sched: Clean up some f_b_g() comments\n  sched: Clean up remnants of sd_idle\n  sched: Wholesale removal of sd_idle logic\n  sched: Add yield_to(task, preempt) functionality\n  sched: Use a buddy to implement yield_task_fair()\n  sched: Limit the scope of clear_buddies\n  sched: Check the right -\u003enr_running in yield_task_fair()\n  sched: Avoid expensive initial update_cfs_load(), on UP too\n  sched: Fix switch_from_fair()\n  sched: Simplify the idle scheduling class\n  softirqs: Account ksoftirqd time as cpustat softirq\n  ...\n"
    },
    {
      "commit": "a926021cb1f8a99a275eaf6eb546102e9469dc59",
      "tree": "c6d0300cd4b1a1fd658708476db4577b68b4de31",
      "parents": [
        "0586bed3e8563c2eb89bc7256e30ce633ae06cfb",
        "5e814dd597c42daeb8d2a276e64a6ec986ad0e2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:31:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:31:30 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: (184 commits)\n  perf probe: Clean up probe_point_lazy_walker() return value\n  tracing: Fix irqoff selftest expanding max buffer\n  tracing: Align 4 byte ints together in struct tracer\n  tracing: Export trace_set_clr_event()\n  tracing: Explain about unstable clock on resume with ring buffer warning\n  ftrace/graph: Trace function entry before updating index\n  ftrace: Add .ref.text as one of the safe areas to trace\n  tracing: Adjust conditional expression latency formatting.\n  tracing: Fix event alignment: skb:kfree_skb\n  tracing: Fix event alignment: mce:mce_record\n  tracing: Fix event alignment: kvm:kvm_hv_hypercall\n  tracing: Fix event alignment: module:module_request\n  tracing: Fix event alignment: ftrace:context_switch and ftrace:wakeup\n  tracing: Remove lock_depth from event entry\n  perf header: Stop using \u0027self\u0027\n  perf session: Use evlist/evsel for managing perf.data attributes\n  perf top: Don\u0027t let events to eat up whole header line\n  perf top: Fix events overflow in top command\n  ring-buffer: Remove unused #include \u003clinux/trace_irq.h\u003e\n  tracing: Add an \u0027overwrite\u0027 trace_option.\n  ...\n"
    },
    {
      "commit": "0586bed3e8563c2eb89bc7256e30ce633ae06cfb",
      "tree": "7a59610f45f7222f25b3212c53fa28636bb4427c",
      "parents": [
        "b80cd62b7d4406bbe8c573fe4381dcc71a2850fd",
        "dbebbfbb1605f0179e7c0d900d941cc9c45de569"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:28:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:28:30 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  rtmutex: tester: Remove the remaining BKL leftovers\n  lockdep/timers: Explain in detail the locking problems del_timer_sync() may cause\n  rtmutex: Simplify PI algorithm and make highest prio task get lock\n  rwsem: Remove redundant asmregparm annotation\n  rwsem: Move duplicate function prototypes to linux/rwsem.h\n  rwsem: Unify the duplicate rwsem_is_locked() inlines\n  rwsem: Move duplicate init macros and functions to linux/rwsem.h\n  rwsem: Move duplicate struct rwsem declaration to linux/rwsem.h\n  x86: Cleanup rwsem_count_t typedef\n  rwsem: Cleanup includes\n  locking: Remove deprecated lock initializers\n  cred: Replace deprecated spinlock initialization\n  kthread: Replace deprecated spinlock initialization\n  xtensa: Replace deprecated spinlock initialization\n  um: Replace deprecated spinlock initialization\n  sparc: Replace deprecated spinlock initialization\n  mips: Replace deprecated spinlock initialization\n  cris: Replace deprecated spinlock initialization\n  alpha: Replace deprecated spinlock initialization\n  rtmutex-tester: Remove BKL tests\n"
    },
    {
      "commit": "b80cd62b7d4406bbe8c573fe4381dcc71a2850fd",
      "tree": "b3fbd9dcaac45feefc554b5a46888b2cbec0c51d",
      "parents": [
        "c345f60a5f58a65004f22fb0d257d65ec1528310",
        "07d5ecae2940ddd77746e2fb597dcf57d3c2e277"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:23:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:23:52 2011 -0700"
      },
      "message": "Merge branch \u0027core-futexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-futexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  arm: Remove bogus comment in futex_atomic_cmpxchg_inatomic()\n  futex: Deobfuscate handle_futex_death()\n  plist: Add priority list test\n  plist: Shrink struct plist_head\n  futex,plist: Remove debug lock assignment from plist_node\n  futex,plist: Pass the real head of the priority list to plist_del()\n  futex: Sanitize futex ops argument types\n  futex: Sanitize cmpxchg_futex_value_locked API\n  futex: Remove redundant pagefault_disable in futex_atomic_cmpxchg_inatomic()\n  futex: Avoid redudant evaluation of task_pid_vnr()\n  futex: Update futex_wait_setup comments about locking\n"
    },
    {
      "commit": "c345f60a5f58a65004f22fb0d257d65ec1528310",
      "tree": "d82d4a9de6034534a4408495c63f992ed9b524b5",
      "parents": [
        "422e6c4bc4b48c15b3cb57a1ca71431abfc57e54",
        "997772884036e6e121de39322179989154437d9f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:23:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 18:23:25 2011 -0700"
      },
      "message": "Merge branch \u0027core-debugobjects-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-debugobjects-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  debugobjects: Add hint for better object identification\n"
    },
    {
      "commit": "422e6c4bc4b48c15b3cb57a1ca71431abfc57e54",
      "tree": "81ceb21f84a79e796ee33b5d17e17406f096abcb",
      "parents": [
        "c83ce989cb5ff86575821992ea82c4df5c388ebc",
        "574197e0de46a8a4db5c54ef7b65e43ffa8873a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 15:48:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 15:48:13 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (57 commits)\n  tidy the trailing symlinks traversal up\n  Turn resolution of trailing symlinks iterative everywhere\n  simplify link_path_walk() tail\n  Make trailing symlink resolution in path_lookupat() iterative\n  update nd-\u003einode in __do_follow_link() instead of after do_follow_link()\n  pull handling of one pathname component into a helper\n  fs: allow AT_EMPTY_PATH in linkat(), limit that to CAP_DAC_READ_SEARCH\n  Allow passing O_PATH descriptors via SCM_RIGHTS datagrams\n  readlinkat(), fchownat() and fstatat() with empty relative pathnames\n  Allow O_PATH for symlinks\n  New kind of open files - \"location only\".\n  ext4: Copy fs UUID to superblock\n  ext3: Copy fs UUID to superblock.\n  vfs: Export file system uuid via /proc/\u003cpid\u003e/mountinfo\n  unistd.h: Add new syscalls numbers to asm-generic\n  x86: Add new syscalls for x86_64\n  x86: Add new syscalls for x86_32\n  fs: Remove i_nlink check from file system link callback\n  fs: Don\u0027t allow to create hardlink for deleted file\n  vfs: Add open by file handle support\n  ...\n"
    },
    {
      "commit": "397fae081869784d07cd4edde0ddf436ca2011e0",
      "tree": "e6869f145a83e75bff957a3e5a2f72d8b847b75c",
      "parents": [
        "c7146dd0090b9c98ae8525900abf1c38fc7e4e0d",
        "1aa0b51a033d4a1ec6d29d06487e053398afa21b",
        "3d74a539ae07a8f3c061332e426fc07b2310cf05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 10:47:16 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 10:47:16 2011 -0700"
      },
      "message": "Merge branches \u0027stable/irq.rework\u0027 and \u0027stable/pcifront-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\n* \u0027stable/irq.rework\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen/irq: Cleanup up the pirq_to_irq for DomU PV PCI passthrough guests as well.\n  xen: Use IRQF_FORCE_RESUME\n  xen/timer: Missing IRQF_NO_SUSPEND in timer code broke suspend.\n  xen: Fix compile error introduced by \"switch to new irq_chip functions\"\n  xen: Switch to new irq_chip functions\n  xen: Remove stale irq_chip.end\n  xen: events: do not free legacy IRQs\n  xen: events: allocate GSIs and dynamic IRQs from separate IRQ ranges.\n  xen: events: add xen_allocate_irq_{dynamic, gsi} and xen_free_irq\n  xen:events: move find_unbound_irq inside CONFIG_PCI_MSI\n  xen: handled remapped IRQs when enabling a pcifront PCI device.\n  genirq: Add IRQF_FORCE_RESUME\n\n* \u0027stable/pcifront-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  pci/xen: When free-ing MSI-X/MSI irq-\u003edesc also use generic code.\n  pci/xen: Cleanup: convert int** to int[]\n  pci/xen: Use xen_allocate_pirq_msi instead of xen_allocate_pirq\n  xen-pcifront: Sanity check the MSI/MSI-X values\n  xen-pcifront: don\u0027t use flush_scheduled_work()\n"
    },
    {
      "commit": "becfd1f37544798cbdfd788f32c827160fab98c1",
      "tree": "80353bdc7e59c661e841d2d0029bb308c0ed4da0",
      "parents": [
        "990d6c2d7aee921e3bce22b2d6a750fd552262be"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Jan 29 18:43:26 2011 +0530"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 15 02:21:44 2011 -0400"
      },
      "message": "vfs: Add open by file handle support\n\n[AV: duplicate of open() guts removed; file_open_root() used instead]\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "990d6c2d7aee921e3bce22b2d6a750fd552262be",
      "tree": "af273c4bfbfd0342d39d05d5a017382eb32a7538",
      "parents": [
        "f52e0c11305aa09ed56cad97ffc8f0cdc3d78b5d"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Jan 29 18:43:26 2011 +0530"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 15 02:21:37 2011 -0400"
      },
      "message": "vfs: Add name to file handle conversion support\n\nThe syscall also return mount id which can be used\nto lookup file system specific information such as uuid\nin /proc/\u003cpid\u003e/mountinfo\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6e0aa9f8a8190e0879a29bd67aa606b51734a122",
      "tree": "66b92176051147b87031cc2755639c39f8a900f8",
      "parents": [
        "995612178c88407d8330f580ba6572cb8b284dd8"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 14 10:34:35 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 14 21:08:47 2011 +0100"
      },
      "message": "futex: Deobfuscate handle_futex_death()\n\nhandle_futex_death() uses futex_atomic_cmpxchg_inatomic() without\ndisabling page faults. That\u0027s ok, but totally non obvious.\n\nWe don\u0027t hold locks so we actually can and want to fault here, because\nthe get_user() before futex_atomic_cmpxchg_inatomic() does not\nguarantee a R/W mapping.\n\nWe could just add a big fat comment to explain this, but actually\nchanging the code so that the functionality is entirely clear is\nbetter.\n\nUse the helper function which disables page faults around the\nfutex_atomic_cmpxchg_inatomic() and handle a fault with a call to\nfault_in_user_writeable() as all other places in the futex code do as\nwell.\n\nPointed-out-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Darren Hart \u003cdarren@dvhart.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: \"James E.J. Bottomley\" \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nLKML-Reference: \u003calpine.LFD.2.00.1103141126590.2787@localhost6.localdomain6\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5f40d4209461f23a15d88c6b55993bb8b0fa2670",
      "tree": "2261f8576d1317c5810edc326be0dfff964c254f",
      "parents": [
        "215fd2fa8879247ac6e3af1dc44af7cae8c06f1e",
        "53d4737580535e073963b91ce87d4216e434fab5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 14 11:19:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 14 11:19:50 2011 -0700"
      },
      "message": "Merge branch \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* \u0027bugfixes\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:\n  NFS: NFSROOT should default to \"proto\u003dudp\"\n  nfs4: remove duplicated #include\n  NFSv4: nfs4_state_mark_reclaim_nograce() should be static\n  NFSv4: Fix the setlk error handler\n  NFSv4.1: Fix the handling of the SEQUENCE status bits\n  NFSv4/4.1: Fix nfs4_schedule_state_recovery abuses\n  NFSv4.1 reclaim complete must wait for completion\n  NFSv4: remove duplicate clientid in struct nfs_client\n  NFSv4.1: Retry CREATE_SESSION on NFS4ERR_DELAY\n  sunrpc: Propagate errors from xs_bind() through xs_create_sock()\n  (try3-resend) Fix nfs_compat_user_ino64 so it doesn\u0027t cause problems if bit 31 or 63 are set in fileid\n  nfs: fix compilation warning\n  nfs: add kmalloc return value check in decode_and_add_ds\n  SUNRPC: Remove resource leak in svc_rdma_send_error()\n  nfs: close NFSv4 COMMIT vs. CLOSE race\n  SUNRPC: Close a race in __rpc_wait_for_completion_task()\n"
    },
    {
      "commit": "73d049a40fc6269189c4e2ba6792cb5dd054883c",
      "tree": "a713747cd06926ad89bfa9b36ea13dd20bbc507f",
      "parents": [
        "5b6ca027d85b7438c84b78a54ccdc2e53f2909cd"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 11 12:08:24 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Mar 14 09:15:28 2011 -0400"
      },
      "message": "open-style analog of vfs_path_lookup()\n\nnew function: file_open_root(dentry, mnt, name, flags) opens the file\nvfs_path_lookup would arrive to.\n\nNote that name can be empty; in that case the usual requirement that\ndentry should be a directory is lifted.\n\nopen-coded equivalents switched to it, may_open() got down exactly\none caller and became static.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c9c6cac0c2bdbda42e7b804838648d0bc60ddb13",
      "tree": "c2d9b41eb24026d6769175e9ba3c17c8093b6aad",
      "parents": [
        "15a9155fe3e8215c02b80df51ec2cac7c0d726ad"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Feb 16 15:15:47 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Mar 14 09:15:23 2011 -0400"
      },
      "message": "kill path_lookup()\n\nall remaining callers pass LOOKUP_PARENT to it, so\nflags argument can die; renamed to kern_path_parent()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "15a9155fe3e8215c02b80df51ec2cac7c0d726ad",
      "tree": "8336c506ffd9968678b906a10d625330aaaa83b3",
      "parents": [
        "586ce098a23b6ab7383df853a84ae3d48dc889aa"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Feb 16 15:08:54 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Mar 14 09:15:23 2011 -0400"
      },
      "message": "fix race in audit_get_nd()\n\ndon\u0027t rely on pathname resolution ending up twice at the same point...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6e6823d17b157f185be09f4c70181299f9273f0b",
      "tree": "8a9009e2d54955c1a9c5a033493c8668915d09f8",
      "parents": [
        "a9e7acfff0a279792918b7b0de74106e576e9988"
      ],
      "author": {
        "name": "Torben Hohn",
        "email": "torbenh@gmx.de",
        "time": "Thu Mar 03 18:26:14 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 12 21:27:07 2011 +0100"
      },
      "message": "posix-clocks: Check write permissions in posix syscalls\n\npc_clock_settime() and pc_clock_adjtime() do not check whether the fd\nwas opened in write mode, so a clock can be set with a read only fd.\n\n[ tglx: We deliberately do not return -EPERM as we want this to be\n  \tdistingushable from the capability based permission check ]\n\nSigned-off-by: Torben Hohn \u003ctorbenh@gmx.de\u003e\nLKML-Reference: \u003c1299173174-348-4-git-send-email-torbenh@gmx.de\u003e\nCc: Richard Cochran \u003crichard.cochran@omicron.at\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "995612178c88407d8330f580ba6572cb8b284dd8",
      "tree": "ea19d21342814758a729ba931180146422393d15",
      "parents": [
        "8d7718aa082aaf30a0b4989e1f04858952f941bc",
        "6d55da53db3d9b911f69f2ce1e5fb8943eafe057"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 12 11:37:14 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 12 11:43:32 2011 +0100"
      },
      "message": "Merge branch \u0027tip/futex/devel\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-rt into core/futexes\n\n futex,plist: Pass the real head of the priority list to plist_del()\n futex,plist: Remove debug lock assignment from plist_node\n plist: Shrink struct plist_head\n plist: Add priority list test\n"
    },
    {
      "commit": "d209a699a0b975ad47f399d70ddc3791f1b84496",
      "tree": "225ee2dd5e51acc769cd272ce86d36405e933ed2",
      "parents": [
        "d9936bb3952a08d701f7b03f8f62d158f94d8085"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 21:22:14 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 12 11:12:58 2011 +0100"
      },
      "message": "genirq: Add chip flag to force mask on suspend\n\nOn suspend we disable all interrupts in the core code, but this does\nnot mask the interrupt line in the default implementation as we use a\nlazy disable approach. That means we mark the interrupt disabled, but\nleave the hardware unmasked. That\u0027s an optimization because we avoid\nthe hardware access for the common case where no interrupt happens\nafter we marked it disabled. If an interrupt happens, then the\ninterrupt flow handler masks the line at the hardware level and marks\nit pending.\n\nSuspend makes use of this delayed disable as it \"disables\" all\ninterrupts when preparing the suspend transition. Right before the\nsystem goes into hardware suspend state it checks whether one of the\ninterrupts which is marked as a wakeup interrupt came in after\ndisabling it.\n\nMost interrupt chips have a separate register which selects the\ninterrupts which can wake up the system from suspend, so we don\u0027t have\nto mask any on the non wakeup interrupts.\n\nBut now we have to deal with brilliant designed hardware which lacks\nsuch a wakeup configuration facility. For such hardware it\u0027s necessary\nto mask all non wakeup interrupts before going into suspend in order\nto avoid the wakeup from random interrupts.\n\nRather than working around this in the affected interrupt chip\nimplementations we can solve this elegant in the core code itself.\n\nAdd a flag IRQCHIP_MASK_ON_SUSPEND which can be set by the irq chip\nimplementation to indicate, that the interrupts which are not selected\nas wakeup sources must be masked in the suspend path. Mask them in the\nloop which checks the wakeup interrupts pending flag.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\nLKML-Reference: \u003calpine.LFD.2.00.1103112112310.2787@localhost6.localdomain6\u003e\n\n"
    },
    {
      "commit": "017f2b239dabb2740b91df162e004371b861f371",
      "tree": "ed429ce014e9998abe35a764e48e1ad22b46da59",
      "parents": [
        "2e12978a9f7a7abd54e8eb9ce70a7718767b8b2c"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 21 17:55:10 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Mar 11 15:09:53 2011 -0500"
      },
      "message": "futex,plist: Remove debug lock assignment from plist_node\n\nThe original code uses \u0026plist_node-\u003eplist as the fake head of\nthe priority list for plist_del(), these debug locks in\nthe fake head are needed for CONFIG_DEBUG_PI_LIST.\n\nBut now we always pass the real head to plist_del(), the debug locks\nin plist_node will not be used, so we remove these assignments.\n\nAcked-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nSigned-off-by:  Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4D10797E.7040803@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "2e12978a9f7a7abd54e8eb9ce70a7718767b8b2c",
      "tree": "eb4f298e084b5bcc4922511237cd6ce2e158abdd",
      "parents": [
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Dec 22 14:18:50 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Mar 11 15:09:52 2011 -0500"
      },
      "message": "futex,plist: Pass the real head of the priority list to plist_del()\n\nSome plist_del()s in kernel/futex.c are passed a faked head of the\npriority list.\n\nIt does not fail because the current code does not require the real head\nin plist_del(). The current code of plist_del() just uses the head for checking,\nso it will not cause a bad result even when we use a faked head.\n\nBut it is undocumented usage:\n\n/**\n * plist_del - Remove a @node from plist.\n *\n * @node:\t\u0026struct plist_node pointer - entry to be removed\n * @head:\t\u0026struct plist_head pointer - list head\n */\n\nThe document says that the @head is the \"list head\" head of the priority list.\n\nIn futex code, several places use \"plist_del(\u0026q-\u003elist, \u0026q-\u003elist.plist);\",\nthey pass a fake head. We need to fix them all.\n\nThanks to Darren Hart for many suggestions.\n\nAcked-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nSigned-off-by:  Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4D11984A.5030203@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "37a9d912b24f96a0591773e6e6c3642991ae5a70",
      "tree": "5c4d5b9a52e2c533269e589115afbd25b6c8534b",
      "parents": [
        "522d7decc0370070448a8c28982c8dfd8970489e"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Thu Mar 10 18:48:51 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 12:23:08 2011 +0100"
      },
      "message": "futex: Sanitize cmpxchg_futex_value_locked API\n\nThe cmpxchg_futex_value_locked API was funny in that it returned either\nthe original, user-exposed futex value OR an error code such as -EFAULT.\nThis was confusing at best, and could be a source of livelocks in places\nthat retry the cmpxchg_futex_value_locked after trying to fix the issue\nby running fault_in_user_writeable().\n    \nThis change makes the cmpxchg_futex_value_locked API more similar to the\nget_futex_value_locked one, returning an error code and updating the\noriginal value through a reference argument.\n    \nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e  [tile]\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e  [ia64]\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Michal Simek \u003cmonstr@monstr.eu\u003e  [microblaze]\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e [frv]\nCc: Darren Hart \u003cdarren@dvhart.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: \"James E.J. Bottomley\" \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110311024851.GC26122@google.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "c0c9ed15042ceac7c485813012a0a97316101b57",
      "tree": "c89272252b44c8330854bee7291e81252d7715f5",
      "parents": [
        "8fe8f545c6d753ead15e1f4919d39e8f9bb49629"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 11:51:22 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 12:23:07 2011 +0100"
      },
      "message": "futex: Avoid redudant evaluation of task_pid_vnr()\n\nThe result is not going to change under us, so no need to reevaluate\nthis over and over. Seems to be a leftover from the mechanical mass\nconversion of task-\u003epid to task_pid_vnr(tsk).\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bf98f77888c92fa3aeb28791ba3b5c30675076f3",
      "tree": "88a25f66e0158028e5fa29d671ca4ec06283293f",
      "parents": [
        "d9597075fb6feb1b3dc71c352e334c5b0a37afde",
        "0c3b9168017cbad2c4af3dd65ec93fe646eeaa62"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 10 13:08:59 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 10 13:08:59 2011 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Fix sched rt group scheduling when hierachy is enabled\n"
    },
    {
      "commit": "bf294b41cefcb22fc3139e0f42c5b3f06728bd5e",
      "tree": "250251c040a2d2e278b5a2ddd03c8d20a27be129",
      "parents": [
        "214d93b02c4fe93638ad268613c9702a81ed9192"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 21 11:05:41 2011 -0800"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 10 15:04:52 2011 -0500"
      },
      "message": "SUNRPC: Close a race in __rpc_wait_for_completion_task()\n\nAlthough they run as rpciod background tasks, under normal operation\n(i.e. no SIGKILL), functions like nfs_sillyrename(), nfs4_proc_unlck()\nand nfs4_do_close() want to be fully synchronous. This means that when we\nexit, we want all references to the rpc_task to be gone, and we want\nany dentry references etc. held by that task to be released.\n\nFor this reason these functions call __rpc_wait_for_completion_task(),\nfollowed by rpc_put_task() in the expectation that the latter will be\nreleasing the last reference to the rpc_task, and thus ensuring that the\ncallback_ops-\u003erpc_release() has been called synchronously.\n\nThis patch fixes a race which exists due to the fact that\nrpciod calls rpc_complete_task() (in order to wake up the callers of\n__rpc_wait_for_completion_task()) and then subsequently calls\nrpc_put_task() without ensuring that these two steps are done atomically.\n\nIn order to avoid adding new spin locks, the patch uses the existing\nwaitqueue spin lock to order the rpc_task reference count releases between\nthe waiting process and rpciod.\nThe common case where nobody is waiting for completion is optimised for by\nchecking if the RPC_TASK_ASYNC flag is cleared and/or if the rpc_task\nreference count is 1: in those cases we drop trying to grab the spin lock,\nand immediately free up the rpc_task.\n\nThose few processes that need to put the rpc_task from inside an\nasynchronous context and that do not care about ordering are given a new\nhelper: rpc_put_task_async().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8fe8f545c6d753ead15e1f4919d39e8f9bb49629",
      "tree": "b188ce42c3b18f481e6f727004499171aa5462c1",
      "parents": [
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Sun Mar 06 18:07:50 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 10 19:56:18 2011 +0100"
      },
      "message": "futex: Update futex_wait_setup comments about locking\n\nReviving a cleanup I had done about a year ago as part of a larger\nfutex_set_wait proposal. Over the years, the locking of the hashed\nfutex queue got improved, so that some of the \"rare but normal\" race\nconditions described in comments can\u0027t actually happen anymore.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110307020750.GA31188@google.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a9e7acfff0a279792918b7b0de74106e576e9988",
      "tree": "07e17df82bad2863213160b629a3bfa0cd702019",
      "parents": [
        "53370d2e8c0382e3e2aa76def93365ed674e7fc7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 10 19:12:24 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 10 19:15:59 2011 +0100"
      },
      "message": "hrtimer: Remove empty hrtimer_init_hres_timer()\n\nLeftover from earlier implementation. All empty, remove it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4a0b1665db09cf2da9ad7d0f12da386373c10bfa",
      "tree": "aecfb7f1d6df7920fc7134125bfe24647c98cdc4",
      "parents": [
        "9a24470b2826e4665b1484836c7ae6aba1ddea32"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 09 20:09:26 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:58 2011 -0500"
      },
      "message": "tracing: Fix irqoff selftest expanding max buffer\n\nIf the kernel command line declares a tracer \"ftrace\u003dsometracer\" and\nthat tracer is either not defined or is enabled after irqsoff,\nthen the irqs off selftest will fail with the following error:\n\nTesting tracer irqsoff:\n------------[ cut here ]------------\nWARNING: at /home/rostedt/work/autotest/nobackup/linux-test.git/kernel/trace/tra\nce.c:713 update_max_tr_single+0xfa/0x11b()\nHardware name:\nModules linked in:\nPid: 1, comm: swapper Not tainted 2.6.38-rc8-test #1\nCall Trace:\n [\u003cc0441d9d\u003e] ? warn_slowpath_common+0x65/0x7a\n [\u003cc049adb2\u003e] ? update_max_tr_single+0xfa/0x11b\n [\u003cc0441dc1\u003e] ? warn_slowpath_null+0xf/0x13\n [\u003cc049adb2\u003e] ? update_max_tr_single+0xfa/0x11b\n [\u003cc049e454\u003e] ? stop_critical_timing+0x154/0x204\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049e529\u003e] ? time_hardirqs_on+0x25/0x28\n [\u003cc0468bca\u003e] ? trace_hardirqs_on_caller+0x18/0x12f\n [\u003cc0468cec\u003e] ? trace_hardirqs_on+0xb/0xd\n [\u003cc049b54b\u003e] ? trace_selftest_startup_irqsoff+0x5b/0xc1\n [\u003cc049b6b8\u003e] ? register_tracer+0xf8/0x1a3\n [\u003cc14e93fe\u003e] ? init_irqsoff_tracer+0xd/0x11\n [\u003cc040115e\u003e] ? do_one_initcall+0x71/0x121\n [\u003cc14e93f1\u003e] ? init_irqsoff_tracer+0x0/0x11\n [\u003cc14ce3a9\u003e] ? kernel_init+0x13a/0x1b6\n [\u003cc14ce26f\u003e] ? kernel_init+0x0/0x1b6\n [\u003cc0403842\u003e] ? kernel_thread_helper+0x6/0x10\n---[ end trace e93713a9d40cd06c ]---\n.. no entries found ..FAILED!\n\nWhat happens is the \"ftrace\u003d...\" will expand the ring buffer to its\ndefault size (from its minimum size) but it will not expand the\nmax ring buffer (the ring buffer to store maximum latencies).\nWhen the irqsoff test runs, it will call the ring buffer swap routine\nthat checks if the max ring buffer is the same size as the normal\nring buffer, and will fail if it is not. This causes the test to fail.\n\nThe solution is to expand the max ring buffer before running the self\ntest if the max ring buffer is used by that tracer and the normal ring\nbuffer is expanded. The max ring buffer should be shrunk again after\nthe test is done to save space.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "9a24470b2826e4665b1484836c7ae6aba1ddea32",
      "tree": "277786327395bf98050498f0c97807f41dc8be45",
      "parents": [
        "56355b83e2a24ce7e1870c8479205e2cdd332225"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 09 14:53:38 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:54 2011 -0500"
      },
      "message": "tracing: Align 4 byte ints together in struct tracer\n\nMove elements in struct tracer for better alignment.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "56355b83e2a24ce7e1870c8479205e2cdd332225",
      "tree": "e85804c55de4f125332d8052c9181d2b8ae84a20",
      "parents": [
        "31274d72f01604f4b02d933b4f3cac84d2c201fd"
      ],
      "author": {
        "name": "Yuanhan Liu",
        "email": "yuanhan.liu@linux.intel.com",
        "time": "Mon Nov 08 14:05:12 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:51 2011 -0500"
      },
      "message": "tracing: Export trace_set_clr_event()\n\nTrace events belonging to a module only exists when the module is\nloaded. Well, we can use trace_set_clr_event funtion to enable some\ntrace event at the module init routine, so that we will not miss\nsomething while loading then module.\n\nSo, Export the trace_set_clr_event function so that module can use it.\n\nSigned-off-by: Yuanhan Liu \u003cyuanhan.liu@linux.intel.com\u003e\nLKML-Reference: \u003c1289196312-25323-1-git-send-email-yuanhan.liu@linux.intel.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "31274d72f01604f4b02d933b4f3cac84d2c201fd",
      "tree": "d85c4bbe7fab3bcc9347de3a7788789fc2aa7c8d",
      "parents": [
        "722b3c74695377d11d18a52f3da08114d37f3f37"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Fri Feb 18 15:52:19 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:47 2011 -0500"
      },
      "message": "tracing: Explain about unstable clock on resume with ring buffer warning\n\nThe \"Delta way too big\" warning might appear on a system with a\nunstable shed clock right after the system is resumed and tracing\nwas enabled at time of suspend.\n\nSince it\u0027s not realy a bug, and the unstable sched clock is working\nfast and reliable otherwise, Steven suggested to keep using the\nsched clock in any case and just to make note in the warning itself.\n\nv2 changes:\n- added #ifdef CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c20110218145219.GD2604@jolsa.brq.redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "10da37a645b5e915d8572cc2b1f5eb11ada3ea4f",
      "tree": "0eec725a2ecc24cb0a8e5c234794cfb6cd3f94f9",
      "parents": [
        "ca9da2dd63b0b32de1b693953dff66cadeb6400b"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Fri Dec 03 16:13:26 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:35 2011 -0500"
      },
      "message": "tracing: Adjust conditional expression latency formatting.\n\nFormatting change only to improve code readability. No code changes except to\nintroduce intermediate variables.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291421609-14665-13-git-send-email-dhsharp@google.com\u003e\n\n[ Keep variable declarations and assignment separate ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "140e4f2d1cd816aed196705c036763313c0e4bd3",
      "tree": "0885c7588519f3d465424576278809d7c008b061",
      "parents": [
        "e6e1e2593592a8f6f6380496655d8c6f67431266"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Fri Dec 03 16:13:19 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:34:16 2011 -0500"
      },
      "message": "tracing: Fix event alignment: ftrace:context_switch and ftrace:wakeup\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291421609-14665-6-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e6e1e2593592a8f6f6380496655d8c6f67431266",
      "tree": "00ef843b23fac5ab6be92725ce5b01487f555997",
      "parents": [
        "de29be5e712dc8b7eef2bef9417af3bb6a88e47a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Mar 09 10:41:56 2011 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Mar 10 10:31:48 2011 -0500"
      },
      "message": "tracing: Remove lock_depth from event entry\n\nThe lock_depth field in the event headers was added as a temporary\ndata point for help in removing the BKL. Now that the BKL is pretty\nmuch been removed, we can remove this field.\n\nThis in turn changes the header from 12 bytes to 8 bytes,\nremoving the 4 byte buffer that gcc would insert if the first field\nin the data load was 8 bytes in size.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "78833dd70602be6b71ef34225f708b1e500947dc",
      "tree": "807050f760ccc7305b194d7568ebf98737076a40",
      "parents": [
        "a5abba989deceb731047425812d268daf7536575",
        "b306419ae08d9def53f2142a37cc0a58622307a8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 09 13:55:51 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 09 13:55:51 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  nd-\u003einode is not set on the second attempt in path_walk()\n  unfuck proc_sysctl -\u003ed_compare()\n  minimal fix for do_filp_open() race\n"
    },
    {
      "commit": "de29be5e712dc8b7eef2bef9417af3bb6a88e47a",
      "tree": "049d4bda5c141046b93616597b402d3966558a9b",
      "parents": [
        "750912fa366312e9c5bc83eab352898a26750401"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Fri Dec 03 16:13:16 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Mar 09 13:52:28 2011 -0500"
      },
      "message": "ring-buffer: Remove unused #include \u003clinux/trace_irq.h\u003e\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291421609-14665-3-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "750912fa366312e9c5bc83eab352898a26750401",
      "tree": "bb8e5cd1444a74ea283e3fa55607225e7fda4d70",
      "parents": [
        "2a8247a2600c3e087a568fc68a6ec4eedac27ef1"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Wed Dec 08 13:46:47 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Mar 09 13:52:27 2011 -0500"
      },
      "message": "tracing: Add an \u0027overwrite\u0027 trace_option.\n\nAdd an \"overwrite\" trace_option for ftrace to control whether the buffer should\nbe overwritten on overflow or not. The default remains to overwrite old events\nwhen the buffer is full. This patch adds the option to instead discard newest\nevents when the buffer is full. This is useful to get a snapshot of traces just\nafter enabling traces. Dropping the current event is also a simpler code path.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1291844807-15481-1-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "c68fd4f3ca90de7d18c567e70b2c164078aefadf",
      "tree": "eaa80d187b308a9a21af433e890b58fb22552612",
      "parents": [
        "c69e3758ff56d03e161187355791ec992c574276"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 08 19:52:55 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 08 19:52:55 2011 +0100"
      },
      "message": "genirq: Add comments to Kconfig switches\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "86cb2ec7b22a0a89b8660110dc03321fadbef45f",
      "tree": "c4162b0ab7c4e3602e2b7a6a6fd47c55c3315fea",
      "parents": [
        "7f0030b211579939461468f25b80c73e293c46e0",
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 08 17:21:49 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 08 17:21:52 2011 +0100"
      },
      "message": "Merge commit \u0027v2.6.38-rc8\u0027 into perf/core\n\nMerge reason: Merge latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "997772884036e6e121de39322179989154437d9f",
      "tree": "618ef63c45e16892ea26a99cafef6b0442e8eca1",
      "parents": [
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Mon Mar 07 09:58:33 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 08 16:10:38 2011 +0100"
      },
      "message": "debugobjects: Add hint for better object identification\n\nIn complex subsystems like mac80211 structures can contain several\ntimers and work structs, so identifying a specific instance from the\ncall trace and object type output of debugobjects can be hard.\n\nAllow the subsystems which support debugobjects to provide a hint\nfunction. This function returns a pointer to a kernel address\n(preferrably the objects callback function) which is printed along\nwith the debugobjects type.\n\nAdd hint methods for timer_list, work_struct and hrtimer.\n\n[ tglx: Massaged changelog, made it compile ]\n\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nLKML-Reference: \u003c20110307085809.GA9334@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "dfef6dcd35cb4a251f6322ca9b2c06f0bb1aa1f4",
      "tree": "65e8a25d4ed913658db35c4b97ab0a021c2124eb",
      "parents": [
        "1858efd471624ecb37e6b5462cab8076f47d1cee"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 08 01:25:28 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 08 02:22:27 2011 -0500"
      },
      "message": "unfuck proc_sysctl -\u003ed_compare()\n\na) struct inode is not going to be freed under -\u003ed_compare();\nhowever, the thing PROC_I(inode)-\u003esysctl points to just might.\nFortunately, it\u0027s enough to make freeing that sucker delayed,\nprovided that we don\u0027t step on its -\u003eunregistering, clear\nthe pointer to it in PROC_I(inode) before dropping the reference\nand check if it\u0027s NULL in -\u003ed_compare().\n\nb) I\u0027m not sure that we *can* walk into NULL inode here (we recheck\ndentry-\u003eseq between verifying that it\u0027s still hashed / fetching\ndentry-\u003ed_inode and passing it to -\u003ed_compare() and there\u0027s no\nnegative hashed dentries in /proc/sys/*), but if we can walk into\nthat, we really should not have -\u003ed_compare() return 0 on it!\nSaid that, I really suspect that this check can be simply killed.\nNick?\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b75f38d659e6fc747eda64cb72f3920e29dd44a4",
      "tree": "308edc066f8c26991323526d499eefa8c773f267",
      "parents": [
        "2ec38a0359e227c01080dcd670a0368c61ccd9ce"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Mar 04 17:36:21 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 04 17:53:38 2011 -0800"
      },
      "message": "cpuset: add a missing unlock in cpuset_write_resmask()\n\nDon\u0027t forget to release cgroup_mutex if alloc_trial_cpuset() fails.\n\n[akpm@linux-foundation.org: avoid multiple return points]\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3e89cc535223433a619d0969db3fa05cdd946b8",
      "tree": "a0026ecf98617b7a7ab000339ed79a06ec03d038",
      "parents": [
        "b65a0e0c84cf489bfa00d6aa6c48abc5a237100f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 04 09:23:30 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 04 09:23:30 2011 -0800"
      },
      "message": "Mark ptrace_{traceme,attach,detach} static\n\nThey are only used inside kernel/ptrace.c, and have been for a long\ntime.  We don\u0027t want to go back to the bad-old-days when architectures\ndid things on their own, so make them static and private.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "08309379b7083a9ceec0f9bb96a629058fb623c4",
      "tree": "c2863e7e97922e3e3bb3f97ca281b0ed6bf16aa0",
      "parents": [
        "2d0f25201ee210a0666ec9c41538ba05a07f8bc6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Mar 03 11:31:20 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:32:52 2011 +0100"
      },
      "message": "perf: Fix cgroup vs jump_label problem\n\nLi Zefan reported that the jump label code sleeps and we\u0027re calling it\nunder a spinlock, *fail* ;-)\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1b15d0558e82df9b3659804ceb44187b98eda354",
      "tree": "5ef63c23940d606bed12ae23a0ab5839c55fa919",
      "parents": [
        "f75e18cb9627b1d3d752b83a0b5563da0042c50a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Mar 03 14:26:06 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:32:51 2011 +0100"
      },
      "message": "perf cgroup: Clean up perf_cgroup_create()\n\n- Use kzalloc() to replace kmalloc() + memset().\n\n- Remove redundant initialization, since alloc_percpu() returns\n  zero-filled percpu memory.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4D6F347E.2010806@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f75e18cb9627b1d3d752b83a0b5563da0042c50a",
      "tree": "8cb13db9321012434faad540289ecd120a4671d4",
      "parents": [
        "3db272c0494900fcb905a201180a78cae3addd6e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Mar 03 14:25:50 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:32:51 2011 +0100"
      },
      "message": "perf cgroup: Fix unmatched call to perf_detach_cgroup()\n\nIn the failure path, we call perf_detach_cgroup(), but we didn\u0027t\ncall perf_get_cgroup() prio to it.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4D6F346E.9070606@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3db272c0494900fcb905a201180a78cae3addd6e",
      "tree": "cc15a5c4004c26d847162353f752dad4d9dbb03e",
      "parents": [
        "940c5b2971de443df22eed0441bc74fb0116e9f5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Mar 03 14:25:37 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:32:50 2011 +0100"
      },
      "message": "perf cgroup: Fix leak of file reference count\n\nIn perf_cgroup_connect(), fput_light() is missing in a failure path.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4D6F3461.6060406@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "940c5b2971de443df22eed0441bc74fb0116e9f5",
      "tree": "7264bdfcc08d5c6f0223d0d45ba7db4e47cf9957",
      "parents": [
        "888a8a3e9d79cbb9d83e53955f684998248580ec"
      ],
      "author": {
        "name": "Lin Ming",
        "email": "ming.m.lin@intel.com",
        "time": "Sun Feb 27 21:13:31 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:32:50 2011 +0100"
      },
      "message": "perf: Fix the missing event initialization when pmu is found in idr\n\nCurrently, the event is not initialized if pmu is found in idr. This\nnever causes bug just because now no pmu is associated with the idr\nid.\n\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1298812411.2699.9.camel@localhost\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6d1cafd8b56ea726c10a5a104de57cc3ed8fa953",
      "tree": "638ba81859114b2bda8b4899cf73cc20a8a31553",
      "parents": [
        "c02aa73b1d18e43cfd79c2f193b225e84ca497c8"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venki@google.com",
        "time": "Tue Mar 01 16:28:21 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:14:31 2011 +0100"
      },
      "message": "sched: Resched proper CPU on yield_to()\n\nyield_to_task_fair() has code to resched the CPU of yielding task when the\nintention is to resched the CPU of the task that is being yielded to.\n\nChange here fixes the problem and also makes the resched conditional on\nrq !\u003d p_rq.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1299025701-22168-1-git-send-email-venki@google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c02aa73b1d18e43cfd79c2f193b225e84ca497c8",
      "tree": "bd36bf363e667a915e3ceda99221531362139d51",
      "parents": [
        "a2f5c9ab79f78e8b91ac993e0543d65b661dd19b"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhart@linux.intel.com",
        "time": "Thu Feb 17 15:37:07 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:14:30 2011 +0100"
      },
      "message": "sched: Allow users with sufficient RLIMIT_NICE to change from SCHED_IDLE policy\n\nThe current scheduler implementation returns -EPERM when trying to\nchange from SCHED_IDLE to SCHED_OTHER or SCHED_BATCH. Since SCHED_IDLE\nis considered to be a nice 20 on steroids, changing to another policy\nshould be allowed provided the RLIMIT_NICE is accounted for.\n\nThis patch allows the following test-case to pass with RLIMIT_NICE\u003d40,\nbut still fail with RLIMIT_NICE\u003d10 when the calling process is run\nfrom a typical shell (nice 0, or 20 in rlimit terms).\n\nint main()\n{\n\tint ret;\n\tstruct sched_param sp;\n\tsp.sched_priority \u003d 0;\n\n\t/* switch to SCHED_IDLE */\n\tret \u003d sched_setscheduler(0, SCHED_IDLE, \u0026sp);\n\tprintf(\"setscheduler IDLE: %d\\n\", ret);\n\tif (ret) return ret;\n\n\t/* switch back to SCHED_OTHER */\n\tret \u003d sched_setscheduler(0, SCHED_OTHER, \u0026sp);\n\tprintf(\"setscheduler OTHER: %d\\n\", ret);\n\n\treturn ret;\n}\n\n $ ulimit -e\n 40\n $ ./test\n setscheduler IDLE: 0\n setscheduler OTHER: 0\n\n $ ulimit -e 10\n $ ulimit -e\n 10\n $ ./test\n setscheduler IDLE: 0\n setscheduler OTHER: -1\n\nSigned-off-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Richard Purdie \u003crichard.purdie@linuxfoundation.org\u003e\nLKML-Reference: \u003c4D657BEE.4040608@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a2f5c9ab79f78e8b91ac993e0543d65b661dd19b",
      "tree": "9fcdae7cad6745d02d5389ab591b454bb4c17b60",
      "parents": [
        "e0a92c17470775cd85bac52f5372ccc3dc58254a"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhart@linux.intel.com",
        "time": "Tue Feb 22 13:04:33 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:14:29 2011 +0100"
      },
      "message": "sched: Allow SCHED_BATCH to preempt SCHED_IDLE tasks\n\nPerform the test for SCHED_IDLE before testing for SCHED_BATCH (and\nensure idle tasks don\u0027t preempt idle tasks) so the non-interactive,\nbut still important, SCHED_BATCH tasks will run in favor of the very\nlow priority SCHED_IDLE tasks.\n\nSigned-off-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Richard Purdie \u003crichard.purdie@linuxfoundation.org\u003e\nLKML-Reference: \u003c1298408674-3130-2-git-send-email-dvhart@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e0a92c17470775cd85bac52f5372ccc3dc58254a",
      "tree": "9339da8754084bed50b941b018706b75482025cb",
      "parents": [
        "544b4a1f309d18f40969dbab7e08bafd136b2f55",
        "0c3b9168017cbad2c4af3dd65ec93fe646eeaa62"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:12:24 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:12:26 2011 +0100"
      },
      "message": "Merge branch \u0027sched/urgent\u0027 into sched/core\n\nMerge reason: Add fixes before applying dependent patches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0c3b9168017cbad2c4af3dd65ec93fe646eeaa62",
      "tree": "98ae84f8060a62bc95ab3734b345fa87d0688a16",
      "parents": [
        "b65a0e0c84cf489bfa00d6aa6c48abc5a237100f"
      ],
      "author": {
        "name": "Balbir Singh",
        "email": "balbir@linux.vnet.ibm.com",
        "time": "Thu Mar 03 17:04:35 2011 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 11:03:18 2011 +0100"
      },
      "message": "sched: Fix sched rt group scheduling when hierachy is enabled\n\nThe current sched rt code is broken when it comes to hierarchical\nscheduling, this patch fixes two problems\n\n1. It adds redundant enqueuing (harmless) when it finds a queue\n   has tasks enqueued, but it has no run time and it is not\n   throttled.\n\n2. The most important change is in sched_rt_rq_enqueue/dequeue.\n   The code just picks the rt_rq belonging to the current cpu\n   on which the period timer runs, the patch fixes it, so that\n   the correct rt_se is enqueued/dequeued.\n\nTested with a simple hierarchy\n\n/c/d, c and d assigned similar runtimes of 50,000 and a while\n1 loop runs within \"d\". Both c and d get throttled, without\nthe patch, the task just stops running and never runs (depends\non where the sched_rt b/w timer runs). With the patch, the\ntask is throttled and runs as expected.\n\n[ bharata, suggestions on how to pick the rt_se belong to the\n  rt_rq and correct cpu ]\n\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: stable@kernel.org\nLKML-Reference: \u003c20110303113435.GA2868@balbir.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "888a8a3e9d79cbb9d83e53955f684998248580ec",
      "tree": "3dbf548438c77d89c8696a9a79c4129cdc2f3d3e",
      "parents": [
        "cfff2d909cbdaf8c467bd321aa0502a548ec8f7e",
        "b06b3d49699a52e8f9ca056c4f96e81b1987d78e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 10:40:22 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 04 10:40:25 2011 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: Pick up updates before queueing up dependent patches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d3a8497f8cc5aca14b722cd37d51f6c15ff9f74",
      "tree": "2e0013fdc1eec486a425e666a885b04a1c37befb",
      "parents": [
        "255bb490c8c27eed484d538efe6ef6a7473bd3f6"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "boyu.mt@taobao.com",
        "time": "Thu Mar 03 10:53:20 2011 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Mar 03 10:53:20 2011 -0500"
      },
      "message": "blktrace: Remove blk_fill_rwbs_rq.\n\nIf we enable trace events to trace block actions, We use\nblk_fill_rwbs_rq to analyze the corresponding actions\nin request\u0027s cmd_flags, but we only choose the minor 2 bits\nfrom it, so most of other flags(e.g, REQ_SYNC) are missing.\nFor example, with a sync write we get:\nwrite_test-2409  [001]   160.013869: block_rq_insert: 3,64 W 0 () 258135 + \u003d\n8 [write_test]\n\nSince now we have integrated the flags of both bio and request,\nit is safe to pass rq-\u003ecmd_flags directly to blk_fill_rwbs and\nblk_fill_rwbs_rq isn\u0027t needed any more.\n\nWith this patch, after a sync write we get:\nwrite_test-2417  [000]   226.603878: block_rq_insert: 3,64 WS 0 () 258135 +\u003d\n 8 [write_test]\n\nSigned-off-by: Tao Ma \u003cboyu.mt@taobao.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "c09d7a3d2e365e11c09b9c6414c17fe55bd32a8e",
      "tree": "8823dc4ba7ab25af71a0df8187ea800f0123aeff",
      "parents": [
        "0a10247914a5cad3caf7ef8a255c54c4d3ed2062",
        "4defe682d81a4960b6840ee4ed1a36f9db77c7bd"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Mar 02 16:09:55 2011 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Mar 03 04:29:25 2011 +0100"
      },
      "message": "Merge branch \u0027/tip/perf/filter\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git into perf/core\n"
    },
    {
      "commit": "5cd10e7946d28cfc42442fee2e6c757e244d756e",
      "tree": "3886b72694e0edb7334f9a17ac9325f8b068c6e6",
      "parents": [
        "7fdd7f89006dd5a4c702fa0ce0c272345fa44ae0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 02 16:58:30 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 02 17:20:00 2011 +0100"
      },
      "message": "hrtimer: Update base[CLOCK_BOOTTIME].offset correctly\n\nWe calculate the current time of each clock base by adding an offset\nto clock_monotonic. The offset for the clock bases is set in\nretrigger_next_event() which is called when we switch a cpu to highres\nmode or when the clock was set.\n\nAdd the missing update for clock boottime.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\n"
    },
    {
      "commit": "c69e3758ff56d03e161187355791ec992c574276",
      "tree": "d423ff265f61d84d43c29b7e72c428ea2a3f68bc",
      "parents": [
        "8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 02 11:49:21 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 02 11:49:21 2011 +0100"
      },
      "message": "genirq: Fixup fasteoi handler for oneshot mode\n\nThe fasteoi handler must mask the interrupt line in oneshot mode\notherwise we end up with an irq storm.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3",
      "tree": "50141928db9f0ac1377dd8bb355d600232d6b38c",
      "parents": [
        "8eb90c30e0e815a1308828352eabd03ca04229dd"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:23 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 26 11:57:18 2011 +0100"
      },
      "message": "genirq: Provide forced interrupt threading\n\nAdd a commandline parameter \"threadirqs\" which forces all interrupts except\nthose marked IRQF_NO_THREAD to run threaded. That\u0027s mostly a debug option to\nallow retrieving better debug data from crashing interrupt handlers. If\n\"threadirqs\" is not enabled on the kernel command line, then there is no\nimpact in the interrupt hotpath.\n\nArchitecture code needs to select CONFIG_IRQ_FORCED_THREADING after\nmarking the interrupts which cant be threaded IRQF_NO_THREAD. All\ninterrupts which have IRQF_TIMER set are implict marked\nIRQF_NO_THREAD. Also all PER_CPU interrupts are excluded.\n\nForced threading hard interrupts also forces all soft interrupt\nhandling into thread context.\n\nWhen enabled it might slow down things a bit, but for debugging problems in\ninterrupt code it\u0027s a reasonable penalty as it does not immediately\ncrash and burn the machine when an interrupt handler is buggy.\n\nSome test results on a Core2Duo machine:\n\nCache cold run of:\n # time git grep irq_desc\n\n      non-threaded       threaded\n real 1m18.741s          1m19.061s\n user 0m1.874s           0m1.757s\n sys  0m5.843s           0m5.427s\n\n # iperf -c server\nnon-threaded\n[  3]  0.0-10.0 sec  1.09 GBytes   933 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   934 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   933 Mbits/sec\nthreaded\n[  3]  0.0-10.0 sec  1.09 GBytes   939 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   934 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   937 Mbits/sec\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.772668648@linutronix.de\u003e\n"
    },
    {
      "commit": "3a142a0672b48a853f00af61f184c7341ac9c99d",
      "tree": "e84f2647dc2ae71f2e54f2256ebce87624c11d97",
      "parents": [
        "493f3358cb289ccf716c5a14fa5bb52ab75943e5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 22:34:23 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 26 09:45:28 2011 +0100"
      },
      "message": "clockevents: Prevent oneshot mode when broadcast device is periodic\n\nWhen the per cpu timer is marked CLOCK_EVT_FEAT_C3STOP, then we only\ncan switch into oneshot mode, when the backup broadcast device\nsupports oneshot mode as well. Otherwise we would try to switch the\nbroadcast device into an unsupported mode unconditionally. This went\nunnoticed so far as the current available broadcast devices support\noneshot mode. Seth unearthed this problem while debugging and working\naround an hpet related BIOS wreckage.\n\nAdd the necessary check to tick_is_oneshot_available().\n\nReported-and-tested-by: Seth Forshee \u003cseth.forshee@canonical.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003calpine.LFD.2.00.1102252231200.2701@localhost6.localdomain6\u003e\nCc: stable@kernel.org # .21 -\u003e\n"
    },
    {
      "commit": "544b4a1f309d18f40969dbab7e08bafd136b2f55",
      "tree": "7628de98a77e92ef27d5c596f99a62fbc18d06d8",
      "parents": [
        "7e9498705e810404ecf29bb2d6fa632b9484c609"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venki@google.com",
        "time": "Fri Feb 25 15:13:16 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 26 07:59:58 2011 +0100"
      },
      "message": "sched: Clean up the IRQ_TIME_ACCOUNTING code\n\nFix this warning:\n\n  lkml.org/lkml/2011/1/30/124\n\n kernel/sched.c:3719: warning: \u0027irqtime_account_idle_ticks\u0027 defined but not used\n kernel/sched.c:3720: warning: \u0027irqtime_account_process_tick\u0027 defined but not used\n\nIn a cleaner way than:\n\n 7e9498705e81: sched: Add #ifdef around irq time accounting functions\n\nThis patch will not have any functional impact.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: heiko.carstens@de.ibm.com\nCc: a.p.zijlstra@chello.nl\nLKML-Reference: \u003c1298675596-10992-1-git-send-email-venki@google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8eb90c30e0e815a1308828352eabd03ca04229dd",
      "tree": "cc41c26975f8ab4e9f3ed734f1bdad9b3774685a",
      "parents": [
        "0c4602ff88d6d6ef0ee6d228ee9acaa6448ff6f5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:21 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 20:24:22 2011 +0100"
      },
      "message": "sched: Switch wait_task_inactive to schedule_hrtimeout()\n\nWhen we force thread hard and soft interrupts the startup of ksoftirqd\nwould hang in kthread_bind() when wait_task_inactive() calls\nschedule_timeout_uninterruptible() because there is no softirq yet\nwhich will wake us up.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.677109139@linutronix.de\u003e\n"
    },
    {
      "commit": "9d591edd02a245305b1b9379e4c5571bad4d2774",
      "tree": "1fdd608db6096afaf2696ff9878cb4b7096047f3",
      "parents": [
        "b5faba21a6805c33b40e258d36f57997ee1de131"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:16 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 20:24:21 2011 +0100"
      },
      "message": "genirq: Allow shared oneshot interrupts\n\nSupport ONESHOT on shared interrupts, if all drivers agree on it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.483640430@linutronix.de\u003e\n"
    },
    {
      "commit": "b5faba21a6805c33b40e258d36f57997ee1de131",
      "tree": "c84ef3357ecd6e1b1cfda623136529db0e5fab6f",
      "parents": [
        "1204e95689f9fbd245a4ce5c1b0cd0a9b77f8d25"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:13 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 20:24:21 2011 +0100"
      },
      "message": "genirq: Prepare the handling of shared oneshot interrupts\n\nFor level type interrupts we need to track how many threads are on\nflight to avoid useless interrupt storms when not all thread handlers\nhave finished yet. Keep track of the woken threads and only unmask\nwhen there are no more threads in flight.\n\nYes, I\u0027m lazy and using a bitfield. But not only because I\u0027m lazy, the\nmain reason is that it\u0027s way simpler than using a refcount. A refcount\nbased solution would need to keep track of various things like\ncrashing the irq thread, spurious interrupts coming in,\ndisables/enables, free_irq() and some more. The bitfield keeps the\ntracking simple and makes things just work. It\u0027s also nicely confined\nto the thread code pathes and does not require additional checks all\nover the place.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.388095876@linutronix.de\u003e\n"
    },
    {
      "commit": "1204e95689f9fbd245a4ce5c1b0cd0a9b77f8d25",
      "tree": "7dafda97ffb9156853904873c1397ac2d2b5b9d7",
      "parents": [
        "fd4afaf33313d94f548cb09129ecba3dbab62931"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 17:17:18 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 17:17:18 2011 +0100"
      },
      "message": "genirq: Make warning in handle_percpu_event useful\n\nThe WARN_ON_ONCE in handle_percpu_event() which emits a warning when\nan action handler returns with interrupts enabled is not really\nuseful. It does not reveal the interrupt number and handler function\nwhich caused it. Make it WARN_ONCE() and add the information.\n\nReported-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "7e9498705e810404ecf29bb2d6fa632b9484c609",
      "tree": "4eacabd8f6b1851d3745a39e0674f23b2c1a2ec3",
      "parents": [
        "511f67a5997c4967c69a3961e2fc9f04d8d244ac"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Feb 25 14:32:28 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 25 14:39:48 2011 +0100"
      },
      "message": "sched: Add #ifdef around irq time accounting functions\n\nGet rid of this:\n\n kernel/sched.c:3731:13: warning: \u0027irqtime_account_idle_ticks\u0027 defined but not used\n kernel/sched.c:3732:13: warning: \u0027irqtime_account_process_tick\u0027 defined but not used\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20110225133228.GD7469@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "768a06e2ca49cdf72389208cfc056a36cf8bc5e3",
      "tree": "cd3e40f7d83526747785e7d4954ce96a5a3d69c7",
      "parents": [
        "3f7cce3c18188a067d463749168bdda5abc5b0f7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Feb 22 16:52:24 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:35:47 2011 +0100"
      },
      "message": "perf: Simplify task_clock_event_read()\n\nThere is no point in us having different code paths for nmi and !nmi\nhere, so remove the !nmi one.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3f7cce3c18188a067d463749168bdda5abc5b0f7",
      "tree": "9c161a970a19176f26dc29811dc9ae4d64bfe8a8",
      "parents": [
        "c97cf42219b7b6037d2f96c27a5f114f2383f828"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Fri Feb 18 14:40:01 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:35:46 2011 +0100"
      },
      "message": "perf_events: Fix rcu and locking issues with cgroup support\n\nThis patches ensures that we do not end up calling\nperf_cgroup_from_task() when there is no cgroup event.\nThis avoids potential RCU and locking issues.\n\nThe change in perf_cgroup_set_timestamp() ensures we\ncheck against ctx-\u003enr_cgroups. It also avoids calling\nperf_clock() tiwce in a row. It also ensures we do need\nto grab ctx-\u003elock before calling the function.\n\nWe drop update_cgrp_time() from task_clock_event_read()\nbecause it is not needed. This also avoids having to\ndeal with perf_cgroup_from_task().\n\nThanks to Peter Zijlstra for his help on this.\n\nSigned-off-by: Stephane Eranian \u003ceranian@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4d5e76b8.815bdf0a.7ac3.774f@mx.google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "511f67a5997c4967c69a3961e2fc9f04d8d244ac",
      "tree": "a40c00578794d26cc98d710bd0649228ab84cc97",
      "parents": [
        "800d4d30c8f20bd728e5741a3b77c4859a613f7c"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Feb 22 15:02:00 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:34:03 2011 +0100"
      },
      "message": "sched, autogroup: Stop claiming ownership of the root task group\n\nDisown it, and only display autogroup association if one exists.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1298383320.8036.5.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "800d4d30c8f20bd728e5741a3b77c4859a613f7c",
      "tree": "1eb329fb8a1dce1c1432c07e19494a3e1fb68499",
      "parents": [
        "1747b21fecbfb63fbf6b9624e8b92707960d5a97"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Sun Feb 20 15:08:14 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:33:59 2011 +0100"
      },
      "message": "sched, autogroup: Stop going ahead if autogroup is disabled\n\nwhen autogroup is disable from the beginning,\nsched_autogroup_create_attach()\n  autogroup_move_group()                    \u003c\u003d\u003d 1\n    sched_move_task()                       \u003c\u003d\u003d 2\n      task_move_group_fair()\n        set_task_rq()\n          task_group()\n            autogroup_task_group()\n\nWe go the whole path without doing anything useful.\n\nThen stop going further if autogroup is disabled.\n\nBut there will be a race window between 1 and 2, in which\nsysctl_sched_autogroup_enabled is enabled. This issue\nwill be toke by following patch.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c1298185696-4403-4-git-send-email-yong.zhang0@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1747b21fecbfb63fbf6b9624e8b92707960d5a97",
      "tree": "5c318fb7d8426f760f5cf3e3f1c256fb6b9fe1a8",
      "parents": [
        "866ab43efd325fae8889ea77a744d03f2b957e38"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Sun Feb 20 15:08:12 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:33:58 2011 +0100"
      },
      "message": "sched, autogroup, sysctl: Use proc_dointvec_minmax() instead\n\nsched_autogroup_enabled has min/max value, proc_dointvec_minmax() is\nbe used for this case.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1298185696-4403-2-git-send-email-yong.zhang0@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "866ab43efd325fae8889ea77a744d03f2b957e38",
      "tree": "450263aa8a30abb4a0ab2812643aa7a83711df05",
      "parents": [
        "cc57aa8f4b3bece8c26c7929728edcc5fa6b5aed"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 21 18:56:47 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:33:57 2011 +0100"
      },
      "message": "sched: Fix the group_imb logic\n\nOn a 2*6*2 machine something like:\n\n taskset -c 3-11 bash -c \u0027for ((i\u003d0;i\u003c9;i++)) do while :; do :; done \u0026 done\u0027\n\n_should_ result in 9 busy CPUs, each running 1 task.\n\nHowever it didn\u0027t quite work reliably, most of the time one cpu of the\nsecond socket (6-11) would be idle and one cpu of the first socket\n(0-5) would have two tasks on it.\n\nThe group_imb logic is supposed to deal with this and detect when a\nparticular group is imbalanced (like in our case, 0-2 are idle but 3-5\nwill have 4 tasks on it).\n\nThe detection phase needed a bit of a tweak as it was too weak and\nrequired more than 2 avg weight tasks difference between idle and busy\ncpus in the group which won\u0027t trigger for our test-case. So cure that\nto be one or more avg task weight difference between cpus.\n\nOnce the detection phase worked, it was then defeated by the f_b_g()\ntests trying to avoid ping-pongs. In particular, this_load \u003e\u003d max_load\ntriggered because the pulling cpu (the (first) idle cpu in on the\nsecond socket, say 6) would find this_load to be 5 and max_load to be\n4 (there\u0027d be 5 tasks running on our socket and only 4 on the other\nsocket).\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Nikhil Rao \u003cncrao@google.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc57aa8f4b3bece8c26c7929728edcc5fa6b5aed",
      "tree": "476c6d4b2d1e2d2cc77c35a8066c284877c7b5b3",
      "parents": [
        "c186fafe9aba87c1a93df8c7120a6ae01fe435ad"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 21 18:55:32 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:33:56 2011 +0100"
      },
      "message": "sched: Clean up some f_b_g() comments\n\nThe existing comment tends to grow state (as it already has), split it\nup and place it near the actual tests.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Nikhil Rao \u003cncrao@google.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c186fafe9aba87c1a93df8c7120a6ae01fe435ad",
      "tree": "e6cbd31f1dd720d0f614df87f3e5b2876cf32a84",
      "parents": [
        "d927dc937910ad8c7350266cac70e42a5f0b48cf"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 21 18:52:53 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:33:55 2011 +0100"
      },
      "message": "sched: Clean up remnants of sd_idle\n\nWith the wholesale removal of the sd_idle SMT logic we can clean up\nsome more.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Nikhil Rao \u003cncrao@google.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d927dc937910ad8c7350266cac70e42a5f0b48cf",
      "tree": "c26c8ffa1d764bb7fea66118cc05bf7617b71c19",
      "parents": [
        "46e49b3836c7cd2ae5b5fe76fa981d0d292a52fe",
        "f5412be599602124d2bdd49947b231dd77c0bf99"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:31:34 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 23 11:31:38 2011 +0100"
      },
      "message": "Merge commit \u0027v2.6.38-rc6\u0027 into sched/core\n\nMerge reason: Pick up the latest fixes before queueing up new changes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fd4afaf33313d94f548cb09129ecba3dbab62931",
      "tree": "00c5816ace93c8b53df60c0fd675d9a46f03b500",
      "parents": [
        "70433c01613c2a44756c7b25f7bdd6c1c77b119f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Thu Feb 17 13:39:05 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 22:33:10 2011 +0100"
      },
      "message": "genirq: Streamline kernel/irq/Kconfig\n\n\"def_bool n\" without prompt is pointless, these should be just \"bool\".\n\n[ tglx: Adapted to latest changes ]\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nLKML-Reference: \u003c4D5D3309020000780003264A@vpn.id2.novell.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "dbebbfbb1605f0179e7c0d900d941cc9c45de569",
      "tree": "2d671c4ce729b4b7c2ae94c684280d5d0b5f3ce6",
      "parents": [
        "48228f7b470a74b6469a250d2977a13128d8fe96"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 21:46:25 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 22:07:22 2011 +0100"
      },
      "message": "rtmutex: tester: Remove the remaining BKL leftovers\n\nWe just leave the numbers assinged as commemoration and in case that\nsomeone was crazy enough to reimplement the test stuff out of tree.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "571020df6fae18623498d70d3f2331d9eb7ad2be",
      "tree": "550df8ed0f30105d2251172491c0a11d6f885d4e",
      "parents": [
        "ee88347755460e8ceb37e8453adcf5fd7ca5ff00",
        "6d83f94db95cfe65d2a6359cccdf61cf087c2598"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 22 09:26:17 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 22 09:26:17 2011 -0800"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: Disable the SHIRQ_DEBUG call in request_threaded_irq for now\n  genirq: Prevent access beyond allocated_irqs bitmap\n"
    },
    {
      "commit": "ee88347755460e8ceb37e8453adcf5fd7ca5ff00",
      "tree": "6a604503807d1a342b4e58ffabe11bd2a26661ff",
      "parents": [
        "609b06f33506d92693cb89c303026f830f769c0d",
        "4fe757dd48a9e95e1a071291f15dda5421dacb66"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 22 09:25:55 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 22 09:25:55 2011 -0800"
      },
      "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: Fix throttle logic\n  perf, x86: P4 PMU: Fix spurious NMI messages\n"
    },
    {
      "commit": "70433c01613c2a44756c7b25f7bdd6c1c77b119f",
      "tree": "27fb95b4ccaa498a7bbae135835b8a0472147d1b",
      "parents": [
        "8fff39e06987492da3d4a0b9ec7cdbd245b6762b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 12:50:12 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 13:02:03 2011 +0100"
      },
      "message": "genirq: Use the correct variable for note_interrupt\n\nnote_interrupt wants to be called with the combined result of all\nhandlers called, not with the last one. If it\u0027s a shared interrupt\nthen the last handler might return IRQ_NONE often enough to trigger\nthe spurious dectector which turns off a perfectly fine working\ninterrupt line. Bug was introduced in commit 1277a532(genirq: Simplify\nhandle_irq_event()).\n\nYes, I really messed up there. First the variable ret should not have\nbeen named differently to avoid similarity with retval. Second it\nshould have been declared in the do {} loop.\n\nRename it to res and move it into the do {} loop and vanish under a\nhuge brown paperbag.\n\nReported-bisected-tested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "7fdd7f89006dd5a4c702fa0ce0c272345fa44ae0",
      "tree": "737c69613d51165c791609d5545de8635df99b3c",
      "parents": [
        "70a08cca1227dc31c784ec930099a4417a06e7d0"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Feb 15 10:52:57 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 21 12:53:09 2011 -0800"
      },
      "message": "timers: Export CLOCK_BOOTTIME via the posix timers interface\n\nThis patch exports CLOCK_BOOTTIME through the posix timers interface\n\nCC: Jamie Lokier \u003cjamie@shareable.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alexander Shishkin \u003cvirtuoso@slind.org\u003e\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "70a08cca1227dc31c784ec930099a4417a06e7d0",
      "tree": "d813ae86435a3104b66d18ee746d0f3ecc73a14a",
      "parents": [
        "314ac37150011ebb398f522db528d2dbcc611189"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Feb 15 10:45:16 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 21 12:53:08 2011 -0800"
      },
      "message": "timers: Add CLOCK_BOOTTIME hrtimer base\n\nCLOCK_MONOTONIC stops while the system is in suspend. This is because\nto applications system suspend is invisible. However, there is a\ngrowing set of applications that are wanting to be suspend-aware,\nbut do not want to deal with the complications of CLOCK_REALTIME\n(which might jump around if settimeofday is called).\n\nFor these applications, I propose a new clockid: CLOCK_BOOTTIME.\nCLOCK_BOOTTIME is idential to CLOCK_MONOTONIC, except it also\nincludes any time spent in suspend.\n\nThis patch add hrtimer base for CLOCK_BOOTTIME, using\nget_monotonic_boottime/ktime_get_boottime, to allow\nin kernel users to set timers against.\n\nCC: Jamie Lokier \u003cjamie@shareable.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alexander Shishkin \u003cvirtuoso@slind.org\u003e\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "314ac37150011ebb398f522db528d2dbcc611189",
      "tree": "0731fced7713d3889bd783577673068a6bc93796",
      "parents": [
        "abb3a4ea2e0ea7114a4475745da2f32bd9ad5b73"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 14 18:43:08 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 21 12:53:07 2011 -0800"
      },
      "message": "time: Extend get_xtime_and_monotonic_offset() to also return sleep\n\nExtend get_xtime_and_monotonic_offset to\nget_xtime_and_monotonic_and_sleep_offset().\n\nCC: Jamie Lokier \u003cjamie@shareable.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alexander Shishkin \u003cvirtuoso@slind.org\u003e\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "abb3a4ea2e0ea7114a4475745da2f32bd9ad5b73",
      "tree": "ba78d928a1b58faf16c2507777b8430d54666f52",
      "parents": [
        "e06383db9ec591696a06654257474b85bac1f8cb"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 14 17:52:09 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 21 12:53:05 2011 -0800"
      },
      "message": "time: Introduce get_monotonic_boottime and ktime_get_boottime\n\nThis adds new functions that return the monotonic time since boot\n(in other words, CLOCK_MONOTONIC + suspend time).\n\nCC: Jamie Lokier \u003cjamie@shareable.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alexander Shishkin \u003cvirtuoso@slind.org\u003e\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "e06383db9ec591696a06654257474b85bac1f8cb",
      "tree": "ee541661450da71e204370c84a15bae64847c368",
      "parents": [
        "db1c1cce4a653dcbe6949c72ae7b9f42cab1b929"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Dec 14 19:37:07 2010 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 21 12:53:04 2011 -0800"
      },
      "message": "hrtimers: extend hrtimer base code to handle more then 2 clockids\n\nThe hrtimer code is written mainly with CLOCK_REALTIME and CLOCK_MONOTONIC\nin mind. These are clockids 0 and 1 resepctively. However, if we are\nto introduce any new hrtimer bases, using new clockids, we have to skip\nthe cputimers (clockids 2,3) as well as other clockids that may not impelement\ntimers.\n\nThis patch adds a little bit of indirection between the clockid and\nthe base, so that we can extend the base by one when we add\na new clockid at number 7 or so.\n\nCC: Jamie Lokier \u003cjamie@shareable.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alexander Shishkin \u003cvirtuoso@slind.org\u003e\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "8fff39e06987492da3d4a0b9ec7cdbd245b6762b",
      "tree": "751d1930d88def0238e927ac4e03f23703656a4d",
      "parents": [
        "ed4dea6e0e33a3e58d8b77b775a8f0e433e7a005"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 14:19:42 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 21:20:00 2011 +0100"
      },
      "message": "genirq: Add missing break in __irq_set_trigger()\n\nThe switch case in __irq_set_trigger() lacks a break, which emits a\npr_err unconditionally on success.\n\nReported-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ed4dea6e0e33a3e58d8b77b775a8f0e433e7a005",
      "tree": "99f3168f5307545e6107603431e877b5369f767f",
      "parents": [
        "a61d825808a0ce9935afebc225dcd602d5339e14"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 19 11:07:37 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 21:20:00 2011 +0100"
      },
      "message": "genirq: Use IRQ_BITMAP_BITS as search size in irq_alloc_descs()\n\nThe runtime expansion of nr_irqs does not take into account that\nbitmap_find_next_zero_area() returns \"start\" + size in case the search\nfor an matching zero area fails. That results in a start value which\ncan be completely off and is not covered by the following\nexpand_nr_irqs() and possibly outside of the absolute limit. But we\nuse it without further checking.\n\nUse IRQ_BITMAP_BITS as the limit for the bitmap search and expand\nnr_irqs when the start bit is beyond nr_irqs. So start is always\npointing to the correct area in the bitmap. nr_irqs is just the limit\nfor irq enumerations, not the real limit for the irq space.\n\n[ tglx: Let irq_expand_nr_irqs() take the new upper end so we do not\n  \texpand nr_irqs more than necessary. Made changelog readable ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c4D6014F9.8040605@kernel.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a61d825808a0ce9935afebc225dcd602d5339e14",
      "tree": "136d068ca3a58c9d6d3d28786a246c1204452c8c",
      "parents": [
        "a439520f8b18917b322f576be04c54aba84bb044"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 12:54:34 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 21:19:59 2011 +0100"
      },
      "message": "genirq: Fix misplaced status update in irq_disable()\n\nWe lazy disable interrupt lines, so only mark the line masked, when\nthe chip provides an irq_disable callback.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a439520f8b18917b322f576be04c54aba84bb044",
      "tree": "b835a4b32c057408ed35292c02ad214341e317ed",
      "parents": [
        "77694b408abb8f92195ad5ed6ce5492f1d794c77"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 04 18:46:16 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:25 2011 +0100"
      },
      "message": "genirq: Implement irq_data based move_*_irq() versions\n\nNo need to lookup the irq descriptor when calling from a chip callback\nfunction which has irq_data already handy.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "77694b408abb8f92195ad5ed6ce5492f1d794c77",
      "tree": "a0f7e81a0a155523f69146cd560cc2f49543a99e",
      "parents": [
        "781295762defc709a609efc01d8bb065276cd9a2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 15 10:33:57 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:24 2011 +0100"
      },
      "message": "genirq; Add fasteoi irq_chip quirk\n\nSome chips want irq_eoi() only called when an interrupt is actually\nhandled. So they have checks for INPROGRESS and DISABLED in their\nirq_eoi callbacks. Add a chip flag, which allows to handle that in the\ngeneric code. No impact on the fastpath.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "781295762defc709a609efc01d8bb065276cd9a2",
      "tree": "21f035b5f92571c8c3559b5e94eb0e1aa4113a36",
      "parents": [
        "3836ca08aad4575c120ccf328652f3873eea9063"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 15:14:20 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:24 2011 +0100"
      },
      "message": "genirq: Add preflow handler support\n\nsparc64 needs to call a preflow handler on certain interrupts befor\ncalling the action chain. Integrate it into handle_fasteoi_irq. Must\nbe enabled via CONFIG_IRQ_FASTEOI_PREFLOW. No impact when disabled.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3836ca08aad4575c120ccf328652f3873eea9063",
      "tree": "d5aa92880d2a44836cb7f3decdae761d0a780068",
      "parents": [
        "02725e7471b8dd58fa96f6604bdb5dde45405a2e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 14 20:09:19 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Consolidate set_chip_handler functions\n\nNo need to have separate functions if we have one plus inline wrappers.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "02725e7471b8dd58fa96f6604bdb5dde45405a2e",
      "tree": "7c5243d0a2e33f2165d1531febbe9752fad389c7",
      "parents": [
        "d5eb4ad2dfb2dfae43fd51bc8630b4fc3ef00e92"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 12 10:37:36 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Use irq_get/put functions\n\nConvert the management functions to use the common irq_get/put\nfunction.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d5eb4ad2dfb2dfae43fd51bc8630b4fc3ef00e92",
      "tree": "ec164ed62dd55d14e0f73e1ba6f894433f70394e",
      "parents": [
        "091738a266fc74329ae186f22ff2b3f01319112d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 12 12:16:16 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Implement irq_get/put_desc_[bus]locked/unlock()\n\nMost of the managing functions get the irq descriptor and lock it -\neither with or without buslock. Instead of open coding this over and\nover provide a common function to do that.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "091738a266fc74329ae186f22ff2b3f01319112d",
      "tree": "75190438b74ad345753a2a8c239724995cee40ea",
      "parents": [
        "a6967caf00ebbb2d4acdebcb72a25f2e9ba43fd2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 14 20:16:43 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Remove real old transition functions\n\nThese transition helpers are stale for years now. Remove them.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a6967caf00ebbb2d4acdebcb72a25f2e9ba43fd2",
      "tree": "fbc957bb2e34d644164d3b0df874da88fa01ec3e",
      "parents": [
        "e1ef824146131709d7466e37f889f2dab24ca98e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 22:01:25 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:22 2011 +0100"
      },
      "message": "genirq: Remove desc-\u003estatus when GENERIC_HARDIRQS_NO_COMPAT\u003dy\n\nIf everything uses the right accessors, then enabling\nGENERIC_HARDIRQS_NO_COMPAT should just work. If not it will tell you.\n\nDon\u0027t be lazy and use the trick which I use in the core code!\n\ngit grep status_use_accessors\n\nwill unearth it in a split second. Offenders are tracked down and not\nslapped with stinking trouts. This time we use frozen shark for a\nbetter educational value.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e1ef824146131709d7466e37f889f2dab24ca98e",
      "tree": "d66f8423fce8e4d04aa509e1cbbaea2fb99a812c",
      "parents": [
        "7f94226f03299f1ca32f118f02f2a0295e0e5e93"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 22:25:31 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:22 2011 +0100"
      },
      "message": "genirq: Reflect IRQ_MOVE_PCNTXT in irq_data state\n\nRequired by x86.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    }
  ],
  "next": "7f94226f03299f1ca32f118f02f2a0295e0e5e93"
}
