)]}'
{
  "log": [
    {
      "commit": "c77a2f4e6b76c9094182dfa653ece4243f6df80c",
      "tree": "b9fc60fc6f2870eb8cdad46a6fec1b8ace2d83b8",
      "parents": [
        "d7b0c143693bcbf391d2be235e150b97bfd8f9ba"
      ],
      "author": {
        "name": "Saeed Bishara",
        "email": "saeed@marvell.com",
        "time": "Sun Dec 06 18:26:18 2009 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Dec 17 00:56:46 2009 -0500"
      },
      "message": "sata_mv: support clkdev framework\n\nSigned-off-by: Saeed Bishara \u003csaeed@marvell.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "d7b0c143693bcbf391d2be235e150b97bfd8f9ba",
      "tree": "f17adbdea81b383a08b4c97b4c21e7392de75d93",
      "parents": [
        "718deb6b61e34c200c1f2b706176d9aac334cb2d"
      ],
      "author": {
        "name": "Saeed Bishara",
        "email": "saeed@marvell.com",
        "time": "Sun Dec 06 18:26:17 2009 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Dec 17 00:56:36 2009 -0500"
      },
      "message": "sata_mv: increase PIO IORDY timeout\n\nThe old value (0xbc) in cycles of the IORDY timeout is suitable for\ndevices with core clock of 166 MHz, but some SoC controllers have\nfaster core clocks. The new value will make the IORDY timeout large\nenough also for all SoC devices.\n\nSigned-off-by: Saeed Bishara \u003csaeed@marvell.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "718deb6b61e34c200c1f2b706176d9aac334cb2d",
      "tree": "fdf37190a8663d507bc740a6fa21437c6c22e611",
      "parents": [
        "bea4c899f2b5fad80099aea979780ef19f9b1987"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 19:35:36 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 19:48:48 2009 -0500"
      },
      "message": "Fix breakage in shmem.c\n\nReplacing\n\terror \u003d 0;\n\tif (error)\n\t\top\nwith nothing is not quite an equivalent transformation ;-)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bea4c899f2b5fad80099aea979780ef19f9b1987",
      "tree": "65130f4bc91b92e72498fc58bf895d35f2ebf0f2",
      "parents": [
        "73efc4681cb5e3c8807daf106f001e7f0798d8a0",
        "3fc98b1ac036675b95f6e3fafd5ef147b97d4d30"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:29:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:29:39 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  XFS: Free buffer pages array unconditionally\n  xfs: kill xfs_bmbt_rec_32/64 types\n  xfs: improve metadata I/O merging in the elevator\n  xfs: check for not fully initialized inodes in xfs_ireclaim\n"
    },
    {
      "commit": "73efc4681cb5e3c8807daf106f001e7f0798d8a0",
      "tree": "8302ec91e3410912081c8468b54e97acfae0ac95",
      "parents": [
        "a73611b6aafa3b902524dad2d68e378c4ec9f4db"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Wed Dec 16 12:43:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:29:19 2009 -0800"
      },
      "message": "re-export alloc_file()\n\nCommit 3d1e4631 (\"get rid of init_file()\") removed the export of\nalloc_file() -- possibly inadvertently, since that commit mainly\nconsisted of deleting the lines between the end of alloc_file() and\nthe start of the code in init_file().\n\nThere is in fact one modular use of alloc_file() in the tree, in\ndrivers/infiniband/core/uverbs_main.c, so re-add the export to fix:\n\n    ERROR: \"alloc_file\" [drivers/infiniband/core/ib_uverbs.ko] undefined!\n\nwhen CONFIG_INFINIBAND_USER_ACCESS\u003dm.\n\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a73611b6aafa3b902524dad2d68e378c4ec9f4db",
      "tree": "5dc4877055a2297d9f7f5db4cf6a5a7aad392dd0",
      "parents": [
        "5fa3577b1a1202972e6e419040438c29f39f59cc",
        "ae4cec4736969ec2196a6bbce4ab263ff7cb7eef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:26:53 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:26:53 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027next\u0027 of git://git.secretlab.ca/git/linux-2.6: (23 commits)\n  powerpc: fix up for mmu_mapin_ram api change\n  powerpc: wii: allow ioremap within the memory hole\n  powerpc: allow ioremap within reserved memory regions\n  wii: use both mem1 and mem2 as ram\n  wii: bootwrapper: add fixup to calc useable mem2\n  powerpc: gamecube/wii: early debugging using usbgecko\n  powerpc: reserve fixmap entries for early debug\n  powerpc: wii: default config\n  powerpc: wii: platform support\n  powerpc: wii: hollywood interrupt controller support\n  powerpc: broadway processor support\n  powerpc: wii: bootwrapper bits\n  powerpc: wii: device tree\n  powerpc: gamecube: default config\n  powerpc: gamecube: platform support\n  powerpc: gamecube/wii: flipper interrupt controller support\n  powerpc: gamecube/wii: udbg support for usbgecko\n  powerpc: gamecube/wii: do not include PCI support\n  powerpc: gamecube/wii: declare as non-coherent platforms\n  powerpc: gamecube/wii: introduce GAMECUBE_COMMON\n  ...\n\nFix up conflicts in arch/powerpc/mm/fsl_booke_mmu.c.\n\nHopefully even close to correctly.\n"
    },
    {
      "commit": "5fa3577b1a1202972e6e419040438c29f39f59cc",
      "tree": "f148c5bfad584ba8ac79d43fd3e40a12d49d92af",
      "parents": [
        "d4220f987cf473c65a342ca69e3eb13dea919a49",
        "fb1d9738ca053ea8afa5e86af6463155f983b01c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:19:31 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 13:19:31 2009 -0800"
      },
      "message": "Merge branch \u0027drm-vmware-staging\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-vmware-staging\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/vmwgfx: Add DRM driver for VMware Virtual GPU\n  drm/vmwgfx: Add svga headers for vmwgfx driver\n  drm/ttm: Add more driver type enums\n"
    },
    {
      "commit": "d4220f987cf473c65a342ca69e3eb13dea919a49",
      "tree": "dbb004a9c805d6de3f6e3955398fee1084a29f16",
      "parents": [
        "61cf693159d6a968a7014e24905143f71ed8ddcf",
        "f2c03debdfb387fa2e35cac6382779072b8b9209"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:49 2009 -0800"
      },
      "message": "Merge branch \u0027hwpoison\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6\n\n* \u0027hwpoison\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6: (34 commits)\n  HWPOISON: Remove stray phrase in a comment\n  HWPOISON: Try to allocate migration page on the same node\n  HWPOISON: Don\u0027t do early filtering if filter is disabled\n  HWPOISON: Add a madvise() injector for soft page offlining\n  HWPOISON: Add soft page offline support\n  HWPOISON: Undefine short-hand macros after use to avoid namespace conflict\n  HWPOISON: Use new shake_page in memory_failure\n  HWPOISON: Use correct name for MADV_HWPOISON in documentation\n  HWPOISON: mention HWPoison in Kconfig entry\n  HWPOISON: Use get_user_page_fast in hwpoison madvise\n  HWPOISON: add an interface to switch off/on all the page filters\n  HWPOISON: add memory cgroup filter\n  memcg: add accessor to mem_cgroup.css\n  memcg: rename and export try_get_mem_cgroup_from_page()\n  HWPOISON: add page flags filter\n  mm: export stable page flags\n  HWPOISON: limit hwpoison injector to known page types\n  HWPOISON: add fs/device filters\n  HWPOISON: return 0 to indicate success reliably\n  HWPOISON: make semantics of IGNORED/DELAYED clear\n  ...\n"
    },
    {
      "commit": "61cf693159d6a968a7014e24905143f71ed8ddcf",
      "tree": "595a4bddf8b005f7345cc123b19f4da1f5d07aa7",
      "parents": [
        "288f02bbb6e9609cbaf1eb7a9cb97ae45ce090b2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Dec 16 12:28:44 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:18 2009 -0800"
      },
      "message": "[sysctl] Fix breakage on systems with older glibc\n\nAs predicted during code review, the sysctl(2) changes made systems with\nold glibc nearly unusable.  About every command gives a:\n\n  warning: process `ls\u0027 used the deprecated sysctl system call with 1.4\n\nwarning in the log.\n\nI see this on a SUSE 10.0 system with glibc 2.3.5.\n\nDon\u0027t warn for this common case.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "288f02bbb6e9609cbaf1eb7a9cb97ae45ce090b2",
      "tree": "4f5e5c9fe6638bdbd246379f64b3541de68f329a",
      "parents": [
        "8aedf8a6ae98d5d4df3254b6afb7e4432d9d8600",
        "aa96ce0af8385415a3450bc13e6254a4d6b4a888"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:33:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:33:19 2009 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (117 commits)\n  ACPI processor: Fix section mismatch for processor_add()\n  ACPI: Add platform-wide _OSC support.\n  ACPI: cleanup pci_root _OSC code.\n  ACPI: Add a generic API for _OSC -v2\n  msi-wmi: depend on backlight and fix corner-cases problems\n  msi-wmi: switch to using input sparse keymap library\n  msi-wmi: replace one-condition switch-case with if statement\n  msi-wmi: remove unused field \u0027instance\u0027 in key_entry structure\n  msi-wmi: remove custom runtime debug implementation\n  msi-wmi: rework init\n  msi-wmi: remove useless includes\n  X86 drivers: Introduce msi-wmi driver\n  Toshiba Bluetooth Enabling driver (RFKill handler v3)\n  ACPI: fix for lapic_timer_propagate_broadcast()\n  acpi_pad: squish warning\n  ACPI: dock: minor whitespace and style cleanups\n  ACPI: dock: add struct dock_station * directly to platform device data\n  ACPI: dock: dock_add - hoist up platform_device_register_simple()\n  ACPI: dock: remove global \u0027dock_device_name\u0027\n  ACPI: dock: combine add|alloc_dock_dependent_device (v2)\n  ...\n"
    },
    {
      "commit": "8aedf8a6ae98d5d4df3254b6afb7e4432d9d8600",
      "tree": "444d19b9172009e81a0ba9e7e5be3e0910bdd978",
      "parents": [
        "bac5e54c29f352d962a2447d22735316b347b9f1",
        "60ab271617cec607380099f3ed8e84916e48323b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:32:47 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:32:47 2009 -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: (52 commits)\n  perf record: Use per-task-per-cpu events for inherited events\n  perf record: Properly synchronize child creation\n  perf events: Allow per-task-per-cpu counters\n  perf diff: Percent calcs should use double values\n  perf diff: Change the default sort order to \"dso,symbol\"\n  perf diff: Use perf_session__fprintf_hists just like \u0027perf record\u0027\n  perf report: Fix cut\u0027n\u0027paste error recently introduced\n  perf session: Move perf report specific hits out of perf_session__fprintf_hists\n  perf tools: Move hist entries printing routines from perf report\n  perf report: Generalize perf_session__fprintf_hists()\n  perf symbols: Move symbol filtering to event__preprocess_sample()\n  perf symbols: Adopt the strlists for dso, comm\n  perf symbols: Make symbol_conf global\n  perf probe: Fix to show which probe point is not found\n  perf probe: Check symbols in symtab/kallsyms\n  perf probe: Check build-id of vmlinux\n  perf probe: Reject second attempt of adding same-name event\n  perf probe: Support event name for --add option\n  perf probe: Add glob matching support on --del\n  perf probe: Use strlist__for_each macros in probe-event.c\n  ...\n"
    },
    {
      "commit": "bac5e54c29f352d962a2447d22735316b347b9f1",
      "tree": "7642993fa93164835ffaa2dacd341388193f1979",
      "parents": [
        "529e89430d6c0d64db8ac474cb95e68e2527c79a",
        "c05c4edd876b7ae92787d1295868afcb89b6a348"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:04:02 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:04:02 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (38 commits)\n  direct I/O fallback sync simplification\n  ocfs: stop using do_sync_mapping_range\n  cleanup blockdev_direct_IO locking\n  make generic_acl slightly more generic\n  sanitize xattr handler prototypes\n  libfs: move EXPORT_SYMBOL for d_alloc_name\n  vfs: force reval of target when following LAST_BIND symlinks (try #7)\n  ima: limit imbalance msg\n  Untangling ima mess, part 3: kill dead code in ima\n  Untangling ima mess, part 2: deal with counters\n  Untangling ima mess, part 1: alloc_file()\n  O_TRUNC open shouldn\u0027t fail after file truncation\n  ima: call ima_inode_free ima_inode_free\n  IMA: clean up the IMA counts updating code\n  ima: only insert at inode creation time\n  ima: valid return code from ima_inode_alloc\n  fs: move get_empty_filp() deffinition to internal.h\n  Sanitize exec_permission_lite()\n  Kill cached_lookup() and real_lookup()\n  Kill path_lookup_open()\n  ...\n\nTrivial conflicts in fs/direct-io.c\n"
    },
    {
      "commit": "529e89430d6c0d64db8ac474cb95e68e2527c79a",
      "tree": "0407825d29351d04474b3a1294f2b4d42a1e8e03",
      "parents": [
        "61ecdb84c1f05ad445db4584ae375a15c0e8ae47",
        "d8bed5a4f343d1826153ecf8e7932126c757a21d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:03:03 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:03:03 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PM: rwsem.h need not be included into main.c\n  PM: Remove unnecessary goto from device_resume_noirq()\n  PM: Add initcall_debug style timing for suspend/resume\n  PM: allow for usage_count \u003e 0 in pm_runtime_get()\n"
    },
    {
      "commit": "61ecdb84c1f05ad445db4584ae375a15c0e8ae47",
      "tree": "2ecdc462785be5b96c6dcc14c517a8abb5ed16e8",
      "parents": [
        "da184a8064efe2a78d8542877970f7c6bb62775a",
        "23637568ad0c9b5ab0ad27d2f2f26d1e9282c527"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:37 2009 -0800"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: Fix kprobes build with non-gawk awk\n  x86: Split swiotlb initialization into two stages\n  x86: Regex support and known-movable symbols for relocs, fix _end\n  x86, msr: Remove incorrect, duplicated code in the MSR driver\n  x86: Merge kernel_thread()\n  x86: Sync 32/64-bit kernel_thread\n  x86, 32-bit: Use same regs as 64-bit for kernel_thread_helper\n  x86, 64-bit: Use user_mode() to determine new stack pointer in copy_thread()\n  x86, 64-bit: Move kernel_thread to C\n  x86-64, paravirt: Call set_iopl_mask() on 64 bits\n  x86-32: Avoid pipeline serialization in PTREGSCALL1 and 2\n  x86: Merge sys_clone\n  x86, 32-bit: Convert sys_vm86 \u0026 sys_vm86old\n  x86: Merge sys_sigaltstack\n  x86: Merge sys_execve\n  x86: Merge sys_iopl\n  x86-32: Add new pt_regs stubs\n  cpumask: Use modern cpumask style in arch/x86/kernel/cpu/mcheck/mce-inject.c\n"
    },
    {
      "commit": "da184a8064efe2a78d8542877970f7c6bb62775a",
      "tree": "d10193bb583f60333e243fe46386cab31f591e0c",
      "parents": [
        "525995d77ca08dfc2ba6f8e606f93694271dbd66",
        "e36c54582c6f14adc9e10473e2aec2cc4f0acc03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix return of trace_dump_stack()\n  ksym_tracer: Fix bad cast\n  tracing/power: Remove two exports\n  tracing: Change event-\u003eprofile_count to be int type\n  tracing: Simplify trace_option_write()\n  tracing: Remove useless trace option\n  tracing: Use seq file for trace_clock\n  tracing: Use seq file for trace_options\n  function-graph: Allow writing the same val to set_graph_function\n  ftrace: Call trace_parser_clear() properly\n  ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n  tracing: Move a printk out of ftrace_raw_reg_event_foo()\n  tracing: Pull up calls to trace_define_common_fields()\n  tracing: Extract duplicate ftrace_raw_init_event_foo()\n  ftrace.h: Use common pr_info fmt string\n  tracing: Add stack trace to irqsoff tracer\n  tracing: Add trace_dump_stack()\n  ring-buffer: Move resize integrity check under reader lock\n  ring-buffer: Use sync sched protection on ring buffer resizing\n  tracing: Fix wrong usage of strstrip in trace_ksyms\n"
    },
    {
      "commit": "3fc98b1ac036675b95f6e3fafd5ef147b97d4d30",
      "tree": "1710b6e0140a12a6e20ef0494b11e42b9f0fcfc6",
      "parents": [
        "a5f9be58c2b87106100a6053d09b1f9f8d551c6e"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Dec 14 23:11:57 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed Dec 16 13:41:20 2009 -0600"
      },
      "message": "XFS: Free buffer pages array unconditionally\n\nThe code in xfs_free_buf() only attempts to free the b_pages array if the\nbuffer is a page cache backed or page allocated buffer. The extra log buffer\nthat is used when the log wraps uses pages that are allocated to a different\nlog buffer, but it still has a b_pages array allocated when those pages\nare associated to with the extra buffer in xfs_buf_associate_memory.\n\nHence we need to always attempt to free the b_pages array when tearing\ndown a buffer, not just on buffers that are explicitly marked as page bearing\nbuffers. This fixes a leak detected by the kernel memory leak code.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a5f9be58c2b87106100a6053d09b1f9f8d551c6e",
      "tree": "4d44970b16b0699cb3bc757b9e5f25eda230d4d1",
      "parents": [
        "2ee1abad73a12df5521cd3f017f081f1f684a361"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Dec 04 10:19:07 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed Dec 16 13:41:20 2009 -0600"
      },
      "message": "xfs: kill xfs_bmbt_rec_32/64 types\n\nFor a long time we\u0027ve always stored bmap btree records in the 64bit format,\nso kill off the dead 32bit type, and make sure the 64bit type is named just\nxfs_bmbt_rec everywhere, without any size postfix.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "2ee1abad73a12df5521cd3f017f081f1f684a361",
      "tree": "e44a88b0ae7f01d339426d7a6d18bde017bb9cf1",
      "parents": [
        "b44b1126279b60597f96bbe77507b1650f88a969"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dgc@sgi.com",
        "time": "Tue Nov 24 18:03:15 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed Dec 16 13:41:19 2009 -0600"
      },
      "message": "xfs: improve metadata I/O merging in the elevator\n\nChange all async metadata buffers to use [READ|WRITE]_META I/O types\nso that the I/O doesn\u0027t get issued immediately. This allows merging of\nadjacent metadata requests but still prioritises them over bulk data.\nThis shows a 10-15% improvement in sequential create speed of small\nfiles.\n\nDon\u0027t include the log buffers in this classification - leave them as\nsync types so they are issued immediately.\n\nSigned-off-by: Dave Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "aa96ce0af8385415a3450bc13e6254a4d6b4a888",
      "tree": "5d255bc416d469b4d2110910586c43fc6474d51e",
      "parents": [
        "2900681b25d5a1a1a7b39ab66da3b8c6b1b0b7ad",
        "bf8b4542f92c4d8222941b1cab055fa350ab2fb4"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:22:32 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:22:32 2009 -0500"
      },
      "message": "Merge branch \u0027misc-2.6.33\u0027 into release\n"
    },
    {
      "commit": "bf8b4542f92c4d8222941b1cab055fa350ab2fb4",
      "tree": "4810e901a4cacfe760954924f68de3976c9353ac",
      "parents": [
        "918aae42aa9b611a3663b16ae849fdedc67c2292"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Mon Oct 26 17:44:18 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:21:51 2009 -0500"
      },
      "message": "ACPI processor: Fix section mismatch for processor_add()\n\nDue to the merge of processor_start() (declared with __cpuinit) into\nprocessor_add(), a section mismatch warning appears:\n\nWARNING: drivers/built-in.o(.text+0x4d59d): Section mismatch in reference\nfrom the function acpi_processor_add() to the function\n.cpuinit.text:acpi_processor_power_init()\n...\n\nThis patch fixes the warning by declaring processor_add() as __cpuinit\nand also declares acpi_processor_add_fs() as __cpuinit as it is only\nused in acpi_processor_add().\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "b44b1126279b60597f96bbe77507b1650f88a969",
      "tree": "220cb8d4903532c2551ee2bdffa03885cdc642ba",
      "parents": [
        "5ac4d630eb87656bd4dc313b910776d54d88ea28"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Dec 01 18:12:29 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Wed Dec 16 13:20:15 2009 -0600"
      },
      "message": "xfs: check for not fully initialized inodes in xfs_ireclaim\n\nAdd an assert for inodes not added to the inode cache in xfs_ireclaim,\nto make sure we\u0027re not going to introduce something like the\nfamous nfsd inode cache bug again.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "2900681b25d5a1a1a7b39ab66da3b8c6b1b0b7ad",
      "tree": "3c6969f0333f1255a4751086dd1131d5bbc5a157",
      "parents": [
        "243e1ef842ef9e24fbf1cc7ddf4fd1c01471544a",
        "3563ff964fdc36358cef0330936fdac28e65142a"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:07:29 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:07:29 2009 -0500"
      },
      "message": "Merge branch \u0027osc\u0027 into release\n"
    },
    {
      "commit": "3563ff964fdc36358cef0330936fdac28e65142a",
      "tree": "5815c93ce3c6adc57f9b8c73113ee77605a1b0ef",
      "parents": [
        "3a9622dc4659af44a8098a233f65c51e495ff0a5"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Oct 29 11:05:05 2009 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:05:34 2009 -0500"
      },
      "message": "ACPI: Add platform-wide _OSC support.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "3a9622dc4659af44a8098a233f65c51e495ff0a5",
      "tree": "8e0dd5d1f31ad6a9047b0ba5faf26a3759d9e2fd",
      "parents": [
        "70023de88c58a81a730ab4d13c51a30e537ec76e"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Oct 29 11:04:50 2009 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:05:11 2009 -0500"
      },
      "message": "ACPI: cleanup pci_root _OSC code.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "70023de88c58a81a730ab4d13c51a30e537ec76e",
      "tree": "f97ac33d7b1a22ebe08bcdb1bd810b1167b16755",
      "parents": [
        "22763c5cf3690a681551162c15d34d935308c8d7"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Oct 29 11:04:28 2009 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 14:03:30 2009 -0500"
      },
      "message": "ACPI: Add a generic API for _OSC -v2\n\nv2-\u003ev1:\n.improve debug info as suggedted by Bjorn,Kenji\n.API is using uuid string as suggested by Alexey\n\nAdd an API to execute _OSC. A lot of devices can have this method, so add a\ngeneric API.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "243e1ef842ef9e24fbf1cc7ddf4fd1c01471544a",
      "tree": "af808f66a8a8518c82c0e8189df7ac0d4252f31b",
      "parents": [
        "7d8c22060555a51c23b9c6a76b97a5e75b5db882",
        "42b4e9ee3d1d3b691bcae37f217f08740320c58c"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 13:57:16 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 13:57:16 2009 -0500"
      },
      "message": "Merge branch \u0027toshiba-bt\u0027 into release\n"
    },
    {
      "commit": "7d8c22060555a51c23b9c6a76b97a5e75b5db882",
      "tree": "0cb2785c79acb7751ba5466d83e5eedcd59d6e3d",
      "parents": [
        "f02f465b1cdcdf7485f89ec019e6cceaf80cadd5",
        "de078e5747fa3a95efac04fd6725dcceb4520416"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 13:57:12 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 13:57:12 2009 -0500"
      },
      "message": "Merge branch \u0027msi-wmi\u0027 into release\n"
    },
    {
      "commit": "525995d77ca08dfc2ba6f8e606f93694271dbd66",
      "tree": "be9ddad66cd1301eea8dab7814cbda144a909e35",
      "parents": [
        "e4bdda1bc3123a9e65f4dd93a23041fde8ed3dc2",
        "64a2b168023bfd09037ba760838762e56c44178e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:52:35 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:52:35 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (88 commits)\n  Blackfin: Convert BUG() to use unreachable()\n  Blackfin: define __NR_recvmmsg\n  Blackfin: drop duplicate sched_clock\n  Blackfin: NOMPU: skip DMA ICPLB hole when it is redundant\n  Blackfin: MPU: add missing __init markings\n  Blackfin: add support for TIF_NOTIFY_RESUME\n  Blackfin: kgdb_test: clean up code a bit\n  Blackfin: convert kgdbtest to proc_fops\n  Blackfin: convert cyc2ns() to clocksource_cyc2ns()\n  Blackfin: ip0x: pull in asm/portmux.h for P_xxx defines\n  Blackfin: drop unused ax88180 resources\n  Blackfin: bf537-stamp: add ADF702x network driver resources\n  Blackfin: bf537-stamp: add CAN resources\n  Blackfin: bf537-stamp: add AD5258 i2c address\n  Blackfin: bf537-stamp: add adau1761 i2c address\n  Blackfin: bf537-stamp: add adau1371 i2c address\n  Blackfin: bf537-stamp: add ADP8870 resources\n  Blackfin: bf537-stamp: kill AD714x board-specific Kconfigs\n  Blackfin: bf537-stamp: update ADP5520 resources\n  Blackfin: bf537-stamp: add ADXL346 orientation sensing support\n  ...\n"
    },
    {
      "commit": "e4bdda1bc3123a9e65f4dd93a23041fde8ed3dc2",
      "tree": "c2f75cc08bb4c5cbd9103e14399ea5ab66ce960d",
      "parents": [
        "74f3ae743427b87e43b5cb9f4257021ae8ad4267",
        "380454126f1357db9270f9d1ca05dfe1a6e4ad47"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:44 2009 -0800"
      },
      "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  NFSv4: Fix a regression in the NFSv4 state manager\n  NFSv4: Release the sequence id before restarting a CLOSE rpc call\n  nfs41: fix session fore channel negotiation\n  nfs41: do not zero seqid portion of stateid on close\n  nfs: run state manager in privileged mode\n  nfs: make recovery state manager operations privileged\n  nfs: enforce FIFO ordering of operations trying to acquire slot\n  rpc: add a new priority in RPC task\n  nfs: remove rpc_task argument from nfs4_find_slot\n  rpc: add rpc_queue_empty function\n  nfs: change nfs4_do_setlk params to identify recovery type\n  nfs: do not do a LOOKUP after open\n  nfs: minor cleanup of session draining\n"
    },
    {
      "commit": "74f3ae743427b87e43b5cb9f4257021ae8ad4267",
      "tree": "378975998960af61558304c97999f3bf62c8ba12",
      "parents": [
        "d8bef0bb219154e655fa139e28400d6ae9aa3727",
        "8d99513c1b76cfd0b2dcf061c5136cb1061e6b37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:24 2009 -0800"
      },
      "message": "Merge branch \u0027module\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027module\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  modpost: fix segfault with short symbol names\n  module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE\u003dy\n  Kbuild: clear marker out of modpost\n  module: make MODULE_SYMBOL_PREFIX into a CONFIG option\n  ARM: unexport symbols used to implement floating point emulation\n  ARM: use unified discard definition in linker script\n  x86: don\u0027t export inline function\n  sparc64: don\u0027t export static inline pci_ functions\n"
    },
    {
      "commit": "d8bef0bb219154e655fa139e28400d6ae9aa3727",
      "tree": "44ec9d752831c5fe6bc7ad1208febe0bf19b8996",
      "parents": [
        "37c24b37fb2454e95136139d10bb6828967105bf",
        "430677133fd5a2033222b3b5016bb461fe8fabf2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:44:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:44:43 2009 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] implement early_io{re,un}map for ia64\n  [IA64] Replace old style lock initializer\n  [IA64] fix SBA IOMMU to handle allocation failure properly\n  [IA64] Save I-resources to ia64_sal_os_state\n  [IA64] preallocate IA64_IRQ_MOVE_VECTOR\n"
    },
    {
      "commit": "37c24b37fb2454e95136139d10bb6828967105bf",
      "tree": "d5c3fa61fa689567caeb2a7cb5891473e444ff7d",
      "parents": [
        "5ac4d630eb87656bd4dc313b910776d54d88ea28",
        "7663dacd926584093dfc350892792054692b6cb3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:43:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:43:34 2009 -0800"
      },
      "message": "Merge branch \u0027for-2.6.33\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.33\u0027 of git://linux-nfs.org/~bfields/linux: (42 commits)\n  nfsd: remove pointless paths in file headers\n  nfsd: move most of nfsfh.h to fs/nfsd\n  nfsd: remove unused field rq_reffh\n  nfsd: enable V4ROOT exports\n  nfsd: make V4ROOT exports read-only\n  nfsd: restrict filehandles accepted in V4ROOT case\n  nfsd: allow exports of symlinks\n  nfsd: filter readdir results in V4ROOT case\n  nfsd: filter lookup results in V4ROOT case\n  nfsd4: don\u0027t continue \"under\" mounts in V4ROOT case\n  nfsd: introduce export flag for v4 pseudoroot\n  nfsd: let \"insecure\" flag vary by pseudoflavor\n  nfsd: new interface to advertise export features\n  nfsd: Move private headers to source directory\n  vfs: nfsctl.c un-used nfsd #includes\n  lockd: Remove un-used nfsd headers #includes\n  s390: remove un-used nfsd #includes\n  sparc: remove un-used nfsd #includes\n  parsic: remove un-used nfsd #includes\n  compat.c: Remove dependence on nfsd private headers\n  ...\n"
    },
    {
      "commit": "5ac4d630eb87656bd4dc313b910776d54d88ea28",
      "tree": "de69640aee50ae7969dc3d5db223499e58795b47",
      "parents": [
        "59be2e04e50ac9947e4356c10099f49977f5f74d",
        "b568be627a7270eba575bc4406a606e1545f91bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:34:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:34:42 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: temporarily disable discard granularity\n"
    },
    {
      "commit": "59be2e04e50ac9947e4356c10099f49977f5f74d",
      "tree": "56aa00a4499a1543da8728cb84b10bec5b211280",
      "parents": [
        "e69381b4175ba162229646f6753ff1d87c24d468",
        "503914cf4a4b5dbe3f844e0a92f412ae99fde70e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:33:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:33:18 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (26 commits)\n  net: sh_eth alignment fix for sh7724 using NET_IP_ALIGN V2\n  ixgbe: allow tx of pre-formatted vlan tagged packets\n  ixgbe: Fix 82598 premature copper PHY link indicatation\n  ixgbe: Fix tx_restart_queue/non_eop_desc statistics counters\n  bcm63xx_enet: fix compilation failure after get_stats_count removal\n  packet: dont call sleeping functions while holding rcu_read_lock()\n  tcp: Revert per-route SACK/DSACK/TIMESTAMP changes.\n  ipvs: zero usvc and udest\n  netfilter: fix crashes in bridge netfilter caused by fragment jumps\n  ipv6: reassembly: use seperate reassembly queues for conntrack and local delivery\n  sky2: leave PCI config space writeable\n  sky2: print Optima chip name\n  x25: Update maintainer.\n  ipvs: fix synchronization on connection close\n  netfilter: xtables: document minimal required version\n  drivers/net/bonding/: : use pr_fmt\n  can: CAN_MCP251X should depend on HAS_DMA\n  drivers/net/usb: Correct code taking the size of a pointer\n  drivers/net/cpmac.c: Correct code taking the size of a pointer\n  drivers/net/sfc: Correct code taking the size of a pointer\n  ...\n"
    },
    {
      "commit": "e69381b4175ba162229646f6753ff1d87c24d468",
      "tree": "ac4c03f6a0a1a0426832aa4f5c3b7732080c51cc",
      "parents": [
        "238ccbb050a243e935bb3fc679c2e4bbff7004aa",
        "14f369d1d61e7ac6578c54ca9ce3caaf4072412c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:32:31 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:32:31 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (45 commits)\n  RDMA/cxgb3: Fix error paths in post_send and post_recv\n  RDMA/nes: Fix stale ARP issue\n  RDMA/nes: FIN during MPA startup causes timeout\n  RDMA/nes: Free kmap() resources\n  RDMA/nes: Check for zero STag\n  RDMA/nes: Fix Xansation test crash on cm_node ref_count\n  RDMA/nes: Abnormal listener exit causes loopback node crash\n  RDMA/nes: Fix crash in nes_accept()\n  RDMA/nes: Resource not freed for REJECTed connections\n  RDMA/nes: MPA request/response error checking\n  RDMA/nes: Fix query of ORD values\n  RDMA/nes: Fix MAX_CM_BUFFER define\n  RDMA/nes: Pass correct size to ioremap_nocache()\n  RDMA/nes: Update copyright and branding string\n  RDMA/nes: Add max_cqe check to nes_create_cq()\n  RDMA/nes: Clean up struct nes_qp\n  RDMA/nes: Implement IB_SIGNAL_ALL_WR as an iWARP extension\n  RDMA/nes: Add additional SFP+ PHY uC status check and PHY reset\n  RDMA/nes: Correct fast memory registration implementation\n  IB/ehca: Fix error paths in post_send and post_recv\n  ...\n"
    },
    {
      "commit": "238ccbb050a243e935bb3fc679c2e4bbff7004aa",
      "tree": "3381b895861f625b1524acfd32d4a90eb79108bd",
      "parents": [
        "c5113e3d66d7c7140fe854c7638a27eb3a23fd7d",
        "1d9f26262aef6d63ff65eba0fd5f1583f342b69b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:31:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:31:44 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (22 commits)\n  Input: ALPS - add interleaved protocol support (Dell E6x00 series)\n  Input: keyboard - don\u0027t override beep with a bell\n  Input: altera_ps2 - fix test of unsigned in altera_ps2_probe()\n  Input: add mc13783 touchscreen driver\n  Input: ep93xx_keypad - update driver to new core support\n  Input: wacom - separate pen from express keys on Graphire\n  Input: wacom - add defines for data packet report IDs\n  Input: wacom - add support for new LCD tablets\n  Input: wacom - add defines for packet lengths of various devices\n  Input: wacom - ensure the device is initialized properly upon resume\n  Input: at32psif - do not sleep in atomic context\n  Input: i8042 - add Gigabyte M1022M to the noloop list\n  Input: i8042 - allow installing platform filters for incoming data\n  Input: i8042 - fix locking in interrupt routine\n  Input: ALPS - do not set REL_X/REL_Y capabilities on the touchpad\n  Input: document use of input_event() function\n  Input: sa1111ps2 - annotate probe() and remove() methods\n  Input: ambakmi - annotate probe() and remove() methods\n  Input: gscps2 - fix probe() and remove() annotations\n  Input: altera_ps2 - add annotations to probe and remove methods\n  ...\n"
    },
    {
      "commit": "c5113e3d66d7c7140fe854c7638a27eb3a23fd7d",
      "tree": "9247edfcfa87132e15a277d6f2359b303c24da29",
      "parents": [
        "9b2831704e9250269032e3b8c2ffdfca09fd2851",
        "d785d78bbdb53580b12c40e820af5a3281ce2fc8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:30:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:30:17 2009 -0800"
      },
      "message": "Merge branch \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/radeon/kms: fix r100-\u003er500 CS checker for compressed textures. (v2)\n  drm/radeon/kms: allow for texture tiling\n  drm/radeon/kms: init pm on all chipsets\n  drm/radeon/kms: HDMI support for R600 KMS\n  drm/radeon/kms: make sure mc is initialized before mapping blit bo\n  drm/radeon/kms: Return to userspace on ERESTARTSYS\n  drm/radeon/gem: don\u0027t leak a gem object if reserve fails on get tiling (v2)\n  drm/radeon/kms: don\u0027t report allocate failure on ERESTARTSYS\n  drm/radeon/kms: Check if bo we got from ttm are radeon object or not\n  drm/radeon/kms: If no placement is supplied fallback to system\n  drm/ttm: Fix memory type manager debug information printing\n  drm/ttm: Fix printk format \u0026 compute bo-\u003emem.size at bo initialization\n  drm/ttm: Fix potential ttm_mem_evict_first races.\n  drm/ttm: Delayed delete fixes.\n  drm/ttm: fix two bugs in new placement routines.\n  drm/ttm: fix incorrect logic in ttm_bo_io path\n  drm/nouveau: remove use of -ERESTART\n  nouveau: Fix endianness with new context program loader\n  drm/nouveau: fix build with CONFIG_AGP\u003dn\n  drm/nouveau: fix ch7006 build\n"
    },
    {
      "commit": "9b2831704e9250269032e3b8c2ffdfca09fd2851",
      "tree": "f0707f9cb808371e185f18268a14213a2e4fc392",
      "parents": [
        "337e4a1ab4d736b8c39a4c3a233ac21f1a6c036f",
        "204fc390d86f7087201ec4a146bc07483186c35b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:52 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (33 commits)\n  sh: Fix test of unsigned in se7722_irq_demux()\n  sh: mach-ecovec24: Add FSI sound support\n  sh: mach-ecovec24: Add mt9t112 camera support\n  sh: mach-ecovec24: Add tw9910 support\n  sh: MSIOF/mmc_spi platform data for the Ecovec24 board\n  sh: ms7724se: Add ak4642 support\n  sh: Fix up FPU build for SH5\n  sh: Remove old early serial console code V2\n  sh: sh5 scif pdata (sh5-101/sh5-103)\n  sh: sh4a scif pdata (sh7757/sh7763/sh7770/sh7780/sh7785/sh7786/x3)\n  sh: sh4a scif pdata (sh7343/sh7366/sh7722/sh7723/sh7724)\n  sh: sh4 scif pdata (sh7750/sh7760/sh4-202)\n  sh: sh3 scif pdata (sh7705/sh770x/sh7710/sh7720)\n  sh: sh2a scif pdata (sh7201/sh7203/sh7206/mxg)\n  sh: sh2 scif pdata (sh7616)\n  sh-sci: Extend sh-sci driver with early console V2\n  sh: Stub in P3 ioremap support for nommu parts.\n  sh: wire up vmallocinfo support in ioremap() implementations.\n  sh: Make the unaligned trap handler always obey notification levels.\n  sh: Couple kernel and user write page perm bits for CONFIG_X2TLB\n  ...\n"
    },
    {
      "commit": "337e4a1ab4d736b8c39a4c3a233ac21f1a6c036f",
      "tree": "20c58600b42600b8f62f3cfb63fc62b1a7fbc78c",
      "parents": [
        "7949456b1b96924c2d9ae5aea5fa7d4c81c946ed",
        "681142f9211b23e6aa2984259d38b76d7bdc05a8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:26 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6:\n  fat: make discard a mount option\n"
    },
    {
      "commit": "7949456b1b96924c2d9ae5aea5fa7d4c81c946ed",
      "tree": "819e64dcd686c8b53c698c164aea96a002e8b5f8",
      "parents": [
        "60d9aa758c00f20ade0cb1951f6a934f628dd2d7",
        "12458ea06efd7b44281e68fe59c950ec7d59c649"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:28:56 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:28:56 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:\n  ppc440spe-adma: adds updated ppc440spe adma driver\n  iop-adma.c: use resource_size()\n  dmaengine: clarify the meaning of the DMA_CTRL_ACK flag\n  sh: stylistic improvements for the DMA driver\n  dmaengine: fix dmatest to verify minimum transfer length and test buffer size\n  sh: DMA driver has to specify its alignment requirements\n  Add COH 901 318 DMA block driver v5\n"
    },
    {
      "commit": "60d9aa758c00f20ade0cb1951f6a934f628dd2d7",
      "tree": "e3bdfa4ec0d3f9a29a822810b8b9188c7d613cbd",
      "parents": [
        "b2adf0cbec4cf0934c63f48f893e0cebde380d0c",
        "2e16cfca6e17ae37ae21feca080a6f2eca9087dc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (90 commits)\n  jffs2: Fix long-standing bug with symlink garbage collection.\n  mtd: OneNAND: Fix test of unsigned in onenand_otp_walk()\n  mtd: cfi_cmdset_0002, fix lock imbalance\n  Revert \"mtd: move mxcnd_remove to .exit.text\"\n  mtd: m25p80: add support for Macronix MX25L4005A\n  kmsg_dump: fix build for CONFIG_PRINTK\u003dn\n  mtd: nandsim: add support for 4KiB pages\n  mtd: mtdoops: refactor as a kmsg_dumper\n  mtd: mtdoops: make record size configurable\n  mtd: mtdoops: limit the maximum mtd partition size\n  mtd: mtdoops: keep track of used/unused pages in an array\n  mtd: mtdoops: several minor cleanups\n  core: Add kernel message dumper to call on oopses and panics\n  mtd: add ARM pismo support\n  mtd: pxa3xx_nand: Fix PIO data transfer\n  mtd: nand: fix multi-chip suspend problem\n  mtd: add support for switching old SST chips into QRY mode\n  mtd: fix M29W800D dev_id and uaddr\n  mtd: don\u0027t use PF_MEMALLOC\n  mtd: Add bad block table overrides to Davinci NAND driver\n  ...\n\nFixed up conflicts (mostly trivial) in\n\tdrivers/mtd/devices/m25p80.c\n\tdrivers/mtd/maps/pcmciamtd.c\n\tdrivers/mtd/nand/pxa3xx_nand.c\n\tkernel/printk.c\n"
    },
    {
      "commit": "b2adf0cbec4cf0934c63f48f893e0cebde380d0c",
      "tree": "f4073c90ec71ebb37a0934dc14b52959ad58bfaa",
      "parents": [
        "a79960e576ebca9dbf24489b562689f2be7e9ff0",
        "d0608b54740c82b08056b7611e38a3fd73be3564"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:12:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:12:07 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6:\n  parisc: Fixup last users of irq_chip-\u003etypename\n  parisc: convert /proc/pdc/{lcd,led} to seq_file\n  parisc: Convert BUG() to use unreachable()\n  parisc: Replace old style lock init in smp.c\n  parisc: use sort() instead of home-made implementation (v2)\n  parisc: add CALLER_ADDR{0-6} macros\n  parisc: remove unused IRQSTAT_SIRQ_PEND and IRQSTAT_SZ defines\n  parisc: remove duplicated #include\n"
    },
    {
      "commit": "a79960e576ebca9dbf24489b562689f2be7e9ff0",
      "tree": "b0748839230c2bba1d49ccdd732608d7d1f334cb",
      "parents": [
        "661e338f728d101b4839b6b157d44cfcb80e3c5e",
        "cd7bcf32d42b15891620b3f1387a00178b54291a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:11:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:11:38 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  implement early_io{re,un}map for ia64\n  Revert \"Intel IOMMU: Avoid memory allocation failures in dma map api calls\"\n  intel-iommu: ignore page table validation in pass through mode\n  intel-iommu: Fix oops with intel_iommu\u003digfx_off\n  intel-iommu: Check for an RMRR which ends before it starts.\n  intel-iommu: Apply BIOS sanity checks for interrupt remapping too.\n  intel-iommu: Detect DMAR in hyperspace at probe time.\n  dmar: Fix build failure without NUMA, warn on bogus RHSA tables and don\u0027t abort\n  iommu: Allocate dma-remapping structures using numa locality info\n  intr_remap: Allocate intr-remapping table using numa locality info\n  dmar: Allocate queued invalidation structure using numa locality info\n  dmar: support for parsing Remapping Hardware Static Affinity structure\n"
    },
    {
      "commit": "661e338f728d101b4839b6b157d44cfcb80e3c5e",
      "tree": "5d40053d81777116b7617712b64860eac5642b0e",
      "parents": [
        "6a5df38f5f07981dda5457ec6c05efe1c4200d84",
        "256f7276af20c88b492353710d5d6640b09c3d63"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:43 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:\n  edac, mce, amd: silence GART TLB errors\n  edac, mce: correct corenum reporting\n"
    },
    {
      "commit": "6a5df38f5f07981dda5457ec6c05efe1c4200d84",
      "tree": "d82c3862f7ba719d7723111140a0c89e6387cb19",
      "parents": [
        "9cfc86249f32d984339c6d1f8a1fd1326989b3b8",
        "262ab9ac0daadebcece8e3cbf3ae66ee8774cfd7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:16 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (116 commits)\n  V4L/DVB (13698): pms: replace asm/uaccess.h to linux/uaccess.h\n  V4L/DVB (13690): radio/si470x: #include \u003csched.h\u003e\n  V4L/DVB (13688): au8522: modify the attributes of local filter coefficients\n  V4L/DVB (13687): cx231xx: use NULL when pointer is needed\n  V4L/DVB: Davinci VPFE Capture: remove unused #include \u003clinux/version.h\u003e\n  V4L/DVB (13685): Correct code taking the size of a pointer\n  V4L/DVB (13684): Fix some cut-and-paste noise in dib0090.h\n  V4L/DVB (13683): sanio-ms: clean up init, exit and id_table\n  V4L/DVB (13682): dib8000: make some constant static\n  V4L/DVB: lgs8gxx: Use shifts rather than multiply/divide when possible\n  V4L/DVB (13680b): DocBook/media: create links for included sources\n  V4L/DVB (13680a): DocBook/media: copy images after building HTML\n  V4L/DVB (13678): Add support for yet another DvbWorld, TeVii and Prof USB devices\n  V4L/DVB (13676): configurable IRQ mode on NetUP Dual DVB-S2 CI; IRQ from CAM processing (CI interface works faster)\n  V4L/DVB (13674): stv090x: Add DiSEqC envelope mode\n  V4L/DVB (13673): lnbp21: Implement 22 kHz tone control\n  V4L/DVB (13671): sh_mobile_ceu_camera: Remove frame size page alignment\n  V4L/DVB (13670): soc-camera: Add mt9t112 camera driver\n  V4L/DVB (13669): tw9910: Add sync polarity support\n  V4L/DVB (13668): tw9910: remove cropping\n  ...\n"
    },
    {
      "commit": "9cfc86249f32d984339c6d1f8a1fd1326989b3b8",
      "tree": "56428d319483f54949de8d9d0a5b3f715287ed91",
      "parents": [
        "f42647acc4eab1befa9e290691ed7a40f9a7d3cc",
        "243797f59b748f679ab88d456fcc4f92236d724b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:06:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:06:39 2009 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027\n\n* akpm: (173 commits)\n  genalloc: use bitmap_find_next_zero_area\n  ia64: use bitmap_find_next_zero_area\n  sparc: use bitmap_find_next_zero_area\n  mlx4: use bitmap_find_next_zero_area\n  isp1362-hcd: use bitmap_find_next_zero_area\n  iommu-helper: use bitmap library\n  bitmap: introduce bitmap_set, bitmap_clear, bitmap_find_next_zero_area\n  qnx4: use hweight8\n  qnx4fs: remove remains of the (defunct) write support\n  resource: constify arg to resource_size() and resource_type()\n  gru: send cross partition interrupts using the gru\n  gru: function to generate chipset IPI values\n  gru: update driver version number\n  gru: improve GRU TLB dropin statistics\n  gru: fix GRU interrupt race at deallocate\n  gru: add hugepage support\n  gru: fix bug in allocation of kernel contexts\n  gru: update GRU structures to match latest hardware spec\n  gru: check for correct GRU chiplet assignment\n  gru: remove stray local_irq_enable\n  ...\n"
    },
    {
      "commit": "de078e5747fa3a95efac04fd6725dcceb4520416",
      "tree": "b106fc602480d0a29bd475647b495ce6be24ecc8",
      "parents": [
        "c30116c6f0d26cd6e46dfa578163d573ef4730b2"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Mon Dec 14 10:21:39 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:54 2009 -0500"
      },
      "message": "msi-wmi: depend on backlight and fix corner-cases problems\n\nNow depends on BACKLIGHT_CLASS_DEVICE.\nDriver will return an error if it can\u0027t get actual backlight value\nFix remapping of brightness keys when backlight is not controlled by ACPI.\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c30116c6f0d26cd6e46dfa578163d573ef4730b2",
      "tree": "8a7d227ebfad69c0f877343bd2c603e3e94b57b0",
      "parents": [
        "d607af93006594f7da1d4b7d44724c5308f4e892"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Thu Dec 10 14:18:19 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:54 2009 -0500"
      },
      "message": "msi-wmi: switch to using input sparse keymap library\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d607af93006594f7da1d4b7d44724c5308f4e892",
      "tree": "044feb73774b0f093f7d9e3e7cd9c10cfb95318a",
      "parents": [
        "977f9b921c82726745a8b7281dc679edb32b4906"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Thu Dec 10 14:18:18 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:54 2009 -0500"
      },
      "message": "msi-wmi: replace one-condition switch-case with if statement\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "977f9b921c82726745a8b7281dc679edb32b4906",
      "tree": "83ada98763bfc43c1a56a35d576e337cfeeaeaa0",
      "parents": [
        "822ddc042a12aa2a8c2030ad4ebc660bc0e66c3f"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Thu Dec 10 14:18:17 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:53 2009 -0500"
      },
      "message": "msi-wmi: remove unused field \u0027instance\u0027 in key_entry structure\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "822ddc042a12aa2a8c2030ad4ebc660bc0e66c3f",
      "tree": "186799aefd8d0a9edd7a295d7e05e7fd16e6a2c5",
      "parents": [
        "46b51eb9e14afb3bde4bc2fe3bbc22ce012647d4"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Thu Dec 10 14:18:16 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:53 2009 -0500"
      },
      "message": "msi-wmi: remove custom runtime debug implementation\n\nRely on DYNAMIC_DEBUG instead if needed\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "46b51eb9e14afb3bde4bc2fe3bbc22ce012647d4",
      "tree": "05ab778507e4ba9a13c8dec630fccb8646cf9623",
      "parents": [
        "addd65aac7bcfed7348048b3ce24774718fc44c3"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Thu Dec 10 14:18:15 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:53 2009 -0500"
      },
      "message": "msi-wmi: rework init\n\nThere should be less code duplication with usage of gotos\nDriver won\u0027t load if there\u0027s no hardware to control\nSafer error handling at input driver allocation\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "addd65aac7bcfed7348048b3ce24774718fc44c3",
      "tree": "137451081ee948d873010459f65118bafc3f063c",
      "parents": [
        "d12d8baff927a31b7e13b72ed9549be6f296a6ef"
      ],
      "author": {
        "name": "Anisse Astier",
        "email": "anisse@astier.eu",
        "time": "Thu Dec 10 14:18:14 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:53 2009 -0500"
      },
      "message": "msi-wmi: remove useless includes\n\nSigned-off-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d12d8baff927a31b7e13b72ed9549be6f296a6ef",
      "tree": "7134afdc75a228c14e0ad40d07f452317bf4a407",
      "parents": [
        "8bea8672edfca7ec5f661cafb218f1205863b343"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Thu Dec 10 14:18:13 2009 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:40:53 2009 -0500"
      },
      "message": "X86 drivers: Introduce msi-wmi driver\n\nThis driver serves backlight (including switching) and volume up/down\nkeys for MSI machines providing a specific wmi interface:\n551A1F84-FBDD-4125-91DB-3EA8F44F1D45\nB6F3EEF2-3D2F-49DC-9DE3-85BCE18C62F2\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCC: Carlos Corbacho \u003ccarlos@strangeworlds.co.uk\u003e\nCC: Matthew Garrett \u003cmjg59@srcf.ucam.org\u003e\nTested-by: Matt Chen \u003cmachen@novell.com\u003e\nReviewed-by: Anisse Astier \u003canisse@astier.eu\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "60ab271617cec607380099f3ed8e84916e48323b",
      "tree": "fc43fd9f59e2743239c1c24efaf8686e9bc30f99",
      "parents": [
        "856e96608a72412d319e498a3a7c557571f811bd"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 17:55:56 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:30:13 2009 +0100"
      },
      "message": "perf record: Use per-task-per-cpu events for inherited events\n\nCreate events with a pid and cpu contraint for inherited events\nso that we get a stream per cpu, instead of all cpus contending\non a single stream.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091216165904.987643843@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "856e96608a72412d319e498a3a7c557571f811bd",
      "tree": "07e5e92c0778c35d4b9b5e2f9172541ec5002333",
      "parents": [
        "f4c4176f21533e22bcc292030da72bcfa105f5b8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 17:55:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:30:12 2009 +0100"
      },
      "message": "perf record: Properly synchronize child creation\n\nRemove that ugly usleep and provide proper serialization between\nparent and child just like perf-stat does.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091216165904.908184135@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f4c4176f21533e22bcc292030da72bcfa105f5b8",
      "tree": "9e4376f5ff4dc3fb0f333faca94f219570df9af8",
      "parents": [
        "9b33827de63539c7c3314ddf890fb216e4acf3d8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 17:55:54 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:30:11 2009 +0100"
      },
      "message": "perf events: Allow per-task-per-cpu counters\n\nIn order to allow for per-task-per-cpu counters, useful for\nscalability when profiling task hierarchies, we allow installing\nevents with event-\u003ecpu !\u003d -1 in task contexts.\n\n__perf_event_sched_in() already skips events where -\u003ecpu\nmis-matches the current cpu, fix up __perf_install_in_context()\nand __perf_event_enable() to also respect this filter.\n\nThis does lead to vary hard to interpret enabled/running times\nfor such counters, but I don\u0027t see a simple solution for that.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091216165904.831451147@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9b33827de63539c7c3314ddf890fb216e4acf3d8",
      "tree": "233330d9489013a0d1c24a3920d370527b2de308",
      "parents": [
        "604c5c92972dcb4b98be34775452d09a5d4ec248"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 16 14:31:49 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:29:10 2009 +0100"
      },
      "message": "perf diff: Percent calcs should use double values\n\nOtherwise we do integer math and the delta values round up to\nmultiples of 1.0%.\n\nAlso, calculate absolute values. Things look precise now:\n\n$ perf report -i perf.data.old --sort dso,symbol | head -13\n     9.02%  libc-2.10.1.so               [.] _IO_vfprintf_internal\n     4.88%  find                         [.] 0x00000000014af0\n     2.91%  [kernel]                     [k] __kmalloc\n     2.85%  [kernel]                     [k] ext4_htree_store_dirent\n     2.50%  libc-2.10.1.so               [.] __GI_memmove\n     2.44%  [kernel]                     [k] half_md4_transform\n     2.43%  [kernel]                     [k] _spin_lock\n     2.33%  [kernel]                     [k] system_call\n$ perf report -i perf.data --sort dso,symbol | head -13\n     8.55%  libc-2.10.1.so               [.] _IO_vfprintf_internal\n     3.11%  [kernel]                     [k] __kmalloc\n     3.07%  [kernel]                     [k] ext4_htree_store_dirent\n     2.66%  find                         [.] 0x00000000016bcf\n     2.61%  [kernel]                     [k] _atomic_dec_and_lock\n     2.46%  [kernel]                     [k] half_md4_transform\n     2.41%  libc-2.10.1.so               [.] __GI_memmove\n     2.30%  find                         [.] 0x00000000009219\n$ perf diff | head -13\n     9.02%     -0.47%  libc-2.10.1.so               [.] _IO_vfprintf_internal\n     2.91%     +0.20%  [kernel]                     [k] __kmalloc\n     2.85%     +0.23%  [kernel]                     [k] ext4_htree_store_dirent\n     1.99%     +0.62%  [kernel]                     [k] _atomic_dec_and_lock\n     2.44%     +0.02%  [kernel]                     [k] half_md4_transform\n     2.50%     -0.09%  libc-2.10.1.so               [.] __GI_memmove\n     1.88%     +0.01%  [kernel]                     [k] __d_lookup\n     2.43%     -0.75%  [kernel]                     [k] _spin_lock\n     0.97%     +0.62%  [kernel]                     [k] path_get\n     1.99%     -0.42%  libc-2.10.1.so               [.] _int_malloc\n$\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1260981109-2621-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c05c4edd876b7ae92787d1295868afcb89b6a348",
      "tree": "8dc4ce17c0a9be223a70e99d246035fee0a7168e",
      "parents": [
        "2cfd30adf6130dab3fbb130eb5f7b1fd42a70e31"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Sep 23 15:07:30 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:50 2009 -0500"
      },
      "message": "direct I/O fallback sync simplification\n\nIn the case of direct I/O falling back to buffered I/O we sync data\ntwice currently: once at the end of generic_file_buffered_write using\nfilemap_write_and_wait_range and once a little later in\n__generic_file_aio_write using do_sync_mapping_range with all flags set.\n\nThe wait before write of the do_sync_mapping_range call does not make\nany sense, so just keep the filemap_write_and_wait_range call and move\nit to the right spot.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2cfd30adf6130dab3fbb130eb5f7b1fd42a70e31",
      "tree": "2e7ca4760d58164d6352ede7813f854f485a5404",
      "parents": [
        "1e431f5ce78f3ae8254d725060288b78ff74f086"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Sep 23 15:04:02 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:49 2009 -0500"
      },
      "message": "ocfs: stop using do_sync_mapping_range\n\ndo_sync_mapping_range(..., SYNC_FILE_RANGE_WRITE) is a very awkward way\nto perform a filemap_fdatawrite_range.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1e431f5ce78f3ae8254d725060288b78ff74f086",
      "tree": "a144fd7b6120ec61958c82023b25620a18aa3d6d",
      "parents": [
        "1c7c474c31aea6d5cb2fb35f31d9e9e91ae466b1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Nov 03 16:44:53 2009 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:49 2009 -0500"
      },
      "message": "cleanup blockdev_direct_IO locking\n\nCurrently the locking in blockdev_direct_IO is a mess, we have three different\nlocking types and very confusing checks for some of them.  The most\ncomplicated one is DIO_OWN_LOCKING for reads, which happens to not actually be\nused.\n\nThis patch gets rid of the DIO_OWN_LOCKING - as mentioned above the read case\nis unused anyway, and the write side is almost identical to DIO_NO_LOCKING.\nThe difference is that DIO_NO_LOCKING always sets the create argument for\nthe get_blocks callback to zero, but we can easily move that to the actual\nget_blocks callbacks.  There are four users of the DIO_NO_LOCKING mode:\ngfs already ignores the create argument and thus is fine with the new\nversion, ocfs2 only errors out if create were ever set, and we can remove\nthis dead code now, the block device code only ever uses create for an\nerror message if we are fully beyond the device which can never happen,\nand last but not least XFS will need the new behavour for writes.\n\nNow we can replace the lock_type variable with a flags one, where no flag\nmeans the DIO_NO_LOCKING behaviour and DIO_LOCKING is kept as the first\nflag.  Separate out the check for not allowing to fill holes into a separate\nflag, although for now both flags always get set at the same time.\n\nAlso revamp the documentation of the locking scheme to actually make sense.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1c7c474c31aea6d5cb2fb35f31d9e9e91ae466b1",
      "tree": "89a5fd1146be1744ce3ac94789542841512315b8",
      "parents": [
        "431547b3c4533b8c7fd150ab36980b9a3147797b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Nov 03 16:44:44 2009 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:49 2009 -0500"
      },
      "message": "make generic_acl slightly more generic\n\nNow that we cache the ACL pointers in the generic inode all the generic_acl\ncruft can go away and generic_acl.c can directly implement xattr handlers\ndealing with the full Posix ACL semantics for in-memory filesystems.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "431547b3c4533b8c7fd150ab36980b9a3147797b",
      "tree": "807ff2790f3c13c7c91ed2afd6d833032899482d",
      "parents": [
        "ef26ca97e83052790940cbc444b01b0d17a813c1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Nov 13 09:52:56 2009 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:49 2009 -0500"
      },
      "message": "sanitize xattr handler prototypes\n\nAdd a flags argument to struct xattr_handler and pass it to all xattr\nhandler methods.  This allows using the same methods for multiple\nhandlers, e.g. for the ACL methods which perform exactly the same action\nfor the access and default ACLs, just using a different underlying\nattribute.  With a little more groundwork it\u0027ll also allow sharing the\nmethods for the regular user/trusted/secure handlers in extN, ocfs2 and\njffs2 like it\u0027s already done for xfs in this patch.\n\nAlso change the inode argument to the handlers to a dentry to allow\nusing the handlers mechnism for filesystems that require it later,\ne.g. cifs.\n\n[with GFS2 bits updated by Steven Whitehouse \u003cswhiteho@redhat.com\u003e]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ef26ca97e83052790940cbc444b01b0d17a813c1",
      "tree": "93700cae2f8133e74be9621f00bd4588017d85eb",
      "parents": [
        "39159de2a091a35ea86b188ebdc5e642f5cfc832"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Tue Sep 29 20:09:42 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:48 2009 -0500"
      },
      "message": "libfs: move EXPORT_SYMBOL for d_alloc_name\n\nThe EXPORT_SYMBOL for d_alloc_name is in fs/libfs.c but the function\nis in fs/dcache.c.  Move the EXPORT_SYMBOL to the line immediately\nafter the closing function brace line in fs/dcache.c as mentioned\nin Documentation/CodingStyle.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "39159de2a091a35ea86b188ebdc5e642f5cfc832",
      "tree": "793c0c95fe22ddb06c4cc4271428ad41386ccf6b",
      "parents": [
        "d1625436b4fe526fa463bc0519ba37d7e4b37bbc"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Dec 07 12:01:50 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:48 2009 -0500"
      },
      "message": "vfs: force reval of target when following LAST_BIND symlinks (try #7)\n\nprocfs-style symlinks return a last_type of LAST_BIND without an actual\npath string. This causes __follow_link to skip calling __vfs_follow_link\nand so the dentry isn\u0027t revalidated.\n\nThis is a problem when the link target sits on NFSv4 as it depends on\nthe VFS to revalidate the dentry before using it on an open call. Ensure\nthat this occurs by forcing a revalidation of the target dentry of\nLAST_BIND symlinks.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d1625436b4fe526fa463bc0519ba37d7e4b37bbc",
      "tree": "a609c4bcd671190b039ddd4bd0f9bd63df588a22",
      "parents": [
        "1429b3eca23818f87f9fa569a15d9816de81f698"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@us.ibm.com",
        "time": "Fri Dec 04 15:48:40 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:48 2009 -0500"
      },
      "message": "ima: limit imbalance msg\n\nLimit the number of imbalance messages to once per filesystem type instead of\nonce per system boot.  (it\u0027s actually slightly racy and could give you a\ncouple per fs, but this isn\u0027t a real issue)\n\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1429b3eca23818f87f9fa569a15d9816de81f698",
      "tree": "3100f009ec8863ee4692ee197b8e0c16c11258e6",
      "parents": [
        "b65a9cfc2c38eebc33533280b8ad5841caee8b6e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 06:38:01 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:47 2009 -0500"
      },
      "message": "Untangling ima mess, part 3: kill dead code in ima\n\nKill the \u0027update\u0027 argument of ima_path_check(), kill\ndead code in ima.\n\nCurrent rules: ima counters are bumped at the same time\nwhen the file switches from put_filp() fodder to fput()\none.  Which happens exactly in two places - alloc_file()\nand __dentry_open().  Nothing else needs to do that at\nall.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b65a9cfc2c38eebc33533280b8ad5841caee8b6e",
      "tree": "d6e5b713615cc5e65c900162ab09235ae4847909",
      "parents": [
        "0552f879d45cecc35d8e372a591fc5ed863bca58"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 06:27:40 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:47 2009 -0500"
      },
      "message": "Untangling ima mess, part 2: deal with counters\n\n* do ima_get_count() in __dentry_open()\n* stop doing that in followups\n* move ima_path_check() to right after nameidata_to_filp()\n* don\u0027t bump counters on it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0552f879d45cecc35d8e372a591fc5ed863bca58",
      "tree": "f3e0d76f7d5e7cf9a11ef4771294c7b4b552cd89",
      "parents": [
        "7715b521222b6ebb6e927fa261ed91ed687fe454"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 04:53:03 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:47 2009 -0500"
      },
      "message": "Untangling ima mess, part 1: alloc_file()\n\nThere are 2 groups of alloc_file() callers:\n\t* ones that are followed by ima_counts_get\n\t* ones giving non-regular files\nSo let\u0027s pull that ima_counts_get() into alloc_file();\nit\u0027s a no-op in case of non-regular files.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7715b521222b6ebb6e927fa261ed91ed687fe454",
      "tree": "33c6f8179d405974ed6763df331f731044c16072",
      "parents": [
        "85a17f552dfe77efb44b971615e4f221a5f28f37"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 03:54:00 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:47 2009 -0500"
      },
      "message": "O_TRUNC open shouldn\u0027t fail after file truncation\n\n* take truncate logics into a helper (handle_truncate())\n* rip it out of may_open()\n* call it from the only caller of may_open() that might pass\nO_TRUNC\n* and do that after we\u0027d finished with opening.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "85a17f552dfe77efb44b971615e4f221a5f28f37",
      "tree": "bf9639dc2bb2dab926624a49a8b5aa1159876059",
      "parents": [
        "e0d5bd2aec4e69e720ee86958503923cafb45be5"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Dec 04 15:48:08 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:46 2009 -0500"
      },
      "message": "ima: call ima_inode_free ima_inode_free\n\nima_inode_free() has some funky #define just to confuse the crap out of me.\n\nvoid ima_iint_delete(struct inode *inode)\n\nand then things actually call ima_inode_free() and nothing calls\nima_iint_delete().\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e0d5bd2aec4e69e720ee86958503923cafb45be5",
      "tree": "07ad4c96ad5c680f8a6b1f8152269af23944dc5d",
      "parents": [
        "9353384ec8128cb443463016bbabb44ca857ff52"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Dec 04 15:48:00 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:46 2009 -0500"
      },
      "message": "IMA: clean up the IMA counts updating code\n\nWe currently have a lot of duplicated code around ima file counts.  Clean\nthat all up.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9353384ec8128cb443463016bbabb44ca857ff52",
      "tree": "411ff22e85868aea1575d8b133187def3b0e0498",
      "parents": [
        "ec29ea544b1ce204ba3575ba05fccf3069d00c3f"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Dec 04 15:47:52 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:46 2009 -0500"
      },
      "message": "ima: only insert at inode creation time\n\niints are supposed to be allocated when an inode is allocated (during\nsecurity_inode_alloc())  But we have code which will attempt to allocate\nan iint during measurement calls.  If we couldn\u0027t allocate the iint and we\ncared, we should have died during security_inode_alloc().  Not make the\ncode more complex and less efficient.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ec29ea544b1ce204ba3575ba05fccf3069d00c3f",
      "tree": "9b8073563183059e275730a8bb4f5b0c01800b6e",
      "parents": [
        "e81e3f4dca6c54116a24aec217d2c15c6f58ada5"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Dec 04 15:47:44 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:46 2009 -0500"
      },
      "message": "ima: valid return code from ima_inode_alloc\n\nima_inode_alloc returns 0 and 1, but the LSM hooks expects an errno.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e81e3f4dca6c54116a24aec217d2c15c6f58ada5",
      "tree": "4cbaf8b4573a4f4dac2dafc2bebffe398a984b3d",
      "parents": [
        "b75b5086be6504132eadb22a907854e0bf52e365"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Dec 04 15:47:36 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:45 2009 -0500"
      },
      "message": "fs: move get_empty_filp() deffinition to internal.h\n\nAll users outside of fs/ of get_empty_filp() have been removed.  This patch\nmoves the definition from the include/ directory to internal.h so no new\nusers crop up and removes the EXPORT_SYMBOL.  I\u0027d love to see open intents\nstop using it too, but that\u0027s a problem for another day and a smarter\ndeveloper!\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b75b5086be6504132eadb22a907854e0bf52e365",
      "tree": "b9859bcb09d12bb2a1dcfd5c3cecf303c2c02d1b",
      "parents": [
        "6e6b1bd1e739faf4fa259fc0d8bfcadea2493222"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 01:01:38 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:45 2009 -0500"
      },
      "message": "Sanitize exec_permission_lite()\n\nUse the sucker in other places in pathname resolution\nthat check MAY_EXEC for directories; lose the _lite\nfrom name, it\u0027s equivalent of full-blown inode_permission()\nfor its callers (albeit still lighter, since large parts\nof generic_permission() do not apply for pure MAY_EXEC).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6e6b1bd1e739faf4fa259fc0d8bfcadea2493222",
      "tree": "de20d84d0051852c4ff5b6200ab8c9bd9e932b75",
      "parents": [
        "2dd6d1f41852bbb1f66d66b3634ddfdaeddcf9bc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 13 23:38:37 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:45 2009 -0500"
      },
      "message": "Kill cached_lookup() and real_lookup()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2dd6d1f41852bbb1f66d66b3634ddfdaeddcf9bc",
      "tree": "82a4e934af91a28fb2be1501b9b5392b892f40e7",
      "parents": [
        "3cac260ad88f4e37637d6e4b33e6a6a849d273c7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 13 20:40:45 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:45 2009 -0500"
      },
      "message": "Kill path_lookup_open()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3cac260ad88f4e37637d6e4b33e6a6a849d273c7",
      "tree": "2cde342e32fccadfcc900c10b4a8e49398fb24cf",
      "parents": [
        "e9496ff46a20a8592fdc7bdaaf41b45eb808d310"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 13 18:27:43 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:44 2009 -0500"
      },
      "message": "Take hash recalculation into do_lookup()\n\nBoth callers of do_lookup() do the same thing before it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e9496ff46a20a8592fdc7bdaaf41b45eb808d310",
      "tree": "6668789814bf4726a82ad282724b72a09e247175",
      "parents": [
        "b0446be4be44768c7c7e919fadda98e1315fad09"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 18:44:32 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:44 2009 -0500"
      },
      "message": "fix mismerge with Trond\u0027s stuff (create_mnt_ns() export is gone now)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b0446be4be44768c7c7e919fadda98e1315fad09",
      "tree": "b51d19d5a33774573f4edf0a1a3394726cf9b00f",
      "parents": [
        "306bb73d12f13684ffcd735838c3e6f7515ab626"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 02:03:00 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:44 2009 -0500"
      },
      "message": "switch cachefiles to kern_path()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "306bb73d12f13684ffcd735838c3e6f7515ab626",
      "tree": "d66d10a4ed03f325194a595a7b6e87d8c0f21206",
      "parents": [
        "6de88d72927dc85297b3075024487313c4ba3a2e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 01:58:52 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:44 2009 -0500"
      },
      "message": "fix the crap in dst/dcore\n\n* don\u0027t reinvent the wheels, please - open_bdev_exclusive() is there\n  for purpose\n* both open_by_devnum() and open_bdev_exclusive() return ERR_PTR(...)\n  upon error, not NULL\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6de88d72927dc85297b3075024487313c4ba3a2e",
      "tree": "278609d97c5635bb3922634b274689739fbf09d6",
      "parents": [
        "258fa99905f704afed1a43f195bc5235a56fb895"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 01:41:57 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:43 2009 -0500"
      },
      "message": "kill __link_path_walk()/link_path_walk() distinction\n\nput retry logics into path_walk() and do_filp_open()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "258fa99905f704afed1a43f195bc5235a56fb895",
      "tree": "434bd55b08ab3f635e66cce89e3ab931dbc9f2ef",
      "parents": [
        "d231412db66355e72d606f8403ee8b6bd8ad4f9a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 01:32:02 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:43 2009 -0500"
      },
      "message": "lift path_put(path) to callers of __do_follow_link()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d231412db66355e72d606f8403ee8b6bd8ad4f9a",
      "tree": "d27282bbe879c2b0d0977594990c8e0701509df1",
      "parents": [
        "2c48b9c45579a9b5e3e74694eebf3d2451f3dbd3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 01:01:37 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:43 2009 -0500"
      },
      "message": "switch create_read_pipe() to alloc_file()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2c48b9c45579a9b5e3e74694eebf3d2451f3dbd3",
      "tree": "cecbf786ae0650368a8136bdd90910e05d9b95c3",
      "parents": [
        "a95161aaa801c18c52b2e7cf3d6b4b141c00a20a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 00:52:35 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:42 2009 -0500"
      },
      "message": "switch alloc_file() to passing struct path\n\n... and have the caller grab both mnt and dentry; kill\nleak in infiniband, while we are at it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a95161aaa801c18c52b2e7cf3d6b4b141c00a20a",
      "tree": "62d9989ea04a37ae276101de8d151eadeea86c88",
      "parents": [
        "3d1e463158febf6e047897597722f768b15350cd"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 00:52:02 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:42 2009 -0500"
      },
      "message": "switch nilfs2 to deactivate_locked_super()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3d1e463158febf6e047897597722f768b15350cd",
      "tree": "f218ad1ccb0b8d7d2b18814e209ed97b2724ecc8",
      "parents": [
        "cc3808f8c354889982e7e323050f1e50ad99a009"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 08 23:56:29 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:42 2009 -0500"
      },
      "message": "get rid of init_file()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "cc3808f8c354889982e7e323050f1e50ad99a009",
      "tree": "60c07432cf9f5d4b7bac5a07abcb6bf81aa91b7b",
      "parents": [
        "6b18662e239a032f908b7f6e164bdf7e2e0a32c9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 06 09:43:59 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:42 2009 -0500"
      },
      "message": "switch sock_alloc_file() to alloc_file()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6b18662e239a032f908b7f6e164bdf7e2e0a32c9",
      "tree": "b63bf63d7d2b0d0fac2529a3c3bd906f85388c79",
      "parents": [
        "7cbe66b6b53b6615f1033bd5b3dbad8162886373"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Aug 06 02:02:43 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:41 2009 -0500"
      },
      "message": "9p connect fixes\n\n* if we fail in p9_conn_create(), we shouldn\u0027t leak references to struct file.\n  Logics in -\u003eclose() doesn\u0027t help - -\u003etrans is already gone by the time it\u0027s\n  called.\n* sock_create_kern() can fail.\n* use of sock_map_fd() is all fscked up; I\u0027d fixed most of that, but the\n  rest will have to wait for a bit more work in net/socket.c (we still are\n  violating the basic rule of working with descriptor table: \"once the reference\n  is installed there, don\u0027t rely on finding it there again\").\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7cbe66b6b53b6615f1033bd5b3dbad8162886373",
      "tree": "d7e0a229155fec3e3841d9d3272d0ae1a3a393eb",
      "parents": [
        "198de4d7ac3a0f1351c6377ff657950457ed0038"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 05 19:59:08 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:41 2009 -0500"
      },
      "message": "merge sock_alloc_fd/sock_attach_fd into a new helper\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "198de4d7ac3a0f1351c6377ff657950457ed0038",
      "tree": "0451461b303cc3d4d514acadc09b8dee1a260818",
      "parents": [
        "732741274d0269718ba20c520cf72530bb038641"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 05 19:29:23 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:41 2009 -0500"
      },
      "message": "reorder alloc_fd/attach_fd in socketpair()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "732741274d0269718ba20c520cf72530bb038641",
      "tree": "1992a9dc19a21f22d9d543cd0c35947cf3a89624",
      "parents": [
        "825f9692fbe417b9fb529477056ba72022847038"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 05 18:44:31 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:41 2009 -0500"
      },
      "message": "unexport get_empty_filp()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "825f9692fbe417b9fb529477056ba72022847038",
      "tree": "be3b8a22940f00e9d620d188814d5adc63e8108e",
      "parents": [
        "4b42af81f0d7f95dff320f47d99c201925f406f5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 05 18:35:21 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:40 2009 -0500"
      },
      "message": "switched inotify_init1() to alloc_file()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4b42af81f0d7f95dff320f47d99c201925f406f5",
      "tree": "49829a9c58a5f7cac9a7b5e7efb22d6287794d72",
      "parents": [
        "853b3da10d617f08340e5fe569c99e7b54f2a568"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Aug 05 18:25:56 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:40 2009 -0500"
      },
      "message": "switch shmem_file_setup() to alloc_file()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "853b3da10d617f08340e5fe569c99e7b54f2a568",
      "tree": "1c89150faf505825989026dd12641cedaadd6bb8",
      "parents": [
        "8bea8672edfca7ec5f661cafb218f1205863b343"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 00:34:13 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:40 2009 -0500"
      },
      "message": "sanitize do_pipe_flags() callers in arch\n\n* hpux_pipe() - no need to take BKL\n* sys32_pipe() in arch/x86/ia32 and xtensa_pipe() in arch/xtensa -\n\tno need at all, since both functions are open-coded sys_pipe()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "604c5c92972dcb4b98be34775452d09a5d4ec248",
      "tree": "3f4ef659340f70780d41d3850fc5f9de13fc8719",
      "parents": [
        "c351c2816177eb7d2979ec874b9b895abe9d6e5c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 16 14:09:53 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:13:40 2009 +0100"
      },
      "message": "perf diff: Change the default sort order to \"dso,symbol\"\n\nThis is a more intuitive / more meaningful default:\n\n$ perf diff | head -8\n     9.02%     +1.00%  libc-2.10.1.so               [.] _IO_vfprintf_internal\n     2.91%     -1.00%  [kernel]                     [k] __kmalloc\n     2.85%     -1.00%  [kernel]                     [k] ext4_htree_store_dirent\n     1.99%     -1.00%  [kernel]                     [k] _atomic_dec_and_lock\n     2.44%             [kernel]\n$\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1260979793-1981-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "42b4e9ee3d1d3b691bcae37f217f08740320c58c",
      "tree": "a5da7f7c6cf01b42022977bb6951348852a2c0c2",
      "parents": [
        "22763c5cf3690a681551162c15d34d935308c8d7"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "Jes.Sorensen@gmail.com",
        "time": "Wed Dec 16 12:08:15 2009 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Dec 16 12:09:46 2009 -0500"
      },
      "message": "Toshiba Bluetooth Enabling driver (RFKill handler v3)\n\nThis patch adds support for the ACPI events generated by the RFKill\nswitch on modern Toshiba laptops, and re-enables the Bluetooth USB\ndevice when the switch is flipped back to the \u0027on\u0027 position.\n\nThe RFKill switch brute force pulls out the USB device when flipped to\n\u0027off\u0027, but it doesn\u0027t automatically re-enable it. Without this driver,\nthe Bluetooth is gone until after a reboot on my Portege R500.\n\nSigned-off-by: Jes Sorensen \u003cJes.Sorensen@gmail.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "256f7276af20c88b492353710d5d6640b09c3d63",
      "tree": "9d2a4a26da9d79b3d19dafa9cf44149a1cee7a28",
      "parents": [
        "35d8069234bacfab608d2d7571c2cb71a23c3fae"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Dec 15 16:03:53 2009 +0100"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Wed Dec 16 17:48:39 2009 +0100"
      },
      "message": "edac, mce, amd: silence GART TLB errors\n\nAlthough reporting of benign GART TLB errors is disabled in\n__mcheck_cpu_apply_quirks, those are still being logged, and, as a\nresult, trip up amd64_edac. Pull up reporting check so that machines\nwith loaded edac module bail out early and don\u0027t spit fragments into\ndmesg.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "c351c2816177eb7d2979ec874b9b895abe9d6e5c",
      "tree": "b6dd7fb4a5e048168319111e18082025c2e93f1b",
      "parents": [
        "125c4fad1e60751ceaab1ee2a73bddf31213e5ca"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 16 13:49:27 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 16:53:37 2009 +0100"
      },
      "message": "perf diff: Use perf_session__fprintf_hists just like \u0027perf record\u0027\n\nThat means that almost everything you can do with \u0027perf report\u0027\ncan be done with \u0027perf diff\u0027, for instance:\n\n$ perf record -f find / \u003e /dev/null\n[ perf record: Woken up 1 times to write data ]\n[ perf record: Captured and wrote 0.062 MB perf.data (~2699\nsamples) ] $ perf record -f find / \u003e /dev/null\n[ perf record: Woken up 1 times to write data ]\n[ perf record: Captured and wrote 0.062 MB perf.data (~2687\nsamples) ] perf diff | head -8\n     9.02%     +1.00%     find  libc-2.10.1.so               [.] _IO_vfprintf_internal\n     2.91%     -1.00%     find  [kernel]                     [k] __kmalloc\n     2.85%     -1.00%     find  [kernel]                     [k] ext4_htree_store_dirent\n     1.99%     -1.00%     find  [kernel]                     [k] _atomic_dec_and_lock\n     2.44%                find  [kernel]                     [k] half_md4_transform\n$\n\nSo if you want to zoom into libc:\n\n$ perf diff --dsos libc-2.10.1.so | head -8\n    37.34%                find  [.] _IO_vfprintf_internal\n    10.34%                find  [.] __GI_memmove\n     8.25%     +2.00%     find  [.] _int_malloc\n     5.07%     -1.00%     find  [.] __GI_mempcpy\n     7.62%     +2.00%     find  [.] _int_free\n$\n\nAnd if there were multiple commands using libc, it is also\npossible to aggregate them all by using --sort symbol:\n\n$ perf diff --dsos libc-2.10.1.so --sort symbol | head -8\n    37.34%             [.] _IO_vfprintf_internal\n    10.34%             [.] __GI_memmove\n     8.25%     +2.00%  [.] _int_malloc\n     5.07%     -1.00%  [.] __GI_mempcpy\n     7.62%     +2.00%  [.] _int_free\n$\n\nThe displacement column now is off by default, to use it:\n\nperf diff -m --dsos libc-2.10.1.so --sort symbol | head -8\n    37.34%                   [.] _IO_vfprintf_internal\n    10.34%                   [.] __GI_memmove\n     8.25%     +2.00%        [.] _int_malloc\n     5.07%     -1.00%    +2  [.] __GI_mempcpy\n     7.62%     +2.00%    -1  [.] _int_free\n$\n\nUsing -t/--field-separator can be used for scripting:\n\n$ perf diff -t, -m --dsos libc-2.10.1.so --sort symbol | head -8\n37.34, , ,[.] _IO_vfprintf_internal\n10.34, , ,[.] __GI_memmove\n8.25,+2.00%, ,[.] _int_malloc\n5.07,-1.00%,  +2,[.] __GI_mempcpy\n7.62,+2.00%,  -1,[.] _int_free\n6.99,+1.00%,  -1,[.] _IO_new_file_xsputn\n1.89,-2.00%,  +4,[.] __readdir64\n$\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1260978567-550-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "125c4fad1e60751ceaab1ee2a73bddf31213e5ca"
}
