)]}'
{
  "log": [
    {
      "commit": "6eaaaac97433575894570a990aa27310040a8177",
      "tree": "0d61224358c40309096a0c026ad0d1c7120fa0d6",
      "parents": [
        "06b8147c5dbd385b5b97ca74e19f6f3951ebc1cb",
        "a1ef5adb4cad43460ebba23c5a78cf4a55bb6a5b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 22 13:17:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 22 13:17:15 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  remove CONFIG_KMOD from core kernel code\n  remove CONFIG_KMOD from lib\n  remove CONFIG_KMOD from sparc64\n  rework try_then_request_module to do less in non-modular kernels\n  remove mention of CONFIG_KMOD from documentation\n  make CONFIG_KMOD invisible\n  modules: Take a shortcut for checking if an address is in a module\n  module: turn longs into ints for module sizes\n  Shrink struct module: CONFIG_UNUSED_SYMBOLS ifdefs\n  module: reorder struct module to save space on 64 bit builds\n  module: generic each_symbol iterator function\n  module: don\u0027t use stop_machine for waiting rmmod\n"
    },
    {
      "commit": "a00caa1fa954c734f4214a074727a329a9ba6568",
      "tree": "8c579cb726e164cdb25d3a8ab27f658c3ddfc5bf",
      "parents": [
        "184b6c7682e484032e3f845eef5db26e72681d6f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 08 19:00:24 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Jul 22 19:24:31 2008 +1000"
      },
      "message": "remove CONFIG_KMOD from lib\n\ntextsearch algorithms can be loaded, make the code depend\non CONFIG_MODULES instead of CONFIG_KMOD.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "0ad1d6f37cc3bb234c6e7ae30e40d1d40b9aa258",
      "tree": "148158aab527eafbc2f4fc841cf40e1a7730814b",
      "parents": [
        "83c79b55f0d929a0dcf2b0d347cd1875afc06f21"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Tue Jun 24 16:59:02 2008 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:55:00 2008 -0700"
      },
      "message": "kobject: Transmit return value of call_usermodehelper() to caller\n\nkobject_uevent_env() drops the return value of call_usermodehelper().\nIt will make upper caller, such as dm_send_uevents(), to lose error\ninformation.\n\nBTW, Previously kobject_uevent_env() transmitted return of\ncall_usermodehelper() to callers, but\ncommit\t5f123fbd80f4f788554636f02bf73e40f914e0d6\n\"[PATCH] merge kobject_uevent and kobject_hotplug\" removed it.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nCc: Kay Sievers \u003ckay.sievers@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ff543332ec5d23833994fca9e7789f067fb51221",
      "tree": "837792928a96941a329e423a5cf0c61ea9fde0ef",
      "parents": [
        "9f255651fb41c111ee35a2ae632df8ce9bd61def"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Tue May 20 00:06:00 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:40 2008 -0700"
      },
      "message": "debugfs: Add a reference to the debugfs API documentation.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nCc: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9f255651fb41c111ee35a2ae632df8ce9bd61def",
      "tree": "5afdfe266762182adc210ee5f73176dd6078e7e0",
      "parents": [
        "e105b8bfc769b0545b6f0f395179d1e43cbee822"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue May 06 22:24:04 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:40 2008 -0700"
      },
      "message": "kobject: replace \u0027/\u0027 with \u0027!\u0027 in name\n\nSome (block) devices have a \u0027/\u0027 in the name, and need special\nhandling. Let\u0027s have that rule to the core, so we can remove it\nfrom the block class.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "49997d75152b3d23c53b0fa730599f2f74c92c65",
      "tree": "46e93126170d02cfec9505172e545732c1b69656",
      "parents": [
        "a0c80b80e0fb48129e4e9d6a9ede914f9ff1850d",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 02:39:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 02:39:39 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tDocumentation/powerpc/booting-without-of.txt\n\tdrivers/atm/Makefile\n\tdrivers/net/fs_enet/fs_enet-main.c\n\tdrivers/pci/pci-acpi.c\n\tnet/8021q/vlan.c\n\tnet/iucv/iucv.c\n"
    },
    {
      "commit": "bdec6cace4c3ecb6f90bcaa5424b92c97bd1df0f",
      "tree": "dd9705b6facd753cc0e239016c0f7618c74cba19",
      "parents": [
        "2f73ccab5628b4f8e8f4b93fea8082dd31a87a10",
        "2464a609ded094204a3aed24823745ec58e3c879"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 17 10:37:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 17 10:37:10 2008 -0700"
      },
      "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  ftrace: do not trace library functions\n  ftrace: do not trace scheduler functions\n  ftrace: fix lockup with MAXSMP\n  ftrace: fix merge buglet\n"
    },
    {
      "commit": "2464a609ded094204a3aed24823745ec58e3c879",
      "tree": "54080daf81746787dbd11160752e04b9652b8728",
      "parents": [
        "c349e0a01c3e0f70913db6a5bb61ab204e0602de"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:40:48 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:40:48 2008 +0200"
      },
      "message": "ftrace: do not trace library functions\n\nmake function tracing more robust: do not trace library functions.\n\nWe\u0027ve already got a sizable list of exceptions:\n\n ifdef CONFIG_FTRACE\n # Do not profile string.o, since it may be used in early boot or vdso\n CFLAGS_REMOVE_string.o \u003d -pg\n # Also do not profile any debug utilities\n CFLAGS_REMOVE_spinlock_debug.o \u003d -pg\n CFLAGS_REMOVE_list_debug.o \u003d -pg\n CFLAGS_REMOVE_debugobjects.o \u003d -pg\n CFLAGS_REMOVE_find_next_bit.o \u003d -pg\n CFLAGS_REMOVE_cpumask.o \u003d -pg\n CFLAGS_REMOVE_bitmap.o \u003d -pg\n endif\n\n... and the pattern has been that random library functionality showed\nup in ftrace\u0027s critical path (outside of its recursion check), causing\nhard to debug lockups.\n\nSo be a bit defensive about it and exclude all lib/*.o functions by\ndefault. It\u0027s not that they are overly interesting for tracing purposes\nanyway. Specific ones can still be traced, in an opt-in manner.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9fa111372a54f695f65e0de2f2a2108fe6cf3584",
      "tree": "b8babd78dcbd07346a8964f2f905235381121131",
      "parents": [
        "8e9509c827a28e2f365c203c04224f9e9dd1b63a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:38:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 17 17:38:17 2008 +0200"
      },
      "message": "ftrace: fix lockup with MAXSMP\n\nMAXSMP brings in lots of use of various bitops in smp_processor_id()\nand friends - causing ftrace to lock up during bootup:\n\n  calling  anon_inode_init+0x0/0x130\n  initcall anon_inode_init+0x0/0x130 returned 0 after 0 msecs\n  calling  acpi_event_init+0x0/0x57\n  [ hard hang ]\n\nSo exclude the bitops facilities from tracing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc7c65db2845a8d17432d89252c4227a9a7cb15f",
      "tree": "79030b0aaaafc04bc4303c21495134e744afc058",
      "parents": [
        "8a0ca91e1db5de5eb5b18cfa919d52ff8be375af",
        "58b6e5538460be358fdf1286d9a2fbcfcc2cfaba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 17:25:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 17:25:46 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (72 commits)\n  Revert \"x86/PCI: ACPI based PCI gap calculation\"\n  PCI: remove unnecessary volatile in PCIe hotplug struct controller\n  x86/PCI: ACPI based PCI gap calculation\n  PCI: include linux/pm_wakeup.h for device_set_wakeup_capable\n  PCI PM: Fix pci_prepare_to_sleep\n  x86/PCI: Fix PCI config space for domains \u003e 0\n  Fix acpi_pm_device_sleep_wake() by providing a stub for CONFIG_PM_SLEEP\u003dn\n  PCI: Simplify PCI device PM code\n  PCI PM: Introduce pci_prepare_to_sleep and pci_back_from_sleep\n  PCI ACPI: Rework PCI handling of wake-up\n  ACPI: Introduce new device wakeup flag \u0027prepared\u0027\n  ACPI: Introduce acpi_device_sleep_wake function\n  PCI: rework pci_set_power_state function to call platform first\n  PCI: Introduce platform_pci_power_manageable function\n  ACPI: Introduce acpi_bus_power_manageable function\n  PCI: make pci_name use dev_name\n  PCI: handle pci_name() being const\n  PCI: add stub for pci_set_consistent_dma_mask()\n  PCI: remove unused arch pcibios_update_resource() functions\n  PCI: fix pci_setup_device()\u0027s sprinting into a const buffer\n  ...\n\nFixed up conflicts in various files (arch/x86/kernel/setup_64.c,\narch/x86/pci/irq.c, arch/x86/pci/pci.h, drivers/acpi/sleep/main.c,\ndrivers/pci/pci.c, drivers/pci/pci.h, include/acpi/acpi_bus.h) from x86\nand ACPI updates manually.\n"
    },
    {
      "commit": "89a93f2f4834f8c126e8d9dd6b368d0b9e21ec3d",
      "tree": "e731456fec0cab1225ad3e806dc8d3efefa0a78b",
      "parents": [
        "260eddf4391f162a69d1d163729249635fa7a78f",
        "fe9233fb6914a0eb20166c967e3020f7f0fba2c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (102 commits)\n  [SCSI] scsi_dh: fix kconfig related build errors\n  [SCSI] sym53c8xx: Fix bogus sym_que_entry re-implementation of container_of\n  [SCSI] scsi_cmnd.h: remove double inclusion of linux/blkdev.h\n  [SCSI] make struct scsi_{host,target}_type static\n  [SCSI] fix locking in host use of blk_plug_device()\n  [SCSI] zfcp: Cleanup external header file\n  [SCSI] zfcp: Cleanup code in zfcp_erp.c\n  [SCSI] zfcp: zfcp_fsf cleanup.\n  [SCSI] zfcp: consolidate sysfs things into one file.\n  [SCSI] zfcp: Cleanup of code in zfcp_aux.c\n  [SCSI] zfcp: Cleanup of code in zfcp_scsi.c\n  [SCSI] zfcp: Move status accessors from zfcp to SCSI include file.\n  [SCSI] zfcp: Small QDIO cleanups\n  [SCSI] zfcp: Adapter reopen for large number of unsolicited status\n  [SCSI] zfcp: Fix error checking for ELS ADISC requests\n  [SCSI] zfcp: wait until adapter is finished with ERP during auto-port\n  [SCSI] ibmvfc: IBM Power Virtual Fibre Channel Adapter Client Driver\n  [SCSI] sg: Add target reset support\n  [SCSI] lib: Add support for the T10 (SCSI) Data Integrity Field CRC\n  [SCSI] sd: Move scsi_disk() accessor function to sd.h\n  ...\n"
    },
    {
      "commit": "6c9fcaf2eec1b9f85226a694230dd957dd7926b3",
      "tree": "f8c824c6c64dc411752c844f116e693760768bcc",
      "parents": [
        "b9d2252c1e44fa83a4e65fdc9eb93db6297c55af",
        "199a952876adbfc2b6c13b8b07adabebf4ff54b2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:10:12 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:10:12 2008 +0200"
      },
      "message": "Merge branch \u0027core/rcu\u0027 into core/rcu-for-linus\n"
    },
    {
      "commit": "af5329cdf51cdd208a323e521faa46800a16d2ec",
      "tree": "33eac56aac120778dc04207290ad539765ff5eb6",
      "parents": [
        "1dc60c53d36b08f361e1a2767c41196acce96d08",
        "7798ed0f57b4d137e660fbf5be1e1528e40f89ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 10:31:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 10:31:35 2008 -0700"
      },
      "message": "Merge branch \u0027core/stacktrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core/stacktrace\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  generic-ipi: powerpc/generic-ipi tree build failure\n  stacktrace: fix build failure on sparc64\n  stacktrace: export save_stack_trace[_tsk]\n  stacktrace: fix modular build, export print_stack_trace and save_stack_trace\n  backtrace: replace timer with tasklet + completions\n  stacktrace: add saved stack traces to backtrace self-test\n  stacktrace: print_stack_trace() cleanup\n  debugging: make stacktrace independent from DEBUG_KERNEL\n  stacktrace: don\u0027t crash on invalid stack trace structs\n"
    },
    {
      "commit": "8d2567a620ae8c24968a2bdc1c906c724fac1f6a",
      "tree": "8e228abbadbe760e3f015d30c2e1180a67eeb8f9",
      "parents": [
        "bcf559e385ba099996c90469c817d2eb38aba418",
        "49f1487b2e41bd8439ea39a4f15b4064e823cc54"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 08:36:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 08:36:38 2008 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (61 commits)\n  ext4: Documention update for new ordered mode and delayed allocation\n  ext4: do not set extents feature from the kernel\n  ext4: Don\u0027t allow nonextenst mount option for large filesystem\n  ext4: Enable delalloc by default.\n  ext4: delayed allocation i_blocks fix for stat\n  ext4: fix delalloc i_disksize early update issue\n  ext4: Handle page without buffers in ext4_*_writepage()\n  ext4: Add ordered mode support for delalloc\n  ext4: Invert lock ordering of page_lock and transaction start in delalloc\n  mm: Add range_cont mode for writeback\n  ext4: delayed allocation ENOSPC handling\n  percpu_counter: new function percpu_counter_sum_and_set\n  ext4: Add delayed allocation support in data\u003dwriteback mode\n  vfs: add hooks for ext4\u0027s delayed allocation support\n  jbd2: Remove data\u003dordered mode support using jbd buffer heads\n  ext4: Use new framework for data\u003dordered mode in JBD2\n  jbd2: Implement data\u003dordered mode handling via inodes\n  vfs: export filemap_fdatawrite_range()\n  ext4: Fix lock inversion in ext4_ext_truncate()\n  ext4: Invert the locking order of page_lock and transaction start\n  ...\n"
    },
    {
      "commit": "f11f594edba7f689af9792a5673ed59d660ad371",
      "tree": "4fae88f3893ce57f2f85280d16330fc61a943d44",
      "parents": [
        "5b635da11e3a6387172abd651d26d8ef54b1fbc7"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Wed Jun 25 11:22:42 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 12 08:22:32 2008 -0500"
      },
      "message": "[SCSI] lib: Add support for the T10 (SCSI) Data Integrity Field CRC\n\nThe SCSI Block Protocol uses this 16-bit CRC to verify the integrity\nof each data sector.  crc_t10dif() is used by sd_dif.c when performing\nI/O to or from disks formatted with protection information.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e8ced39d5e8911c662d4d69a342b9d053eaaac4e",
      "tree": "cd4d643bfbd37c67ff9bd2feff2c0b477a56f117",
      "parents": [
        "64769240bd07f446f83660bb143bb609d8ab4910"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Fri Jul 11 19:27:31 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Jul 11 19:27:31 2008 -0400"
      },
      "message": "percpu_counter: new function percpu_counter_sum_and_set\n\nDelayed allocation need to check free blocks at every write time.\npercpu_counter_read_positive() is not quit accurate. delayed\nallocation need a more accurate accounting, but using\npercpu_counter_sum_positive() is frequently is quite expensive.\n\nThis patch added a new function to update center counter when sum\nper-cpu counter, to increase the accurate rate for next\npercpu_counter_read() and require less calling expensive\npercpu_counter_sum().\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "0c81b2a1448bc6a2a9b2d6469fb0669fb4b25e5b",
      "tree": "6f82579cae6d6e39fa9f837a3c349ded51e19d14",
      "parents": [
        "0729fbf3bc70870370b4f43d652f05a468dc68b8",
        "70ff05554f91a1edda1f11684da1dbde09e2feea"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 10:46:50 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 10:46:50 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n\nConflicts:\n\n\tinclude/linux/rculist.h\n\tkernel/rcupreempt.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bac0c9103b31c3dd83ad9d731dd9834e2ba75e4f",
      "tree": "702dd6a7ce06d224d594c2293af546b11ac9f51b",
      "parents": [
        "6329d3021bcfa9038621e6e917d98929421d8ec8",
        "98a05ed4bd7774f533ab185fe0bf2fdc58292d7c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 10 11:43:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 10 11:43:00 2008 +0200"
      },
      "message": "Merge branch \u0027tracing/ftrace\u0027 into auto-ftrace-next\n"
    },
    {
      "commit": "43138833ee9af07e865a4dcbfe81684c9c2f2262",
      "tree": "c3de1d509fce8c2defbf4d63d2e3055de24e9948",
      "parents": [
        "2523c3fc2bc9e34c06a71517844d55353f1f904a"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwpark81@gmail.com",
        "time": "Tue Jul 08 02:38:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 02:38:27 2008 -0700"
      },
      "message": "textsearch: ts_fsm: return error on request for case insensitive search\n\nFor fsm text search, handle case insensitive parameter as -EINVAL.\n\nSigned-off-by: Joonwoo Park \u003cjoonwpark81@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2523c3fc2bc9e34c06a71517844d55353f1f904a",
      "tree": "ac84b347f87d4a01110c0294ba4452a12db4c60a",
      "parents": [
        "3b76d08190e6b420ed3f5534aa99ee29d82d731f"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwpark81@gmail.com",
        "time": "Tue Jul 08 02:38:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 02:38:09 2008 -0700"
      },
      "message": "textsearch: ts_kmp: support case insensitive searching in Knuth-Morris-Pratt algorithm\n\nAdd support for case insensitive search to Knuth-Morris-Pratt algorithm.\n\nSigned-off-by: Joonwoo Park \u003cjoonwpark81@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b76d08190e6b420ed3f5534aa99ee29d82d731f",
      "tree": "90f5f3b38148529946d3b0807d6cdd80445ed1cf",
      "parents": [
        "b9c796783151678d08b1ec1ef410685b2515ba51"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwpark81@gmail.com",
        "time": "Tue Jul 08 02:37:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 02:37:54 2008 -0700"
      },
      "message": "textsearch: ts_bm: support case insensitive searching in Boyer-Moore algorithm\n\nAdd support for case insensitive search to Boyer-Moore algorithm.\n\nSigned-off-by: Joonwoo Park \u003cjoonwpark81@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9c796783151678d08b1ec1ef410685b2515ba51",
      "tree": "48546b3c11b7111f465d09fe6802bae3e227262f",
      "parents": [
        "58de7862e61cb71251a25314d1b3d7260af1448a"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwpark81@gmail.com",
        "time": "Tue Jul 08 02:37:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 08 02:37:31 2008 -0700"
      },
      "message": "textsearch: support for case insensitive searching\n\nThe function textsearch_prepare has a new flag to support case\ninsensitive searching.\n\nSigned-off-by: Joonwoo Park \u003cjoonwpark81@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0fe1ef24f7bd0020f29ffe287dfdb9ead33ca0b2",
      "tree": "0069dd9dba6554f74436ea1d836ecc054a6b95d7",
      "parents": [
        "4d8a743cdd2690c0bc8d1b8cbd02cffb1ead849f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:43:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:55:51 2008 -0700"
      },
      "message": "vsprintf: add support for \u0027%pS\u0027 and \u0027%pF\u0027 pointer formats\n\nThey print out a pointer in symbolic format, if possible (ie using\nsymbolic KALLSYMS information).  The \u0027%pS\u0027 format is for regular direct\npointers (which can point to data or code and that you find on the stack\nduring backtraces etc), while \u0027%pF\u0027 is for C function pointer types.\n\nOn most architectures, the two mean exactly the same thing, but some\narchitectures use an indirect pointer for C function pointers, where the\nfunction pointer points to a function descriptor (which in turn contains\nthe actual pointer to the code).  The \u0027%pF\u0027 code automatically does the\nappropriate function descriptor dereference on such architectures.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d8a743cdd2690c0bc8d1b8cbd02cffb1ead849f",
      "tree": "772c0e66fba248da8736edc4b633ddf294b86e8b",
      "parents": [
        "78a8bf69b32980879975f7e31d30386c50bfe851"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:24:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:24:57 2008 -0700"
      },
      "message": "vsprintf: add infrastructure support for extended \u0027%p\u0027 specifiers\n\nThis expands the kernel \u0027%p\u0027 handling with an arbitrary alphanumberic\nspecifier extension string immediately following the \u0027%p\u0027.  Right now\nit\u0027s just being ignored, but the next commit will start adding some\nspecific pointer type extensions.\n\nNOTE! The reason the extension is appended to the \u0027%p\u0027 is to allow\nminimal gcc type checking: gcc will still see the \u0027%p\u0027 and will check\nthat the argument passed in is indeed a pointer, and yet will not\ncomplain about the extended information that gcc doesn\u0027t understand\nabout (on the other hand, it also won\u0027t actually check that the pointer\ntype and the extension are compatible).\n\nAlphanumeric characters were chosen because there is no sane existing\nuse for a string format with a hex pointer representation immediately\nfollowed by alphanumerics (which is what such a format string would have\ntraditionally resulted in).\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "78a8bf69b32980879975f7e31d30386c50bfe851",
      "tree": "577521810087b901f9207f9cdbbe884ced43e490",
      "parents": [
        "0f9bfa569d46f2346a53a940b2b9e49a38635732"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:16:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:16:15 2008 -0700"
      },
      "message": "vsprintf: split out \u0027%p\u0027 handling logic\n\nThe actual code is the same, just split out into a helper function.\nThis makes it easier to read, and allows for simple future extension\nof %p handling.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0f9bfa569d46f2346a53a940b2b9e49a38635732",
      "tree": "ca301743d54bc7f4e0fea3f541db1b23768f9934",
      "parents": [
        "1b40a895df6c7d5a80e71f65674060b03d84bbef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:06:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 06 16:06:25 2008 -0700"
      },
      "message": "vsprintf: split out \u0027%s\u0027 handling logic\n\nThe actual code is the same, just split out into a helper function.\nThis makes it easier to read, and allows for future sharing of the\nstring code.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "da9eac8990dc614ab4756f2a3d84870b675f1f1e",
      "tree": "6b2361df995b9e895fec50f9e8f9c00190a53754",
      "parents": [
        "c4a2d7fbec3029c8891a3ad5fceec2992096a3b7"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 04 09:59:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 04 10:40:05 2008 -0700"
      },
      "message": "lib: taint kernel in common report_bug() WARN path.\n\nCommit 95b570c9cef3b12356454c7112571b7e406b4b51 (\"Taint kernel after\nWARN_ON(condition)\") introduced a TAINT_WARN that was implemented for\nall architectures using the generic warn_on_slowpath(), which excluded\nany architecture that set HAVE_ARCH_WARN_ON.\n\nAs all of the architectures that implement their own WARN_ON() all go\nthrough the report_bug() path (specifically handling BUG_TRAP_TYPE_WARN),\ntaint the kernel there as well for consistency.\n\nTested on avr32 and sh. Also relevant for s390, parisc, and powerpc.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cde53535991fbb5c34a1566f25955297c1487b8d",
      "tree": "4f87e67b52c8761cfc421a619379263733b91159",
      "parents": [
        "a926c063738f31c8c8b5c2b883812a40e7868072"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jul 04 09:59:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 04 10:40:04 2008 -0700"
      },
      "message": "Christoph has moved\n\nRemove all clameter@sgi.com addresses from the kernel tree since they will\nbecome invalid on June 27th.  Change my maintainer email address for the\nslab allocators to cl@linux-foundation.org (which will be the new email\naddress for the future).\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "821b03ffac8851d6bc1d5530183d2ed25adae35d",
      "tree": "a447ddd8abf841169e8f2dff1db5a10f774738da",
      "parents": [
        "3d25802e3ba7c82457b5c12bbfeefe391d8a333e",
        "2fe195cfe3e53c144d247b2768e37732e8eae4d8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 02 18:43:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 02 18:43:16 2008 -0700"
      },
      "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: (55 commits)\n  net: fib_rules: fix error code for unsupported families\n  netdevice: Fix wrong string handle in kernel command line parsing\n  net: Tyop of sk_filter() comment\n  netlink: Unneeded local variable\n  net-sched: fix filter destruction in atm/hfsc qdisc destruction\n  net-sched: change tcf_destroy_chain() to clear start of filter list\n  ipv4: fix sysctl documentation of time related values\n  mac80211: don\u0027t accept WEP keys other than WEP40 and WEP104\n  hostap: fix sparse warnings\n  hostap: don\u0027t report useless WDS frames by default\n  textsearch: fix Boyer-Moore text search bug\n  netfilter: nf_conntrack_tcp: fixing to check the lower bound of valid ACK\n  ipv6 route: Convert rt6_device_match() to use RT6_LOOKUP_F_xxx flags.\n  netlabel: Fix a problem when dumping the default IPv6 static labels\n  net/inet_lro: remove setting skb-\u003eip_summed when not LRO-able\n  inet fragments: fix race between inet_frag_find and inet_frag_secret_rebuild\n  CONNECTOR: add a proc entry to list connectors\n  netlink: Fix some doc comments in net/netlink/attr.c\n  tcp: /proc/net/tcp rto,ato values not scaled properly (v2)\n  include/linux/netdevice.h: don\u0027t export MAX_HEADER to userspace\n  ...\n"
    },
    {
      "commit": "aebb6a849cfe7d89bcacaaecc20a480dfc1180e7",
      "tree": "6a7cf5c6bdc80c75ec843d8ee44cd98039ca6fd7",
      "parents": [
        "84ebe1cdae56707b9aa1b40ae5aa7d817ba745f5"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwpark81@gmail.com",
        "time": "Mon Jun 30 12:42:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 30 12:42:23 2008 -0700"
      },
      "message": "textsearch: fix Boyer-Moore text search bug\n\nThe current logic has a bug which cannot find matching pattern, if the\npattern is matched from the first character of target string.\nfor example:\n\tpattern\u003dabc, string\u003dabcdefg\n\tpattern\u003da,   string\u003dabcdefg\nSearching algorithm should return 0 for those things.\n\nSigned-off-by: Joonwoo Park \u003cjoonwpark81@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ad118c54a3587b2c69a769d0ba37d4d8dce4559d",
      "tree": "779557f1734da19951e3d7d82167926bdaefd080",
      "parents": [
        "a5a242dceed5d1c74fe46088762a9e4312c2d000"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Jun 27 18:04:48 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 18:09:15 2008 +0200"
      },
      "message": "stacktrace: add saved stack traces to backtrace self-test\n\nThis patch adds saved stack-traces to the backtrace suite of self-tests.\n\nNote that we don\u0027t depend on or unconditionally enable CONFIG_STACKTRACE\nbecause not all architectures may have it (and we still want to enable the\nother tests for those architectures).\n\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "31a72bce0bd6f3e0114009288bccbc96376eeeca",
      "tree": "14a817fbe0b47511d3119360c47959d48f851140",
      "parents": [
        "d120f65f3aaf306c957bc4c82e510f5b0f1e9b27"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Jun 18 09:26:49 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 19 11:22:15 2008 +0200"
      },
      "message": "rcu: make rcutorture more vicious: reinstate boot-time testing\n\nThis patch re-institutes the ability to build rcutorture directly into\nthe Linux kernel.  The reason that this capability was removed was that\nthis could result in your kernel being pretty much useless, as rcutorture\nwould be running starting from early boot.  This problem has been avoided\nby (1) making rcutorture run only three seconds of every six by default,\n(2) adding a CONFIG_RCU_TORTURE_TEST_RUNNABLE that permits rcutorture\nto be quiesced at boot time, and (3) adding a sysctl in /proc named\n/proc/sys/kernel/rcutorture_runnable that permits rcutorture to be\nquiesced and unquiesced when built into the kernel.\n\nPlease note that this /proc file is -not- available when rcutorture\nis built as a module.  Please also note that to get the earlier\ntake-no-prisoners behavior, you must use the boot command line to set\nrcutorture\u0027s \"stutter\" parameter to zero.\n\nThe rcutorture quiescing mechanism is currently quite crude: loops\nin each rcutorture process that poll a global variable once per tick.\nSuggestions for improvement are welcome.  The default action will\nbe to reduce the polling rate to a few times per second.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "50db04dd9c74178e68a981a7127c37252ffb3242",
      "tree": "ac961b1ccc6f5073537be2b4b731bc79ec5448c4",
      "parents": [
        "952f4a0a9b27e6dbd5d32e330b3f609ebfa0b061"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Sun Jun 15 00:47:36 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jun 18 11:09:54 2008 +0200"
      },
      "message": "debugobjects: fix lockdep warning\n\nDaniel J Blueman reported:\n| \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n| [ INFO: possible circular locking dependency detected ]\n| 2.6.26-rc5-201c #1\n| -------------------------------------------------------\n| nscd/3669 is trying to acquire lock:\n|  (\u0026n-\u003elist_lock){.+..}, at: [\u003cffffffff802bab03\u003e] deactivate_slab+0x173/0x1e0\n|\n| but task is already holding lock:\n|  (\u0026obj_hash[i].lock){++..}, at: [\u003cffffffff803fa56f\u003e]\n| __debug_object_init+0x2f/0x350\n|\n| which lock already depends on the new lock.\n\nThere are two locks involved here; the first is a SLUB-local lock, and\nthe second is a debugobjects-local lock. They are basically taken in two\ndifferent orders:\n\n1. SLUB { debugobjects { ... } }\n2. debugobjects { SLUB { ... } }\n\nThis patch changes pattern #2 by trying to fill the memory pool (e.g.\nthe call into SLUB/kmalloc()) outside the debugobjects lock, so now the\ntwo patterns look like this:\n\n1. SLUB { debugobjects { ... } }\n2. SLUB { } debugobjects { ... }\n\n[ daniel.blueman@gmail.com: pool_lock needs to be taken irq safe in fill_pool ]\n\nReported-by: Daniel J Blueman \u003cdaniel.blueman@gmail.com\u003e\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "766d02786ecd22932beeb9ca8bad6d8c5a552ef9",
      "tree": "f6f2df0e35bbea914d1f4d12be6d02f128c73575",
      "parents": [
        "906d882cacecd37ad2fdd03ed2a9b232bcb9507e",
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:23:36 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:23:36 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n"
    },
    {
      "commit": "e765ee90da62535ac7d7a97f2464f9646539d683",
      "tree": "7a9cecce5aab958938e9a3bf46c2302d6af1958c",
      "parents": [
        "a4500b84c51645bbc86be3ca84f2252b7ada060f",
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:15:58 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:15:58 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/ftrace\n"
    },
    {
      "commit": "1462a200057df08be12f3719e1f37adbd2c6e4d0",
      "tree": "ac9564489df3b79ee66faa88bebcaa7858585010",
      "parents": [
        "2ba4cc319ab26c56205d4f23724c4748a553c845"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 08:40:04 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 08:40:04 2008 +0200"
      },
      "message": "Revert \"prohibit rcutorture from being compiled into the kernel\"\n\nThis reverts commit 9aaffc898ff4a3df18c5fc4b9e0fa47e779ad726.\n\nThat commit was a very bad idea. RCU_TORTURE found many boot timing\nbugs and other sorts of bugs in the past, so excluding it from\nboot images is very silly.\n\nThe option already depends on DEBUG_KERNEL and is disabled by default.\nEven when it runs, the test threads are reniced. If it annoys people\nwe could add a runtime sysctl.\n"
    },
    {
      "commit": "643b52b9c0b4e959436b4b551ebf4060d06d5ae8",
      "tree": "5ccce7688ba638e863a391ca84441d081e666f99",
      "parents": [
        "d2187ebd84c7dd13ef269e9600f4daebeb02816e"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Thu Jun 12 15:21:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 18:05:41 2008 -0700"
      },
      "message": "radix-tree: fix small lockless radix-tree bug\n\nWe shrink a radix tree when its root node has only one child, in the left\nmost slot.  The child becomes the new root node.  To perform this\noperation in a manner compatible with concurrent lockless lookups, we\natomically switch the root pointer from the parent to its child.\n\nHowever a concurrent lockless lookup may now have loaded a pointer to the\nparent (and is presently deciding what to do next).  For this reason, we\nalso have to keep the parent node in a valid state after shrinking the\ntree, until the next RCU grace period -- otherwise this lookup with the\nparent pointer may not do the right thing.  Notably, we need to keep the\nchild in the left most slot there in case that is requested by the lookup.\n\nThis is all pretty standard RCU stuff.  It is worth repeating because in\nmy eagerness to obey the radix tree node constructor scheme, I had broken\nit by zeroing the radix tree node before the grace period.\n\nWhat could happen is that a lookup can load the parent pointer, then\ndecide it wants to follow the left most child slot, only to find the slot\ncontained NULL due to the concurrent shrinker having zeroed the parent\nnode before waiting for a grace period.  The lookup would return a false\nnegative as a result.\n\nFix it by doing that clearing in the RCU callback.  I would normally want\nto rip out the constructor entirely, but radix tree nodes are one of those\nplaces where they make sense (only few cachelines will be touched soon\nafter allocation).\n\nThis was never actually found in any lockless pagecache testing or by the\ntest harness, but by seeing the odd problem with my scalable vmap rewrite.\n I have not tickled the test harness into reproducing it yet, but I\u0027ll\nkeep working at it.\n\nFortunately, it is not a problem anywhere lockless pagecache is used in\nmainline kernels (pagecache probe is not a guarantee, and brd does not\nhave concurrent lookups and deletes).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5e181f78ac753893eb930868a52a4488cd3de0a",
      "tree": "7d2f71fd3c84196f0d81a9e44861743b74e58ef6",
      "parents": [
        "f595ec964daf7f99668039d7303ddedd09a75142"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Jun 12 10:47:58 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 12 10:47:58 2008 +0200"
      },
      "message": "add an inlined version of iter_div_u64_rem\n\niter_div_u64_rem is used in the x86-64 vdso, which cannot call other\nkernel code.  For this case, provide the always_inlined version,\n__iter_div_u64_rem.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f595ec964daf7f99668039d7303ddedd09a75142",
      "tree": "4ee6679105f0437995ff200f10885598921ae1cd",
      "parents": [
        "5e70b7f3c24468bb1635b295945edb48ecd9656a"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Jun 12 10:47:56 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 12 10:47:56 2008 +0200"
      },
      "message": "common implementation of iterative div/mod\n\nWe have a few instances of the open-coded iterative div/mod loop, used\nwhen we don\u0027t expcet the dividend to be much bigger than the divisor.\nUnfortunately modern gcc\u0027s have the tendency to strength \"reduce\" this\ninto a full mod operation, which isn\u0027t necessarily any faster, and\neven if it were, doesn\u0027t exist if gcc implements it in libgcc.\n\nThe workaround is to put a dummy asm statement in the loop to prevent\ngcc from performing the transformation.\n\nThis patch creates a single implementation of this loop, and uses it\nto replace the open-coded versions I know about.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Segher Boessenkool \u003csegher@kernel.crashing.org\u003e\nCc: Christian Kujau \u003clists@nerdbynature.de\u003e\nCc: Robert Hancock \u003chancockr@shaw.ca\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8344b568f5bdc7ee1bba909de3294c6348c36056",
      "tree": "e4406d8a1210baa4e5cc665b576dca7318e8f4f1",
      "parents": [
        "f46753c5e354b857b20ab8e0fe7b2579831dc369"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Tue Jun 10 15:30:42 2008 -0600"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 10 14:37:14 2008 -0700"
      },
      "message": "PCI: ACPI PCI slot detection driver\n\nDetect all physical PCI slots as described by ACPI, and create entries in\n/sys/bus/pci/slots/.\n\nNot all physical slots are hotpluggable, and the acpiphp module does not\ndetect them.  Now we know the physical PCI geography of our system, without\ncaring about hotplug.\n\n[kaneshige.kenji@jp.fujitsu.com: export-kobject_rename-for-pci_hotplug_core]\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix build with CONFIG_DMI\u003dn]\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Len Brown \u003clen.brown@intel.com\u003e\nAcked-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "3527fb326f07bc8e85cf66d4f987ebeea24e8e4a",
      "tree": "c0f0389b67f15778808a72fe8b197a4d8c250030",
      "parents": [
        "f2eb432715a81a703e626df59347ba3557009557"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu Jun 05 22:46:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:10 2008 -0700"
      },
      "message": "lib: export bitrev16\n\nBluetooth will be able to use this.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nCc: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nCc: Dave Young \u003chidave.darkstar@gmail.com\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "886dd58258e6ddebe20e7aebef7b167a24bad7ee",
      "tree": "7f9bf8b5abef2560f1329b58391f4b3b9f3dfc3c",
      "parents": [
        "bfeeeeb991cf75081e6c2f74d44ae5da05b50a94"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 12 15:44:38 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun May 25 15:55:20 2008 +0200"
      },
      "message": "debugging: make stacktrace independent from DEBUG_KERNEL\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "654e4787689faffdd2137fe91f59fd3ef3363ad2",
      "tree": "480028277bd301d9ea65c8eb43e5381a68c3cd5d",
      "parents": [
        "6ec562328fda585be2d7f472cfac99d3b44d362a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed May 14 21:30:31 2008 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 22:46:23 2008 +0200"
      },
      "message": "ftrace: use the new kbuild CFLAGS_REMOVE for lib directory\n\nThis patch removes the Makefile turd and uses the nice CFLAGS_REMOVE macro\nin the lib directory.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "9d0a420b737f72d84fabebf29634d800cbf54538",
      "tree": "6e484bfff9842782e8438b4ff8587950177a8482",
      "parents": [
        "92205c2343527a863d660360599a4bf8cede77b0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon May 12 21:20:55 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 21:14:28 2008 +0200"
      },
      "message": "ftrace: remove function tracing from spinlock debug\n\nThe debug functions in spin_lock debugging pollute the output of the\nfunction tracer. This patch adds the debug files in the lib director\nto those that should not be compiled with mcount tracing.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3594136ad67a54d77bcb2547e70011754a2f91d5",
      "tree": "6e0cd72b5679254f4e9ab4959987f8cd96c07b0f",
      "parents": [
        "caf8cdebfb6c1cff50ea8077f1a07c2333d6d1fd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 12 21:20:50 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:56:43 2008 +0200"
      },
      "message": "ftrace: do not profile lib/string.o\n\nMost archs define the string and memory compare functions in assembly.\nSome do not. But these functions may be used in some archs at early\nboot up.\n\nSince most archs define this code in assembly and they are not usually\ntraced, there\u0027s no need to trace them when they are not defined in\nassembly.\n\nThis patch removes the -pg from the CFLAGS for lib/string.o.\nThis prevents the string functions use in either vdso or early bootup\nfrom crashing the system.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "5568b139f4d196273958ae2947a736fdf1ffeece",
      "tree": "27b9b64c33b970e0d2608324bc615382953fb705",
      "parents": [
        "f43fdad8627fec2d21df92799b254dceb66c9c3c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon May 12 21:20:44 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:39:17 2008 +0200"
      },
      "message": "ftrace: debug smp_processor_id, use notrace preempt disable\n\nThe debug smp_processor_id caused a recursive fault in debugging\nthe irqsoff tracer. The tracer used a smp_processor_id in the\nftrace callback, and this function called preempt_disable which\nalso is traced. This caused a recursive fault (stack overload).\n\nSince using smp_processor_id without debugging on does not cause\nfaults with the tracer (even when the tracer is wrong), the\ndebug version should not cause a system reboot.\n\nThis changes the debug_smp_processor_id to use the notrace versions\nof preempt_disable and enable.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "16444a8a40d4c7b4f6de34af0cae1f76a4f6c901",
      "tree": "9c290bcdbdc1ecf8f578c30b3b36914e14fdaacc",
      "parents": [
        "6e766410c4babd37bc7cd5e25009c179781742c8"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Mon May 12 21:20:42 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:31:58 2008 +0200"
      },
      "message": "ftrace: add basic support for gcc profiler instrumentation\n\nIf CONFIG_FTRACE is selected and /proc/sys/kernel/ftrace_enabled is\nset to a non-zero value the ftrace routine will be called everytime\nwe enter a kernel function that is not marked with the \"notrace\"\nattribute.\n\nThe ftrace routine will then call a registered function if a function\nhappens to be registered.\n\n[ This code has been highly hacked by Steven Rostedt and Ingo Molnar,\n  so don\u0027t blame Arnaldo for all of this ;-) ]\n\nUpdate:\n  It is now possible to register more than one ftrace function.\n  If only one ftrace function is registered, that will be the\n  function that ftrace calls directly. If more than one function\n  is registered, then ftrace will call a function that will loop\n  through the functions to call.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6e766410c4babd37bc7cd5e25009c179781742c8",
      "tree": "d6517a794a59755cc98e318e3da7779b7257714b",
      "parents": [
        "23adec554a7648f99c8acc0caf49c66320cd2b84"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Mon May 12 21:20:41 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 23 20:31:48 2008 +0200"
      },
      "message": "ftrace: annotate core code that should not be traced\n\nMark with \"notrace\" functions in core code that should not be\ntraced.  The \"notrace\" attribute will prevent gcc from adding\na call to ftrace on the annotated funtions.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "82524746c27fa418c250a56dd7606b9d3fc79826",
      "tree": "1801230b8fc2e436e722ac6f54fc53f1c112c310",
      "parents": [
        "32300751b4079cb5688453baa94711579d4285d5"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "fbuihuu@gmail.com",
        "time": "Mon May 12 21:21:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 19 10:01:37 2008 +0200"
      },
      "message": "rcu: split list.h and move rcu-protected lists into rculist.h\n\nMove rcu-protected lists from list.h into a new header file rculist.h.\n\nThis is done because list are a very used primitive structure all over the\nkernel and it\u0027s currently impossible to include other header files in this\nlist.h without creating some circular dependencies.\n\nFor example, list.h implements rcu-protected list and uses rcu_dereference()\nwithout including rcupdate.h.  It actually compiles because users of\nrcu_dereference() are macros.  Others RCU functions could be used too but\naren\u0027t probably because of this.\n\nTherefore this patch creates rculist.h which includes rcupdates without to\nmany changes/troubles.\n\nSigned-off-by: Franck Bui-Huu \u003cfbuihuu@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Josh Triplett \u003cjosh@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9ebcd9d410ba7209a8f321c41edf8615fc3ce67",
      "tree": "55441c92f2326c1ca9905a568859b166dd4949c5",
      "parents": [
        "b8291ad07a7f3b5b990900f0001198ac23ba893e"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Sun May 18 13:18:01 2008 -0500"
      },
      "committer": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Sun May 18 23:35:43 2008 -0500"
      },
      "message": "lmb: Fix compile warning\n\nlib/lmb.c: In function \u0027lmb_dump_all\u0027:\nlib/lmb.c:51: warning: format \u0027%lx\u0027 expects type \u0027long unsigned int\u0027, but argument 2 has type \u0027u64\u0027\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "8f40f672e6bb071812f61bfbd30efc3fc1263ad1",
      "tree": "8dcdbbb7adc68647267794c4e3a4686afd94ad65",
      "parents": [
        "8978a318837d7acefca82645017c0534aeba5a36",
        "887b3ece65be7b643dfdae0d433c91a26a3f437d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:30:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:30:51 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs\n\n* \u0027for-linus\u0027 of ssh://master.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:\n  9p: fix error path during early mount\n  9p: make cryptic unknown error from server less scary\n  9p: fix flags length in net\n  9p: Correct fidpool creation failure in p9_client_create\n  9p: use struct mutex instead of struct semaphore\n  9p: propagate parse_option changes to client and transports\n  fs/9p/v9fs.c (v9fs_parse_options): Handle kstrdup and match_strdup failure.\n  9p: Documentation updates\n  add match_strlcpy() us it to make v9fs make uname and remotename parsing more robust\n"
    },
    {
      "commit": "8978a318837d7acefca82645017c0534aeba5a36",
      "tree": "f69f5bc9a11d1a3a5c6391a9b48c9bcae4615a5a",
      "parents": [
        "f7fd63c0b5e170efc20e7b9a0aad7f69dff62c64",
        "9a28dbf8af11d127bf1c644143e7882cb91515dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:11:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:11:36 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  sparc64: Use a TS_RESTORE_SIGMASK\n  lmb: Make lmb debugging more useful.\n  lmb: Fix inconsistent alignment of size argument.\n  sparc: Fix mremap address range validation.\n"
    },
    {
      "commit": "3fc957721d18c93662f7d4dab455b80f53dd2641",
      "tree": "9bdbabf3cb3678edcd0e0e4beb5deaa5c1b17bcd",
      "parents": [
        "122a881c776b7c155bf3f379928cc27aab435288"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed May 14 16:05:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:11:14 2008 -0700"
      },
      "message": "lib: create common ascii hex array\n\nAdd a common hex array in hexdump.c so everyone can use it.\n\nAdd a common hi/lo helper to avoid the shifting masking that is\ndone to get the upper and lower nibbles of a byte value.\n\nPull the pack_hex_byte helper from kgdb as it is opencoded many\nplaces in the tree that will be consolidated.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b32a09db4fb9a87246ba4e7726a979ac4709ad97",
      "tree": "b84cf43745c329ccbcbd2671da91e729db8132ca",
      "parents": [
        "dd286422fefdcff784e8d336deeb88ce817e14db"
      ],
      "author": {
        "name": "Markus Armbruster",
        "email": "armbru@redhat.com",
        "time": "Tue Feb 26 09:57:11 2008 -0600"
      },
      "committer": {
        "name": "Eric Van Hensbergen",
        "email": "ericvh@opteron.9grid.us",
        "time": "Wed May 14 19:23:25 2008 -0500"
      },
      "message": "add match_strlcpy() us it to make v9fs make uname and remotename parsing more robust\n\nmatch_strcpy() is a somewhat creepy function: the caller needs to make sure\nthat the destination buffer is big enough, and when he screws up or\nforgets, match_strcpy() happily overruns the buffer.\n\nThere\u0027s exactly one customer: v9fs_parse_options().  I believe it currently\ncan\u0027t overflow its buffer, but that\u0027s not exactly obvious.\n\nThe source string is a substing of the mount options.  The kernel silently\ntruncates those to PAGE_SIZE bytes, including the terminating zero.  See\ncompat_sys_mount() and do_mount().\n\nThe destination buffer is obtained from __getname(), which allocates from\nname_cachep, which is initialized by vfs_caches_init() for size PATH_MAX.\n\nWe\u0027re safe as long as PATH_MAX \u003c\u003d PAGE_SIZE.  PATH_MAX is 4096.  As far as\nI know, the smallest PAGE_SIZE is also 4096.\n\nHere\u0027s a patch that makes the code a bit more obviously correct.  It\ndoesn\u0027t depend on PATH_MAX \u003c\u003d PAGE_SIZE.\n\nSigned-off-by: Markus Armbruster \u003carmbru@redhat.com\u003e\nCc: Latchesar Ionkov \u003clucho@ionkov.net\u003e\nCc: Jim Meyering \u003cmeyering@redhat.com\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Eric Van Hensbergen \u003cericvh@gmail.com\u003e\n"
    },
    {
      "commit": "f4ed0deae8983591264d0e194e168ef65f4775f5",
      "tree": "6d25ff09060a69530b1ba0711d20e978edfda92e",
      "parents": [
        "53c78dd1718b99dc365ff8a2244d7d4504b070a5"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Mon May 12 14:02:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:25 2008 -0700"
      },
      "message": "cpumask: remove bitmap_scnprintf_len and cpumask_scnprintf_len\n\nThey aren\u0027t used.  They were briefly used as part of some other patches to\nprovide an alternative format for displaying some /proc and /sys cpumasks.\nThey probably should have been removed when those other patches were dropped,\nin favor of a different solution.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nCc: \"Mike Travis\" \u003ctravis@sgi.com\u003e\nCc: \"Bert Wesarg\" \u003cbert.wesarg@googlemail.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "faa6cfde747ba6d37a0889cbe85881c80806d355",
      "tree": "1236334ba2f343f790d338fc0c19c2b195d08eba",
      "parents": [
        "4978db5bd964d90265f957f980ab2b0771ca2b9f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 12 17:21:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 12 17:21:55 2008 -0700"
      },
      "message": "lmb: Make lmb debugging more useful.\n\nHaving to muck with the build and set DEBUG just to\nget lmb_dump_all() to print things isn\u0027t very useful.\n\nSo use pr_info() and use an early boot param\n\"lmb\u003ddebug\" so we can simply ask users to reboot\nwith this option when we need some debugging from\nthem.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4978db5bd964d90265f957f980ab2b0771ca2b9f",
      "tree": "d93e4b3a4c7e7418d8307506d40007e641482a2f",
      "parents": [
        "94d149c34cda933ff5096aca94bb23bf68602f4e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 12 16:51:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 12 16:51:15 2008 -0700"
      },
      "message": "lmb: Fix inconsistent alignment of size argument.\n\nWhen allocating, if we will align up the size when making\nthe reservation, we should also align the size for the\ncheck that the space is actually available.\n\nThe simplest thing is to just aling the size up from\nthe beginning, then we can use plain \u0027size\u0027 throughout.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e3e076c5a78519a9f64cd384e8f18bc21882ce0",
      "tree": "f032258fde3aa4771e86bf4552fe4530c221dec3",
      "parents": [
        "00b41ec2611dc98f87f30753ee00a53db648d662"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 10 20:58:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 10 20:58:02 2008 -0700"
      },
      "message": "BKL: revert back to the old spinlock implementation\n\nThe generic semaphore rewrite had a huge performance regression on AIM7\n(and potentially other BKL-heavy benchmarks) because the generic\nsemaphores had been rewritten to be simple to understand and fair.  The\nlatter, in particular, turns a semaphore-based BKL implementation into a\nmess of scheduling.\n\nThe attempt to fix the performance regression failed miserably (see the\nprevious commit 00b41ec2611dc98f87f30753ee00a53db648d662 \u0027Revert\n\"semaphore: fix\"\u0027), and so for now the simple and sane approach is to\ninstead just go back to the old spinlock-based BKL implementation that\nnever had any issues like this.\n\nThis patch also has the advantage of being reported to fix the\nregression completely according to Yanmin Zhang, unlike the semaphore\nhack which still left a couple percentage point regression.\n\nAs a spinlock, the BKL obviously has the potential to be a latency\nissue, but it\u0027s not really any different from any other spinlock in that\nrespect.  We do want to get rid of the BKL asap, but that has been the\nplan for several years.\n\nThese days, the biggest users are in the tty layer (open/release in\nparticular) and Alan holds out some hope:\n\n  \"tty release is probably a few months away from getting cured - I\u0027m\n   afraid it will almost certainly be the very last user of the BKL in\n   tty to get fixed as it depends on everything else being sanely locked.\"\n\nso while we\u0027re not there yet, we do have a plan of action.\n\nTested-by: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Alexander Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e83fc4df5f27dfc1b53044c4f142b2f9d1db08c",
      "tree": "6afd0fe3aba28ed7137a9b2916a8a6d517ff9c04",
      "parents": [
        "17aa7e034416e3080bc57a786d09ba0a4a044561",
        "9185ef6787f1c8f1c06aa0cb3c7746fb4f101f50"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 05 15:48:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 05 15:48:53 2008 -0700"
      },
      "message": "Merge branch \u0027powerpc-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027powerpc-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:\n  [POWERPC] Assign PDE-\u003edata before gluing PDE into /proc tree\n  [POWERPC] devres: Add devm_ioremap_prot()\n  [POWERPC] macintosh: ADB driver: adb_handler_sem semaphore to mutex\n  [POWERPC] macintosh: windfarm_smu_sat: semaphore to mutex\n  [POWERPC] macintosh: therm_pm72: driver_lock semaphore to mutex\n"
    },
    {
      "commit": "e024cbd257efc2788b7d21b9353e966267485c87",
      "tree": "bc4b1c7450a2ab892924b8f4e733c27a528e9413",
      "parents": [
        "688b744d8bc84dc5cc646e97509113dc5e8818ed"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Fri Apr 25 18:35:29 2008 +0200"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon May 05 07:13:21 2008 -0500"
      },
      "message": "kgdb: kconfig fix xconfig/menuconfig element\n\nKconfig.kgdb: fix menuconfig element\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "b41e5fffe8b81fc939067d8c1c195cc79115d5a3",
      "tree": "7839043d5c430029efdb023e69d6a717fa8ff86e",
      "parents": [
        "af3ce514ade2fd0e18c5d078d138a6c1137a33df"
      ],
      "author": {
        "name": "Emil Medve",
        "email": "Emilian.Medve@Freescale.com",
        "time": "Sat May 03 06:34:04 2008 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon May 05 16:47:14 2008 +1000"
      },
      "message": "[POWERPC] devres: Add devm_ioremap_prot()\n\nWe provide an ioremap_flags, so this provides a corresponding\ndevm_ioremap_prot.  The slight name difference is at Ben\nHerrenschmidt\u0027s request as he plans on changing ioremap_flags to\nioremap_prot in the future.\n\nSigned-off-by: Emil Medve \u003cEmilian.Medve@Freescale.com\u003e\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nAcked-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "af8e2a4cb9b3e14b919ae1cd4012825aefddbeb0",
      "tree": "8910da8632172a09437db0bb5860234daefd894f",
      "parents": [
        "7793bfcfccc91d036d61618d90baf2be3d76e710"
      ],
      "author": {
        "name": "Nadia Derbey",
        "email": "Nadia.Derbey@bull.net",
        "time": "Thu May 01 04:34:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:04:00 2008 -0700"
      },
      "message": "idr: fix idr_remove()\n\nThe return inside the loop makes us free only a single layer.\n\nSigned-off-by: Nadia Derbey \u003cNadia.Derbey@bull.net\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Jim Houston \u003cjim.houston@comcast.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34990cf702bdf2b4964e0629dab4af7669f8b2c5",
      "tree": "33ec40ee97be1a9a6b3565dcf49d1dcffff191f9",
      "parents": [
        "7dffa3c673fbcf835cd7be80bb4aec8ad3f51168"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Thu May 01 04:34:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:03:59 2008 -0700"
      },
      "message": "Add a new sysfs_streq() string comparison function\n\nAdd a new sysfs_streq() string comparison function, which ignores\nthe trailing newlines found in sysfs inputs.  By example:\n\n\tsysfs_streq(\"a\", \"b\")\t\u003d\u003d\u003e false\n\tsysfs_streq(\"a\", \"a\")\t\u003d\u003d\u003e true\n\tsysfs_streq(\"a\", \"a\\n\")\t\u003d\u003d\u003e true\n\tsysfs_streq(\"a\\n\", \"a\")\t\u003d\u003d\u003e true\n\nThis is intended to simplify parsing of sysfs inputs, letting them\navoid the need to manually strip off newlines from inputs.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f6d6a1a6a1336431a6cba60ace9e97c3a496a19",
      "tree": "f32e82fc3a50b6877afa3220bdb6f7ea0582e07f",
      "parents": [
        "71abb3af62dfa52930755f3b6497eafbe1d6ec85"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Thu May 01 04:34:28 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:03:58 2008 -0700"
      },
      "message": "rename div64_64 to div64_u64\n\nRename div64_64 to div64_u64 to make it consistent with the other divide\nfunctions, so it clearly includes the type of the divide.  Move its definition\nto math64.h as currently no architecture overrides the generic implementation.\n They can still override it of course, but the duplicated declarations are\navoided.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2418f4f28f8467b92a6177af32d05737ebf6206c",
      "tree": "cd35f4feef2ed3078ebb7ce6dcaf5f627299944e",
      "parents": [
        "adafbedf0c31ae1cde62035c82857f5e376af553"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Thu May 01 04:34:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:03:58 2008 -0700"
      },
      "message": "introduce explicit signed/unsigned 64bit divide\n\nThe current do_div doesn\u0027t explicitly say that it\u0027s unsigned and the signed\ncounterpart is missing, which is e.g.  needed when dealing with time values.\n\nThis introduces 64bit signed/unsigned divide functions which also attempts to\ncleanup the somewhat awkward calling API, which often requires the use of\ntemporary variables for the dividend.  To avoid the need for temporary\nvariables everywhere for the remainder, each divide variant also provides a\nversion which doesn\u0027t return the remainder.\n\nEach architecture can now provide optimized versions of these function,\notherwise generic fallback implementations will be used.\n\nAs an example I provided an alternative for the current x86 divide, which\navoids the asm casts and using an union allows gcc to generate better code.\nIt also avoids the upper divde in a few more cases, where the result is known\n(i.e.  upper quotient is zero).\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3bb7fadaf52de3637b834002dac27f6250b4b49",
      "tree": "f60e329ce802d2941c5bf45fcd5b9c36b3de774d",
      "parents": [
        "c3b19ff06e0808555403491d61e8f0cbbb53e933"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Apr 30 16:43:45 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Apr 30 16:52:58 2008 -0700"
      },
      "message": "klist: fix coding style errors in klist.h and klist.c\n\nFinally clean up the odd spacing in these files.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4f452e8aa492c0b8028ca9b4bdb4d018ba28c6c7",
      "tree": "9838a71adc6c9297bbedafc6ad2f2b36543fd0df",
      "parents": [
        "a4ca6617421188f50774780cdc91c3782b7d08fe"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Tue Apr 29 10:25:48 2008 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Apr 30 16:52:48 2008 -0700"
      },
      "message": "devres: support addresses greater than an unsigned long via dev_ioremap\n\nUse a resource_size_t instead of unsigned long since some arch\u0027s are\ncapable of having ioremap deal with addresses greater than the size of a\nunsigned long.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a4ca6617421188f50774780cdc91c3782b7d08fe",
      "tree": "661fbedcbd3deb8555b10a9406b7ffd50e288815",
      "parents": [
        "1cbfb7a5acd357de6c3f8e27e8d8f92b3867b1f3"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Apr 30 02:06:29 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Apr 30 16:52:48 2008 -0700"
      },
      "message": "kobject: do not copy vargs, just pass them around\n\nThis prevents a few unneeded copies.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "93dd40013f4f7f4b18d19d0d77855f025bcc57c3",
      "tree": "81f61934013cbfbfec720e0798d13189571364b5",
      "parents": [
        "1da43e4a9ee942c9c967dbe8839476571df0c3ed"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Apr 22 18:58:46 2008 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Apr 30 16:52:47 2008 -0700"
      },
      "message": "klist: implement klist_add_{after|before}()\n\nAdd klist_add_after() and klist_add_before() which puts a new node\nafter and before an existing node, respectively.  This is useful for\ncallers which need to keep klist ordered.  Note that synchronizing\nbetween simultaneous additions for ordering is the caller\u0027s\nresponsibility.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "810304db75b0ca4e6ef071f86aa3e85fdaddee5e",
      "tree": "5a6027b543bef4b3220ca3faa5f15459b1be1c5f",
      "parents": [
        "af1f16d08f38ab6f17b5760e6ec9d2b7d3a5ff1a"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Apr 30 00:55:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:54 2008 -0700"
      },
      "message": "lib: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6f3a97f86a5c97be0ca255976110bb9c3cfe669",
      "tree": "95a7bf3c928a85b26aed128786fc09e18bc5dcfc",
      "parents": [
        "691cc54c7d28542434d2b3ee4ddbad6a99312dec"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 30 00:55:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:53 2008 -0700"
      },
      "message": "debugobjects: add timer specific object debugging code\n\nAdd calls to the generic object debugging infrastructure and provide fixup\nfunctions which allow to keep the system alive when recoverable problems have\nbeen detected by the object debugging core code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ac7fe5a4aab409bd5674d0b070bce97f9d20872",
      "tree": "5e12e8864bb8737695e4eb9c63970602d5f69e73",
      "parents": [
        "30327acf7846c5eb97c8e31c78317a2918d3e515"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 30 00:55:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:53 2008 -0700"
      },
      "message": "infrastructure to debug (dynamic) objects\n\nWe can see an ever repeating problem pattern with objects of any kind in the\nkernel:\n\n1) freeing of active objects\n2) reinitialization of active objects\n\nBoth problems can be hard to debug because the crash happens at a point where\nwe have no chance to decode the root cause anymore.  One problem spot are\nkernel timers, where the detection of the problem often happens in interrupt\ncontext and usually causes the machine to panic.\n\nWhile working on a timer related bug report I had to hack specialized code\ninto the timer subsystem to get a reasonable hint for the root cause.  This\ndebug hack was fine for temporary use, but far from a mergeable solution due\nto the intrusiveness into the timer code.\n\nThe code further lacked the ability to detect and report the root cause\ninstantly and keep the system operational.\n\nKeeping the system operational is important to get hold of the debug\ninformation without special debugging aids like serial consoles and special\nknowledge of the bug reporter.\n\nThe problems described above are not restricted to timers, but timers tend to\nexpose it usually in a full system crash.  Other objects are less explosive,\nbut the symptoms caused by such mistakes can be even harder to debug.\n\nInstead of creating specialized debugging code for the timer subsystem a\ngeneric infrastructure is created which allows developers to verify their code\nand provides an easy to enable debug facility for users in case of trouble.\n\nThe debugobjects core code keeps track of operations on static and dynamic\nobjects by inserting them into a hashed list and sanity checking them on\nobject operations and provides additional checks whenever kernel memory is\nfreed.\n\nThe tracked object operations are:\n- initializing an object\n- adding an object to a subsystem list\n- deleting an object from a subsystem list\n\nEach operation is sanity checked before the operation is executed and the\nsubsystem specific code can provide a fixup function which allows to prevent\nthe damage of the operation.  When the sanity check triggers a warning message\nand a stack trace is printed.\n\nThe list of operations can be extended if the need arises.  For now it\u0027s\nlimited to the requirements of the first user (timers).\n\nThe core code enqueues the objects into hash buckets.  The hash index is\ngenerated from the address of the object to simplify the lookup for the check\non kfree/vfree.  Each bucket has it\u0027s own spinlock to avoid contention on a\nglobal lock.\n\nThe debug code can be compiled in without being active.  The runtime overhead\nis minimal and could be optimized by asm alternatives.  A kernel command line\noption enables the debugging code.\n\nThanks to Ingo Molnar for review, suggestions and cleanup patches.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a42dde04152750426cc620fd277e80fffae2f65a",
      "tree": "98cdf246280c59e0bf044ae6d2c229fc27b73203",
      "parents": [
        "189d3c4a94ef19fca2a71a6a336e9fda900e25e7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Apr 30 00:54:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:50 2008 -0700"
      },
      "message": "mm: bdi: allow setting a maximum for the bdi dirty limit\n\nAdd \"max_ratio\" to /sys/class/bdi.  This indicates the maximum percentage of\nthe global dirty threshold allocated to this bdi.\n\n[mszeredi@suse.cz]\n\n - fix parsing in max_ratio_store().\n - export bdi_set_max_ratio() to modules\n - limit bdi_dirty with bdi-\u003emax_ratio\n - document new sysfs attribute\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf0ca9fe5dd9e3693d935757a7b2fc50fc576554",
      "tree": "c795c5271eda9fc67579fa3176c646b892dfdb41",
      "parents": [
        "caafa4324335aeb11bc233d5f87aca8cce30beba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Apr 30 00:54:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:49 2008 -0700"
      },
      "message": "mm: bdi: export BDI attributes in sysfs\n\nProvide a place in sysfs (/sys/class/bdi) for the backing_dev_info object.\nThis allows us to see and set the various BDI specific variables.\n\nIn particular this properly exposes the read-ahead window for all relevant\nusers and /sys/block/\u003cblock\u003e/queue/read_ahead_kb should be deprecated.\n\nWith patient help from Kay Sievers and Greg KH\n\n[mszeredi@suse.cz]\n\n - split off NFS and FUSE changes into separate patches\n - document new sysfs attributes under Documentation/ABI\n - do bdi_class_init as a core_initcall, otherwise the \"default\" BDI\n   won\u0027t be initialized\n - remove bdi_init_fmt macro, it\u0027s not used very much\n\n[akpm@linux-foundation.org: fix ia64 warning]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "867a89e0b73af48838c7987e80899a1ff26dd6ff",
      "tree": "b4a8830b3e880b9a5133ad1ec3106665819cc8d4",
      "parents": [
        "44473d991332053eb3fea1e08f8a6ee2c6fb409c",
        "6c39103ce5192bdb2195f3daab7323dfa44fb52e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:19:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:19:14 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:\n  [RAPIDIO] Change RapidIO doorbell source and target ID field to 16-bit\n  [RAPIDIO] Add RapidIO connection info print out and re-training for broken connections\n  [RAPIDIO] Add serial RapidIO controller support, which includes MPC8548, MPC8641\n  [RAPIDIO] Add RapidIO node probing into MPC86xx_HPCN board id table\n  [RAPIDIO] Add RapidIO node into MPC8641HPCN dts file\n  [RAPIDIO] Auto-probe the RapidIO system size\n  [RAPIDIO] Add OF-tree support to RapidIO controller driver\n  [RAPIDIO] Add RapidIO multi mport support\n  [RAPIDIO] Move include/asm-ppc/rio.h to asm-powerpc\n  [RAPIDIO] Add RapidIO option to kernel configuration\n  [RAPIDIO] Change RIO function mpc85xx_ to fsl_\n  [POWERPC] Provide walk_memory_resource() for powerpc\n  [POWERPC] Update lmb data structures for hotplug memory add/remove\n  [POWERPC] Hotplug memory remove notifications for powerpc\n  [POWERPC] windfarm: Add PowerMac 12,1 support\n  [POWERPC] Fix building of pmac32 when CONFIG_NVRAM\u003dm\n  [POWERPC] Add IRQSTACKS support on ppc32\n  [POWERPC] Use __always_inline for xchg* and cmpxchg*\n  [POWERPC] Add fast little-endian switch system call\n"
    },
    {
      "commit": "fee4b19fb3f28d17c0b9f9ea0668db5275697178",
      "tree": "0d7c34ef39cdac5a0c7f89376e85cc3ef621a7da",
      "parents": [
        "8972331292753c89dbdd10b175e999ce78dc3be7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Apr 29 12:01:02 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:11:16 2008 -0700"
      },
      "message": "bitops: remove \"optimizations\"\n\nThe mapsize optimizations which were moved from x86 to the generic\ncode in commit 64970b68d2b3ed32b964b0b30b1b98518fde388e increased the\nbinary size on non x86 architectures.\n\nLooking into the real effects of the \"optimizations\" it turned out\nthat they are not used in find_next_bit() and find_next_zero_bit().\n\nThe ones in find_first_bit() and find_first_zero_bit() are used in a\ncouple of places but none of them is a real hot path.\n\nRemove the \"optimizations\" all together and call the library functions\nunconditionally.\n\nBoot-tested on x86 and compile tested on every cross compiler I have.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "199f0ca514f9c17668eec4f935c4ba24cd789f85",
      "tree": "54406e3eb5be58e3350d8f60a64ac78ec3990f97",
      "parents": [
        "801678c5a3b4c79236970bcca27c733f5559e0d1"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Apr 29 01:03:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:25 2008 -0700"
      },
      "message": "idr: create idr_layer_cache at boot time\n\nAvoid a possible kmem_cache_create() failure by creating idr_layer_cache\nunconditionary at boot time rather than creating it on-demand when idr_init()\nis called the first time.\n\nThis change also enables us to eliminate the check every time idr_init() is\ncalled.\n\n[akpm@linux-foundation.org: rename init_id_cache() to idr_init_cache()]\n[akpm@linux-foundation.org: fix alpha build]\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "309df0c503c35fbb5a09537fcbb1f4967b9ca489",
      "tree": "56a9df627a229bd64b934608b5f84d20bdaabf3a",
      "parents": [
        "a75b0a2f68d3937f96ed39525e4750601483e3b4"
      ],
      "author": {
        "name": "Arthur Kepner",
        "email": "akepner@sgi.com",
        "time": "Tue Apr 29 01:00:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "dma/ia64: update ia64 machvecs, swiotlb.c\n\nChange all ia64 machvecs to use the new dma_*map*_attrs() interfaces.\nImplement the old dma_*map_*() interfaces in terms of the corresponding new\ninterfaces.  For ia64/sn, make use of one dma attribute,\nDMA_ATTR_WRITE_BARRIER.  Introduce swiotlb_*map*_attrs() functions.\n\nSigned-off-by: Arthur Kepner \u003cakepner@sgi.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f97a5a8799b8d7d0afdb9d68a50a4e0e8298a05",
      "tree": "03f0a35e50e9a765603fc9249e601b52e043fd0d",
      "parents": [
        "762873c251b056c6c1b29e83a4dabafb064e5421"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Apr 29 00:59:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:06 2008 -0700"
      },
      "message": "isolate ratelimit from printk.c for other use\n\nDue to the rcupreempt.h WARN_ON trigged, I got 2G syslog file.  For some\nserious complaining of kernel, we need repeat the warnings, so here I isolate\nthe ratelimit part of printk.c to a standalone file.\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a8522509200b460443a7ca59138dc63bec1b690a",
      "tree": "d3da544c245a40740018080e9e451fc9096aedb3",
      "parents": [
        "a7133a15587b8921af8b074e0d3fe1606cbe5597"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Apr 29 00:59:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:05 2008 -0700"
      },
      "message": "swiotlb: use iommu_is_span_boundary helper function\n\niommu_is_span_boundary in lib/iommu-helper.c was exported for PARISC IOMMUs\n(commit 3715863aa142c4f4c5208f5f3e5e9bac06006d2f).  SWIOTLB can use it instead\nof the homegrown function.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a7133a15587b8921af8b074e0d3fe1606cbe5597",
      "tree": "129706734260468ac6aac966584ffeca31adf471",
      "parents": [
        "9a3be324e3d9da08219d81d6765f445a726cf962"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Apr 29 00:59:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:05 2008 -0700"
      },
      "message": "lib/swiotlb.c: cleanups\n\nThere\u0027s a pointlessly braced block of code in there.  Remove the braces and\nsave a tabstop.\n\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b70d3a2c596fb52b02488ad4aef13fa0d602090c",
      "tree": "502793fdd2ca7c7e0d66af3e750d4ffbec6db248",
      "parents": [
        "626adeb6675fdf60e9d8c6212776b0b0acf0e376"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Apr 29 00:59:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:02 2008 -0700"
      },
      "message": "iomap: fix 64 bits resources on 32 bits\n\nAlmost all implementations of pci_iomap() in the kernel, including the generic\nlib/iomap.c one, copies the content of a struct resource into unsigned long\u0027s\nwhich will break on 32 bits platforms with 64 bits resources.\n\nThis fixes all definitions of pci_iomap() to use resource_size_t.  I also\n\"fixed\" the 64bits arch for consistency.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22caa0417db3b1d3dfafc9b7c0bf31baf8d667e7",
      "tree": "9d83fa00c532035b9f7c08f498973e5499483e6a",
      "parents": [
        "cd6fda36089cf3b450821228c2f575a3b5d0e7a7"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "jim@meyering.net",
        "time": "Tue Apr 29 00:59:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:02 2008 -0700"
      },
      "message": "lib/inflate.c: handle failed malloc()\n\nlib/inflate.c (inflate_dynamic): Don\u0027t deref NULL upon failed malloc.\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d88a2eb6e05c07aa0d484b8fa1372722fa921d0",
      "tree": "782b288099fbd96ed779c033f2c1322ff1822950",
      "parents": [
        "98d5c21c812e4e3b795f5bd912f407ed7c5e4e38"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Fri Apr 18 13:33:53 2008 -0700"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 29 15:57:53 2008 +1000"
      },
      "message": "[POWERPC] Provide walk_memory_resource() for powerpc\n\nProvide walk_memory_resource() for 64-bit powerpc.  PowerPC maintains\nlogical memory region mapping in the lmb.memory structure.  Walk\nthrough these structures and do the callbacks for the contiguous\nchunks.\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "98d5c21c812e4e3b795f5bd912f407ed7c5e4e38",
      "tree": "40c5680e5b8b337fdddd3becf59484a19e2037d5",
      "parents": [
        "57b539269e9eef4dedc533d83c94877bc6b4d44d"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Fri Apr 18 13:33:52 2008 -0700"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 29 15:57:53 2008 +1000"
      },
      "message": "[POWERPC] Update lmb data structures for hotplug memory add/remove\n\nThe powerpc kernel maintains information about logical memory blocks\nin the lmb.memory structure, which is initialized and updated at boot\ntime, but not when memory is added or removed while the kernel is\nrunning.\n\nThis adds a hotplug memory notifier which updates lmb.memory when\nmemory is added or removed.  This information is useful for eHEA\ndriver to find out the memory layout and holes.\n\nNOTE: No special locking is needed for lmb_add() and lmb_remove().\nCalls to these are serialized by caller. (pSeries_reconfig_chain).\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "7ea931c9fc80c4d0a4306c30ec92eb0f1d922a0b",
      "tree": "4f2c85d658c75e8679e01943e3e95866b3729b54",
      "parents": [
        "f5b087b52f1710eb0bf15a2d2b030c51a6a1ca9e"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Mon Apr 28 02:12:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:19 2008 -0700"
      },
      "message": "mempolicy: add bitmap_onto() and bitmap_fold() operations\n\nThe following adds two more bitmap operators, bitmap_onto() and bitmap_fold(),\nwith the usual cpumask and nodemask wrappers.\n\nThe bitmap_onto() operator computes one bitmap relative to another.  If the\nn-th bit in the origin mask is set, then the m-th bit of the destination mask\nwill be set, where m is the position of the n-th set bit in the relative mask.\n\nThe bitmap_fold() operator folds a bitmap into a second that has bit m set iff\nthe input bitmap has some bit n set, where m \u003d\u003d n mod sz, for the specified sz\nvalue.\n\nThere are two substantive changes between this patch and its\npredecessor bitmap_relative:\n 1) Renamed bitmap_relative() to be bitmap_onto().\n 2) Added bitmap_fold().\n\nThe essential motivation for bitmap_onto() is to provide a mechanism for\nconverting a cpuset-relative CPU or Node mask to an absolute mask.  Cpuset\nrelative masks are written as if the current task were in a cpuset whose CPUs\nor Nodes were just the consecutive ones numbered 0..N-1, for some N.  The\nbitmap_onto() operator is provided in anticipation of adding support for the\nfirst such cpuset relative mask, by the mbind() and set_mempolicy() system\ncalls, using a planned flag of MPOL_F_RELATIVE_NODES.  These bitmap operators\n(and their nodemask wrappers, in particular) will be used in code that\nconverts the user specified cpuset relative memory policy to a specific system\nnode numbered policy, given the current mems_allowed of the tasks cpuset.\n\nSuch cpuset relative mempolicies will address two deficiencies\nof the existing interface between cpusets and mempolicies:\n 1) A task cannot at present reliably establish a cpuset\n    relative mempolicy because there is an essential race\n    condition, in that the tasks cpuset may be changed in\n    between the time the task can query its cpuset placement,\n    and the time the task can issue the applicable mbind or\n    set_memplicy system call.\n 2) A task cannot at present establish what cpuset relative\n    mempolicy it would like to have, if it is in a smaller\n    cpuset than it might have mempolicy preferences for,\n    because the existing interface only allows specifying\n    mempolicies for nodes currently allowed by the cpuset.\n\nCpuset relative mempolicies are useful for tasks that don\u0027t distinguish\nparticularly between one CPU or Node and another, but only between how many of\neach are allowed, and the proper placement of threads and memory pages on the\nvarious CPUs and Nodes available.\n\nThe motivation for the added bitmap_fold() can be seen in the following\nexample.\n\nLet\u0027s say an application has specified some mempolicies that presume 16 memory\nnodes, including say a mempolicy that specified MPOL_F_RELATIVE_NODES (cpuset\nrelative) nodes 12-15.  Then lets say that application is crammed into a\ncpuset that only has 8 memory nodes, 0-7.  If one just uses bitmap_onto(),\nthis mempolicy, mapped to that cpuset, would ignore the requested relative\nnodes above 7, leaving it empty of nodes.  That\u0027s not good; better to fold the\nhigher nodes down, so that some nodes are included in the resulting mapped\nmempolicy.  In this case, the mempolicy nodes 12-15 are taken modulo 8 (the\nweight of the mems_allowed of the confining cpuset), resulting in a mempolicy\nspecifying nodes 4-7.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: \u003cray-lk@madrabbit.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "488514d1798289f56f80ed018e246179fe500383",
      "tree": "e68d9f703dcbceed0cc08b03014d109d7ec3acd4",
      "parents": [
        "e92adcba261fd391591bb63c1703185a04a41554"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Apr 28 02:12:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:17 2008 -0700"
      },
      "message": "Remove set_migrateflags()\n\nMigrate flags must be set on slab creation as agreed upon when the antifrag\nlogic was reviewed.  Otherwise some slabs of a slabcache will end up in the\nunmovable and others in the reclaimable section depending on which flag was\nactive when a new slab page was allocated.\n\nThis likely slid in somehow when antifrag was merged. Remove it.\n\nThe buffer_heads are always allocated with __GFP_RECLAIMABLE because the\nSLAB_RECLAIM_ACCOUNT option is set.  The set_migrateflags() never had any\neffect there.\n\nRadix tree allocations are not directly reclaimable but they are allocated\nwith __GFP_RECLAIMABLE set on each allocation.  We now set\nSLAB_RECLAIM_ACCOUNT on radix tree slab creation making sure that radix\ntree slabs are consistently placed in the reclaimable section.  Radix tree\nslabs will also be accounted as such.\n\nThere is then no user left of set_migratepages. So remove it.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19870def587554c4055df3e74a21508e3647fb7e",
      "tree": "d1c483a58e0ec684b8e3678a906dc115ffee5006",
      "parents": [
        "f19dcf4a61ea4a3d155acb239348d09cb264f6a0"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Fri Apr 25 13:12:53 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:17 2008 +0200"
      },
      "message": "x86, bitops: select the generic bitmap search functions\n\nIntroduce GENERIC_FIND_FIRST_BIT and GENERIC_FIND_NEXT_BIT in\nlib/Kconfig, defaulting to off. An arch that wants to use the\ngeneric implementation now only has to use a select statement\nto include them.\n\nI added an always-y option (X86_CPU) to arch/x86/Kconfig.cpu\nand used that to select the generic search functions. This\nway ARCH\u003dum SUBARCH\u003di386 automatically picks up the change\ntoo, and arch/um/Kconfig.i386 can therefore be simplified a\nbit. ARCH\u003dum SUBARCH\u003dx86_64 does things differently, but\nstill compiles fine. It seems that a \"def_bool y\" always\nwins over a \"def_bool n\"?\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "77b9bd9c49442407804c37bcc82021a35277f83c",
      "tree": "251900d95c6c9c5371542d5dda7d89cb31cd0801",
      "parents": [
        "d57594c203b1e7b54373080a797f0cbfa4aade68"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Tue Apr 01 11:46:19 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86: generic versions of find_first_(zero_)bit, convert i386\n\nGeneric versions of __find_first_bit and __find_first_zero_bit\nare introduced as simplified versions of __find_next_bit and\n__find_next_zero_bit. Their compilation and use are guarded by\na new config variable GENERIC_FIND_FIRST_BIT.\n\nThe generic versions of find_first_bit and find_first_zero_bit\nare implemented in terms of the newly introduced __find_first_bit\nand __find_first_zero_bit.\n\nThis patch does not remove the i386-specific implementation,\nbut it does switch i386 to use the generic functions by setting\nGENERIC_FIND_FIRST_BIT\u003dy for X86_32.\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "64970b68d2b3ed32b964b0b30b1b98518fde388e",
      "tree": "7d8eb5ea3ab1a841afa0f7ae1c65e7be4a9ca690",
      "parents": [
        "60b6783a044a55273b637983f52965c2808a6b86"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Tue Mar 11 16:17:19 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86, generic: optimize find_next_(zero_)bit for small constant-size bitmaps\n\nThis moves an optimization for searching constant-sized small\nbitmaps form x86_64-specific to generic code.\n\nOn an i386 defconfig (the x86#testing one), the size of vmlinux hardly\nchanges with this applied. I have observed only four places where this\noptimization avoids a call into find_next_bit:\n\nIn the functions return_unused_surplus_pages, alloc_fresh_huge_page,\nand adjust_pool_surplus, this patch avoids a call for a 1-bit bitmap.\nIn __next_cpu a call is avoided for a 32-bit bitmap. That\u0027s it.\n\nOn x86_64, 52 locations are optimized with a minimal increase in\ncode size:\n\nCurrent #testing defconfig:\n\t146 x bsf, 27 x find_next_*bit\n   text    data     bss     dec     hex filename\n   5392637  846592  724424 6963653  6a41c5 vmlinux\n\nAfter removing the x86_64 specific optimization for find_next_*bit:\n\t94 x bsf, 79 x find_next_*bit\n   text    data     bss     dec     hex filename\n   5392358  846592  724424 6963374  6a40ae vmlinux\n\nAfter this patch (making the optimization generic):\n\t146 x bsf, 27 x find_next_*bit\n   text    data     bss     dec     hex filename\n   5392396  846592  724424 6963412  6a40d4 vmlinux\n\n[ tglx@linutronix.de: build fixes ]\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6fd92b63d0626a8fe7eb8e2e50d19ecaa18cb412",
      "tree": "840f6cf998c251cdfcae37a03f34b34ac5bea3a5",
      "parents": [
        "18e413f7193ed2f6991d959863f46330813aa242"
      ],
      "author": {
        "name": "Alexander van Heukelum",
        "email": "heukelum@mailshack.com",
        "time": "Sun Mar 09 21:01:04 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "x86: change x86 to use generic find_next_bit\n\nThe versions with inline assembly are in fact slower on the machines I\ntested them on (in userspace) (Athlon XP 2800+, p4-like Xeon 2.8GHz, AMD\nOpteron 270). The i386-version needed a fix similar to 06024f21 to avoid\ncrashing the benchmark.\n\nBenchmark using: gcc -fomit-frame-pointer -Os. For each bitmap size\n1...512, for each possible bitmap with one bit set, for each possible\noffset: find the position of the first bit starting at offset. If you\nfollow ;). Times include setup of the bitmap and checking of the\nresults.\n\n\t\tAthlon\t\tXeon\t\tOpteron 32/64bit\nx86-specific:\t0m3.692s\t0m2.820s\t0m3.196s / 0m2.480s\ngeneric:\t0m2.622s\t0m1.662s\t0m2.100s / 0m1.572s\n\nIf the bitmap size is not a multiple of BITS_PER_LONG, and no set\n(cleared) bit is found, find_next_bit (find_next_zero_bit) returns a\nvalue outside of the range [0, size]. The generic version always returns\nexactly size. The generic version also uses unsigned long everywhere,\nwhile the x86 versions use a mishmash of int, unsigned (int), long and\nunsigned long.\n\nUsing the generic version does give a slightly bigger kernel, though.\n\ndefconfig:\t   text    data     bss     dec     hex filename\nx86-specific:\t4738555  481232  626688 5846475  5935cb vmlinux (32 bit)\ngeneric:\t4738621  481232  626688 5846541  59360d vmlinux (32 bit)\nx86-specific:\t5392395  846568  724424 6963387  6a40bb vmlinux (64 bit)\ngeneric:\t5392458  846568  724424 6963450  6a40fa vmlinux (64 bit)\n\nSigned-off-by: Alexander van Heukelum \u003cheukelum@fastmail.fm\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "35bb5b1e0e84cfa1a8906f7e6a77f391ff315791",
      "tree": "fd3fa4e426bd11df3496141d8a251a783bce5f8d",
      "parents": [
        "80ff26241623875636674a31c0540a78c0fb5433"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Feb 22 15:15:03 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@uranus.ravnborg.org",
        "time": "Fri Apr 25 20:23:47 2008 +0200"
      },
      "message": "Add option to enable -Wframe-larger-than\u003d on gcc 4.4\n\nAdd option to enable -Wframe-larger-than\u003d on gcc 4.4\n\ngcc mainline (upcoming 4.4) added a new -Wframe-larger-than\u003d...\noption to warn at build time about too large stack frames. Add a config\noption to enable this warning, since this very useful for the kernel.\n\nI choose (somewhat arbitarily) 2048 as default warning threshold for 64bit\nand 1024 as default for 32bit architectures.  With some research and\nfixing all the code for smaller values these defaults should be probably\nlowered.\n\nWith the default allyesconfigs have some new warnings, but I think\nthat is all code that should be just fixed.\n\nAt some point (when gcc 4.4 is released and widely used) this should\nobsolete make checkstack\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "7347aefbccb47ce2d076d8ac7dff2cdd1435974c",
      "tree": "1099122c0fd687ada9a9d0d20949a6df58a2c971",
      "parents": [
        "807501475fce0ebe68baedf87f202c3e4ee0d12c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 23 23:30:59 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 23 23:30:59 2008 -0700"
      },
      "message": "[LMB]: Fix lmb allocation regression.\n\nChangeset d9024df02ffe74d723d97d552f86de3b34beb8cc (\"[LMB] Restructure\nallocation loops to avoid unsigned underflow\") removed the alignment\nof the \u0027size\u0027 argument to call lmb_add_region() done by __lmb_alloc_base().\n\nIn doing so it reintroduced the bug fixed by changeset\neea89e13a9c61d3928223d2f9bf2295e22e0efb6 (\"[LMB]: Fix bug in\n__lmb_alloc_base().\").\n\nThis puts it back.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a64388d83f6ef08dfff405a9d122e3dbcb6bf38",
      "tree": "a77532ce4d6d56be6c6c7f405cd901a0184250fb",
      "parents": [
        "e80ab411e589e00550e2e6e5a6a02d59cc730357",
        "14b3ca4022f050f8622ed282b734ddf445464583"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:50:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:50:49 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (202 commits)\n  [POWERPC] Fix compile breakage for 64-bit UP configs\n  [POWERPC] Define copy_siginfo_from_user32\n  [POWERPC] Add compat handler for PTRACE_GETSIGINFO\n  [POWERPC] i2c: Fix build breakage introduced by OF helpers\n  [POWERPC] Optimize fls64() on 64-bit processors\n  [POWERPC] irqtrace support for 64-bit powerpc\n  [POWERPC] Stacktrace support for lockdep\n  [POWERPC] Move stackframe definitions to common header\n  [POWERPC] Fix device-tree locking vs. interrupts\n  [POWERPC] Make pci_bus_to_host()\u0027s struct pci_bus * argument const\n  [POWERPC] Remove unused __max_memory variable\n  [POWERPC] Simplify xics direct/lpar irq_host setup\n  [POWERPC] Use pseries_setup_i8259_cascade() in pseries_mpic_init_IRQ()\n  [POWERPC] Turn xics_setup_8259_cascade() into a generic pseries_setup_i8259_cascade()\n  [POWERPC] Move xics_setup_8259_cascade() into platforms/pseries/setup.c\n  [POWERPC] Use asm-generic/bitops/find.h in bitops.h\n  [POWERPC] 83xx: mpc8315 - fix USB UTMI Host setup\n  [POWERPC] 85xx: Fix the size of qe muram for MPC8568E\n  [POWERPC] 86xx: mpc86xx_hpcn - Temporarily accept old dts node identifier.\n  [POWERPC] 86xx: mark functions static, other minor cleanups\n  ...\n"
    },
    {
      "commit": "e80ab411e589e00550e2e6e5a6a02d59cc730357",
      "tree": "870225ff7b5b8d03e82a996963213a4bb9cce248",
      "parents": [
        "529a41e36673b518c9e091f3a8d932b6b9e3c461",
        "ee959b00c335d7780136c5abda37809191fe52c3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:49:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:49:58 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6: (36 commits)\n  SCSI: convert struct class_device to struct device\n  DRM: remove unused dev_class\n  IB: rename \"dev\" to \"srp_dev\" in srp_host structure\n  IB: convert struct class_device to struct device\n  memstick: convert struct class_device to struct device\n  driver core: replace remaining __FUNCTION__ occurrences\n  sysfs: refill attribute buffer when reading from offset 0\n  PM: Remove destroy_suspended_device()\n  Firmware: add iSCSI iBFT Support\n  PM: Remove legacy PM (fix)\n  Kobject: Replace list_for_each() with list_for_each_entry().\n  SYSFS: Explicitly include required header file slab.h.\n  Driver core: make device_is_registered() work for class devices\n  PM: Convert wakeup flag accessors to inline functions\n  PM: Make wakeup flags available whenever CONFIG_PM is set\n  PM: Fix misuse of wakeup flag accessors in serial core\n  Driver core: Call device_pm_add() after bus_add_device() in device_add()\n  PM: Handle device registrations during suspend/resume\n  block: send disk \"change\" event for rescan_partitions()\n  sysdev: detect multiple driver registrations\n  ...\n\nFixed trivial conflict in include/linux/memory.h due to semaphore header\nfile change (made irrelevant by the change to mutex).\n"
    },
    {
      "commit": "429f731dea577bdd43693940cdca524135287e6a",
      "tree": "932337b7d23dd736612c6b6e6601c50bc24cfc5f",
      "parents": [
        "85b375a613085b78531ec86369a51c2f3b922f95",
        "d2f5e80862d33a7746a40569840248a592dbc395"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:41:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:41:27 2008 -0700"
      },
      "message": "Merge branch \u0027semaphore\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc\n\n* \u0027semaphore\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc:\n  Deprecate the asm/semaphore.h files in feature-removal-schedule.\n  Convert asm/semaphore.h users to linux/semaphore.h\n  security: Remove unnecessary inclusions of asm/semaphore.h\n  lib: Remove unnecessary inclusions of asm/semaphore.h\n  kernel: Remove unnecessary inclusions of asm/semaphore.h\n  include: Remove unnecessary inclusions of asm/semaphore.h\n  fs: Remove unnecessary inclusions of asm/semaphore.h\n  drivers: Remove unnecessary inclusions of asm/semaphore.h\n  net: Remove unnecessary inclusions of asm/semaphore.h\n  arch: Remove unnecessary inclusions of asm/semaphore.h\n"
    },
    {
      "commit": "ec965350bb98bd291eb34f6ecddfdcfc36da1e6e",
      "tree": "983bcaf33ed00b48a86f7f8790cc460cf15dd252",
      "parents": [
        "5f033bb9bc5cb3bb37a79e3ef131f50ecdcb72b0",
        "486fdae21458bd9f4e125099bb3c38a4064e450e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:40:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 15:40:24 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel: (62 commits)\n  sched: build fix\n  sched: better rt-group documentation\n  sched: features fix\n  sched: /debug/sched_features\n  sched: add SCHED_FEAT_DEADLINE\n  sched: debug: show a weight tree\n  sched: fair: weight calculations\n  sched: fair-group: de-couple load-balancing from the rb-trees\n  sched: fair-group scheduling vs latency\n  sched: rt-group: optimize dequeue_rt_stack\n  sched: debug: add some debug code to handle the full hierarchy\n  sched: fair-group: SMP-nice for group scheduling\n  sched, cpuset: customize sched domains, core\n  sched, cpuset: customize sched domains, docs\n  sched: prepatory code movement\n  sched: rt: multi level group constraints\n  sched: task_group hierarchy\n  sched: fix the task_group hierarchy for UID grouping\n  sched: allow the group scheduler to have multiple levels\n  sched: mix tasks and groups\n  ...\n"
    },
    {
      "commit": "c6a2a3dc26da72e431c293d02549593f9c041f63",
      "tree": "45ea5dcf2c8ae52f99507e941df3aa685fa70356",
      "parents": [
        "c6f87733823d69a8f12e391688ceeb1ff4922530"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Thu Mar 27 01:13:34 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Apr 19 19:10:27 2008 -0700"
      },
      "message": "Kobject: Replace list_for_each() with list_for_each_entry().\n\nUse the more concise list_for_each_entry(), which allows for the\ndeletion of the to_kobj() routine at the same time.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c1ebdae514a356c71c09035f5141d94aab5e8fe4",
      "tree": "28a3a22b01e7b28b0e247a073711923169ddd528",
      "parents": [
        "3925e6fc1f774048404fdd910b0345b06c699eb4"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Feb 26 09:36:38 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Apr 19 19:10:17 2008 -0700"
      },
      "message": "kobject: catch kobjects that are not initialized\n\nAdd warnings to kobject_put() to catch kobjects that are cleaned up but\nwere never initialized to begin with.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "30ca60c15a725f655e5d3f14e0238a066bc5aeb7",
      "tree": "96d36a2cf12e7a964ce4cd0c49d30b2d40f94b52",
      "parents": [
        "9f0e738f492522a2f70ad9a2a0287e4e966c633a"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Tue Mar 25 15:06:55 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 19 19:44:58 2008 +0200"
      },
      "message": "cpumask: add cpumask_scnprintf_len function\n\nAdd a new function cpumask_scnprintf_len() to return the number of\ncharacters needed to display \"len\" cpumask bits.  The current method\nof allocating NR_CPUS bytes is incorrect as what\u0027s really needed is\n9 characters per 32-bit word of cpumask bits (8 hex digits plus the\nseperator [\u0027,\u0027] or the terminating NULL.)  This function provides the\ncaller the means to allocate the correct string length.\n\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "ad775f5a8faa5845377f093ca11caf577404add9"
}
