)]}'
{
  "log": [
    {
      "commit": "b77d6adc922b8bbf8b16b67f567958c42962cf88",
      "tree": "6d212543f10d0330b73ec3932d17c97a1da56bdf",
      "parents": [
        "faec1e99ba9ca7371d9aee1656938373133c4b21"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Tue Jun 21 17:16:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:32 2005 -0700"
      },
      "message": "[PATCH] uml: make hw_controller_type-\u003erelease exist only for archs needing it\n\nWith Chris Wedgwood \u003ccw@f00f.org\u003e\n\nAs suggested by Chris, we can make the \"just added\" method -\u003erelease\nconditional to UML only (better: to archs requesting it, i.e.  only UML\ncurrently), so that other archs don\u0027t get this unneeded crud, and if UML\nwon\u0027t need it any more we can kill this.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCC: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dbce706e2550253c5ab6043f4f5dfde0cd02470f",
      "tree": "5d96bab350d86e43e32faa80b64e05e7dc514ae8",
      "parents": [
        "5757b284a300e0e5d2173750906625b6470bd9f0"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Tue Jun 21 17:16:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:32 2005 -0700"
      },
      "message": "[PATCH] uml: add and use generic hw_controller_type-\u003erelease\n\nWith Chris Wedgwood \u003ccw@f00f.org\u003e\n\nCurrently UML must explicitly call the UML-specific\nfree_irq_by_irq_and_dev() for each free_irq call it\u0027s done.\n\nThis is needed because -\u003eshutdown and/or -\u003edisable are only called when the\nlast \"action\" for that irq is removed.\n\nInstead, for UML shared IRQs (UML IRQs are very often, if not always,\nshared), for each dev_id some setup is done, which must be cleared on the\nrelease of that fd.  For instance, for each open console a new instance\n(i.e.  new dev_id) of the same IRQ is requested().\n\nExactly, a fd is stored in an array (pollfds), which is after read by a\nhost thread and passed to poll().  Each event registered by poll() triggers\nan interrupt.  So, for each free_irq() we must remove the corresponding\nhost fd from the table, which we do via this -release() method.\n\nIn this patch we add an appropriate hook for this, and remove all uses of\nit by pointing the hook to the said procedure; this is safe to do since the\nsaid procedure.\n\nAlso some cosmetic improvements are included.\n\nThis is heavily based on some work by Chris Wedgwood, which however didn\u0027t\nget the patch merged for something I\u0027d call a \"misunderstanding\" (the need\nfor this patch wasn\u0027t cleanly explained, thus adding the generic hook was\nfelt as undesirable).\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCC: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d4c477ca5448f19afaaf6c0cfd655009ea9e614d",
      "tree": "75571ad144ff904afbd39b1b24766461255396ac",
      "parents": [
        "e5d310b349b2cbcc0dab31139c92201f332695bb"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Jun 21 17:16:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:32 2005 -0700"
      },
      "message": "[PATCH] ioc4: PCI bus speed detection\n\nSeveral hardware features of SGI\u0027s IOC4 I/O controller chip require\ntiming-related driver calculations dependent upon the PCI bus speed.  This\npatch enables the core IOC4 driver code to detect the actual bus speed and\nstore a value that can later be used by the IOC4 subdrivers as needed.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nAcked-by: Pat Gefre \u003cpfg@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22329b511a97557b293583194037d1f4c71e1504",
      "tree": "925e6c4566371e7ffb66a54b631049b958c19eca",
      "parents": [
        "e400bae98499583767da58fb0a1b9ad3e24fcb86"
      ],
      "author": {
        "name": "Brent Casavant",
        "email": "bcasavan@sgi.com",
        "time": "Tue Jun 21 17:15:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:32 2005 -0700"
      },
      "message": "[PATCH] ioc4: Core driver rewrite\n\nThis series of patches reworks the configuration and internal structure\nof the SGI IOC4 I/O controller device drivers.\n\nThese changes are motivated by several factors:\n\n- The IOC4 chip PCI resources are of mixed use between functions (i.e.\n  multiple functions are handled in the same address range, sometimes\n  within the same register), muddling resource ownership and initialization\n  issues.  Centralizing this ownership in a core driver is desirable.\n\n- The IOC4 chip implements multiple functions (serial, IDE, others not\n  yet implemented in the mainline kernel) but is not a multifunction\n  PCI device.  In order to properly handle device addition and removal\n  as well as module insertion and deletion, an intermediary IOC4-specific\n  driver layer is needed to handle these operations cleanly.\n\n- All IOC4 drivers are currently enabled by a single CONFIG value.  As\n  not all systems need all IOC4 functions, it is desireable to enable\n  these drivers independently.\n\n- The current IOC4 core driver will trigger loading of all function-level\n  drivers, as it makes direct calls to them.  This situation should be\n  reversed (i.e. function-level drivers cause loading of core driver)\n  in order to maintain a clear and least-surprise driver loading model.\n\n- IOC4 hardware design necessitates some driver-level dependency on\n  the PCI bus clock speed.  Current code assumes a 66MHz bus, but the\n  speed should be autodetected and appropriate compensation taken.\n\nThis patch series effects the above changes by a newly and better designed\nIOC4 core driver with which the function-level drivers can register and\nderegister themselves upon module insertion/removal.  By tracking these\nmodules, device addition/removal is also handled properly.  PCI resource\nmanagement and ownership issues are centralized in this core driver, and\nIOC4-wide configuration actions such as bus speed detection are also\nhandled in this core driver.\n\nThis patch:\n\nThe SGI IOC4 I/O controller chip implements multiple functions, though it is\nnot a multi-function PCI device.  Additionally, various PCI resources of the\nIOC4 are shared by multiple hardware functions, and thus resource ownership by\ndriver is not clearly delineated.  Due to the current driver design, all core\nand subordinate drivers must be loaded, or none, which is undesirable if not\nall IOC4 hardware features are being used.\n\nThis patch reorganizes the IOC4 drivers so that the core driver provides a\nsubdriver registration service.  Through appropriate callbacks the subdrivers\ncan now handle device addition and removal, as well as module insertion and\ndeletion (though the IOC4 IDE driver requires further work before module\ndeletion will work).  The core driver now takes care of allocating PCI\nresources and data which must be shared between subdrivers, to clearly\ndelineate module ownership of these items.\n\nSigned-off-by: Brent Casavant \u003cbcasavan@sgi.com\u003e\nAcked-by: Pat Gefre \u003cpfg@sgi.com\nAcked-by: Jeremy Higdon \u003cjeremy@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5b37b700f7c491a9320f4e29472bbaf23dded8fd",
      "tree": "e8a77c322bec5e75f0524c99f3be61645560b3c3",
      "parents": [
        "da3caa204ca40c32dcb751ebead2a6835b83e8d1"
      ],
      "author": {
        "name": "Kumar Gala",
        "email": "galak@freescale.com",
        "time": "Tue Jun 21 17:15:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:23 2005 -0700"
      },
      "message": "[PATCH] ppc32: Added support for new MPC8548 family of PowerQUICC III processors\n\nAdded descriptions of the new MPC8548 family processors, e500 core and\nperipherals.\n\nSigned-off-by: Kumar Gala \u003ckumar.gala@freescale.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f14f75b81187cdbe10cc53a521bf9fdf97b59f8c",
      "tree": "5c0d48c8a3338e6f1747e6cd55f699be96ffef1a",
      "parents": [
        "2caaad41e4aa8f5dd999695b4ddeaa0e7f3912a4"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@wildopensource.com",
        "time": "Tue Jun 21 17:15:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:18 2005 -0700"
      },
      "message": "[PATCH] ia64 uncached alloc\n\nThis patch contains the ia64 uncached page allocator and the generic\nallocator (genalloc).  The uncached allocator was formerly part of the SN2\nmspec driver but there are several other users of it so it has been split\noff from the driver.\n\nThe generic allocator can be used by device driver to manage special memory\netc.  The generic allocator is based on the allocator from the sym53c8xx_2\ndriver.\n\nVarious users on ia64 needs uncached memory.  The SGI SN architecture requires\nit for inter-partition communication between partitions within a large NUMA\ncluster.  The specific user for this is the XPC code.  Another application is\nlarge MPI style applications which use it for synchronization, on SN this can\nbe done using special \u0027fetchop\u0027 operations but it also benefits non SN\nhardware which may use regular uncached memory for this purpose.  Performance\nof doing this through uncached vs cached memory is pretty substantial.  This\nis handled by the mspec driver which I will push out in a seperate patch.\n\nRather than creating a specific allocator for just uncached memory I came up\nwith genalloc which is a generic purpose allocator that can be used by device\ndrivers and other subsystems as they please.  For instance to handle onboard\ndevice memory.  It was derived from the sym53c7xx_2 driver\u0027s allocator which\nis also an example of a potential user (I am refraining from modifying sym2\nright now as it seems to have been under fairly heavy development recently).\n\nOn ia64 memory has various properties within a granule, ie.  it isn\u0027t safe to\naccess memory as uncached within the same granule as currently has memory\naccessed in cached mode.  The regular system therefore doesn\u0027t utilize memory\nin the lower granules which is mixed in with device PAL code etc.  The\nuncached driver walks the EFI memmap and pulls out the spill uncached pages\nand sticks them into the uncached pool.  Only after these chunks have been\nutilized, will it start converting regular cached memory into uncached memory.\nHence the reason for the EFI related code additions.\n\nSigned-off-by: Jes Sorensen \u003cjes@wildopensource.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ae7c03943fca73f23bc0cdb938070f41b98101f",
      "tree": "d4b3a7369896af7aa7bb58d0d1699be91fc4aa0d",
      "parents": [
        "578c2fd6a7f378434655e5c480e23152a3994404"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Tue Jun 21 17:14:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:18 2005 -0700"
      },
      "message": "[PATCH] Periodically drain non local pagesets\n\nThe pageset array can potentially acquire a huge amount of memory on large\nNUMA systems.  F.e.  on a system with 512 processors and 256 nodes there\nwill be 256*512 pagesets.  If each pageset only holds 5 pages then we are\ntalking about 655360 pages.With a 16K page size on IA64 this results in\npotentially 10 Gigabytes of memory being trapped in pagesets.  The typical\ncases are much less for smaller systems but there is still the potential of\nmemory being trapped in off node pagesets.  Off node memory may be rarely\nused if local memory is available and so we may potentially have memory in\nseldom used pagesets without this patch.\n\nThe slab allocator flushes its per cpu caches every 2 seconds.  The\nfollowing patch flushes the off node pageset caches in the same way by\ntying into the slab flush.\n\nThe patch also changes /proc/zoneinfo to include the number of pages\ncurrently in each pageset.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c2f29ea111e3344ed48257c2a142c3db514e1529",
      "tree": "6750edefb1f08a6be545250fdaca72fa211ef338",
      "parents": [
        "83e5d8f7253cb7b14472385a6d57df1e9f848e8e"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Tue Jun 21 17:14:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:17 2005 -0700"
      },
      "message": "[PATCH] __read_page_state(): pass unsigned long instead of unsigned\n\nBy making the offset argument of __read_page_state an unsigned long instead of\nunsigned, we can avoid forcing the compiler to sign extend a usually constant\nargument.  This saves 1 instruction on x86-64.\n\nSigned-off-by: Benjamin LaHaise \u003cbenjamin.c.lahaise@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "83e5d8f7253cb7b14472385a6d57df1e9f848e8e",
      "tree": "bafb314103aefbb5699aed2b2b284d8954a888d9",
      "parents": [
        "1ad539b2bd89bf2e129123eb24d5bcc4484a35de"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Tue Jun 21 17:14:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:17 2005 -0700"
      },
      "message": "[PATCH] __mod_page_state(): pass unsigned long instead of unsigned\n\nBy making the offset argument of __mod_page_state an unsigned long instead\nof unsigned, we can avoid forcing the compiler to sign extend a usually\nconstant argument.  This saves 1 instruction on x86-64.\n\nSigned-off-by: Benjamin LaHaise \u003cbenjamin.c.lahaise@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1ad539b2bd89bf2e129123eb24d5bcc4484a35de",
      "tree": "e416e208cdbd5d9890d39e39384e4ec913c26ef6",
      "parents": [
        "cbe37d093707762fc0abb280781e6a82a9d8d568"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Tue Jun 21 17:14:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:17 2005 -0700"
      },
      "message": "[PATCH] vm: try_to_free_pages unused argument\n\ntry_to_free_pages accepts a third argument, order, but hasn\u0027t used it since\nbefore 2.6.0.  The following patch removes the argument and updates all the\ncalls to try_to_free_pages.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cbe37d093707762fc0abb280781e6a82a9d8d568",
      "tree": "8af4a268765346655291f1ef27df12d11825269c",
      "parents": [
        "73219d178051691a56d57184d8c7f6d0cbe3c5c1"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Tue Jun 21 17:14:52 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:17 2005 -0700"
      },
      "message": "[PATCH] mm: remove PG_highmem\n\nRemove PG_highmem, to save a page flag.  Use is_highmem() instead.  It\u0027ll\ngenerate a little more code, but we don\u0027t use PageHigheMem() in many places.\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1363c3cd8603a913a27e2995dccbd70d5312d8e6",
      "tree": "405e7fc1ef44678f3ca0a54c536d0457e6e80f45",
      "parents": [
        "e7c8d5c9955a4d2e88e36b640563f5d6d5aba48a"
      ],
      "author": {
        "name": "Wolfgang Wander",
        "email": "wwc@rentec.com",
        "time": "Tue Jun 21 17:14:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:16 2005 -0700"
      },
      "message": "[PATCH] Avoiding mmap fragmentation\n\nIngo recently introduced a great speedup for allocating new mmaps using the\nfree_area_cache pointer which boosts the specweb SSL benchmark by 4-5% and\ncauses huge performance increases in thread creation.\n\nThe downside of this patch is that it does lead to fragmentation in the\nmmap-ed areas (visible via /proc/self/maps), such that some applications\nthat work fine under 2.4 kernels quickly run out of memory on any 2.6\nkernel.\n\nThe problem is twofold:\n\n  1) the free_area_cache is used to continue a search for memory where\n     the last search ended.  Before the change new areas were always\n     searched from the base address on.\n\n     So now new small areas are cluttering holes of all sizes\n     throughout the whole mmap-able region whereas before small holes\n     tended to close holes near the base leaving holes far from the base\n     large and available for larger requests.\n\n  2) the free_area_cache also is set to the location of the last\n     munmap-ed area so in scenarios where we allocate e.g.  five regions of\n     1K each, then free regions 4 2 3 in this order the next request for 1K\n     will be placed in the position of the old region 3, whereas before we\n     appended it to the still active region 1, placing it at the location\n     of the old region 2.  Before we had 1 free region of 2K, now we only\n     get two free regions of 1K -\u003e fragmentation.\n\nThe patch addresses thes issues by introducing yet another cache descriptor\ncached_hole_size that contains the largest known hole size below the\ncurrent free_area_cache.  If a new request comes in the size is compared\nagainst the cached_hole_size and if the request can be filled with a hole\nbelow free_area_cache the search is started from the base instead.\n\nThe results look promising: Whereas 2.6.12-rc4 fragments quickly and my\n(earlier posted) leakme.c test program terminates after 50000+ iterations\nwith 96 distinct and fragmented maps in /proc/self/maps it performs nicely\n(as expected) with thread creation, Ingo\u0027s test_str02 with 20000 threads\nrequires 0.7s system time.\n\nTaking out Ingo\u0027s patch (un-patch available per request) by basically\ndeleting all mentions of free_area_cache from the kernel and starting the\nsearch for new memory always at the respective bases we observe: leakme\nterminates successfully with 11 distinctive hardly fragmented areas in\n/proc/self/maps but thread creating is gringdingly slow: 30+s(!) system\ntime for Ingo\u0027s test_str02 with 20000 threads.\n\nNow - drumroll ;-) the appended patch works fine with leakme: it ends with\nonly 7 distinct areas in /proc/self/maps and also thread creation seems\nsufficiently fast with 0.71s for 20000 threads.\n\nSigned-off-by: Wolfgang Wander \u003cwwc@rentec.com\u003e\nCredit-to: \"Richard Purdie\" \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e (partly)\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e7c8d5c9955a4d2e88e36b640563f5d6d5aba48a",
      "tree": "f04f7b0d08cbc46d2f190a85904a3dd696dc6e88",
      "parents": [
        "63551ae0feaaa23807ebea60de1901564bbef32e"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "christoph@lameter.com",
        "time": "Tue Jun 21 17:14:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:16 2005 -0700"
      },
      "message": "[PATCH] node local per-cpu-pages\n\nThis patch modifies the way pagesets in struct zone are managed.\n\nEach zone has a per-cpu array of pagesets.  So any particular CPU has some\nmemory in each zone structure which belongs to itself.  Even if that CPU is\nnot local to that zone.\n\nSo the patch relocates the pagesets for each cpu to the node that is nearest\nto the cpu instead of allocating the pagesets in the (possibly remote) target\nzone.  This means that the operations to manage pages on remote zone can be\ndone with information available locally.\n\nWe play a macro trick so that non-NUMA pmachines avoid the additional\npointer chase on the page allocator fastpath.\n\nAIM7 benchmark on a 32 CPU SGI Altix\n\nw/o patches:\nTasks    jobs/min  jti  jobs/min/task      real       cpu\n    1      484.68  100       484.6769     12.01      1.97   Fri Mar 25 11:01:42 2005\n  100    27140.46   89       271.4046     21.44    148.71   Fri Mar 25 11:02:04 2005\n  200    30792.02   82       153.9601     37.80    296.72   Fri Mar 25 11:02:42 2005\n  300    32209.27   81       107.3642     54.21    451.34   Fri Mar 25 11:03:37 2005\n  400    34962.83   78        87.4071     66.59    588.97   Fri Mar 25 11:04:44 2005\n  500    31676.92   75        63.3538     91.87    742.71   Fri Mar 25 11:06:16 2005\n  600    36032.69   73        60.0545     96.91    885.44   Fri Mar 25 11:07:54 2005\n  700    35540.43   77        50.7720    114.63   1024.28   Fri Mar 25 11:09:49 2005\n  800    33906.70   74        42.3834    137.32   1181.65   Fri Mar 25 11:12:06 2005\n  900    34120.67   73        37.9119    153.51   1325.26   Fri Mar 25 11:14:41 2005\n 1000    34802.37   74        34.8024    167.23   1465.26   Fri Mar 25 11:17:28 2005\n\nwith slab API changes and pageset patch:\n\nTasks    jobs/min  jti  jobs/min/task      real       cpu\n    1      485.00  100       485.0000     12.00      1.96   Fri Mar 25 11:46:18 2005\n  100    28000.96   89       280.0096     20.79    150.45   Fri Mar 25 11:46:39 2005\n  200    32285.80   79       161.4290     36.05    293.37   Fri Mar 25 11:47:16 2005\n  300    40424.15   84       134.7472     43.19    438.42   Fri Mar 25 11:47:59 2005\n  400    39155.01   79        97.8875     59.46    590.05   Fri Mar 25 11:48:59 2005\n  500    37881.25   82        75.7625     76.82    730.19   Fri Mar 25 11:50:16 2005\n  600    39083.14   78        65.1386     89.35    872.79   Fri Mar 25 11:51:46 2005\n  700    38627.83   77        55.1826    105.47   1022.46   Fri Mar 25 11:53:32 2005\n  800    39631.94   78        49.5399    117.48   1169.94   Fri Mar 25 11:55:30 2005\n  900    36903.70   79        41.0041    141.94   1310.78   Fri Mar 25 11:57:53 2005\n 1000    36201.23   77        36.2012    160.77   1458.31   Fri Mar 25 12:00:34 2005\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Shobhit Dayal \u003cshobhit@calsoftinc.com\u003e\nSigned-off-by: Shai Fultheim \u003cShai@Scalex86.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "63551ae0feaaa23807ebea60de1901564bbef32e",
      "tree": "f6f97f60f83c3e9813bdfcc6039c499997b1ea10",
      "parents": [
        "1e7e5a9048b30c57ba1ddaa6cdf59b21b65cde99"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Tue Jun 21 17:14:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:15 2005 -0700"
      },
      "message": "[PATCH] Hugepage consolidation\n\nA lot of the code in arch/*/mm/hugetlbpage.c is quite similar.  This patch\nattempts to consolidate a lot of the code across the arch\u0027s, putting the\ncombined version in mm/hugetlb.c.  There are a couple of uglyish hacks in\norder to covert all the hugepage archs, but the result is a very large\nreduction in the total amount of code.  It also means things like hugepage\nlazy allocation could be implemented in one place, instead of six.\n\nTested, at least a little, on ppc64, i386 and x86_64.\n\nNotes:\n\t- this patch changes the meaning of set_huge_pte() to be more\n\t  analagous to set_pte()\n\t- does SH4 need s special huge_ptep_get_and_clear()??\n\nAcked-by: William Lee Irwin \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e7e5a9048b30c57ba1ddaa6cdf59b21b65cde99",
      "tree": "26eb9c483718ca1a0fad23597c0dfd3a69e9f080",
      "parents": [
        "0c35bbadc59f5ed105c34471143eceb4c0dd9c95"
      ],
      "author": {
        "name": "Martin Hicks",
        "email": "mort@sgi.com",
        "time": "Tue Jun 21 17:14:43 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:14 2005 -0700"
      },
      "message": "[PATCH] VM: rate limit early reclaim\n\nWhen early zone reclaim is turned on the LRU is scanned more frequently when a\nzone is low on memory.  This limits when the zone reclaim can be called by\nskipping the scan if another thread (either via kswapd or sync reclaim) is\nalready reclaiming from the zone.\n\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0c35bbadc59f5ed105c34471143eceb4c0dd9c95",
      "tree": "d82de388e8c0a38fa4b1d27ad372e84c9f01e013",
      "parents": [
        "753ee728964e5afb80c17659cc6c3a6fd0a42fe0"
      ],
      "author": {
        "name": "Martin Hicks",
        "email": "mort@sgi.com",
        "time": "Tue Jun 21 17:14:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:14 2005 -0700"
      },
      "message": "[PATCH] VM: add __GFP_NORECLAIM\n\nWhen using the early zone reclaim, it was noticed that allocating new pages\nthat should be spread across the whole system caused eviction of local pages.\n\nThis adds a new GFP flag to prevent early reclaim from happening during\ncertain allocation attempts.  The example that is implemented here is for page\ncache pages.  We want page cache pages to be spread across the whole system,\nand we don\u0027t want page cache pages to evict other pages to get local memory.\n\nSigned-off-by:  Martin Hicks \u003cmort@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "753ee728964e5afb80c17659cc6c3a6fd0a42fe0",
      "tree": "41c9a7700d0858c1f77c5bdaba97e5b636f69b06",
      "parents": [
        "bfbb38fb808ac23ef44472d05d9bb36edfb49ed0"
      ],
      "author": {
        "name": "Martin Hicks",
        "email": "mort@sgi.com",
        "time": "Tue Jun 21 17:14:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:14 2005 -0700"
      },
      "message": "[PATCH] VM: early zone reclaim\n\nThis is the core of the (much simplified) early reclaim.  The goal of this\npatch is to reclaim some easily-freed pages from a zone before falling back\nonto another zone.\n\nOne of the major uses of this is NUMA machines.  With the default allocator\nbehavior the allocator would look for memory in another zone, which might be\noff-node, before trying to reclaim from the current zone.\n\nThis adds a zone tuneable to enable early zone reclaim.  It is selected on a\nper-zone basis and is turned on/off via syscall.\n\nAdding some extra throttling on the reclaim was also required (patch\n4/4).  Without the machine would grind to a crawl when doing a \"make -j\"\nkernel build.  Even with this patch the System Time is higher on\naverage, but it seems tolerable.  Here are some numbers for kernbench\nruns on a 2-node, 4cpu, 8Gig RAM Altix in the \"make -j\" run:\n\n\t\t\twall  user   sys   %cpu  ctx sw.  sleeps\n\t\t\t----  ----   ---   ----   ------  ------\nNo patch\t\t1009  1384   847   258   298170   504402\nw/patch, no reclaim     880   1376   667   288   254064   396745\nw/patch \u0026 reclaim       1079  1385   926   252   291625   548873\n\nThese numbers are the average of 2 runs of 3 \"make -j\" runs done right\nafter system boot.  Run-to-run variability for \"make -j\" is huge, so\nthese numbers aren\u0027t terribly useful except to seee that with reclaim\nthe benchmark still finishes in a reasonable amount of time.\n\nI also looked at the NUMA hit/miss stats for the \"make -j\" runs and the\nreclaim doesn\u0027t make any difference when the machine is thrashing away.\n\nDoing a \"make -j8\" on a single node that is filled with page cache pages\ntakes 700 seconds with reclaim turned on and 735 seconds without reclaim\n(due to remote memory accesses).\n\nThe simple zone_reclaim syscall program is at\nhttp://www.bork.org/~mort/sgi/zone_reclaim.c\n\nSigned-off-by: Martin Hicks \u003cmort@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39c715b71740c4a78ba4769fb54826929bac03cb",
      "tree": "94dd679dfc8e6c2db65971739aa8c8c6206f8174",
      "parents": [
        "84929801e14d968caeb84795bfbb88f04283fbd9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 21 17:14:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 18:46:13 2005 -0700"
      },
      "message": "[PATCH] smp_processor_id() cleanup\n\nThis patch implements a number of smp_processor_id() cleanup ideas that\nArjan van de Ven and I came up with.\n\nThe previous __smp_processor_id/_smp_processor_id/smp_processor_id API\nspaghetti was hard to follow both on the implementational and on the\nusage side.\n\nSome of the complexity arose from picking wrong names, some of the\ncomplexity comes from the fact that not all architectures defined\n__smp_processor_id.\n\nIn the new code, there are two externally visible symbols:\n\n - smp_processor_id(): debug variant.\n\n - raw_smp_processor_id(): nondebug variant. Replaces all existing\n   uses of _smp_processor_id() and __smp_processor_id(). Defined\n   by every SMP architecture in include/asm-*/smp.h.\n\nThere is one new internal symbol, dependent on DEBUG_PREEMPT:\n\n - debug_smp_processor_id(): internal debug variant, mapped to\n                             smp_processor_id().\n\nAlso, i moved debug_smp_processor_id() from lib/kernel_lock.c into a new\nlib/smp_processor_id.c file.  All related comments got updated and/or\nclarified.\n\nI have build/boot tested the following 8 .config combinations on x86:\n\n {SMP,UP} x {PREEMPT,!PREEMPT} x {DEBUG_PREEMPT,!DEBUG_PREEMPT}\n\nI have also build/boot tested x64 on UP/PREEMPT/DEBUG_PREEMPT.  (Other\narchitectures are untested, but should work just fine.)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "18b8afc771102b1b6af97962808291a7d27f52af",
      "tree": "4d278a45ab07b5ba81dfa0b737f5174ad9ee7f79",
      "parents": [
        "e45b1be8bcb3643808975a426fa3e201a2588e87"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 21 14:01:57 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 14:01:57 2005 -0700"
      },
      "message": "[NETFILTER]: Kill nf_debug\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e45b1be8bcb3643808975a426fa3e201a2588e87",
      "tree": "0c461d7bd90d0c2fb462b42e664cf8a099c750ec",
      "parents": [
        "c9e3e8b6958e02230079e6817862ea2968509866"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 21 14:01:30 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 14:01:30 2005 -0700"
      },
      "message": "[NETFILTER]: Kill lockhelp.h\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18b504e25fd617bee8830d2cdcaff7fb7b5931bb",
      "tree": "6e7daab06749832d0e40ffae6572abc297d02d11",
      "parents": [
        "1d345dac1f30af1cd9f3a1faa12f9f18f17f236e"
      ],
      "author": {
        "name": "Alexey Kuznetsov",
        "email": "kuznet@ms2.inr.ac.ru",
        "time": "Tue Jun 21 12:38:48 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 12:38:48 2005 -0700"
      },
      "message": "[NETLINK]: netlink_callback structure needs 5 args not 4\n\nnet/ipv4/tcp_diag.c uses up to -\u003eargs[4]\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d345dac1f30af1cd9f3a1faa12f9f18f17f236e",
      "tree": "42a7deda7589edf704fe60dc262046755bd3f6a8",
      "parents": [
        "fb395884576684ebb54b19b1054f4caed589d5f0",
        "87c8a4433b608261a9becdb0ce2d2f2ed4b71d05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 20 16:00:33 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 20 16:00:33 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n"
    },
    {
      "commit": "988d186de5b6966a71a8cc52e6cb4895fd2f7799",
      "tree": "428cb6c29cbe2563eb91f9f2a03512b7eafa9449",
      "parents": [
        "6fa5c828c7fb6beef7035864bd2b18e7386fbdd5"
      ],
      "author": {
        "name": "Maneesh Soni",
        "email": "maneesh@in.ibm.com",
        "time": "Tue May 31 10:39:14 2005 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:37 2005 -0700"
      },
      "message": "[PATCH] sysfs-iattr: add sysfs_setattr\n\no This adds -\u003ei_op-\u003esetattr VFS method for sysfs inodes. The changed\n  attribues are saved in the persistent sysfs_dirent structure as a pointer\n  to struct iattr. The struct iattr is allocated only for those sysfs_dirent\u0027s\n  for which default attributes are getting changed. Thanks to Jon Smirl for\n  this suggestion.\n\nSigned-off-by: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0a3e7eeabc9f76b7496488aad2d11626ff6a2a4f",
      "tree": "0cab827910fe12199d666b84919d88fb881fb82d",
      "parents": [
        "f2d03e1b3f00f1c5971463ab0101bef0c521ad3b"
      ],
      "author": {
        "name": "Yani Ioannou",
        "email": "yani.ioannou@gmail.com",
        "time": "Tue May 17 22:59:05 2005 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:36 2005 -0700"
      },
      "message": "[PATCH] I2C: add i2c sensor_device_attribute and macros\n\nThis patch creates a new header with a potential standard i2c sensor\nattribute type (which simply includes an int representing the sensor\nnumber/index) and the associated macros, SENSOR_DEVICE_ATTR to define\na static attribute and to_sensor_dev_attr to get a\nsensor_device_attribute reference from an embedded device_attribute\nreference.\n\nSigned-off-by: Yani Ioannou \u003cyani.ioannou@gmail.com\u003e\n"
    },
    {
      "commit": "54b6f35c99974e99e64c05c2895718355123c55f",
      "tree": "321d08c397bc26b49c706ca5b86de7003c2329c0",
      "parents": [
        "ca2b94ba12f3c36fd3d6ed9d38b3798d4dad0d8b"
      ],
      "author": {
        "name": "Yani Ioannou",
        "email": "yani.ioannou@gmail.com",
        "time": "Tue May 17 06:39:34 2005 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:31 2005 -0700"
      },
      "message": "[PATCH] Driver core: change device_attribute callbacks\n\nThis patch adds the device_attribute paramerter to the\ndevice_attribute store and show sysfs callback functions, and passes a\nreference to the attribute when the callbacks are called.\n\nSigned-off-by: Yani Ioannou \u003cyani.ioannou@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "acaefc25d21f850e47ecc5098d1e0bc442c526be",
      "tree": "fbc7aa605c71667507b54d3b3320f9a999458dd4",
      "parents": [
        "4109aca06cb7b042ea791d0f9d3c9615bc3bf5cd"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed May 18 14:40:59 2005 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:30 2005 -0700"
      },
      "message": "[PATCH] libfs: add simple attribute files\n\nBased on the discussion about spufs attributes, this is my suggestion\nfor a more generic attribute file support that can be used by both\ndebugfs and spufs.\n\nSimple attribute files behave similarly to sequential files from\na kernel programmers perspective in that a standard set of file\noperations is provided and only an open operation needs to\nbe written that registers file specific get() and set() functions.\n\nThese operations are defined as\n\nvoid foo_set(void *data, u64 val); and\nu64 foo_get(void *data);\n\nwhere data is the inode-\u003eu.generic_ip pointer of the file and the\noperations just need to make send of that pointer. The infrastructure\nmakes sure this works correctly with concurrent access and partial\nread calls.\n\nA macro named DEFINE_SIMPLE_ATTRIBUTE is provided to further simplify\nusing the attributes.\n\nThis patch already contains the changes for debugfs to use attributes\nfor its internal file operations.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4b45099b75832434c5113b9aed1499f8a69d13d5",
      "tree": "dbb6cf4a3937120be0cfd6f4699926fa4689ac8d",
      "parents": [
        "f409661877a25d11c2495bcd879807f17c286684"
      ],
      "author": {
        "name": "Keiichiro Tokunaga",
        "email": "tokunaga.keiich@jp.fujitsu.com",
        "time": "Sun May 08 21:28:53 2005 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:29 2005 -0700"
      },
      "message": "[PATCH] Driver core: unregister_node() for hotplug use\n\nThis adds a generic function \u0027unregister_node()\u0027.\nIt is used to remove objects of a node going away\nfor hotplug.  All the devices on the node must be\nunregistered before calling this function.\n\nSigned-off-by: Keiichiro Tokunaga \u003ctokunaga.keiich@jp.fujitsu.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\ndiff -puN drivers/base/node.c~numa_hp_base drivers/base/node.c\n"
    },
    {
      "commit": "0d3e5a2e39b6ba2974e9e7c2a429018c45de8e76",
      "tree": "30e584b73c356adce49dcc9df75332abaef95470",
      "parents": [
        "b86c1df1f98d16c999423a3907eb40a9423f481e"
      ],
      "author": {
        "name": "Patrick Mochel",
        "email": "mochel@digitalimplant.org",
        "time": "Tue Apr 05 23:46:33 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:27 2005 -0700"
      },
      "message": "[PATCH] Driver Core: fix bk-driver-core kills ppc64\n\nThere\u0027s no check to see if the device is already bound to a driver, which\ncould do bad things.  The first thing to go wrong is that it will try to match\na driver with a device already bound to one.  In some cases (it appears with\nUSB with drivers/usb/core/usb.c::usb_match_id()), some drivers will match a\ndevice based on the class type, so it would be common (especially for HID\ndevices) to match a device that is already bound.\n\nThe fun comes when -\u003eprobe() is called, it fails, then\ndriver_probe_device() does this:\n\n\tdev-\u003edriver \u003d NULL;\n\nLater on, that pointer could be be dereferenced without checking and cause\nhell to break loose.\n\nThis problem could be nasty. It\u0027s very hardware dependent, since some\ndevices could have a different set of matching qualifiers than others.\n\nNow, I don\u0027t quite see exactly where/how you were getting that crash.\nYou\u0027re dereferencing bad memory, but I\u0027m not sure which pointer was bad\nand where it came from, but it could have come from a couple of different\nplaces.\n\nThe patch below will hopefully fix it all up for you. It\u0027s against\n2.6.12-rc2-mm1, and does the following:\n\n- Move logic to driver_probe_device() and comments uncommon returns:\n  1 - If device is bound\n  0 - If device not bound, and no error\n  error - If there was an error.\n\n- Move locking to caller of that function, since we want to lock a\n  device for the entire time we\u0027re trying to bind it to a driver (to\n  prevent against a driver being loaded at the same time).\n\n- Update __device_attach() and __driver_attach() to do that locking.\n\n- Check if device is already bound in __driver_attach()\n\n- Update the converse device_release_driver() so it locks the device\n  around all of the operations.\n\n- Mark driver_probe_device() as static and remove export. It\u0027s an\n  internal function, it should stay that way, and there are no other\n  callers. If there is ever a need to export it, we can audit it as\n  necessary.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n"
    },
    {
      "commit": "36239577cfb6b9a7c111209536b54200b0252ebf",
      "tree": "f8fa5034fbb31d273d0889119cbc20e4c4b0c983",
      "parents": [
        "9a881f166f473373589ce6f3fdc47b44a1450e2d"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Thu Mar 24 19:08:30 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:23 2005 -0700"
      },
      "message": "[PATCH] Use a klist for device child lists.\n\n- Use klist iterator in device_for_each_child(), making it safe to use for\n  removing devices.\n- Remove unused list_to_dev() function.\n- Kills all usage of devices_subsys.rwsem.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "63c4f204ffc8219696bda88eb20c9873d007a2fc",
      "tree": "4a787908743ae0360b4e4356326c8912e6954a40",
      "parents": [
        "7dc35cdf69149a7f2b5216ada9bafe359746ac1c"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Thu Mar 24 13:08:05 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:18 2005 -0700"
      },
      "message": "[PATCH] Remove struct device::driver_list.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "7dc35cdf69149a7f2b5216ada9bafe359746ac1c",
      "tree": "bdbcaff7bc9d2ac391aae54bc4cb23ecbf93038f",
      "parents": [
        "6eded061b1263847aedac7469339e99579aec5e5"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Thu Mar 24 13:03:35 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:18 2005 -0700"
      },
      "message": "[PATCH] Remove struct device::bus_list.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8b0c250be489dcbf1a3a33bb4ec4c7f33735a365",
      "tree": "17935d1064101df10ad7bb2f7ed94e6a88af295c",
      "parents": [
        "2287c322b61fced7e0c326a1a9606aa73147e3df"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Thu Mar 24 12:58:57 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:17 2005 -0700"
      },
      "message": "[PATCH] add klist_node_attached() to determine if a node is on a list or not.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\ndiff -Nru a/include/linux/klist.h b/include/linux/klist.h\n"
    },
    {
      "commit": "cb85b6f1cc811ecb9ed4b950206d8941ba710e68",
      "tree": "f017c851e25078c8445ec7045556eb41e364ffdb",
      "parents": [
        "94e7b1c5ff2055571703e38b059afffe17658432"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Thu Mar 24 10:48:35 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:16 2005 -0700"
      },
      "message": "[PATCH] Remove the unused device_find().\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "94e7b1c5ff2055571703e38b059afffe17658432",
      "tree": "469dbd920087ec62acd88b4985437a78c6786c0e",
      "parents": [
        "38fdac3cdce276554b4484a41f8ec2daf81cb2ff"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Mon Mar 21 12:25:36 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:16 2005 -0700"
      },
      "message": "[PATCH] Add a klist to struct device_driver for the devices bound to it.\n\n- Use it in driver_for_each_device() instead of the regular list_head and stop using\n  the bus\u0027s rwsem for protection.\n- Use driver_for_each_device() in driver_detach() so we don\u0027t deadlock on the\n  bus\u0027s rwsem.\n- Remove -\u003edevices.\n- Move klist access and sysfs link access out from under device\u0027s semaphore, since\n  they\u0027re synchronized through other means.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "38fdac3cdce276554b4484a41f8ec2daf81cb2ff",
      "tree": "1bdd0b8b69bd8e13de53036c8ef8b968a0dacc1d",
      "parents": [
        "465c7a3a3a5aabcedd2e43612cac5a12f23da19a"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Mon Mar 21 12:00:18 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:14 2005 -0700"
      },
      "message": "[PATCH] Add a klist to struct bus_type for its drivers.\n\n- Use it in bus_for_each_drv().\n- Use the klist spinlock instead of the bus rwsem.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "465c7a3a3a5aabcedd2e43612cac5a12f23da19a",
      "tree": "392dabbfe84d1de3e84b1eb238bfd09d0ade6c4c",
      "parents": [
        "9a19fea43616066561e221359596ce532e631395"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Mon Mar 21 11:49:14 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:14 2005 -0700"
      },
      "message": "[PATCH] Add a klist to struct bus_type for its devices.\n\n- Use it for bus_for_each_dev().\n- Use the klist spinlock instead of the bus rwsem.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "9a19fea43616066561e221359596ce532e631395",
      "tree": "f776bee1bcb1051bf75323b65fa887347412409e",
      "parents": [
        "6034a080f98b0bbc0a058e2ac65a538f75cffeee"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Mon Mar 21 11:45:16 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:14 2005 -0700"
      },
      "message": "[PATCH] Add initial implementation of klist helpers.\n\nThis klist interface provides a couple of structures that wrap around\nstruct list_head to provide explicit list \"head\" (struct klist) and\nlist \"node\" (struct klist_node) objects. For struct klist, a spinlock\nis included that protects access to the actual list itself. struct\nklist_node provides a pointer to the klist that owns it and a kref\nreference count that indicates the number of current users of that node\nin the list.\n\nThe entire point is to provide an interface for iterating over a list\nthat is safe and allows for modification of the list during the\niteration (e.g. insertion and removal), including modification of the\ncurrent node on the list.\n\nIt works using a 3rd object type - struct klist_iter - that is declared\nand initialized before an iteration. klist_next() is used to acquire the\nnext element in the list. It returns NULL if there are no more items.\nThis klist interface provides a couple of structures that wrap around\nstruct list_head to provide explicit list \"head\" (struct klist) and\nlist \"node\" (struct klist_node) objects. For struct klist, a spinlock\nis included that protects access to the actual list itself. struct\nklist_node provides a pointer to the klist that owns it and a kref\nreference count that indicates the number of current users of that node\nin the list.\n\nThe entire point is to provide an interface for iterating over a list\nthat is safe and allows for modification of the list during the\niteration (e.g. insertion and removal), including modification of the\ncurrent node on the list.\n\nIt works using a 3rd object type - struct klist_iter - that is declared\nand initialized before an iteration. klist_next() is used to acquire the\nnext element in the list. It returns NULL if there are no more items.\nInternally, that routine takes the klist\u0027s lock, decrements the reference\ncount of the previous klist_node and increments the count of the next\nklist_node. It then drops the lock and returns.\n\nThere are primitives for adding and removing nodes to/from a klist.\nWhen deleting, klist_del() will simply decrement the reference count.\nOnly when the count goes to 0 is the node removed from the list.\nklist_remove() will try to delete the node from the list and block\nuntil it is actually removed. This is useful for objects (like devices)\nthat have been removed from the system and must be freed (but must wait\nuntil all accessors have finished).\n\nInternally, that routine takes the klist\u0027s lock, decrements the reference\ncount of the previous klist_node and increments the count of the next\nklist_node. It then drops the lock and returns.\n\nThere are primitives for adding and removing nodes to/from a klist.\nWhen deleting, klist_del() will simply decrement the reference count.\nOnly when the count goes to 0 is the node removed from the list.\nklist_remove() will try to delete the node from the list and block\nuntil it is actually removed. This is useful for objects (like devices)\nthat have been removed from the system and must be freed (but must wait\nuntil all accessors have finished).\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\ndiff -Nru a/include/linux/klist.h b/include/linux/klist.h\n"
    },
    {
      "commit": "fae3cd00255e3e51ffd59fedb1bdb91ec96be395",
      "tree": "59e56a65f4b01f496436bd9b0720737ce1937db4",
      "parents": [
        "07e4a3e27fe414980ddc85a358e5a56abc48b363"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Mon Mar 21 10:59:56 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:13 2005 -0700"
      },
      "message": "[PATCH] Add driver_for_each_device().\n\nNow there\u0027s an iterator for accessing each device bound to a driver.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\nIndex: linux-2.6.12-rc2/drivers/base/driver.c\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n"
    },
    {
      "commit": "af70316af182f4716cc5eec7e0d27fc731d164bd",
      "tree": "22fa4732c8270db8fd3f681355cd83e4b8088847",
      "parents": [
        "eb51b65005737b777e0709683b061d5f82aefd97"
      ],
      "author": {
        "name": "mochel@digitalimplant.org",
        "email": "mochel@digitalimplant.org",
        "time": "Mon Mar 21 10:41:04 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:12 2005 -0700"
      },
      "message": "[PATCH] Add a semaphore to struct device to synchronize calls to its driver.\n\nThis adds a per-device semaphore that is taken before every call from the core to a\ndriver method. This prevents e.g. simultaneous calls to the -\u003esuspend() or -\u003eresume()\nand -\u003eprobe() or -\u003erelease(), potentially saving a whole lot of headaches.\n\nIt also moves us a step closer to removing the bus rwsem, since it protects the fields\nin struct device that are modified by the core.\n\nSigned-off-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cd987d38cc59053e0bab8150ffaca33b109067f3",
      "tree": "68cf99616bd548bff80ca12f37912d9cc4b31edd",
      "parents": [
        "2fc68447df5c76cf254037047b4b02551bd5d760"
      ],
      "author": {
        "name": "gregkh@suse.de",
        "email": "gregkh@suse.de",
        "time": "Wed Mar 23 11:12:38 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:11 2005 -0700"
      },
      "message": "[PATCH] class: remove class_simple code, as no one in the tree is using it anymore.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8561b10f6e7ef0a085709ffc844f74130a067abe",
      "tree": "b25d023ce2d7397081735d20fd0c11ebdfcd603c",
      "parents": [
        "1235686f6e67cf30c460eb77d90a6cb4be57b92f"
      ],
      "author": {
        "name": "gregkh@suse.de",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 15 15:10:13 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:07 2005 -0700"
      },
      "message": "[PATCH] USB: move the usb hcd code to use the new class code.\n\nThis moves a kref into the main hcd structure, which detaches it from\nthe class device structure.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "1235686f6e67cf30c460eb77d90a6cb4be57b92f",
      "tree": "c7ef368a38c8e0c64e09d9e0e8a2a93392a1732c",
      "parents": [
        "7fe845d11ad1b4aac098d40c55275569e143c483"
      ],
      "author": {
        "name": "gregkh@suse.de",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 15 14:26:30 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:04 2005 -0700"
      },
      "message": "[PATCH] INPUT: move to use the new class code, instead of class_simple\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e9ba6365fd4f0d9e7d022c883bd044fbaa48257f",
      "tree": "062476167b5c9cd5ed08a01f223e71c2ece795ee",
      "parents": [
        "70f2817a43c89b784dc2ec3d06ba5bf3064f8235"
      ],
      "author": {
        "name": "gregkh@suse.de",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 15 11:54:21 2005 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:04 2005 -0700"
      },
      "message": "[PATCH] CLASS: move a \"simple\" class logic into the class core.\n\nOne step on improving the class api so that it can not be used incorrectly.\nThis also fixes the module owner issue with the dev files that happened when\nthe devt logic moved to the class core.\n\nBased on a patch originally written by Kay Sievers \u003ckay.sievers@vrfy.org\u003e\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d48593bf208e0d046c35fb0707ae5b23fef8c4ff",
      "tree": "8ee1375b7c7725c11238716646266d9a6d7fbc9f",
      "parents": [
        "8d790d74085833ba2a3e84b5bcd683be4981c29a"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Fri Apr 29 00:58:46 2005 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:01 2005 -0700"
      },
      "message": "[PATCH] Make attributes names const char *\n\nsysfs: make attributes and attribute_group\u0027s names const char *\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8d790d74085833ba2a3e84b5bcd683be4981c29a",
      "tree": "fe3be944882cb1ec272e4fb6782c6caa404a6187",
      "parents": [
        "419cab3fc69588ebe35b845cc3a584ae172463de"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Tue Apr 26 02:34:05 2005 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:01 2005 -0700"
      },
      "message": "[PATCH] make driver\u0027s name be const char *\n\nDriver core:\n  change driver\u0027s, bus\u0027s, class\u0027s and platform device\u0027s names\n  to be const char * so one can use\n            const char *drv_name \u003d \"asdfg\";\n  when initializing structures.\n  Also kill couple of whitespaces.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "419cab3fc69588ebe35b845cc3a584ae172463de",
      "tree": "7886076bcc4970005cbd39c886eb414bb61242a4",
      "parents": [
        "f3b4f3c6dec04c6c8261fe22645f07b39976595a"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Tue Apr 26 02:32:54 2005 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:01 2005 -0700"
      },
      "message": "[PATCH] kset_hotplug_ops-\u003ename shoudl return const char *\n\nkobject: change name() method in kset_hotplug_ops return const char *\n\t since users shoudl not try to modify returned data.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f3b4f3c6dec04c6c8261fe22645f07b39976595a",
      "tree": "9c4ad15f5d5fc7d3a8006396b185bb615386a61c",
      "parents": [
        "e3a15db2415579d5136b9ba9b52fe27c66da8780"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Tue Apr 26 02:32:00 2005 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:00 2005 -0700"
      },
      "message": "[PATCH] Make kobject\u0027s name be const char *\n\nkobject: make kobject\u0027s name const char * since users should not\n\t attempt to change it (except by calling kobject_rename).\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e3a15db2415579d5136b9ba9b52fe27c66da8780",
      "tree": "55a431608174bc96f34233d9ef3e699b1f982183",
      "parents": [
        "eb11d8ffceead1eb3d84366f1687daf2217e883e"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Tue Apr 26 02:31:08 2005 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 15:15:00 2005 -0700"
      },
      "message": "[PATCH] sysfs_{create|remove}_link should take const char *\n\nsysfs: make sysfs_{create|remove}_link to take const char * name.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "246955fe4c38bd706ae30e37c64892c94213775d",
      "tree": "23583698ce7c58e1643414245690afca33618540",
      "parents": [
        "f6e276ee67c0ac9efafd24bc6f7a84aa359656df"
      ],
      "author": {
        "name": "Robert Olsson",
        "email": "Robert.Olsson@data.slu.se",
        "time": "Mon Jun 20 13:36:39 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 13:36:39 2005 -0700"
      },
      "message": "[NETLINK]: fib_lookup() via netlink\n\nBelow is a more generic patch to do fib_lookup via netlink. For others \nwe should say that we discussed this as a way to verify route selection.\nIt\u0027s also possible there are others uses for this.\n\nIn short the fist half of struct fib_result_nl is filled in by caller \nand netlink call fills in the other half and returns it.\n\nIn case anyone is interested there is a corresponding user app to compare \nthe full routing table this was used to test implementation of the LC-trie. \n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6e276ee67c0ac9efafd24bc6f7a84aa359656df",
      "tree": "33e3377739fb67573ef7cba8312f142765ccff79",
      "parents": [
        "f852640e74f71e6dd38146e1149ec1fe6da2fb07"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Jun 20 13:32:05 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 13:32:05 2005 -0700"
      },
      "message": "[ATALK]: endian annotations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd87147eed934eaff92869f3d158697c7239d1d2",
      "tree": "5a5d59c2678767530c2a3299a70ccfc14062b347",
      "parents": [
        "d094cd83c06e06e01d8edb540555f3f64e4081c2"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jun 20 13:21:43 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 13:21:43 2005 -0700"
      },
      "message": "[IPSEC]: Add XFRM_STATE_NOPMTUDISC flag\n\nThis patch adds the flag XFRM_STATE_NOPMTUDISC for xfrm states.  It is\nsimilar to the nopmtudisc on IPIP/GRE tunnels.  It only has an effect\non IPv4 tunnel mode states.  For these states, it will ensure that the\nDF flag is always cleared.\n\nThis is primarily useful to work around ICMP blackholes.\n\nIn future this flag could also allow a larger MTU to be set within the\ntunnel just like IPIP/GRE tunnels.  This could be useful for short haul\ntunnels where temporary fragmentation outside the tunnel is desired over\nsmaller fragments inside the tunnel.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: James Morris \u003cjmorris@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0603eac0d6b77acac5924a2734228cbaf072f993",
      "tree": "e51536aab48997cc74f83bc618b95a9d88df12f2",
      "parents": [
        "b6544c0b4cf2bd96195f3cdb7cebfb35090fc557"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Jun 18 22:54:36 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:54:36 2005 -0700"
      },
      "message": "[IPSEC]: Add XFRMA_SA/XFRMA_POLICY for delete notification\n\nThis patch changes the format of the XFRM_MSG_DELSA and\nXFRM_MSG_DELPOLICY notification so that the main message\nsent is of the same format as that received by the kernel\nif the original message was via netlink.  This also means\nthat we won\u0027t lose the byid information carried in km_event.\n\nSince this user interface is introduced by Jamal\u0027s patch\nwe can still afford to change it.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1797754ea7ee5e0d859b0a32506ff999f8d5fb71",
      "tree": "a35d05f9106d903412a6fff714be38427fc4d0fa",
      "parents": [
        "af0d114176720c2100dfa624ab433796d333d730"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Jun 18 22:53:48 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:53:48 2005 -0700"
      },
      "message": "[NETLINK]: Introduce NLMSG_NEW macro to better handle netlink flags\n\nIntroduces a new macro NLMSG_NEW which extends NLMSG_PUT but takes\na flags argument. NLMSG_PUT stays there for compatibility but now\ncalls NLMSG_NEW with flags \u003d\u003d 0. NLMSG_PUT_ANSWER is renamed to\nNLMSG_NEW_ANSWER which now also takes a flags argument.\n\nAlso converts the users of NLMSG_PUT_ANSWER to use NLMSG_NEW_ANSWER\nand fixes the two direct users of __nlmsg_put to either provide\nthe flags or use NLMSG_NEW(_ANSWER).\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f48bcd4ef11a69add178fc3111a77e7ee95bacd",
      "tree": "01891abeb950c721d37ac9247a669e4f2c904f5f",
      "parents": [
        "e386c6eb431ca2e435d0202ad6997f3d2ccab2ce"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Jun 18 22:52:36 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:52:36 2005 -0700"
      },
      "message": "[RTNETLINK]: Add RTA_(PUT|GET) shortcuts for u8, u16, and flag\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c52a3f89f882b84fc422000655c023fe73e701cf",
      "tree": "25069c0f52b19bc0ffef80aa0cb41193e0a483f6",
      "parents": [
        "88121aea7bdb5fdc527388e262381829c4e1db16"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Jun 18 22:51:26 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:51:26 2005 -0700"
      },
      "message": "[NETLINK]: Fix RTA_NEST_CANCEL().\n\nOnly skb_trim() if \u0027start\u0027 is non-NULL.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7fb64db001f83ece669c76a02d8ec2fdb1dd307",
      "tree": "f8b8375b8b619c00db3399a4ef6f67e2636dfac7",
      "parents": [
        "00768244923f66801958a8d2d103f7b65608c9b6"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Jun 18 22:50:55 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:50:55 2005 -0700"
      },
      "message": "[NETLINK]: Neighbour table configuration and statistics via rtnetlink\n\nTo retrieve the neighbour tables send RTM_GETNEIGHTBL with the\nNLM_F_DUMP flag set. Every neighbour table configuration is\nspread over multiple messages to avoid running into message\nsize limits on systems with many interfaces. The first message\nin the sequence transports all not device specific data such as\nstatistics, configuration, and the default parameter set.\nThis message is followed by 0..n messages carrying device\nspecific parameter sets.\n\nAlthough the ordering should be sufficient, NDTA_NAME can be\nused to identify sequences. The initial message can be identified\nby checking for NDTA_CONFIG. The device specific messages do\nnot contain this TLV but have NDTPA_IFINDEX set to the\ncorresponding interface index.\n\nTo change neighbour table attributes, send RTM_SETNEIGHTBL\nwith NDTA_NAME set. Changeable attribute include NDTA_THRESH[1-3],\nNDTA_GC_INTERVAL, and all TLVs in NDTA_PARMS unless marked\notherwise. Device specific parameter sets can be changed by\nsetting NDTPA_IFINDEX to the interface index of the corresponding\ndevice.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00768244923f66801958a8d2d103f7b65608c9b6",
      "tree": "8d4ec56bd4edd9e3bb47938d01ef809d60a83aa3",
      "parents": [
        "f88a10d65620d97b6d0a7e352a3493c1b7e7409b"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Jun 18 22:50:38 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:50:38 2005 -0700"
      },
      "message": "[NETLINK] Routing attribute related shortcuts\n\n RTA_GET_U(32|64)(tlv)\n   Assumes TLV is a u32/u64 field and returns its value.\n\n RTA_GET_[M]SECS(tlv)\n   Assumes TLV is a u64 and transports jiffies converted\n   to seconds or milliseconds and returns its value.\n\n RTA_PUT_U(32|64)(skb, type, value)\n   Appends %value as fixed u32/u64 to %skb as TLV %type.\n\n RTA_PUT_[M]SECS(skb, type, jiffies)\n   Converts %jiffies to secs/msecs and appends it as u64\n   to %skb as TLV %type.\n\n RTA_PUT_STRING(skb, type, string)\n   Appends %NUL terminated %string to %skb as TLV %type.\n\n RTA_NEST(skb, type)\n   Starts a nested TLV %type and returns the nesting handle.\n\n RTA_NEST_END(skb, nesting_handle)\n   Finishes the nested TLV %nesting_handle, must be called\n   symmetric to RTA_NEST(). Returns skb-\u003elen\n\n RTA_NEST_CANCEL(skb, nesting_handle)\n   Cancel the nested TLV %nesting_handle and trim nested TLV\n   from skb again, returns -1.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f88a10d65620d97b6d0a7e352a3493c1b7e7409b",
      "tree": "8d38311e479d5deb11cfab2c052c83c8b1321132",
      "parents": [
        "e52c1f17e4ea8e61bd26eb25f1a184202693c2b9"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Jun 18 22:50:12 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:50:12 2005 -0700"
      },
      "message": "[NETLINK]: New message building macros\n\n NLMSG_PUT_ANSWER(skb, nlcb, type, length)\n   Start a new netlink message as answer to a request,\n   returns the message header.\n\n NLMSG_END(skb, nlh)\n   End a netlink message, fixes total message length,\n   returns skb-\u003elen.\n\n NLMSG_CANCEL(skb, nlh)\n   Cancel the building process and trim whole message\n   from skb again, returns -1.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e87506fcc734647c7b2497eee4eb81e785c857a",
      "tree": "bb8863c59fdef2628f17b6773c52801792a57722",
      "parents": [
        "60236fdd08b2169045a3bbfc5ffe1576e6c3c17b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Sat Jun 18 22:47:59 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:47:59 2005 -0700"
      },
      "message": "[NET] Generalise tcp_listen_opt\n\nThis chunks out the accept_queue and tcp_listen_opt code and moves\nthem to net/core/request_sock.c and include/net/request_sock.h, to\nmake it useful for other transport protocols, DCCP being the first one\nto use it.\n\nNext patches will rename tcp_listen_opt to accept_sock and remove the\ninline tcp functions that just call a reqsk_queue_ function.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60236fdd08b2169045a3bbfc5ffe1576e6c3c17b",
      "tree": "4541c682cc72daf560ec516e2b5868089a88b6ea",
      "parents": [
        "2e6599cb899ba4b133f42cbf9d2b1883d2dc583a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Sat Jun 18 22:47:21 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:47:21 2005 -0700"
      },
      "message": "[NET] Rename open_request to request_sock\n\nOk, this one just renames some stuff to have a better namespace and to\ndissassociate it from TCP:\n\nstruct open_request  -\u003e struct request_sock\ntcp_openreq_alloc    -\u003e reqsk_alloc\ntcp_openreq_free     -\u003e reqsk_free\ntcp_openreq_fastfree -\u003e __reqsk_free\n\nWith this most of the infrastructure closely resembles a struct\nsock methods subset.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e6599cb899ba4b133f42cbf9d2b1883d2dc583a",
      "tree": "b5d4fcca4d2a515fc3d3d20cefaaeebd8dbf661f",
      "parents": [
        "1944972d3bb651474a5021c9da8d0166ae19f1eb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Sat Jun 18 22:46:52 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:46:52 2005 -0700"
      },
      "message": "[NET] Generalise TCP\u0027s struct open_request minisock infrastructure\n\nKept this first changeset minimal, without changing existing names to\nease peer review.\n\nBasicaly tcp_openreq_alloc now receives the or_calltable, that in turn\nhas two new members:\n\n-\u003eslab, that replaces tcp_openreq_cachep\n-\u003eobj_size, to inform the size of the openreq descendant for\n  a specific protocol\n\nThe protocol specific fields in struct open_request were moved to a\nclass hierarchy, with the things that are common to all connection\noriented PF_INET protocols in struct inet_request_sock, the TCP ones\nin tcp_request_sock, that is an inet_request_sock, that is an\nopen_request.\n\nI.e. this uses the same approach used for the struct sock class\nhierarchy, with sk_prot indicating if the protocol wants to use the\nopen_request infrastructure by filling in sk_prot-\u003ersk_prot with an\nor_calltable.\n\nResults? Performance is improved and TCP v4 now uses only 64 bytes per\nopen request minisock, down from 96 without this patch :-)\n\nNext changeset will rename some of the structs, fields and functions\nmentioned above, struct or_calltable is way unclear, better name it\nstruct request_sock_ops, s/struct open_request/struct request_sock/g,\netc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1944972d3bb651474a5021c9da8d0166ae19f1eb",
      "tree": "cc638b40d8a7dfb4949d4a84a695ec8915c0fc2b",
      "parents": [
        "ee57eef99b9e19194677f552ebc0690ec35d62db"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Sat Jun 18 22:46:19 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:46:19 2005 -0700"
      },
      "message": "[SLAB] Introduce kmem_cache_name\n\nThis is for use with slab users that pass a dynamically allocated slab name in\nkmem_cache_create, so that before destroying the slab one can retrieve the name\nand free its memory.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "26b15dad9f1c19d6d4f7b999b07eaa6d98e4b375",
      "tree": "2ca3039488d9df023fb84eaa7c1f52aa8d1ce69c",
      "parents": [
        "3aa3dfb372576f30835a94409556e3c8681b5756"
      ],
      "author": {
        "name": "Jamal Hadi Salim",
        "email": "hadi@cyberus.ca",
        "time": "Sat Jun 18 22:42:13 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:42:13 2005 -0700"
      },
      "message": "[IPSEC] Add complete xfrm event notification\n\nHeres the final patch.\nWhat this patch provides\n\n- netlink xfrm events\n- ability to have events generated by netlink propagated to pfkey\n  and vice versa.\n- fixes the acquire lets-be-happy-with-one-success issue\n\nSigned-off-by: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "19fa95e9e999ee2b0d7adfbd1a687b136afcd6f1",
      "tree": "99bd4cf3f47965b52f43a5fde01b2e53e01f77ba",
      "parents": [
        "ba483d574b43b05fa4c78550b874c7e24424ff2a",
        "0107b3cf3225aed6ddde4fa8dbcd4ed643b34f4d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 18 13:54:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 18 13:54:12 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/dwmw2/audit-2.6\n"
    },
    {
      "commit": "43fde784a698aff26de0fc1dbd84aa075b8cfb5f",
      "tree": "948ad7acecc67e1e13acc7895a3028cdfb2a6560",
      "parents": [
        "c2a0f5943d8935766a42b2d0870aa4c645e3423d",
        "f9d1fe9630b94007902987c39d19f04dc6256eac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 18 13:08:39 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 18 13:08:39 2005 -0700"
      },
      "message": "Merge \u0027upstream-2.6.13\u0027 branch of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n"
    },
    {
      "commit": "0e396ee43e445cb7c215a98da4e76d0ce354d9d7",
      "tree": "a6fde6a33965abb6077420cda31e3f1fbe8d3891",
      "parents": [
        "b8112df71cae7d6a86158caeb19d215f56c4f9ab",
        "2089a0d38bc9c2cdd084207ebf7082b18cf4bf58"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 18 11:42:35 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 18 11:42:35 2005 -0700"
      },
      "message": "Manual merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git\n\nThis is a fixed-up version of the broken \"upstream-2.6.13\" branch, where\nI re-did the manual merge of drivers/net/r8169.c by hand, and made sure\nthe history is all good.\n"
    },
    {
      "commit": "f9d1fe9630b94007902987c39d19f04dc6256eac",
      "tree": "1fbe757adc72469ddbc3c1e4132392164b2e0271",
      "parents": [
        "54258a8a2e81b11e486068f1cfab9fe4746b8420",
        "9ee1c939d1cb936b1f98e8d81aeffab57bae46ab"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Sat Jun 18 13:21:24 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Jun 18 13:21:24 2005 -0400"
      },
      "message": "Merge /spare/repo/linux-2.6/\n"
    },
    {
      "commit": "0107b3cf3225aed6ddde4fa8dbcd4ed643b34f4d",
      "tree": "9b9337ae627fc56a0eda43c60860765f25efaa0b",
      "parents": [
        "1c3f45ab2f7f879ea482501c83899505c31f7539",
        "9ee1c939d1cb936b1f98e8d81aeffab57bae46ab"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Sat Jun 18 08:36:46 2005 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Sat Jun 18 08:36:46 2005 +0100"
      },
      "message": "Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n\n"
    },
    {
      "commit": "b8112df71cae7d6a86158caeb19d215f56c4f9ab",
      "tree": "19853b3182ed1a360237264caa360f8eb84beb96",
      "parents": [
        "5d497cecdeae75351567d20b86d8a3a05e7f48ed"
      ],
      "author": {
        "name": "Lee Revell",
        "email": "rlrevell@joe-job.com",
        "time": "Wed Jun 15 14:19:03 2005 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@titanic.(none)",
        "time": "Fri Jun 17 20:37:11 2005 -0500"
      },
      "message": "[SCSI] Add DMA mask constants other than 32 and 64 bit\n\nSigned-Off-By: Lee Revell \u003crlrevell@joe-job.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "3237ee78fc00f786d5f5aec6f9310b0e39069f15",
      "tree": "4c94e70ab846ffcb8bb5715fb3c8d8473358a323",
      "parents": [
        "9ee1c939d1cb936b1f98e8d81aeffab57bae46ab",
        "df0ae2497ddefd72a87f3a3b34ff32455d7d4ae0"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "jejb@titanic.(none)",
        "time": "Fri Jun 17 18:42:23 2005 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@titanic.(none)",
        "time": "Fri Jun 17 18:42:23 2005 -0500"
      },
      "message": "merge by hand (fix up qla_os.c merge error)\n"
    },
    {
      "commit": "1c2fb7f93cb20621772bf304f3dba0849942e5db",
      "tree": "0cb992ad463ee13af28d80d6730dcf1c4532b707",
      "parents": [
        "6a6ddb2a9c11fcc3e8d7517841d28c9ea206ddef"
      ],
      "author": {
        "name": "J. Simonetti",
        "email": "jeroen@simonetti.nl",
        "time": "Mon Jun 13 15:19:03 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 13 15:19:03 2005 -0700"
      },
      "message": "[IPV4]: Sysctl configurable icmp error source address.\n\nThis patch alows you to change the source address of icmp error\nmessages. It applies cleanly to 2.6.11.11 and retains the default\nbehaviour.\n\nIn the old (default) behaviour icmp error messages are sent with the ip\nof the exiting interface.\n\nThe new behaviour (when the sysctl variable is toggled on), it will send\nthe message with the ip of the interface that received the packet that\ncaused the icmp error. This is the behaviour network administrators will\nexpect from a router. It makes debugging complicated network layouts\nmuch easier. Also, all \u0027vendor routers\u0027 I know of have the later\nbehaviour.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "03722adce90a248d0bea77d390decbd05991e2d2",
      "tree": "db63362ac8061e61914029974039264fcbee4d63",
      "parents": [
        "c0105338eb4e61e537ca34ae06921177cb6efcf0"
      ],
      "author": {
        "name": "Tom Rini",
        "email": "trini@kernel.crashing.org",
        "time": "Mon Jun 13 13:57:10 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 13 13:57:10 2005 -0700"
      },
      "message": "[NET]: linux/if_tr.h needs asm/byteorder.h\n\n\u003clinux/if_tr.h\u003e uses __be16, but does not directly include\n\u003casm/byteorder.h\u003e.  Add this in, so that dhcp/net-tools token ring code\ncan compile again.\n\nSigned-off-by: Tom Rini \u003ctrini@kernel.crashing.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a58e76f25432dc5e3e84d04c27bec03347ca365b",
      "tree": "5bc5c6100f25b30aac547e27e7e6fff26fa40e84",
      "parents": [
        "392a8b7efe069564bf7ed057103b1a3f41e55734"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Sun Jun 12 10:56:26 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun Jun 12 20:43:21 2005 -0700"
      },
      "message": "[PATCH] Remove obsolete HAVE_ARCH_GET_SIGNAL_TO_DELIVER?\n\nNow m68k no longer sets HAVE_ARCH_GET_SIGNAL_TO_DELIVER, can it be removed\ncompletely? Or may ARM26 still need it? Note that its usage was removed from\nkernel/signal.c about 2 months ago.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5273a00d9c763108397658d440618f7ac3e40f83",
      "tree": "7bbdacdaa307703528968510d37838b1eb8b2a1f",
      "parents": [
        "ce10d979053379553757c3b178a138facaddff82",
        "98e56405521b74b4826f855d45ef7859f34548ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Wed Jun 08 16:36:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Wed Jun 08 16:36:31 2005 -0700"
      },
      "message": "Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "4890062960cbc4d3cebdbd8261a68bc85efcf5d4",
      "tree": "c834cb84fc939d64d5331a769abe6c20b8347ac8",
      "parents": [
        "b824979aeccbfd997e6e5dbe75c47d586b5a2923"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Wed Jun 08 15:10:48 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 08 15:10:48 2005 -0700"
      },
      "message": "[PKT_SCHED]: Allow socket attributes to be matched on via meta ematch\n\nAdds meta collectors for all socket attributes that make sense\nto be filtered upon. Some of them are only useful for debugging\nbut having them doesn\u0027t hurt.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d1cfbab4de64f2d0c5b0f81177ade0d75b69288",
      "tree": "9076b18ac9d821bedba5b3499a7f34515ef44e57",
      "parents": [
        "35d1bc90546d1f0af198886ae8062a550142d926"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Jun 08 14:13:14 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 08 14:13:14 2005 -0700"
      },
      "message": "[TG3]: Fix 5700/5701 DMA corruption on Apple G4.\n\nFix 5700/5701 DMA write corruption on Apple G4 by detecting the Apple\nUniNorth PCI 1.5 chipset and adjusting the DMA write boundary to 16. DMA\ntest fails to detect the problem with this chipset.\n\nThanks to Manuel Perez Ayala for reporting the problem and helping to\ndebug it.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0de98fa16169562bd74913c6c9b3857f9065c79",
      "tree": "5a81c4e8e8ef76addec655f1edbf6abaa09acfb0",
      "parents": [
        "3f5948fa2cbbda1261eec9a39ef3004b3caf73fb"
      ],
      "author": {
        "name": "Alan Hourihane",
        "email": "alanh@fairlite.demon.co.uk",
        "time": "Tue May 31 19:50:49 2005 +0100"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Jun 07 12:35:42 2005 -0700"
      },
      "message": "[PATCH] i945G patch for agpgart\n\nAttached is a small patch for i945G support against 2.6.11.11.\n\nFrom: Alan Hourihane \u003calanh@fairlite.demon.co.uk\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n\n"
    },
    {
      "commit": "3f5948fa2cbbda1261eec9a39ef3004b3caf73fb",
      "tree": "b754365f2ca35a8f8d77c92af8a2c9ad056f0325",
      "parents": [
        "74262de5d15fe0cab9e6fe75655a502d3c90acca"
      ],
      "author": {
        "name": "David Mosberger",
        "email": "davidm@napali.hpl.hp.com",
        "time": "Mon Jun 06 15:50:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 06 17:02:03 2005 -0700"
      },
      "message": "[PATCH] Include \u003clinux/config.h\u003e before testing CONFIG_ACPI\n\nI\u0027m not sure why this issue is suddenly showing, but without this\npatchlet, the zx1 config won\u0027t compile anymore (e.g., to see the\ncompilation-error, look for \"***\" in [1]).\n\n[1] http://www.gelato.unsw.edu.au/kerncomp/results//2005-06-06-17-00/zx1_defconfig-log.html\n\nSigned-off-by: David Mosberger-Tang \u003cdavidm@hpl.hp.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "140fedb5f2efd1f23b26afb2d812004556ba9515",
      "tree": "e645668185518a7947c3cd71b203efaa89c2332b",
      "parents": [
        "91bcc018f9fc5547875e9ec5a3dc09cbc70d4f8e",
        "7d17c1d606f6e89778f05554ddea43791d5c92a0"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Sat Jun 04 17:11:28 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Jun 04 17:11:28 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/netdev-2.6 branch iff-running\n"
    },
    {
      "commit": "91bcc018f9fc5547875e9ec5a3dc09cbc70d4f8e",
      "tree": "91e65ca2471e1ea570ddc2cbb23f67c6d89fb91d",
      "parents": [
        "105adfc63f921a9976c5abc4ff079e9fec197ed7",
        "1f15d694522af9cd7492695f11dd2dc77b6cf098"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Sat Jun 04 17:08:24 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Jun 04 17:08:24 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/netdev-2.6 branch we18\n"
    },
    {
      "commit": "14d8ce70d5c2634982ca564039466bce70f4ff18",
      "tree": "4165b27d1b06152d141d2fea12bce10efc8e7c4f",
      "parents": [
        "79121839aad7153907b92462759675266f1f2ac4",
        "b3dd65f958354226275522b5a64157834bdc5415"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Sat Jun 04 17:03:09 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Jun 04 17:03:09 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/netdev-2.6 branch hdlc\n"
    },
    {
      "commit": "79121839aad7153907b92462759675266f1f2ac4",
      "tree": "04193828c34aa1b46149840b2b24cdb703aaab5c",
      "parents": [
        "b00b2f70ddde86b0a4674b8518c78d3ad5dc68b7",
        "a1365275e745bb0a173c918a52bcdfa6ce122f7e"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Sat Jun 04 17:02:29 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Jun 04 17:02:29 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/netdev-2.6 branch dm9000\n"
    },
    {
      "commit": "73561695b2e77473e353a5ae63bab81ed5098d8e",
      "tree": "d039affaa54d38985e41566e4d62e0aa6a170287",
      "parents": [
        "6f2f38128170814e151cfedf79532e19cd179567",
        "8be3de3fd8469154a2b3e18a4712032dac5b4a53"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Fri Jun 03 23:54:56 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Jun 03 23:54:56 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/linux-2.6/.git branch HEAD\n"
    },
    {
      "commit": "719df469cb51199316ae2a11c75a8046be34b899",
      "tree": "8f96e3713ad52b9308f22a464da14a1d7a685675",
      "parents": [
        "1724757e5ab5219b46876ac6e4e362a4b2dcfa86"
      ],
      "author": {
        "name": "Roman Kagan",
        "email": "rkagan@mail.ru",
        "time": "Fri May 06 00:55:56 2005 +0400"
      },
      "committer": {
        "name": "Greg KH",
        "email": "gregkh@suse.de",
        "time": "Fri Jun 03 00:04:30 2005 -0700"
      },
      "message": "[PATCH] USB: update urb documentation\n\nOn Wed, May 04, 2005 at 01:37:30PM -0700, David Brownell wrote:\n\u003e On Wednesday 04 May 2005 12:19 pm, Roman Kagan wrote:\n\u003e \u003e struct urb {\n\u003e \u003e \t/* private, usb core and host controller only fields in the urb */\n\u003e \u003e \t...\n\u003e \u003e \tstruct list_head urb_list;\t/* list pointer to all active urbs */\n\u003e \u003e \t...\n\u003e \u003e };\n\u003e \u003e\n\u003e \u003e Is it safe to use it for driver\u0027s purposes when the driver owns the urb,\n\u003e \u003e that is, starting from the completion routine until the urb is submitted\n\u003e \u003e with usb_submit_urb()?\n\u003e\n\u003e Right now, it should be.\n\nGreat!  FWIW I\u0027ve briefly tested a modified version of usbatm using\nthe list head in struct urb instead of creating a wrapper struct, and I\nhaven\u0027t seen any failures yet.  So I tend to believe that your \"should\nbe\" actually means \"is\" :)\n\n\u003e \u003e If it is, can it be guaranteed in future, e.g.\n\u003e \u003e by moving the list head into the public section of struct urb?\n\u003e\n\u003e In fact I\u0027m not sure why it ever got called \"private\" to usbcore/hcds.\n\u003e I thought the idea was that it should be like urb-\u003estatus, reserved for\n\u003e whoever controls the URB.\n\nOK then how about the following (essentially documentation) patch?\n\nSigned-off-by: Roman Kagan \u003crkagan@mail.ru\u003e\nAcked-by: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "aa447acb9291518506a1aec644db47fa6c6e36eb",
      "tree": "4b7b3e5c72641f6695ea935ddd9f8250a2e4b937",
      "parents": [
        "317604633eface11cb7452298fa44a34624633dc",
        "5ba0eac6e0b7e2889649a1105d97c600595e2bb1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 02 17:39:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 02 17:39:49 2005 -0700"
      },
      "message": "Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "5ba0eac6e0b7e2889649a1105d97c600595e2bb1",
      "tree": "e7bc652889162d1b7997e779ce5a5fef4355838f",
      "parents": [
        "b597ef4712c05c962640a655386a7f06cc1a1fbc"
      ],
      "author": {
        "name": "Jiri Benc",
        "email": "jbenc@suse.cz",
        "time": "Thu Jun 02 16:48:05 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 16:48:05 2005 -0700"
      },
      "message": "[NET]: Fix HH_DATA_OFF.\n\nWhen the hardware header size is a multiple of HH_DATA_MOD, HH_DATA_OFF()\nincorrectly returns HH_DATA_MOD (instead of 0). This affects ieee80211 layer\nas 802.11 header is 32 bytes long.\n\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b597ef4712c05c962640a655386a7f06cc1a1fbc",
      "tree": "af2a1822d63cf447dd6e9b58808ea22341c85955",
      "parents": [
        "4fef0304eeaa4156db5625e3578f92ed94645a43"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Jun 02 16:36:00 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 16:36:00 2005 -0700"
      },
      "message": "[NET]: Fix locking in shaper driver.\n\n o use a semaphore instead of an opencoded and racy lock\n o move locking out of shaper_kick and into the callers - most just\n   released the lock before calling shaper_kick\n o remove in_interrupt() tests.  from -\u003eclose we can always block, from\n   -\u003ehard_start_xmit and timer context never\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d7aaf48128ec7fcefcee92ea22833afc1a80e268",
      "tree": "16ff78f6be6a5519944bb7bfc6034dfbd71ae97f",
      "parents": [
        "decc6d0b68f27bbb8a0357fccf41936a3c196b03",
        "1e86d1c648508fd50e6c9960576b87906a7906ad"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Thu Jun 02 18:43:09 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Jun 02 18:43:09 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/linux-2.6/.git branch HEAD\n"
    },
    {
      "commit": "0baab86b00cdf9785ac2bb2ce1ab63995b3866ca",
      "tree": "9a92597d6e1653a9a9b3ed7f371d62237e68a6e9",
      "parents": [
        "92bab26be5544d8b495389646490fcfdca6dbcf2"
      ],
      "author": {
        "name": "Edward Falk",
        "email": "efalk@google.com",
        "time": "Thu Jun 02 18:17:13 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Jun 02 18:17:13 2005 -0400"
      },
      "message": "libata: update inline source docs\n"
    },
    {
      "commit": "1c3f45ab2f7f879ea482501c83899505c31f7539",
      "tree": "672465b3b9b3e2e26a8caf74ed64aa6885c52c13",
      "parents": [
        "4bcff1b37e7c3aed914d1ce5b45994adc7dbf455",
        "e0d6d71440a3a35c6fc2dde09f8e8d4d7bd44dda"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Thu Jun 02 16:39:11 2005 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@shinybook.infradead.org",
        "time": "Thu Jun 02 16:39:11 2005 +0100"
      },
      "message": "Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n\n"
    },
    {
      "commit": "c10fccddf00cb216349ce3171ce2e39d7c70371b",
      "tree": "039bdc3d2c19ce93c5bde2a5acf0c26e2de80272",
      "parents": [
        "5f64f73957f6cae3222f97f2599199ee562f7f3f",
        "bcc488ab02254a6e60d749187a632dc3d642d4f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Wed Jun 01 07:55:46 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Wed Jun 01 07:55:46 2005 -0700"
      },
      "message": "Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6\n"
    },
    {
      "commit": "b53cc6ead046093477ec7a3354d620337101ea5b",
      "tree": "96d18fac87b1720b524445bcc0aaa7bfa073bdcb",
      "parents": [
        "065b807ca1f5bdbeb081e3cf75ac8de9be8ac212"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 31 19:03:47 2005 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 31 19:03:47 2005 -0700"
      },
      "message": "[CPUFREQ] fix up comment in cpufreq.h\n\nFix up comment in cpufreq.h stating transition latency should be passed\nin microseconds -- it was decided long ago to switch to nanoseconds.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n\n"
    },
    {
      "commit": "af00f9811e0ccbd3db84ddc4cffb0da942653393",
      "tree": "5a9c3b7f7d61d96d3624ad130b173a761cb7dac2",
      "parents": [
        "2ac2610b26c9da72820443328ff2c56c7b8c87b8"
      ],
      "author": {
        "name": "Andy Currid",
        "email": "acurrid@nvidia.com",
        "time": "Mon May 23 08:55:45 2005 -0700"
      },
      "committer": {
        "name": "Greg KH",
        "email": "gregkh@suse.de",
        "time": "Tue May 31 14:26:38 2005 -0700"
      },
      "message": "[PATCH] PCI: amd74xx patch for new NVIDIA device IDs\n\nHere\u0027s the 2.6 amd74xx patch for NVIDIA MCP51.\n\nSigned-off-by: Andy Currid \u003cacurrid@nvidia.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "69f6a0fafcdf0bfe85af182695d6d38f80f9d549",
      "tree": "ce69917e3f348de780c117bfe8a4fa9545a9c888",
      "parents": [
        "37e20a66db02eff9adbeee043af990cca85d0034"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Sun May 29 20:27:24 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 20:27:24 2005 -0700"
      },
      "message": "[NET]: Add ethtool support for NETIF_F_HW_CSUM.\n\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79165121bc09c209451487d977df910c4ff6fc94",
      "tree": "989ea3ed03ea574a9819a497fbb4f0a388e5b321",
      "parents": [
        "8f937c6099858eee15fae14009dcbd05177fa91d"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Sun May 29 20:24:30 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 20:24:30 2005 -0700"
      },
      "message": "[NET]: Add is_multicast_ether_addr() in include/linux/etherdevice.h\n\nThis patch adds is_multicast_ether_addr() to go along with\nis_valid_ether_addr() and friends. It then changes\nis_valid_ether_addr() to use the new macro, and fixes up the comment\non that function to move implementation details out of the API doco.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f937c6099858eee15fae14009dcbd05177fa91d",
      "tree": "c0aa5c7983c4402a46ea397b0612d5ecd3e9a853",
      "parents": [
        "79158229b09873ca296ac53de5c952488f944646"
      ],
      "author": {
        "name": "Harald Welte",
        "email": "laforge@gnumonks.org",
        "time": "Sun May 29 20:23:46 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 20:23:46 2005 -0700"
      },
      "message": "[IPV4]: Primary and secondary addresses\n\nAdd an option to make secondary IP addresses get promoted\nwhen primary IP addresses are removed from the device.\nIt defaults to off to preserve existing behavior.\n\nSigned-off-by: Harald Welte \u003claforge@gnumonks.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79158229b09873ca296ac53de5c952488f944646",
      "tree": "5ebf559f71fd4f4e4cbf12f5cd97242da53d9af7",
      "parents": [
        "7ce54e3f428b33af714271140601c87b8bf2c544",
        "7238cfb3342078ad6d1dd06c7b567da428672476"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 29 19:30:03 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 29 19:30:03 2005 -0700"
      },
      "message": "Automatic merge of \u0027misc-fixes\u0027 branch from\n\n\trsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n"
    },
    {
      "commit": "81e8157583c559c27aac75c708d40a35f563d734",
      "tree": "3172c6de15e6a8ea07373a23e901ee0e4366c4f1",
      "parents": [
        "d8a33ac435c43a1a404b2ec560ef1d1536710c36"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Sun May 29 14:14:35 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 14:14:35 2005 -0700"
      },
      "message": "[BRIDGE]: make dev-\u003efeatures unsigned\n\nThe features field in netdevice is really a bitmask, and bitmask\u0027s should\nbe unsigned.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8a33ac435c43a1a404b2ec560ef1d1536710c36",
      "tree": "04359c09e0731e9c33a8c2dd80cc69404e0dde60",
      "parents": [
        "45b30105e7231b70bb855923dbca443ee3ba44c3"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Sun May 29 14:13:47 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 29 14:13:47 2005 -0700"
      },
      "message": "[BRIDGE]: features change notification\n\nResend of earlier patch (no changes) from Catalin used to provide\ndevice feature change notification.\n\nSigned-off-by: Catalin BOIE \u003ccatab at umbrella.ro\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d582c4ea307873503a68d6d7ab72ee8599e032a9",
      "tree": "30b5ea37ba5803fe25815d14ee248be309975cb5",
      "parents": [
        "87507cfdd2cde397c9da8f6e7ec23b2b47ec53d6",
        "aa8f0dc6c3dbf1cf3ff58f3e945c981be134814d"
      ],
      "author": {
        "name": "",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Sun May 29 14:24:57 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun May 29 14:24:57 2005 -0400"
      },
      "message": "Automatic merge of /spare/repo/netdev-2.6 branch use-after-unmap\n"
    }
  ],
  "next": "45b30105e7231b70bb855923dbca443ee3ba44c3"
}
