)]}'
{
  "log": [
    {
      "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"
    },
    {
      "commit": "ad775f5a8faa5845377f093ca11caf577404add9",
      "tree": "f124ff1038672b8d2ef004d75c844f740d8fe52b",
      "parents": [
        "2e4b7fcd926006531935a4c79a5e9349fe51125b"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Fri Feb 15 14:38:01 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Apr 19 00:29:28 2008 -0400"
      },
      "message": "[PATCH] r/o bind mounts: debugging for missed calls\n\nThere have been a few oopses caused by \u0027struct file\u0027s with NULL f_vfsmnts.\nThere was also a set of potentially missed mnt_want_write()s from\ndentry_open() calls.\n\nThis patch provides a very simple debugging framework to catch these kinds of\nbugs.  It will WARN_ON() them, but should stop us from having any oopses or\nmnt_writer count imbalances.\n\nI\u0027m quite convinced that this is a good thing because it found bugs in the\nstuff I was working on as soon as I wrote it.\n\n[hch: made it conditional on a debug option.\n      But it\u0027s still a little bit too ugly]\n\n[hch: merged forced remount r/o fix from Dave and akpm\u0027s fix for the fix]\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nAcked-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6188e10d38b8d7244ee7776d5f1f88c837b4b93f",
      "tree": "6675e02c47fb684a613e10513816b5dcc5de28a9",
      "parents": [
        "d7b1acd3b524b39f418e463e836b48ac041954d6"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Apr 18 22:21:05 2008 -0400"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:22:54 2008 -0400"
      },
      "message": "Convert asm/semaphore.h users to linux/semaphore.h\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "f42b38009e1dbd4509a865e5ea0e91a1722c979d",
      "tree": "8b3d998dc6eef293f81ee358df109bfdb3a8e1fa",
      "parents": [
        "a6550207538619bc9b90bac2e1d5e54902a432ad"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Feb 26 10:48:12 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:17:17 2008 -0400"
      },
      "message": "lib: Remove unnecessary inclusions of asm/semaphore.h\n\nreed_solomon doesn\u0027t use any of the functionality promised by\nasm/semaphore.h.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "334d094504c2fe1c44211ecb49146ae6bca8c321",
      "tree": "d3c0f68e4b9f8e3d2ccc39e7dfe5de0534a5fad9",
      "parents": [
        "d1a4be630fb068f251d64b62919f143c49ca8057",
        "d1643d24c61b725bef399cc1cf2944b4c9c23177"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 18:02:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 18:02:35 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.26\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.26: (1090 commits)\n  [NET]: Fix and allocate less memory for -\u003epriv\u0027less netdevices\n  [IPV6]: Fix dangling references on error in fib6_add().\n  [NETLABEL]: Fix NULL deref in netlbl_unlabel_staticlist_gen() if ifindex not found\n  [PKT_SCHED]: Fix datalen check in tcf_simp_init().\n  [INET]: Uninline the __inet_inherit_port call.\n  [INET]: Drop the inet_inherit_port() call.\n  SCTP: Initialize partial_bytes_acked to 0, when all of the data is acked.\n  [netdrvr] forcedeth: internal simplifications; changelog removal\n  phylib: factor out get_phy_id from within get_phy_device\n  PHY: add BCM5464 support to broadcom PHY driver\n  cxgb3: Fix __must_check warning with dev_dbg.\n  tc35815: Statistics cleanup\n  natsemi: fix MMIO for PPC 44x platforms\n  [TIPC]: Cleanup of TIPC reference table code\n  [TIPC]: Optimized initialization of TIPC reference table\n  [TIPC]: Remove inlining of reference table locking routines\n  e1000: convert uint16_t style integers to u16\n  ixgb: convert uint16_t style integers to u16\n  sb1000.c: make const arrays static\n  sb1000.c: stop inlining largish static functions\n  ...\n"
    },
    {
      "commit": "2cca775baecbfede2fec20c99add709232311fe7",
      "tree": "b0eefe80881d263ba7976174144ae4e9cf238425",
      "parents": [
        "eddeb0e2d863e3941d8768e70cb50c6120e61fa0",
        "94795b61e84994a3b058f92d041d1fb3d869c7d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 11:25:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 11:25:31 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: (137 commits)\n  [SCSI] iscsi: bidi support for iscsi_tcp\n  [SCSI] iscsi: bidi support at the generic libiscsi level\n  [SCSI] iscsi: extended cdb support\n  [SCSI] zfcp: Fix error handling for blocked unit for send FCP command\n  [SCSI] zfcp: Remove zfcp_erp_wait from slave destory handler to fix deadlock\n  [SCSI] zfcp: fix 31 bit compile warnings\n  [SCSI] bsg: no need to set BSG_F_BLOCK bit in bsg_complete_all_commands\n  [SCSI] bsg: remove minor in struct bsg_device\n  [SCSI] bsg: use better helper list functions\n  [SCSI] bsg: replace kobject_get with blk_get_queue\n  [SCSI] bsg: takes a ref to struct device in fops-\u003eopen\n  [SCSI] qla1280: remove version check\n  [SCSI] libsas: fix endianness bug in sas_ata\n  [SCSI] zfcp: fix compiler warning caused by poking inside new semaphore (linux-next)\n  [SCSI] aacraid: Do not describe check_reset parameter with its value\n  [SCSI] aacraid: Fix down_interruptible() to check the return value\n  [SCSI] sun3_scsi_vme: add MODULE_LICENSE\n  [SCSI] st: rename flush_write_buffer()\n  [SCSI] tgt: use KMEM_CACHE macro\n  [SCSI] initio: fix big endian problems for auto request sense\n  ...\n"
    },
    {
      "commit": "eddeb0e2d863e3941d8768e70cb50c6120e61fa0",
      "tree": "e30f2b6654e6eb397f9d7fb23a08d717cc19b12d",
      "parents": [
        "855d854a33fca71cf68bad258bd5e66e5b265d10",
        "db8be076cad4b843aa743ef462c75022cddd9c63"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 11:24:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 11:24:29 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (43 commits)\n  firewire: cleanups\n  firewire: fix synchronization of gap counts\n  firewire: wait until PHY configuration packet was transmitted (fix bus reset loop)\n  firewire: remove unused struct member\n  firewire: use bitwise and to get reg in handle_registers\n  firewire: replace more hex values with defined csr constants\n  firewire: reread config ROM when device reset the bus\n  firewire: replace static ROM cache by allocated cache\n  firewire: fw-ohci: work around generation bug in TI controllers (fix AV/C and more)\n  firewire: fw-ohci: extend logging of bus generations and node ID\n  firewire: fw-ohci: conditionally log busReset interrupts\n  firewire: fw-ohci: don\u0027t append to AT context when it\u0027s not active\n  firewire: fw-ohci: log regAccessFail events\n  firewire: fw-ohci: make sure HCControl register LPS bit is set\n  firewire: fw-ohci: missing PPC PMac feature calls in failure path\n  firewire: fw-ohci: untangle a mixed unsigned/signed expression\n  firewire: debug interrupt events\n  firewire: fw-ohci: catch self_id_count \u003d\u003d 0\n  firewire: fw-ohci: add self ID error check\n  firewire: fw-ohci: refactor probe, remove, suspend, resume\n  ...\n"
    },
    {
      "commit": "080de8c2c57e3199eee837fe8b6d35a43679f8c1",
      "tree": "b376f9ce74db61393ef1cb62e9663c71f0ba45b9",
      "parents": [
        "17cff9ff871bb5081cade4f99a9e9382b9f1c01c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Feb 28 20:54:43 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Apr 18 17:55:33 2008 +0200"
      },
      "message": "firewire: fw-ohci: add option for remote debugging\n\nThis way firewire-ohci can be used for remote debugging like ohci1394.\nVersion with amendment from Fri, 11 Apr 2008 00:08:08 +0200.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Bernhard Kaindl \u003cbk@suse.de\u003e\n"
    },
    {
      "commit": "9732b6112343df2872518ec6701c8ef729310a05",
      "tree": "9e3dcc461845038da4730c2062eee546348ca445",
      "parents": [
        "9e9abecfc0ff3a9ad2ead954b37bbfcb863c775e",
        "1a9a3e76dde191f82f7a8a66059dcbb4a9f63ff3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 08:37:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 08:37:01 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-kgdb\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-kgdb:\n  kgdb: always use icache flush for sw breakpoints\n  kgdb: fix SMP NMI kgdb_handle_exception exit race\n  kgdb: documentation fixes\n  kgdb: allow static kgdbts boot configuration\n  kgdb: add documentation\n  kgdb: Kconfig fix\n  kgdb: add kgdb internal test suite\n  kgdb: fix several kgdb regressions\n  kgdb: kgdboc pl011 I/O module\n  kgdb: fix optional arch functions and probe_kernel_*\n  kgdb: add x86 HW breakpoints\n  kgdb: print breakpoint removed on exception\n  kgdb: clocksource watchdog\n  kgdb: fix NMI hangs\n  kgdb: fix kgdboc dynamic module configuration\n  kgdb: document parameters\n  x86: kgdb support\n  consoles: polling support, kgdboc\n  kgdb: core\n  uaccess: add probe_kernel_write()\n"
    },
    {
      "commit": "d7bb545d86825e635cab33a1dd81ca0ad7b92887",
      "tree": "34da4139ef06ceab6549aea3906639c7413978c8",
      "parents": [
        "75e98b34155264d943aa53edce465e87f3ccbadf",
        "2342e51ba2b52a7f5b78227e6faa4603ed3632a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 08:25:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 18 08:25:29 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  Remove DEBUG_SEMAPHORE from Kconfig\n  Improve semaphore documentation\n  Simplify semaphore implementation\n  Add down_timeout and change ACPI to use it\n  Introduce down_killable()\n  Generic semaphore implementation\n  Add semaphore.h to kernel_lock.c\n  Fix quota.h includes\n"
    },
    {
      "commit": "1e42198609d73ed1a9adcba2af275c24c2678420",
      "tree": "32fd4d9073bfc0f3909af8f9fb4bcff38951d01a",
      "parents": [
        "794eb6bf20ebf992c040ea831cd3a9c64b0c1f7a",
        "4b119e21d0c66c22e8ca03df05d9de623d0eb50f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:56:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 17 23:56:30 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "974460c5bfd9f6c38aa3dda189a63f9fc351035f",
      "tree": "fbfe9c79956e5fb31ff3da72b628d72d31d5f453",
      "parents": [
        "e3e2aaf7dc0d82a055e084cfd48b9257c0c66b68"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 20 13:43:44 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:43 2008 +0200"
      },
      "message": "kgdb: allow static kgdbts boot configuration\n\nThis patch adds in the ability to compile the kgdb internal test\nstring into the kernel so as to run the tests at boot without changing\nthe kernel boot arguments.  This patch also changes all the error\npaths to invoke WARN_ON(1) which will emit the line number of the file\nand dump the kernel stack when an error occurs.\n\nYou can disable the tests in a kernel that is built this way\nusing \"kgdbts\u003d\"\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e8d31c204e36e019b9134f2a11926cac0fcf9b19",
      "tree": "2720c1deadb6e57981254ec4120624b8a24dfdcf",
      "parents": [
        "737a460f21febe551ff1d2299b63bae9b154078f"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Mar 07 16:34:17 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:42 2008 +0200"
      },
      "message": "kgdb: add kgdb internal test suite\n\nThis patch adds regression tests for testing the kgdb core and arch\nspecific implementation.\n\nThe kgdb test suite is designed to be built into the kernel and not as\na module because it uses a number of low level kernel and kgdb\nprimitives which should not be exported externally.\n\nThe kgdb test suite is designed as a KGDB I/O module which\nsimulates the communications that a debugger would have with kgdb.\nThe tests are broken up in to a line by line and referenced here as\na \"get\" which is kgdb requesting input and \"put\" which is kgdb\nsending a response.\n\nThe kgdb suite can be invoked from the kernel command line\narguments system or executed dynamically at run time.  The test\nsuite uses the variable \"kgdbts\" to obtain the information about\nwhich tests to run and to configure the verbosity level.  The\nfollowing are the various characters you can use with the kgdbts\u003d\nline:\n\nWhen using the \"kgdbts\u003d\" you only choose one of the following core\ntest types:\nA \u003d Run all the core tests silently\nV1 \u003d Run all the core tests with minimal output\nV2 \u003d Run all the core tests in debug mode\n\nYou can also specify optional tests:\nN## \u003d Go to sleep with interrupts of for ## seconds\n      to test the HW NMI watchdog\nF## \u003d Break at do_fork for ## iterations\nS## \u003d Break at sys_open for ## iterations\n\nNOTE: that the do_fork and sys_open tests are mutually exclusive.\n\nTo invoke the kgdb test suite from boot you use a kernel start\nargument as follows:\n\tkgdbts\u003dV1 kgdbwait\nOr if you wanted to perform the NMI test for 6 seconds and do_fork\ntest for 100 forks, you could use:\n\tkgdbts\u003dV1N6F100 kgdbwait\n\nThe test suite can also be invoked at run time with:\necho kgdbts\u003dV1N6F100 \u003e /sys/module/kgdbts/parameters/kgdbts\nOr as another example:\necho kgdbts\u003dV2 \u003e /sys/module/kgdbts/parameters/kgdbts\n\nWhen developing a new kgdb arch specific implementation or\nusing these tests for the purpose of regression testing,\nseveral invocations are required.\n\n1) Boot with the test suite enabled by using the kernel arguments\n      \"kgdbts\u003dV1F100 kgdbwait\"\n   ## If kgdb arch specific implementation has NMI use\n      \"kgdbts\u003dV1N6F100\n\n2) After the system boot run the basic test.\necho kgdbts\u003dV1 \u003e /sys/module/kgdbts/parameters/kgdbts\n\n3) Run the concurrency tests.  It is best to use n+1\n   while loops where n is the number of cpus you have\n   in your system.  The example below uses only two\n   loops.\n\n## This tests break points on sys_open\nwhile [ 1 ] ; do find / \u003e /dev/null 2\u003e\u00261 ; done \u0026\nwhile [ 1 ] ; do find / \u003e /dev/null 2\u003e\u00261 ; done \u0026\necho kgdbts\u003dV1S10000 \u003e /sys/module/kgdbts/parameters/kgdbts\nfg # and hit control-c\nfg # and hit control-c\n## This tests break points on do_fork\nwhile [ 1 ] ; do date \u003e /dev/null ; done \u0026\nwhile [ 1 ] ; do date \u003e /dev/null ; done \u0026\necho kgdbts\u003dV1F1000 \u003e /sys/module/kgdbts/parameters/kgdbts\nfg # and hit control-c\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc7d552705215ac50a0617fcf51bb9c736255b8e",
      "tree": "3ca376bdf4e6996edd9e2dabd569a791f050dae8",
      "parents": [
        "c33fa9f5609e918824446ef9a75319d4a802f1f4"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Apr 17 20:05:37 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:37 2008 +0200"
      },
      "message": "kgdb: core\n\nkgdb core code. Handles the protocol and the arch details.\n\n[ mingo@elte.hu: heavily modified, simplified and cleaned up. ]\n[ xemul@openvz.org: use find_task_by_pid_ns ]\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "2342e51ba2b52a7f5b78227e6faa4603ed3632a0",
      "tree": "3976ca80e2d452c4867fbff4278241f6c68cfa90",
      "parents": [
        "714493cd5468f42ca3c4f730a9c17c203abd5059"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Apr 17 10:53:01 2008 -0400"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 17 10:53:01 2008 -0400"
      },
      "message": "Remove DEBUG_SEMAPHORE from Kconfig\n\nAlpha and FRV mutexes had an option to print lots of debugging messages\nin their semaphore implementation.  This feature has not been carried\nover to the generic semaphores, so remove the stale Kconfig option.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "64ac24e738823161693bf791f87adc802cf529ff",
      "tree": "19c0b0cf314d4394ca580c05b86cdf874ce0a167",
      "parents": [
        "e48b3deee475134585eed03e7afebe4bf9e0dba9"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Mar 07 21:55:58 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 17 10:42:34 2008 -0400"
      },
      "message": "Generic semaphore implementation\n\nSemaphores are no longer performance-critical, so a generic C\nimplementation is better for maintainability, debuggability and\nextensibility.  Thanks to Peter Zijlstra for fixing the lockdep\nwarning.  Thanks to Harvey Harrison for pointing out that the\nunlikely() was unnecessary.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e48b3deee475134585eed03e7afebe4bf9e0dba9",
      "tree": "8a026147f9f50baf8cf15c79b84e502ab769088b",
      "parents": [
        "8b91de2e58318d1168bc13d164478c1a7217a63a"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Feb 26 18:34:25 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 17 10:42:27 2008 -0400"
      },
      "message": "Add semaphore.h to kernel_lock.c\n\nkernel_lock.c uses DECLARE_MUTEX, up() and down() without explicitly\nincluding asm/semaphore.h.  This is fragile and leaves it vulnerable\nto breakage during header reorganisations.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "d9024df02ffe74d723d97d552f86de3b34beb8cc",
      "tree": "6e753db66f4404526d6c22a41a3a050dc156db72",
      "parents": [
        "300613e523d53f346f8ff0256921e289da39ed7b"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 12 15:20:59 2008 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 15 21:22:17 2008 +1000"
      },
      "message": "[LMB] Restructure allocation loops to avoid unsigned underflow\n\nThere is a potential bug in __lmb_alloc_base where we subtract `size\u0027\nfrom the base address of a reserved region without checking whether\nthe subtraction could wrap around and produce a very large unsigned\nvalue.  In fact it probably isn\u0027t possible to hit the bug in practice\nsince it would only occur in the situation where we can\u0027t satisfy the\nallocation request and there is a reserved region starting at 0.\n\nThis fixes the potential bug by breaking out of the loop when we get\nto the point where the base of the reserved region is less than the\nsize requested.  This also restructures the loop to be a bit easier to\nfollow.\n\nThe same logic got copied into lmb_alloc_nid_unreserved, so this makes\na similar change there.  Here the bug is more likely to be hit because\nthe outer loop  (in lmb_alloc_nid) goes through the memory regions in\nincreasing order rather than decreasing order as __lmb_alloc_base\ndoes, and we are therefore more likely to hit the case where we are\ntesting against a reserved region with a base address of 0.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "300613e523d53f346f8ff0256921e289da39ed7b",
      "tree": "9bbaa63e3abc732d584f39db1ff71a9fd2c01a36",
      "parents": [
        "c50f68c8aea421267ba7995b1c485c281b28add6"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sat Apr 12 15:20:59 2008 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 15 21:22:17 2008 +1000"
      },
      "message": "[LMB] Fix some whitespace and other formatting issues, use pr_debug\n\nThis makes no semantic changes.  It fixes the whitespace and formatting\na bit, gets rid of a local DBG macro and uses the equivalent pr_debug\ninstead, and restructures one while loop that had a function call and\nassignment in the condition to be a bit more readable.  Some comments\nabout functions being called with relocation disabled were also removed\nas they would just be confusing to most readers now that the code is\nin lib/.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "c50f68c8aea421267ba7995b1c485c281b28add6",
      "tree": "38d72f3d6c9e43a4653cc7e330af0aa0dfca3dd5",
      "parents": [
        "4b1d99b37f608b8cc03550033b16212ca9362efd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 24 20:50:48 2008 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Apr 15 21:22:17 2008 +1000"
      },
      "message": "[LMB] Add lmb_alloc_nid()\n\nA variant of lmb_alloc() that tries to allocate memory on a specified\nNUMA node \u0027nid\u0027 but falls back to normal lmb_alloc() if that fails.\n\nThe caller provides a \u0027nid_range\u0027 function pointer which assists the\nallocator.  It is given args \u0027start\u0027, \u0027end\u0027, and pointer to integer\n\u0027this_nid\u0027.\n\nIt places at \u0027this_nid\u0027 the NUMA node id that corresponds to \u0027start\u0027,\nand returns the end address within \u0027start\u0027 to \u0027end\u0027 at which memory\nassosciated with \u0027nid\u0027 ends.\n\nThis callback allows a platform to use lmb_alloc_nid() in just\nabout any context, even ones in which early_pfn_to_nid() might\nnot be working yet.\n\nThis function will be used by the NUMA setup code on sparc64, and also\nit can be used by powerpc, replacing it\u0027s hand crafted\n\"careful_allocation()\" function in arch/powerpc/mm/numa.c\n\nIf x86 ever converts it\u0027s NUMA support over to using the LMB helpers,\nit can use this too as it has something entirely similar.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "5b06c853ad447636e31d105e95c48ae9abb6bfb5",
      "tree": "cf4d606b54659833a98a4b66c76ee3562bcd1062",
      "parents": [
        "4097d6017576a5e138f442f5e3c393ad00d10f58"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Apr 14 18:51:34 2008 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon Apr 14 18:51:34 2008 +0300"
      },
      "message": "slub: Deal with config variable dependencies\n\ncount_partial() is used by both slabinfo and the sysfs proc support. Move\nthe function directly before the beginning of the sysfs code so that it can\nbe easily found. Rework the preprocessor conditional to take into account\nthat slub sysfs support depends on CONFIG_SYSFS *and* CONFIG_SLUB_DEBUG.\n\nMake CONFIG_SLUB_STATS depend on CONFIG_SLUB_DEBUG and CONFIG_SYSFS. There\nis no point of keeping statistics if no one can restrive them.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "ac7c5353b189e10cf5dd27399f64f7b013abffc6",
      "tree": "8222d92b774c256d6ec4399c716d76b3f05ddc4b",
      "parents": [
        "a8f75ea70c58546205fb7673be41455b9da5d9a7",
        "120dd64cacd4fb796bca0acba3665553f1d9ecaa"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Apr 14 21:11:02 2008 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Apr 14 21:11:02 2008 +1000"
      },
      "message": "Merge branch \u0027linux-2.6\u0027\n"
    },
    {
      "commit": "df39e8ba56a788733d369068c7319e04b1da3cd5",
      "tree": "1e9be853bdb455e341cdbf957656f342cfa2eb9e",
      "parents": [
        "f5572855ec492334d8c3ec0e0e86c31865d5cf07",
        "159d83363b629c91d020734207c1bc788b96af5a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 14 02:30:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/ehea/ehea_main.c\n\tdrivers/net/wireless/iwlwifi/Kconfig\n\tdrivers/net/wireless/rt2x00/rt61pci.c\n\tnet/ipv4/inet_timewait_sock.c\n\tnet/ipv6/raw.c\n\tnet/mac80211/ieee80211_sta.c\n"
    },
    {
      "commit": "a1e58bbdc969c3fe60addca7f2729779d22a83c1",
      "tree": "c8b94e446e4e4298be6c43d0fbff94ed6e60c030",
      "parents": [
        "f17520e1f19172057328e50ffed01a42534921e9"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu Apr 10 13:38:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 10 15:34:05 2008 -0700"
      },
      "message": "lzo: fix typo in decompressor\n\nShift of a LE value seems strange, probably meant to shift the cpu-order\nvariable as in the prvious section of the switch statement.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b1adaf65ba0398c9a1adc8f3a274533165a4df61",
      "tree": "70c6c5944eb978c6eff55eab1e1b1df7049477ec",
      "parents": [
        "78b4b05db57b04b3ed17dc71259bf1402c04abfa"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Mar 18 00:15:03 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 07 12:15:45 2008 -0500"
      },
      "message": "[SCSI] block: add sg buffer copy helper functions\n\nThis patch adds new three helper functions to copy data between an SG\nlist and a linear buffer.\n\n- sg_copy_from_buffer copies data from linear buffer to an SG list\n\n- sg_copy_to_buffer copies data from an SG list to a linear buffer\n\nWhen the APIs copy data from a linear buffer to an SG list,\nflush_kernel_dcache_page is called. It\u0027s not necessary for everyone\nbut it\u0027s a no-op on most architectures and in general the API is not\nused in performance critical path.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "3bb5da3837cc1aa17736b05139c9a22c3794851a",
      "tree": "c92d5684a866542b1cb20641607ac1643ce03a47",
      "parents": [
        "7feb49c82a74bc7c091b8ab2a3f96baa33d08ece",
        "9597362d354f8655ece324b01d0c640a0e99c077"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:33:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:33:42 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "61407f80f72970d52d4339f81c6c3cd03f4ca0f0",
      "tree": "2063040e6e16d5dcc1024c3aedee23195f38b1ba",
      "parents": [
        "84f59370c519449c70dcc813b050f5cbbf0098e7"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Apr 03 14:07:02 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 14:07:02 2008 -0700"
      },
      "message": "[NET]: srandom32 fixes for networking v2\n\n- Let it update the state of all CPUs. The network stack goes\ninto pains to feed the current IP addresses in, but it is not very\neffective if that is only done for some random CPU instead of all.\nSo change it to feed bits into all CPUs.  I decided to do that lockless \nbecause well somewhat random results are ok.\n\nv2: Drop rename so that this patch doesn\u0027t depend on x86 maintainers\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a4aa834a9165150252c5cd953faab4de29d51b87",
      "tree": "e96e20355057dfabd279b7b7c94fedeffed4e020",
      "parents": [
        "e1ec1b8ccdf0df6000faa8c2d985ca5f94157e5a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Apr 03 13:04:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 03 13:04:33 2008 -0700"
      },
      "message": "[NETNS]: Declare init_net even without CONFIG_NET defined.\n\nThis does not look good, but there is no other choice. The compilation\nwithout CONFIG_NET is broken and can not be fixed with ease.\n\nAfter that there is no need for the following commits:\n1567ca7eec7664b8be3b07755ac59dc1b1ec76cb\n3edf8fa5ccf10688a9280b5cbca8ed3947c42866\n2d38f9a4f8d2ebdc799f03eecf82345825495711\n\nRevert them.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a9edadbf790d72adf6ebed476cb5caf7743e7e4a",
      "tree": "168c9e70f2172e408514b643c2282a6c87744b24",
      "parents": [
        "eb08b6b973cb91311431c6eea3cc232b97152a84"
      ],
      "author": {
        "name": "Mark Lord",
        "email": "lkml@rtr.ca",
        "time": "Fri Mar 28 19:05:25 2008 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 30 14:55:49 2008 -0700"
      },
      "message": "fix uevent action-string regression\n\nMark Lord wrote:\n\u003e\n\u003e On boot, syslog is flooded with \"uevent: unsupported action-string;\" messages.\n..\n\u003e Mar 28 14:43:29 shrimp kernel: tty ptyqd: uevent: unsupported\n\u003e action-string; this will be ignored in a future kernel version\n\u003e Mar 28 14:43:29 shrimp kernel: tty ptyqe: uevent: unsupported\n\u003e action-string; this will be ignored in a future kernel version\n\u003e Mar 28 14:43:29 shrimp kernel: tty ptyqf: uevent: unsupported\n\u003e action-string; this will be ignored in a future kernel version\n\u003e Mar 28 14:43:29 shrimp kernel: tty ptyr0: uevent: unsupported\n\u003e action-string; this will be ignored in a future kernel version\n..\n\nThese messages are a regression compared with 2.6.24, which did not\nflood the syslog with them.\n\nThe actual underlying problem was introduced in 2.6.23, when somebody\nmade the string parsing no longer accept nul-terminated strings as a\nvalid input to store_uevent().\n\nEg.  \"add\\0\" was valid prior to 2.6.23, where the code regressed to\nrequire \"add\" without the \u0027\\0\u0027.\n\nThis patch fixes the 2.6.23 / 2.6.24 regressions, by having the code\nonce again tolerate the trailing \u0027\\0\u0027, if present.\n\nAccording to GregKH, this mainly affects older Ubuntu systems, such as\nthe one I have here that requires this fix.\n\nSigned-off-by: Mark Lord \u003cmlord@pobox.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "095d911201b0741e7f326d269a005dba55985acf",
      "tree": "7bb8001d8230214e790d1705b11c8f8afa6cc65e",
      "parents": [
        "bdcde3d71a67e97f25e851f3ca97c9bb5ef03e7f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Mar 28 16:39:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:39:58 2008 -0700"
      },
      "message": "[LIB]: Drop the pcounter itself.\n\nThe knock-out. The pcounter abstraction is not used any longer in the\nkernel.\n\nNot sure whether this should go via netdev tree, but as far as I\nremember it was added via this one, and besides Eric thinks that\nAndrew shouldn\u0027t mind this.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2d38f9a4f8d2ebdc799f03eecf82345825495711",
      "tree": "66956fb35cf53e9d6c15a28248ab0434a8af7277",
      "parents": [
        "0e5f8be1388093edc324a78ebf241170b258eba3"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Thu Mar 27 14:26:30 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 27 14:26:30 2008 -0700"
      },
      "message": "[NETNS]: Do no include NET related headers if CONFIG_NET is not set.\n\nThis fix broken compilation for \u0027allnoconfig\u0027. This was introduced by\nIntroduced by commit 1218854afa6f659be90b748cf1bc7badee954a35 (\"[NET]\nNETNS: Omit seq_net_private-\u003enet without CONFIG_NET_NS.\")\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "54f53f2b94feb72622bec7a8563fc487d9f97720",
      "tree": "ab0c4e1dcadd25a00fa7a4febf41bc43b864cf73",
      "parents": [
        "f61fb8a52cdf8b9b6a6badde84aefe58cb35d315",
        "a4083c9271e0a697278e089f2c0b9a95363ada0a"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 26 08:44:18 2008 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 26 08:44:18 2008 +1100"
      },
      "message": "Merge branch \u0027linux-2.6\u0027\n"
    },
    {
      "commit": "b9e76a00749521f2b080fa8a4fb15f66538ab756",
      "tree": "814bd118b1a44b370b080d96cbe19763aebf9f69",
      "parents": [
        "92896bd9fd75b1c993b92874d339a8088bb75560"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 24 11:22:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 24 11:22:39 2008 -0700"
      },
      "message": "x86-32: Pass the full resource data to ioremap()\n\nIt appears that 64-bit PCI resources cannot possibly ever have worked on\nx86-32 even when the RESOURCES_64BIT config option was set, because any\ndriver that tried to [pci_]ioremap() the resource would have been unable\nto do so because the high 32 bits would have been silently dropped on\nthe floor by the ioremap() routines that only used \"unsigned long\".\n\nChange them to use \"resource_size_t\" instead, which properly encodes the\nwhole 64-bit resource data if RESOURCES_64BIT is enabled.\n\nAcked-by: H. Peter Anvin \u003chpa@kernel.org\u003e\nAcked-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "916fbfb7ae5f8c8f86399794d89e6d273df8826b",
      "tree": "0b3982923e2b4114b83f67cfca9b950004caef9c",
      "parents": [
        "233f112042d0b50170212dbff99c3b34b8773cd3"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Mar 12 15:26:34 2008 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Mar 17 08:26:44 2008 -0400"
      },
      "message": "devres: implement pcim_iomap_regions_request_all()\n\nSome drivers need to reserve all PCI BARs to prevent other drivers\nmisusing unoccupied BARs.  pcim_iomap_regions_request_all() requests\nall BARs and iomap specified BARs.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b15a3891c916f32a29832886a053a48be2741d4d",
      "tree": "59971b1f3b1961b7c13a170b1a3617431db03ac5",
      "parents": [
        "96e31022a1b6e7cb173cbb3dce1fde7ba548860a"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Thu Mar 13 09:13:30 2008 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 13 13:15:52 2008 -0700"
      },
      "message": "avoid endless loops in lib/swiotlb.c\n\nCommit 681cc5cd3efbeafca6386114070e0bfb5012e249 (\"iommu sg merging:\nswiotlb: respect the segment boundary limits\") introduced two\npossibilities for entering an endless loop in lib/swiotlb.c:\n\n - if max_slots is zero (possible if mask is ~0UL)\n - if the number of slots requested fits into a swiotlb segment, but is\n   too large for the part of a segment which remains after considering\n   offset_slots\n\nThis fixes them\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bed04a4413376265746053be2a9cfbfc80c98ec9",
      "tree": "8f582294a655f70496cd08aedeb86de31dbad140",
      "parents": [
        "e37c772e36a7943b2e0bd8f48312e78474c0df15",
        "c463be3520065ef8c05e3cbdf946c69604e91ceb"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Mar 13 15:26:33 2008 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Mar 13 15:26:33 2008 +1100"
      },
      "message": "Merge branch \u0027linux-2.6\u0027\n"
    },
    {
      "commit": "2c6f2db13a2428aa16f54f50232a589ddd5d7d01",
      "tree": "f12c2f6ce3c6a541f5192aa5a2da400024015fb7",
      "parents": [
        "12f981f9028da2402c236544c78b8378a278f830",
        "3634634edd49c115da931998b9540bcc17665b05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:37:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:37:35 2008 -0800"
      },
      "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:\n  debugfs: fix sparse warnings\n  Driver core: Fix cleanup when failing device_add().\n  driver core: Remove dpm_sysfs_remove() from error path of device_add()\n  PM: fix new mutex-locking bug in the PM core\n  PM: Do not acquire device semaphores upfront during suspend\n  kobject: properly initialize ksets\n  sysfs: CONFIG_SYSFS_DEPRECATED fix\n  driver core: fix up Kconfig text for CONFIG_SYSFS_DEPRECATED\n"
    },
    {
      "commit": "3715863aa142c4f4c5208f5f3e5e9bac06006d2f",
      "tree": "cd93a86f90bfd8e9bef9cbcf40abde55acc26b80",
      "parents": [
        "7eb701dc7779794d46e02a7fa1380289cb730d46"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Mar 04 14:29:27 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:17 2008 -0800"
      },
      "message": "iommu: export iommu_is_span_boundary helper function\n\niommu_is_span_boundary is used internally in the IOMMU helper\n(lib/iommu-helper.c), a primitive function that judges whether a memory area\nspans LLD\u0027s segment boundary or not.\n\nIt\u0027s difficult to convert some IOMMUs to use the IOMMU helper but\niommu_is_span_boundary is still useful for them.  So this patch exports it.\n\nThis is needed for the parisc iommu fixes.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4573c488dd531c6e2d308ce8a7413c4a2646207",
      "tree": "2af19d9bb4472d77d057f2c5170f275cf5757765",
      "parents": [
        "d47846c5866b7d98a1173c86a39d810a06647329"
      ],
      "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": "Tue Mar 04 14:47:05 2008 -0800"
      },
      "message": "kobject: properly initialize ksets\n\nkset_initialize was calling kobject_init_internal() which didn\u0027t\ninitialize the kobject as well as kobject_init() was.  So have\nkobject_init() call kobject_init_internal() and move the logic to\ninitalize the kobject there.\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": "f8303dd3db57bd7ab2062985ad7a9e898a8ac423",
      "tree": "b92086100ed44c8647dba61a21e560923daa336a",
      "parents": [
        "bfa274e2436fc7ef72ef51c878083647f1cfd429",
        "74b20dad1c4cc0fd13ceca62fbab808919e1a7ea"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Feb 26 21:08:45 2008 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Feb 26 21:08:45 2008 +1100"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/lmb-2.6\n"
    },
    {
      "commit": "4f9d5f4a353440f2265781bfa641587964901861",
      "tree": "4e0ecda794f226859349b67c18a0a3dc43155f17",
      "parents": [
        "8ca3ed87db062201e1fa15b64a9214e193fc3a8a"
      ],
      "author": {
        "name": "Hoang-Nam Nguyen",
        "email": "hnguyen@linux.vnet.ibm.com",
        "time": "Sat Feb 23 15:23:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:14 2008 -0800"
      },
      "message": "lib/vsprintf.c: fix bug omitting minus sign of numbers (module_param)\n\nlib/vsprintf.c: Fix bug omitting minus sign of numbers (module_param)\n\nSigned-off-by: Hoang-Nam Nguyen \u003chnguyen@de.ibm.com\u003e\nCc: Yi Yang \u003cyi.y.yang@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": "fddd9cf82c9f9617d134ae878a8f6b116ebbd43d",
      "tree": "95a4f852d8ed8574c908d64be6cd0ca91167402a",
      "parents": [
        "c3be10f75757e681b34766b24264c83b5ba08041"
      ],
      "author": {
        "name": "Chris Snook",
        "email": "csnook@redhat.com",
        "time": "Sat Feb 23 15:23:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:13 2008 -0800"
      },
      "message": "make LKDTM depend on BLOCK\n\nMake LKDTM depend on BLOCK to prevent build failures with certain configs.\n\nSigned-off-by: Chris Snook \u003ccsnook@redhat.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74b20dad1c4cc0fd13ceca62fbab808919e1a7ea",
      "tree": "50c6d5e350030bbea5d6be159fbc3e6af92188e5",
      "parents": [
        "e5f270954364a4add74e8445b1db925ac534fcfb"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Tue Feb 19 21:28:18 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 19 21:28:18 2008 -0800"
      },
      "message": "[LMB]: Fix lmb_add_region if region should be added at the head\n\nWe introduced a bug in fixing lmb_add_region to handle an initial\nregion being non-zero.  Before that fix it was impossible to insert a\nregion at the head of the list since the first region always started\nat zero.\n\nNow that its possible for the first region to be non-zero we need to\ncheck to see if the new region should be added at the head and if so\nactually add it.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fa2144ba9a31d1d0dc9607508576c3850e0d95b1",
      "tree": "46f6acf211fd07b8593b8b17d294376fb77db2dc",
      "parents": [
        "cf87dcd14064e7660f2b11b35b9e4949e9812fd2"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Feb 15 13:53:11 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Feb 15 13:53:11 2008 +0100"
      },
      "message": "kbuild: explain why DEBUG_SECTION_MISMATCH is UNDEFINED\n\nWe started to see patches enabling this - so explain why\nit is disabled and the condition to enable it again.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "e5f270954364a4add74e8445b1db925ac534fcfb",
      "tree": "00c0f7de7c9a6e076d02f6824d5d201fae6d3805",
      "parents": [
        "27e6672bb9912d3e3a41cf88e6142d3ae5e534b3"
      ],
      "author": {
        "name": "Becky Bruce",
        "email": "becky.bruce@freescale.com",
        "time": "Wed Feb 13 16:58:39 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:58:39 2008 -0800"
      },
      "message": "[LMB]: Make lmb support large physical addressing\n\nConvert the lmb code to use u64 instead of unsigned long for physical\naddresses and sizes.  This is needed to support large amounts of RAM\non 32-bit systems that support 36-bit physical addressing.\n\nSigned-off-by: Becky Bruce \u003cbecky.bruce@freescale.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27e6672bb9912d3e3a41cf88e6142d3ae5e534b3",
      "tree": "f2c84845f8e2c43b0871322acc96295def395d51",
      "parents": [
        "eea89e13a9c61d3928223d2f9bf2295e22e0efb6"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@kernel.crashing.org",
        "time": "Wed Feb 13 16:58:11 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:58:11 2008 -0800"
      },
      "message": "[LMB]: Fix initial lmb add region with a non-zero base\n\nIf we add to an empty lmb region with a non-zero base we will not\ncoalesce the number of regions down to one.  This causes problems on\nppc32 for the memory region as its assumed to only have one region.\n\nWe can fix this be easily specially casing the initial add to just\nreplace the dummy region.\n\nSigned-off-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eea89e13a9c61d3928223d2f9bf2295e22e0efb6",
      "tree": "f6b2cc514071d276a287eb666333667b6ee67c4f",
      "parents": [
        "d9b2b2a277219d4812311d995054ce4f95067725"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:57:09 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:57:09 2008 -0800"
      },
      "message": "[LMB]: Fix bug in __lmb_alloc_base().\n\nWe need to check lmb_add_region() for errors, it can run out\nof regions etc.\n\nAlso, the size needs to be padded to the given alignment\nor else the lmb.reserved regions don\u0027t get expanded and\ninstead we get tons of holes and eventually run out of\nregions prematurely.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d9b2b2a277219d4812311d995054ce4f95067725",
      "tree": "63af21df6686dd2e867015fdf9f0cb798d3ca348",
      "parents": [
        "e760e716d47b48caf98da348368fd41b4a9b9e7e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:56:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 13 16:56:49 2008 -0800"
      },
      "message": "[LIB]: Make PowerPC LMB code generic so sparc64 can use it too.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "9b706aee7d92d6ac3002547aea12e3eaa0a750ae",
      "tree": "b1e945b7d6eccd4ef44d80e1f3a4596a4a629c78",
      "parents": [
        "b6fbb669c8ef3a112121697ca901c290ccd35eb2"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Sat Feb 09 23:24:09 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 09 23:24:09 2008 +0100"
      },
      "message": "x86: trivial printk optimizations\n\nIn arch/x86/boot/printf.c gets rid of unused tail of digits: const char\n*digits \u003d \"0123456789abcdefghijklmnopqrstuvwxyz\"; (we are using 0-9a-f\nonly)\n\nUses smaller/faster lowercasing (by ORing with 0x20)\nif we know that we work on numbers/digits. Makes\nstrtoul smaller, and also we are getting rid of\n\n  static const char small_digits[] \u003d \"0123456789abcdefx\";\n  static const char large_digits[] \u003d \"0123456789ABCDEFX\";\n\nsince this works equally well:\n\n  static const char digits[16] \u003d \"0123456789ABCDEF\";\n\nSize savings:\n\n$ size vmlinux.org vmlinux\n   text    data     bss     dec     hex filename\n 877320  112252   90112 1079684  107984 vmlinux.org\n 877048  112252   90112 1079412  107874 vmlinux\n\nIt may be also a tiny bit faster because code has less\nbranches now, but I doubt it is measurable.\n\n[ hugh@veritas.com: uppercase pointers fix ]\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "185c045c245f46485ad8bbd8cc1100e986ff3f13",
      "tree": "fc08cd474bf6c7c9b0c077a069255d04b8804fe4",
      "parents": [
        "bfc734b24671b2639218ae2ef53af91dfd30b6c9"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Sat Feb 09 23:24:09 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 09 23:24:09 2008 +0100"
      },
      "message": "x86, core: remove CONFIG_FORCED_INLINING\n\nOther than the defconfigs, remove the entry in compiler-gcc4.h,\nKconfig.debug and feature-removal-schedule.txt.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4600ecfcf3ad160ac0c6fcff6115f6edb081ccfa",
      "tree": "2a145a6eadfdef4c627fab12ccbf17678a03e887",
      "parents": [
        "3a984a85050e320993f87ba47a22973f32853206"
      ],
      "author": {
        "name": "Guennadi Liakhovetski",
        "email": "g.liakhovetski@pengutronix.de",
        "time": "Fri Feb 08 15:00:47 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 15:33:33 2008 -0800"
      },
      "message": "lib/scatterlist.o needed by a module only - link it in unconditionally\n\nlib/scatterlist.c is needed by drivers/media/video/videobuf-dma-sg.c, and\nwe would like to be able to use the latter without PCI too, for example, on\nPXA270 ARM CPU.  It is then possible to create a configuration with\nCONFIG_BLOCK\u003dn, where only module code will need scatterlist.c.  Therefore\nit must be in obj-y.\n\nSigned-off-by: Guennadi Liakhovetski \u003cg.liakhovetski@pengutronix.de\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06b2a76d25d3cfbd14680021c1d356c91be6904e",
      "tree": "d7bc9d65fc7cfa9b30a9e3c731fd7a3e8d8c0100",
      "parents": [
        "10e6f32bdf02448f787d78647e75cf98a02f19a4"
      ],
      "author": {
        "name": "Yi Yang",
        "email": "yi.y.yang@intel.com",
        "time": "Fri Feb 08 04:21:57 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:41 2008 -0800"
      },
      "message": "Add new string functions strict_strto* and convert kernel params to use them\n\nCurrently, for every sysfs node, the callers will be responsible for\nimplementing store operation, so many many callers are doing duplicate\nthings to validate input, they have the same mistakes because they are\ncalling simple_strtol/ul/ll/uul, especially for module params, they are\njust numeric, but you can echo such values as 0x1234xxx, 07777888 and\n1234aaa, for these cases, module params store operation just ignores\nsuccesive invalid char and converts prefix part to a numeric although input\nis acctually invalid.\n\nThis patch tries to fix the aforementioned issues and implements\nstrict_strtox serial functions, kernel/params.c uses them to strictly\nvalidate input, so module params will reject such values as 0x1234xxxx and\nreturns an error:\n\nwrite error: Invalid argument\n\nAny modules which export numeric sysfs node can use strict_strtox instead of\nsimple_strtox to reject any invalid input.\n\nHere are some test results:\n\nBefore applying this patch:\n\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0x1000 \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0x1000g \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0x1000gggggggg \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 010000 \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0100008 \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 010000aaaaa \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]#\n\nAfter applying this patch:\n\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0x1000 \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0x1000g \u003e /sys/module/e1000/parameters/copybreak\n-bash: echo: write error: Invalid argument\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo 0x1000gggggggg \u003e /sys/module/e1000/parameters/copybreak\n-bash: echo: write error: Invalid argument\n[root@yangyi-dev /]# echo 010000 \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# echo 0100008 \u003e /sys/module/e1000/parameters/copybreak\n-bash: echo: write error: Invalid argument\n[root@yangyi-dev /]# echo 010000aaaaa \u003e /sys/module/e1000/parameters/copybreak\n-bash: echo: write error: Invalid argument\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]# echo -n 4096 \u003e /sys/module/e1000/parameters/copybreak\n[root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak\n4096\n[root@yangyi-dev /]#\n\n[akpm@linux-foundation.org: fix compiler warnings]\n[akpm@linux-foundation.org: fix off-by-one found by tiwai@suse.de]\nSigned-off-by: Yi Yang \u003cyi.y.yang@intel.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8b88b0998e35d239e74446cc30f354bdab86df89",
      "tree": "c13773b744cf12b1e30ec9336a4acaf21e46c6d9",
      "parents": [
        "efae09f3e99fcc1bdead7bc23a508b3bade3f82f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Feb 08 04:20:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:34 2008 -0800"
      },
      "message": "libfs: allow error return from simple attributes\n\nSometimes simple attributes might need to return an error, e.g. for\nacquiring a mutex interruptibly.  In fact we have that situation in\nspufs already which is the original user of the simple attributes.  This\npatch merged the temporarily forked attributes in spufs back into the\nmain ones and allows to return errors.\n\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003cstefano.brivio@polimi.it\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f741cb8fecef923cce1dff820ac6aa78c12d136",
      "tree": "a033810f71f1b98f5ba1d1949230178ca505a1bf",
      "parents": [
        "7ad5b3a505e68cfdc342933d6e0fc0eaa5e0a4f7"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Feb 08 04:19:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:31 2008 -0800"
      },
      "message": "lib: remove fastcall from lib/*\n\n[akpm@linux-foundation.org: coding-style fixes]\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": "b920de1b77b72ca9432ac3f97edb26541e65e5dd",
      "tree": "40fa9be1470e929c47927dea7eddf184c0204229",
      "parents": [
        "ef3d534754f31fed9c3b976fee1ece1b3bc38282"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Feb 08 04:19:31 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:30 2008 -0800"
      },
      "message": "mn10300: add the MN10300/AM33 architecture to the kernel\n\nAdd architecture support for the MN10300/AM33 CPUs produced by MEI to the\nkernel.\n\nThis patch also adds board support for the ASB2303 with the ASB2308 daughter\nboard, and the ASB2305.  The only processor supported is the MN103E010, which\nis an AM33v2 core plus on-chip devices.\n\n[akpm@linux-foundation.org: nuke cvs control strings]\nSigned-off-by: Masakazu Urade \u003curade.masakazu@jp.panasonic.com\u003e\nSigned-off-by: Koichi Yasutake \u003cyasutake.koichi@jp.panasonic.com\u003e\nSigned-off-by: David Howells \u003cdhowells@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": "8ff12cfc009a2a38d87fa7058226fe197bb2696f",
      "tree": "1358ed247d3c897d8790342a978dd5078354a207",
      "parents": [
        "1f84260c8ce3b1ce26d4c1d6dedc2f33a3a29c0c"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Thu Feb 07 17:47:41 2008 -0800"
      },
      "committer": {
        "name": "Christoph Lameter",
        "email": "christoph@stapp.engr.sgi.com",
        "time": "Thu Feb 07 17:47:41 2008 -0800"
      },
      "message": "SLUB: Support for performance statistics\n\nThe statistics provided here allow the monitoring of allocator behavior but\nat the cost of some (minimal) loss of performance. Counters are placed in\nSLUB\u0027s per cpu data structure. The per cpu structure may be extended by the\nstatistics to grow larger than one cacheline which will increase the cache\nfootprint of SLUB.\n\nThere is a compile option to enable/disable the inclusion of the runtime\nstatistics and its off by default.\n\nThe slabinfo tool is enhanced to support these statistics via two options:\n\n-D \tSwitches the line of information displayed for a slab from size\n\tmode to activity mode.\n\n-A\tSorts the slabs displayed by activity. This allows the display of\n\tthe slabs most important to the performance of a certain load.\n\n-r\tReport option will report detailed statistics on\n\nExample (tbench load):\n\nslabinfo -AD\t\t-\u003eShows the most active slabs\n\nName                   Objects    Alloc     Free   %Fast\nskbuff_fclone_cache         33 111953835 111953835  99  99\n:0000192                  2666  5283688  5281047  99  99\n:0001024                   849  5247230  5246389  83  83\nvm_area_struct            1349   119642   118355  91  22\n:0004096                    15    66753    66751  98  98\n:0000064                  2067    25297    23383  98  78\ndentry                   10259    28635    18464  91  45\n:0000080                 11004    18950     8089  98  98\n:0000096                  1703    12358    10784  99  98\n:0000128                   762    10582     9875  94  18\n:0000512                   184     9807     9647  95  81\n:0002048                   479     9669     9195  83  65\nanon_vma                   777     9461     9002  99  71\nkmalloc-8                 6492     9981     5624  99  97\n:0000768                   258     7174     6931  58  15\n\nSo the skbuff_fclone_cache is of highest importance for the tbench load.\nPretty high load on the 192 sized slab. Look for the aliases\n\nslabinfo -a | grep 000192\n:0000192     \u003c- xfs_btree_cur filp kmalloc-192 uid_cache tw_sock_TCP\n\trequest_sock_TCPv6 tw_sock_TCPv6 skbuff_head_cache xfs_ili\n\nLikely skbuff_head_cache.\n\n\nLooking into the statistics of the skbuff_fclone_cache is possible through\n\nslabinfo skbuff_fclone_cache\t-\u003e-r option implied if cache name is mentioned\n\n\n.... Usual output ...\n\nSlab Perf Counter       Alloc     Free %Al %Fr\n--------------------------------------------------\nFastpath             111953360 111946981  99  99\nSlowpath                 1044     7423   0   0\nPage Alloc                272      264   0   0\nAdd partial                25      325   0   0\nRemove partial             86      264   0   0\nRemoteObj/SlabFrozen      350     4832   0   0\nTotal                111954404 111954404\n\nFlushes       49 Refill        0\nDeactivate Full\u003d325(92%) Empty\u003d0(0%) ToHead\u003d24(6%) ToTail\u003d1(0%)\n\nLooks good because the fastpath is overwhelmingly taken.\n\n\nskbuff_head_cache:\n\nSlab Perf Counter       Alloc     Free %Al %Fr\n--------------------------------------------------\nFastpath              5297262  5259882  99  99\nSlowpath                 4477    39586   0   0\nPage Alloc                937      824   0   0\nAdd partial                 0     2515   0   0\nRemove partial           1691      824   0   0\nRemoteObj/SlabFrozen     2621     9684   0   0\nTotal                 5301739  5299468\n\nDeactivate Full\u003d2620(100%) Empty\u003d0(0%) ToHead\u003d0(0%) ToTail\u003d0(0%)\n\n\nDescriptions of the output:\n\nTotal:\t\tThe total number of allocation and frees that occurred for a\n\t\tslab\n\nFastpath:\tThe number of allocations/frees that used the fastpath.\n\nSlowpath:\tOther allocations\n\nPage Alloc:\tNumber of calls to the page allocator as a result of slowpath\n\t\tprocessing\n\nAdd Partial:\tNumber of slabs added to the partial list through free or\n\t\talloc (occurs during cpuslab flushes)\n\nRemove Partial:\tNumber of slabs removed from the partial list as a result of\n\t\tallocations retrieving a partial slab or by a free freeing\n\t\tthe last object of a slab.\n\nRemoteObj/Froz:\tHow many times were remotely freed object encountered when a\n\t\tslab was about to be deactivated. Frozen: How many times was\n\t\tfree able to skip list processing because the slab was in use\n\t\tas the cpuslab of another processor.\n\nFlushes:\tNumber of times the cpuslab was flushed on request\n\t\t(kmem_cache_shrink, may result from races in __slab_alloc)\n\nRefill:\t\tNumber of times we were able to refill the cpuslab from\n\t\tremotely freed objects for the same slab.\n\nDeactivate:\tStatistics how slabs were deactivated. Shows how they were\n\t\tput onto the partial list.\n\nIn general fastpath is very good. Slowpath without partial list processing is\nalso desirable. Any touching of partial list uses node specific locks which\nmay potentially cause list lock contention.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\n\n"
    },
    {
      "commit": "b41ecbebd4091a15233abab2d771e65fb82cdb20",
      "tree": "ac451c5dc3a40b5e23930313222bc803e94143d7",
      "parents": [
        "1bf47346d75790ebd2563d909d48046961c7ffd5"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Feb 06 01:37:57 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:09 2008 -0800"
      },
      "message": "debug_smp_processor_id() fixlets\n\n- Account for debug_smp_processor_id()\u0027s own preempt_disable() when\n  displaying the preempt_count().\n\n- 80 cols, not 800.\n\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": "15ae02baf025750cd79ef3929c28f7083a088bd2",
      "tree": "9c79b44e5ec865ff62a451bb6e4882d3f4d5b060",
      "parents": [
        "f63fd7e299ee13da071ecfce2b90b58c5e1562b1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Feb 06 01:37:49 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:08 2008 -0800"
      },
      "message": "lib/extable.c: remove an expensive integer divide in search_extable()\n\nActual code let compiler generates idiv instruction on x86.\n\nUsing a right shift is OK here and readable as well.\n\nBefore patch\n   10:   57                      push   %edi\n   11:   56                      push   %esi\n   12:   89 d6                   mov    %edx,%esi\n   14:   53                      push   %ebx\n   15:   89 c3                   mov    %eax,%ebx\n   17:   eb 22                   jmp    3b \u003csearch_extable+0x2b\u003e\n   19:   89 f0                   mov    %esi,%eax\n   1b:   ba 02 00 00 00          mov    $0x2,%edx\n   20:   29 d8                   sub    %ebx,%eax\n   22:   89 d7                   mov    %edx,%edi\n   24:   c1 f8 03                sar    $0x3,%eax\n   27:   99                      cltd\n   28:   f7 ff                   idiv   %edi\n   2a:   8d 04 c3                lea    (%ebx,%eax,8),%eax\n   2d:   39 08                   cmp    %ecx,(%eax)\n...\n\nAfter patch\n\n00000010 \u003csearch_extable\u003e:\n   10:   53                      push   %ebx\n   11:   89 c3                   mov    %eax,%ebx\n   13:   eb 18                   jmp    2d \u003csearch_extable+0x1d\u003e\n   15:   89 d0                   mov    %edx,%eax\n   17:   29 d8                   sub    %ebx,%eax\n   19:   c1 f8 04                sar    $0x4,%eax\n   1c:   8d 04 c3                lea    (%ebx,%eax,8),%eax\n   1f:   39 08                   cmp    %ecx,(%eax)\n...\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2848a0efedef4dad52d1334d37f8719cd6268fd",
      "tree": "f5d2b600b1275793e7c490f34ae9ec902af138b5",
      "parents": [
        "e31d9eb5c17ae3b80f9e9403f8a5eaf6dba879c9"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Feb 04 22:29:10 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:17 2008 -0800"
      },
      "message": "radix-tree: avoid atomic allocations for preloaded insertions\n\nMost pagecache (and some other) radix tree insertions have the great\nopportunity to preallocate a few nodes with relaxed gfp flags.  But the\npreallocation is squandered when it comes time to allocate a node, we\ndefault to first attempting a GFP_ATOMIC allocation -- that doesn\u0027t\nnormally fail, but it can eat into atomic memory reserves that we don\u0027t\nneed to be using.\n\nAnother upshot of this is that it removes the sometimes highly contended\nzone-\u003elock from underneath tree_lock.  Pagecache insertions are always\nperformed with a radix tree preload, and after this change, such a\nsituation will never fall back to kmem_cache_alloc within\nradix_tree_node_alloc.\n\nDavid Miller reports seeing this allocation fail on a highly threaded\nsparc64 system:\n\n[527319.459981] dd: page allocation failure. order:0, mode:0x20\n[527319.460403] Call Trace:\n[527319.460568]  [00000000004b71e0] __slab_alloc+0x1b0/0x6a8\n[527319.460636]  [00000000004b7bbc] kmem_cache_alloc+0x4c/0xa8\n[527319.460698]  [000000000055309c] radix_tree_node_alloc+0x20/0x90\n[527319.460763]  [0000000000553238] radix_tree_insert+0x12c/0x260\n[527319.460830]  [0000000000495cd0] add_to_page_cache+0x38/0xb0\n[527319.460893]  [00000000004e4794] mpage_readpages+0x6c/0x134\n[527319.460955]  [000000000049c7fc] __do_page_cache_readahead+0x170/0x280\n[527319.461028]  [000000000049cc88] ondemand_readahead+0x208/0x214\n[527319.461094]  [0000000000496018] do_generic_mapping_read+0xe8/0x428\n[527319.461152]  [0000000000497948] generic_file_aio_read+0x108/0x170\n[527319.461217]  [00000000004badac] do_sync_read+0x88/0xd0\n[527319.461292]  [00000000004bb5cc] vfs_read+0x78/0x10c\n[527319.461361]  [00000000004bb920] sys_read+0x34/0x60\n[527319.461424]  [0000000000406294] linux_sparc_syscall32+0x3c/0x40\n\nThe calltrace is significant: __do_page_cache_readahead allocates a number\nof pages with GFP_KERNEL, and hence it should have reclaimed sufficient\nmemory to satisfy GFP_ATOMIC allocations.  However after the list of pages\ngoes to mpage_readpages, there can be significant intervals (including disk\nIO) before all the pages are inserted into the radix-tree.  So the reserves\ncan easily be depleted at that point.  The patch is confirmed to fix the\nproblem.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "681cc5cd3efbeafca6386114070e0bfb5012e249",
      "tree": "21249148cf78175e1d099999784053a14dc2fc50",
      "parents": [
        "59fc67dedb46c29442989e52af39da67aea52512"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Mon Feb 04 22:28:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:12 2008 -0800"
      },
      "message": "iommu sg merging: swiotlb: respect the segment boundary limits\n\nThis patch makes swiotlb not allocate a memory area spanning LLD\u0027s segment\nboundary.\n\nis_span_boundary() judges whether a memory area spans LLD\u0027s segment boundary.\nIf map_single finds such a area, map_single tries to find the next available\nmemory area.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0291df8cc9dac09c303d21d5bcd2ad73762c836a",
      "tree": "5a79187b309cc1a2115a94bc7927c85dd3c67ac9",
      "parents": [
        "0c95fdc59640824d7e0b017be295fb912ceef4ab"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "tomof@acm.org",
        "time": "Mon Feb 04 22:28:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:11 2008 -0800"
      },
      "message": "iommu sg: add IOMMU helper functions for the free area management\n\nThis adds IOMMU helper functions for the free area management.  These\nfunctions take care of LLD\u0027s segment boundary limit for IOMMUs.  They would be\nuseful for IOMMUs that use bitmap for the free area management.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5bb3a5e9dcdb8435471562b6cada89525cf4df1",
      "tree": "7b7cf9b90bacd0e2fe07cb3387516e9243f1ab66",
      "parents": [
        "9853832c49dc1685587abeb4e1decd4be690d256",
        "1560a79a2c2ea0c3826150da8029991d685de990"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:58:52 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:58:52 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (79 commits)\n  Jesper Juhl is the new trivial patches maintainer\n  Documentation: mention email-clients.txt in SubmittingPatches\n  fs/binfmt_elf.c: spello fix\n  do_invalidatepage() comment typo fix\n  Documentation/filesystems/porting fixes\n  typo fixes in net/core/net_namespace.c\n  typo fix in net/rfkill/rfkill.c\n  typo fixes in net/sctp/sm_statefuns.c\n  lib/: Spelling fixes\n  kernel/: Spelling fixes\n  include/scsi/: Spelling fixes\n  include/linux/: Spelling fixes\n  include/asm-m68knommu/: Spelling fixes\n  include/asm-frv/: Spelling fixes\n  fs/: Spelling fixes\n  drivers/watchdog/: Spelling fixes\n  drivers/video/: Spelling fixes\n  drivers/ssb/: Spelling fixes\n  drivers/serial/: Spelling fixes\n  drivers/scsi/: Spelling fixes\n  ...\n"
    },
    {
      "commit": "519cb688072008363e091be3f291c1b5779e2ba8",
      "tree": "dc5e251ff0eac8ae2f022858c0d7526299235f1d",
      "parents": [
        "2f98735c9c24ea1f0d40a364d4e63611b689b795",
        "8891fec65ac5b5a74b50c705e31b66c92c3eddeb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:56:17 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 04 07:56:17 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:\n  scsi: fix dependency bug in aic7 Makefile\n  kbuild: add svn revision information to setlocalversion\n  kbuild: do not warn about __*init/__*exit symbols being exported\n  Move Kconfig.instrumentation to arch/Kconfig and init/Kconfig\n  Add HAVE_KPROBES\n  Add HAVE_OPROFILE\n  Create arch/Kconfig\n  Fix ARM to play nicely with generic Instrumentation menu\n  kconfig: ignore select of unknown symbol\n  kconfig: mark config as changed when loading an alternate config\n  kbuild: Spelling/grammar fixes for config DEBUG_SECTION_MISMATCH\n  Remove __INIT_REFOK and __INITDATA_REFOK\n  kbuild: print only total number of section mismatces found\n"
    },
    {
      "commit": "643d1f7fe3aa12c8bdea6fa5b4ba874ff6dd601d",
      "tree": "8e18426b346087618770c576433eb98d7e891617",
      "parents": [
        "0b0a3e7b18b8d9894f3621672ac7bdc5320459c4"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Feb 03 17:48:52 2008 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Feb 03 17:48:52 2008 +0200"
      },
      "message": "lib/: Spelling fixes\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "d6fbfa4fce607254c081d7f58227281d08419d4c",
      "tree": "abe6b55294e35bc769c93d8a6d3b6a854f5e45d1",
      "parents": [
        "470a81ae15ed8c037afa0466e2731566a111c134"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Wed Jan 30 11:13:23 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:07 2008 +0100"
      },
      "message": "kbuild: Spelling/grammar fixes for config DEBUG_SECTION_MISMATCH\n\nIncluding additional fixes from Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "e5f95c8b7700a7bf1c2d24eedc677954d9aa0285",
      "tree": "cc7b0105a6acf863e508f51dc3450df080f0e0c9",
      "parents": [
        "9135f1901ee6449dfe338adf6e40e9c2025b8150"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat Feb 02 18:57:18 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Feb 03 08:58:07 2008 +0100"
      },
      "message": "kbuild: print only total number of section mismatces found\n\nWe have too many section mismatches detected at the moment.\nSo silence modpost and prevent the option from being\nset in a typical allyesconfig build.\n\nTell the user how to see all the deteils in the summary\nmessage from modpost.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "f70701a34e217fd5f4f180f7bf4bb5c137d76e8a",
      "tree": "ff44be3a09c3f875ace2e139180e72089cd00fdc",
      "parents": [
        "dfacd68e495bb324ad6e92f4dfcf479dd447c8d3"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Mon Jan 28 16:58:00 2008 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Feb 02 15:14:48 2008 -0800"
      },
      "message": "kobject: kerneldoc comment fix\n\nFix kerneldoc comment of kobject_create.\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "aa7d93506cc26378be6964692cd0dd34cffaee25",
      "tree": "544226ea9f621d5196d6b2e12fd57bbdbf2d4883",
      "parents": [
        "cd689985cf49f6ff5c8eddc48d98b9d581d9475d"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 01 17:45:14 2008 +0100"
      },
      "message": "latencytop: Change Kconfig dependency.\n\nChange latencytop Kconfig entry so it doesn\u0027t list the archictectures\nthat support it. Instead introduce HAVE_LATENCY_SUPPORT which any\narchitecture can set. Should reduce patch conflicts.\n\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Holger Wolf \u003cwolf@linux.vnet.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f212ec4b7b4d84290f12c9c0416cdea283bf5f40",
      "tree": "9beb7e5b87bac80410767fd3aacd93f92ecb0c04",
      "parents": [
        "6194ba6ff6ccf8d5c54c857600843c67aa82c407"
      ],
      "author": {
        "name": "Bernhard Kaindl",
        "email": "bk@suse.de",
        "time": "Wed Jan 30 13:34:11 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:34:11 2008 +0100"
      },
      "message": "x86: early boot debugging via FireWire (ohci1394_dma\u003dearly)\n\nThis patch adds a new configuration option, which adds support for a new\nearly_param which gets checked in arch/x86/kernel/setup_{32,64}.c:setup_arch()\nto decide wether OHCI-1394 FireWire controllers should be initialized and\nenabled for physical DMA access to allow remote debugging of early problems\nlike issues ACPI or other subsystems which are executed very early.\n\nIf the config option is not enabled, no code is changed, and if the boot\nparamenter is not given, no new code is executed, and independent of that,\nall new code is freed after boot, so the config option can be even enabled\nin standard, non-debug kernels.\n\nWith specialized tools, it is then possible to get debugging information\nfrom machines which have no serial ports (notebooks) such as the printk\nbuffer contents, or any data which can be referenced from global pointers,\nif it is stored below the 4GB limit and even memory dumps of of the physical\nRAM region below the 4GB limit can be taken without any cooperation from the\nCPU of the host, so the machine can be crashed early, it does not matter.\n\nIn the extreme, even kernel debuggers can be accessed in this way. I wrote\na small kgdb module and an accompanying gdb stub for FireWire which allows\nto gdb to talk to kgdb using remote remory reads and writes over FireWire.\n\nAn version of the gdb stub fore FireWire is able to read all global data\nfrom a system which is running a a normal kernel without any kernel debugger,\nwithout any interruption or support of the system\u0027s CPU. That way, e.g. the\ntask struct and so on can be read and even manipulated when the physical DMA\naccess is granted.\n\nA HOWTO is included in this patch, in Documentation/debugging-via-ohci1394.txt\nand I\u0027ve put a copy online at\nftp://ftp.suse.de/private/bk/firewire/docs/debugging-via-ohci1394.txt\n\nIt also has links to all the tools which are available to make use of it\nanother copy of it is online at:\nftp://ftp.suse.de/private/bk/firewire/kernel/ohci1394_dma_early-v2.diff\n\nSigned-Off-By: Bernhard Kaindl \u003cbk@suse.de\u003e\nTested-By: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6dab27784b2a97823b522e1cb88e40be40a93d45",
      "tree": "75ee27b4841aad5800531e591aed141164071727",
      "parents": [
        "80b51f310b6f55006a265d087b8f48744e65663d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Wed Jan 30 13:33:08 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:08 2008 +0100"
      },
      "message": "x86: add a simple backtrace test module\n\nDuring the work on the x86 32 and 64 bit backtrace code I found it useful\nto have a simple test module to test a process and irq context backtrace.\nSince the existing backtrace code was buggy, I figure it might be useful\nto have such a test module in the kernel so that maybe we can even\ndetect such bugs earlier..\n\n[ mingo@elte.hu: build fix ]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d50efc6c40620b2e11648cac64ebf4a824e40382",
      "tree": "daf951117c86f2d4875216eee9e708a0c01c9e4b",
      "parents": [
        "3a556b26a2718e48aa2b6ce06ea4875ddcd0778e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:00 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:00 2008 +0100"
      },
      "message": "x86: fix UML and -regparm\u003d3\n\nintroduce the \"asmregparm\" calling convention: for functions\nimplemented in assembly with a fixed regparm input parameters\ncalling convention.\n\nmark the semaphore and rwsem slowpath functions with that.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8c1c9356429741a82ff176d0f3400fb9e06b2a30",
      "tree": "4daa7864163b77943e3d303c32a08672f443685e",
      "parents": [
        "3334052a321aca0ffecb54244d666311f98f5487"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "message": "x86: kprobes: add kprobes smoke tests that run on boot\n\nHere is a quick and naive smoke test for kprobes. This is intended to\njust verify if some unrelated change broke the *probes subsystem. It is\nself contained, architecture agnostic and isn\u0027t of any great use by itself.\n\nThis needs to be built in the kernel and runs a basic set of tests to\nverify if kprobes, jprobes and kretprobes run fine on the kernel. In case\nof an error, it\u0027ll print out a message with a \"BUG\" prefix.\n\nThis is a start; we intend to add more tests to this bucket over time.\n\nThanks to Jim Keniston and Masami Hiramatsu for comments and suggestions.\n\nTested on x86 (32/64) and powerpc.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0ba6c33bcddc64a54b5f1c25a696c4767dc76292",
      "tree": "62e616f97a4762d8e75bf732e4827af2d15d52c5",
      "parents": [
        "21af0297c7e56024a5ccc4d8ad2a590f9ec371ba",
        "85040bcb4643cba578839e953f25e2d1965d83d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:54:01 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:54:01 2008 +1100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.25\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.25: (1470 commits)\n  [IPV6] ADDRLABEL: Fix double free on label deletion.\n  [PPP]: Sparse warning fixes.\n  [IPV4] fib_trie: remove unneeded NULL check\n  [IPV4] fib_trie: More whitespace cleanup.\n  [NET_SCHED]: Use nla_policy for attribute validation in ematches\n  [NET_SCHED]: Use nla_policy for attribute validation in actions\n  [NET_SCHED]: Use nla_policy for attribute validation in classifiers\n  [NET_SCHED]: Use nla_policy for attribute validation in packet schedulers\n  [NET_SCHED]: sch_api: introduce constant for rate table size\n  [NET_SCHED]: Use typeful attribute parsing helpers\n  [NET_SCHED]: Use typeful attribute construction helpers\n  [NET_SCHED]: Use NLA_PUT_STRING for string dumping\n  [NET_SCHED]: Use nla_nest_start/nla_nest_end\n  [NET_SCHED]: Propagate nla_parse return value\n  [NET_SCHED]: act_api: use PTR_ERR in tcf_action_init/tcf_action_get\n  [NET_SCHED]: act_api: use nlmsg_parse\n  [NET_SCHED]: act_api: fix netlink API conversion bug\n  [NET_SCHED]: sch_netem: use nla_parse_nested_compat\n  [NET_SCHED]: sch_atm: fix format string warning\n  [NETNS]: Add namespace for ICMP replying code.\n  ...\n"
    },
    {
      "commit": "5ea293a9048d3a58cb0c840fa719d85ad14cba47",
      "tree": "88d1dd1eece2cfcbd858ff2c00fb0240dcfab3c7",
      "parents": [
        "03bc26cfefd6db756e6bc7fcda11dc17ada7be16",
        "d3883ecebbf9e095b9e379dabbbe8b2c1ee7a41c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:46:14 2008 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 29 22:46:14 2008 +1100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (79 commits)\n  Remove references to \"make dep\"\n  kconfig: document use of HAVE_*\n  Introduce new section reference annotations tags: __ref, __refdata, __refconst\n  kbuild: warn about ld added unique sections\n  kbuild: add verbose option to Section mismatch reporting in modpost\n  kconfig: tristate choices with mixed tristate and boolean values\n  asm-generic/vmlix.lds.h: simplify __mem{init,exit}* dependencies\n  remove __attribute_used__\n  kbuild: support ARCH\u003dx86 in buildtar\n  kconfig: remove \"enable\"\n  kbuild: simplified warning report in modpost\n  kbuild: introduce a few helpers in modpost\n  kbuild: use simpler section mismatch warnings in modpost\n  kbuild: link vmlinux.o before kallsyms passes\n  kbuild: introduce new option to enhance section mismatch analysis\n  Use separate sections for __dev/__cpu/__mem code/data\n  compiler.h: introduce __section()\n  all archs: consolidate init and exit sections in vmlinux.lds.h\n  kbuild: check section names consistently in modpost\n  kbuild: introduce blacklisting in modpost\n  ...\n"
    },
    {
      "commit": "aa02ad67d9b308290fde390682cd039b29f7ab85",
      "tree": "1ebf910ab16e6081b5dd3ca526973f09cfd065c4",
      "parents": [
        "c549a95d40efd83fc054785dd1634e8b71fba890"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Jan 28 23:58:27 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 28 23:58:27 2008 -0500"
      },
      "message": "ext4: Add ext4_find_next_bit()\n\nThis function is used by the ext4 multi block allocator patches.\n\nAlso add generic_find_next_le_bit\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "571e7682026fd0e25833d103a3eeb74be29bf199",
      "tree": "3707c7fb4ea4384a163cddc9fac76e9d8860a109",
      "parents": [
        "789675e216617b1331875c42a81f58227a06df91"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Jan 03 20:41:28 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:00:35 2008 -0800"
      },
      "message": "[LIB] pcounter : unline too big functions\n\nBefore pushing pcounter to Linus tree, I would like to make some adjustments.\n\nGoal is to reduce kernel text size, by unlining too big functions.\n\nWhen a pcounter is bound to a statically defined per_cpu variable,\nwe define two small helpers functions. (No more folding function\nusing the fat for_each_possible_cpu(cpu) ... )\n\nstatic DEFINE_PER_CPU(int, NAME##_pcounter_values);\nstatic void NAME##_pcounter_add(struct pcounter *self, int val)\n{\n       __get_cpu_var(NAME##_pcounter_values) +\u003d val;\n}\nstatic int NAME##_pcounter_getval(const struct pcounter *self, int cpu)\n{\n       return per_cpu(NAME##_pcounter_values, cpu);\n}\n\nFast path is therefore unchanged, while folding/alloc/free is now unlined.\n\nThis saves 228 bytes on i386\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de4d1db369785c29d68915edfee0cb70e8199f4c",
      "tree": "78979fc131145d4b2df3cd4721a811784126f05c",
      "parents": [
        "0c884439dbd7c895cce61c4974c8868b0f6cd4a1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Nov 21 22:02:58 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:39 2008 -0800"
      },
      "message": "[LIB]: Introduce struct pcounter\n\nThis just generalises what was introduced by Eric Dumazet for the struct proto\ninuse field in 286ab3d46058840d68e5d7d52e316c1f7e98c59f:\n\n    [NET]: Define infrastructure to keep \u0027inuse\u0027 changes in an efficent SMP/NUMA way.\n\nPlease look at the comment in there to see the rationale.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "588ccd732ba2d32db8228802ef9283b583d3395f",
      "tree": "435ad4432c165190d70b82f8392c37b375679b53",
      "parents": [
        "f5eaa323eb6819d2f737ead42464efccaf2b98b9"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu Jan 24 21:12:37 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:18 2008 +0100"
      },
      "message": "kbuild: add verbose option to Section mismatch reporting in modpost\n\nIf the config option CONFIG_SECTION_MISMATCH is not set and\nwe see a Section mismatch present the following to the user:\n\nmodpost: Found 1 section mismatch(es).\nTo see additional details select \"Enable full Section mismatch analysis\"\nin the Kernel Hacking menu (CONFIG_SECTION_MISMATCH).\n\nIf the option CONFIG_SECTION_MISMATCH is selected\nthen be verbose in the Section mismatch reporting from mdopost.\nSample outputs:\n\nWARNING: o-x86_64/vmlinux.o(.text+0x7396): Section mismatch in reference from the function discover_ebda() to the variable .init.data:ebda_addr\nThe function  discover_ebda() references\nthe variable __initdata ebda_addr.\nThis is often because discover_ebda lacks a __initdata\nannotation or the annotation of ebda_addr is wrong.\n\nWARNING: o-x86_64/vmlinux.o(.data+0x74d58): Section mismatch in reference from the variable pci_serial_quirks to the function .devexit.text:pci_plx9050_exit()\nThe variable pci_serial_quirks references\nthe function __devexit pci_plx9050_exit()\nIf the reference is valid then annotate the\nvariable with __exit* (see linux/init.h) or name the variable:\n*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,\n\nWARNING: o-x86_64/vmlinux.o(__ksymtab+0x630): Section mismatch in reference from the variable __ksymtab_arch_register_cpu to the function .cpuinit.text:arch_register_cpu()\nThe symbol arch_register_cpu is exported and annotated __cpuinit\nFix this by removing the __cpuinit annotation of arch_register_cpu or drop the export.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "91341d4b2c196c689acf90e9e96f28f8d5c6665f",
      "tree": "b4676097b6a3fe4f5e9d420ba9d9956bb883e506",
      "parents": [
        "eb8f689046b857874e964463619f09df06d59fad"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 21 21:31:44 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:18 2008 +0100"
      },
      "message": "kbuild: introduce new option to enhance section mismatch analysis\n\nSetting the option DEBUG_SECTION_MISMATCH will\nreport additional section mismatch\u0027es but this\nshould in the end makes it possible to get rid of\nall of them.\n\nSee help text in lib/Kconfig.debug for details.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "7cedb1f17fb7f4374d11501f61656ae9d3ba47e9",
      "tree": "d6257751445618b827c3e41e5b8fde2704c9d716",
      "parents": [
        "5ed7959ede0936c55e50421a53f153b17080e876"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jan 13 14:15:28 2008 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:54:49 2008 +0100"
      },
      "message": "SG: work with the SCSI fixed maximum allocations.\n\nSCSI sg table allocation has a maximum size (of SCSI_MAX_SG_SEGMENTS,\ncurrently 128) and this will cause a BUG_ON() in SCSI if something\ntries an allocation over it.  This patch adds a size limit to the\nchaining allocator to allow the specification of the maximum\nallocation size for chaining, so we always chain in units of the\nmaximum SCSI allocation size.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0db9299f48ebd4a860d6ad4e1d36ac50671d48e7",
      "tree": "37ae5e75f26969b53548a1ea7c69284e6b269bc9",
      "parents": [
        "91525300baf162e83e923b09ca286f9205e21522"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Nov 30 09:16:50 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:05:27 2008 +0100"
      },
      "message": "SG: Move functions to lib/scatterlist.c and add sg chaining allocator helpers\n\nManually doing chained sg lists is not trivial, so add some helpers\nto make sure that drivers get it right.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9745512ce79de686df354dc70a8d1a74d801892d",
      "tree": "9b64e2b2e6d2ae534beef136922082f21701c7b9",
      "parents": [
        "326587b840785c60f5dc18557235a23bafefd620"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jan 25 21:08:34 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:34 2008 +0100"
      },
      "message": "sched: latencytop support\n\nLatencyTOP kernel infrastructure; it measures latencies in the\nscheduler and tracks it system wide and per process.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6478d8800b75253b2a934ddcb734e13ade023ad0",
      "tree": "df4017269b8755735578445c0a8a9e8b3b2615e9",
      "parents": [
        "58b8a73ab8becfcaea84abc2a06038281efa4c8a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:33 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:33 2008 +0100"
      },
      "message": "sched: remove the !PREEMPT_BKL code\n\nremove the !PREEMPT_BKL code.\n\nthis removes 160 lines of legacy code.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e374a2bfebf359f846216336de91670be40499da",
      "tree": "809347b4814c63feb06409a7fe9ddfa9d631896b",
      "parents": [
        "79a6ee42fd81be9abc6bdab08f932875924b26a5"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 21:59:04 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 21:59:04 2008 -0800"
      },
      "message": "Kobject: fix coding style issues in kobject c files\n\nClean up the kobject.c and kobject_uevent.c files to follow the\nproper coding style rules.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "af5ca3f4ec5cc4432a42a73b050dd8898ce8fd00",
      "tree": "3e5a3081b2802547f10da72c0026b4929d0e287b",
      "parents": [
        "528a4bf1d5ffed310d26fc1d82d45c02949f71cf"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Dec 20 02:09:39 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:40 2008 -0800"
      },
      "message": "Driver core: change sysdev classes to use dynamic kobject names\n\nAll kobjects require a dynamically allocated name now. We no longer\nneed to keep track if the name is statically assigned, we can just\nunconditionally free() all kobject names on cleanup.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "528a4bf1d5ffed310d26fc1d82d45c02949f71cf",
      "tree": "fc66cc3597e7bcbe83881d16305a7f80605a5c2c",
      "parents": [
        "78a2d906b40fe530ea800c1e873bfe8f02326f1e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Dec 20 08:13:05 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:40 2008 -0800"
      },
      "message": "Kobject: remove kobject_unregister() as no one uses it anymore\n\nThere are no in-kernel users of kobject_unregister() so it should be\nremoved.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "78a2d906b40fe530ea800c1e873bfe8f02326f1e",
      "tree": "ebeef35150816fa807f71e596a9aaf711ad10a90",
      "parents": [
        "197b12d6796a3bca187f22a8978a33d51e2bcd79"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Dec 20 08:13:05 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:40 2008 -0800"
      },
      "message": "Kobject: convert remaining kobject_unregister() to kobject_put()\n\nThere is no need for kobject_unregister() anymore, thanks to Kay\u0027s\nkobject cleanup changes, so replace all instances of it with\nkobject_put().\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0f4dafc0563c6c49e17fe14b3f5f356e4c4b8806",
      "tree": "f4ded2831853cb6ea328d15d72871db6f8c22610",
      "parents": [
        "12e339ac6e31a34fe42396aec8fb1c0b43caf61e"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 19 01:40:42 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:39 2008 -0800"
      },
      "message": "Kobject: auto-cleanup on final unref\n\nWe save the current state in the object itself, so we can do proper\ncleanup when the last reference is dropped.\n\nIf the initial reference is dropped, the object will be removed from\nsysfs if needed, if an \"add\" event was sent, \"remove\" will be send, and\nthe allocated resources are released.\n\nThis allows us to clean up some driver core usage as well as allowing us\nto do other such changes to the rest of the kernel.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "12e339ac6e31a34fe42396aec8fb1c0b43caf61e",
      "tree": "28427e04e49ba7b5f1cabd9da33a9240f30acfae",
      "parents": [
        "6d06adfaf82d154023141ddc0c9de18b6a49090b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Apr 09 12:14:34 2002 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:39 2008 -0800"
      },
      "message": "Kset: remove kset_add function\n\nNo one is calling this anymore, so just remove it and hard-code the one\ninternal-use of it.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6d06adfaf82d154023141ddc0c9de18b6a49090b",
      "tree": "a7a7e3c0458158cc6a93df457470c6fdd30a8c35",
      "parents": [
        "f9cb074bff8e762ef24c44678a5a7d907f82fbeb"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 19 11:26:50 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:39 2008 -0800"
      },
      "message": "Kobject: remove kobject_register()\n\nThe function is no longer used by anyone in the kernel, and it prevents\nthe proper sending of the kobject uevent after the needed files are set\nup by the caller.  kobject_init_and_add() can be used in its place.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f9cb074bff8e762ef24c44678a5a7d907f82fbeb",
      "tree": "50438fc90b8f6170dd8eb5d43712c61719a16304",
      "parents": [
        "e1543ddf739b22a8c4218716ad50c26b3e147403"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: rename kobject_init_ng() to kobject_init()\n\nNow that the old kobject_init() function is gone, rename\nkobject_init_ng() to kobject_init() to clean up the namespace.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e1543ddf739b22a8c4218716ad50c26b3e147403",
      "tree": "584f63bf431368d366f2d156abc4ec85636dfe2f",
      "parents": [
        "b2d6db5878a0832659ed58476357eea2db915550"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: remove kobject_init() as no one uses it anymore\n\nThe old kobject_init() function is on longer in use, so let us remove it\nfrom the public scope (kset mess in the kobject.c file still uses it,\nbut that can be cleaned up later very simply.)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b2d6db5878a0832659ed58476357eea2db915550",
      "tree": "c7c9e98431078ca7b0405e8003bd905ab62df7c4",
      "parents": [
        "9e7bbccd0290e720e0874443932869c55f63d5a8"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: rename kobject_add_ng() to kobject_add()\n\nNow that the old kobject_add() function is gone, rename kobject_add_ng()\nto kobject_add() to clean up the namespace.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9e7bbccd0290e720e0874443932869c55f63d5a8",
      "tree": "80cc436d79f217809d3f7ecc07d621e5d6e050c3",
      "parents": [
        "ac3c8141f62f357169980ec21b7be6d29964a394"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: remove kobject_add() as no one uses it anymore\n\nThe old kobject_add() function is on longer in use, so let us remove it\nfrom the public scope (kset mess in the kobject.c file still uses it,\nbut that can be cleaned up later very simply.)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    }
  ],
  "next": "09f82ea92822a7bbb7e816508abbda47ed54a77f"
}
