)]}'
{
  "log": [
    {
      "commit": "0ff38490c836dc379ff7ec45b10a15a662f4e5f6",
      "tree": "cb42d5d3cace3c8d12f0b304879039c503807981",
      "parents": [
        "972d1a7b140569084439a81265a0f15b74e924e0"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] zone_reclaim: dynamic slab reclaim\n\nCurrently one can enable slab reclaim by setting an explicit option in\n/proc/sys/vm/zone_reclaim_mode.  Slab reclaim is then used as a final\noption if the freeing of unmapped file backed pages is not enough to free\nenough pages to allow a local allocation.\n\nHowever, that means that the slab can grow excessively and that most memory\nof a node may be used by slabs.  We have had a case where a machine with\n46GB of memory was using 40-42GB for slab.  Zone reclaim was effective in\ndealing with pagecache pages.  However, slab reclaim was only done during\nglobal reclaim (which is a bit rare on NUMA systems).\n\nThis patch implements slab reclaim during zone reclaim.  Zone reclaim\noccurs if there is a danger of an off node allocation.  At that point we\n\n1. Shrink the per node page cache if the number of pagecache\n   pages is more than min_unmapped_ratio percent of pages in a zone.\n\n2. Shrink the slab cache if the number of the nodes reclaimable slab pages\n   (patch depends on earlier one that implements that counter)\n   are more than min_slab_ratio (a new /proc/sys/vm tunable).\n\nThe shrinking of the slab cache is a bit problematic since it is not node\nspecific.  So we simply calculate what point in the slab we want to reach\n(current per node slab use minus the number of pages that neeed to be\nallocated) and then repeately run the global reclaim until that is\nunsuccessful or we have reached the limit.  I hope we will have zone based\nslab reclaim at some point which will make that easier.\n\nThe default for the min_slab_ratio is 5%\n\nAlso remove the slab option from /proc/sys/vm/zone_reclaim_mode.\n\n[akpm@osdl.org: cleanups]\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": "972d1a7b140569084439a81265a0f15b74e924e0",
      "tree": "e86e676e407503ef3d98020a88bb925235f11434",
      "parents": [
        "8417bba4b151346ed475fcc923693c9e3be89063"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] ZVC: Support NR_SLAB_RECLAIMABLE / NR_SLAB_UNRECLAIMABLE\n\nRemove the atomic counter for slab_reclaim_pages and replace the counter\nand NR_SLAB with two ZVC counter that account for unreclaimable and\nreclaimable slab pages: NR_SLAB_RECLAIMABLE and NR_SLAB_UNRECLAIMABLE.\n\nChange the check in vmscan.c to refer to to NR_SLAB_RECLAIMABLE.  The\nintend seems to be to check for slab pages that could be freed.\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": "8417bba4b151346ed475fcc923693c9e3be89063",
      "tree": "93d559e32bc76077c1f837aed09a5df56849c610",
      "parents": [
        "d00bcc98d7ec2c87391c9d9e1cca519ef64d33ef"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] Replace min_unmapped_ratio by min_unmapped_pages in struct zone\n\n*_pages is a better description of the role of the variable.\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": "46a82b2d5591335277ed2930611f6acb4ce654ed",
      "tree": "e90bc1843701af2012bae92564f7109027a8244f",
      "parents": [
        "d2e7b7d0aa021847c59f882b066e7d3812902870"
      ],
      "author": {
        "name": "Dave McCracken",
        "email": "dmccr@us.ibm.com",
        "time": "Mon Sep 25 23:31:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] Standardize pxx_page macros\n\nOne of the changes necessary for shared page tables is to standardize the\npxx_page macros.  pte_page and pmd_page have always returned the struct\npage associated with their entry, while pte_page_kernel and pmd_page_kernel\nhave returned the kernel virtual address.  pud_page and pgd_page, on the\nother hand, return the kernel virtual address.\n\nShared page tables needs pud_page and pgd_page to return the actual page\nstructures.  There are very few actual users of these functions, so it is\nsimple to standardize their usage.\n\nSince this is basic cleanup, I am submitting these changes as a standalone\npatch.  Per Hugh Dickins\u0027 comments about it, I am also changing the\npxx_page_kernel macros to pxx_page_vaddr to clarify their meaning.\n\nSigned-off-by: Dave McCracken \u003cdmccr@us.ibm.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "980128f223fa3c75e3ebdde650c9f1bcabd4c0a2",
      "tree": "b0fa592cf621cebc674b9ec1a4ab4e2558ec7aaf",
      "parents": [
        "fbd98167e653535c5816be154f2149c0efa7757d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] Define easier to handle GFP_THISNODE\n\nIn many places we will need to use the same combination of flags.  Specify\na single GFP_THISNODE definition for ease of use in gfp.h.\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": "9b819d204cf602eab1a53a9ec4b8d2ca51e02a1d",
      "tree": "9442bf01a00a93a8ae54462fb4878588e1b2a6bf",
      "parents": [
        "056c62418cc639bf2fe962c6a6ee56054b838bc7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] Add __GFP_THISNODE to avoid fallback to other nodes and ignore cpuset/memory policy restrictions\n\nAdd a new gfp flag __GFP_THISNODE to avoid fallback to other nodes.  This\nflag is essential if a kernel component requires memory to be located on a\ncertain node.  It will be needed for alloc_pages_node() to force allocation\non the indicated node and for alloc_pages() to force allocation on the\ncurrent node.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dbe5e69d2d6e591996ea2b817b887d03b60bb143",
      "tree": "09e21f2e0da60faef982d02a9224e62c409e776a",
      "parents": [
        "da6052f7b33abe55fbfd7d2213815f58c00a88d4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 25 23:31:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] slab: optimize kmalloc_node the same way as kmalloc\n\n[akpm@osdl.org: export fix]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-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": "da6052f7b33abe55fbfd7d2213815f58c00a88d4",
      "tree": "a2deda88ae8e9fc33d9a0ce80f42fde2c55c7bbc",
      "parents": [
        "e5ac9c5aec7c4bc57fa93f2d37d760a22cb7bd33"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] update some mm/ comments\n\nLet\u0027s try to keep mm/ comments more useful and up to date. This is a start.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dfd54cbcc0b834652389ce99b5e656ea5f44a3c1",
      "tree": "7c403a50b42b2809bb9b18122cbd83e8e2c180c9",
      "parents": [
        "b72f160443cb78b2f8addae6e331d2adaa70f869"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Sep 25 23:31:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] bootmem: use MAX_DMA_ADDRESS instead of LOW32LIMIT\n\nIntroduce ARCH_LOW_ADDRESS_LIMIT which can be set per architecture to\noverride the 4GB default limit used by the bootmem allocater within\n__alloc_bootmem_low() and __alloc_bootmem_low_node().  E.g.  s390 needs a\n2GB limit instead of 4GB.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "db37648cd6ce9b828abd6d49aa3d269926ee7b7d",
      "tree": "a0155c7897f4706386d10c8718f98687bc357c82",
      "parents": [
        "28e4d965e6131ace1e813e93aebca89ac6b82dc1"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] mm: non syncing lock_page()\n\nlock_page needs the caller to have a reference on the page-\u003emapping inode\ndue to sync_page, ergo set_page_dirty_lock is obviously buggy according to\nits comments.\n\nSolve it by introducing a new lock_page_nosync which does not do a sync_page.\n\nakpm: unpleasant solution to an unpleasant problem.  If it goes wrong it could\ncause great slowdowns while the lock_page() caller waits for kblockd to\nperform the unplug.  And if a filesystem has special sync_page() requirements\n(none presently do), permanent hangs are possible.\n\notoh, set_page_dirty_lock() is usually (always?) called against userspace\npages.  They are always up-to-date, so there shouldn\u0027t be any pending read I/O\nagainst these pages.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7ff6f08295d90ab20d25200ef485ebb45b1b8d71",
      "tree": "4c3410dcf5191ab574304f3ffbafd675545c2297",
      "parents": [
        "8bc719d3cab8414938f9ea6e33b58d8810d18068"
      ],
      "author": {
        "name": "Martin Peschke",
        "email": "mp3@de.ibm.com",
        "time": "Mon Sep 25 23:31:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] CPU hotplug compatible alloc_percpu()\n\nThis patch splits alloc_percpu() up into two phases.  Likewise for\nfree_percpu().  This allows clients to limit initial allocations to online\ncpu\u0027s, and to populate or depopulate per-cpu data at run time as needed:\n\n  struct my_struct *obj;\n\n  /* initial allocation for online cpu\u0027s */\n  obj \u003d percpu_alloc(sizeof(struct my_struct), GFP_KERNEL);\n\n  ...\n\n  /* populate per-cpu data for cpu coming online */\n  ptr \u003d percpu_populate(obj, sizeof(struct my_struct), GFP_KERNEL, cpu);\n\n  ...\n\n  /* access per-cpu object */\n  ptr \u003d percpu_ptr(obj, smp_processor_id());\n\n  ...\n\n  /* depopulate per-cpu data for cpu going offline */\n  percpu_depopulate(obj, cpu);\n\n  ...\n\n  /* final removal */\n  percpu_free(obj);\n\nSigned-off-by: Martin Peschke \u003cmp3@de.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8bc719d3cab8414938f9ea6e33b58d8810d18068",
      "tree": "1afd4ce7865466bf9578ca746c63c1d351f07cdc",
      "parents": [
        "19655d3487001d7df0e10e9cbfc27c758b77c2b5"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Sep 25 23:31:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] out of memory notifier\n\nAdd a notifer chain to the out of memory killer.  If one of the registered\ncallbacks could release some memory, do not kill the process but return and\nretry the allocation that forced the oom killer to run.\n\nThe purpose of the notifier is to add a safety net in the presence of\nmemory ballooners.  If the resource manager inflated the balloon to a size\nwhere memory allocations can not be satisfied anymore, it is better to\ndeflate the balloon a bit instead of killing processes.\n\nThe implementation for the s390 ballooner is included.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "19655d3487001d7df0e10e9cbfc27c758b77c2b5",
      "tree": "8d0aaa216bd32bd64e3a9652fd34d40bdb9d1075",
      "parents": [
        "2f6726e54a9410e2e4cee864947c05e954051916"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:19 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] linearly index zone-\u003enode_zonelists[]\n\nI wonder why we need this bitmask indexing into zone-\u003enode_zonelists[]?\n\nWe always start with the highest zone and then include all lower zones\nif we build zonelists.\n\nAre there really cases where we need allocation from ZONE_DMA or\nZONE_HIGHMEM but not ZONE_NORMAL? It seems that the current implementation\nof highest_zone() makes that already impossible.\n\nIf we go linear on the index then gfp_zone() \u003d\u003d highest_zone() and a lot\nof definitions fall by the wayside.\n\nWe can now revert back to the use of gfp_zone() in mempolicy.c ;-)\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": "2f6726e54a9410e2e4cee864947c05e954051916",
      "tree": "91b1173dead0cfc4a25caacb34b6c80f526bbc59",
      "parents": [
        "4e4785bcf0c8503224fa6c17d8e0228de781bff6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] Apply type enum zone_type\n\nAfter we have done this we can now do some typing cleanup.\n\nThe memory policy layer keeps a policy_zone that specifies\nthe zone that gets memory policies applied. This variable\ncan now be of type enum zone_type.\n\nThe check_highest_zone function and the build_zonelists funnctionm must\nthen also take a enum zone_type parameter.\n\nPlus there are a number of loops over zones that also should use\nzone_type.\n\nWe run into some troubles at some points with functions that need a\nzone_type variable to become -1. Fix that up.\n\n[pj@sgi.com: fix set_mempolicy() crash]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e4785bcf0c8503224fa6c17d8e0228de781bff6",
      "tree": "002c0a051f7f4de4548ca0a8394b664f64c63627",
      "parents": [
        "b9b15780f808efa2c897f337644ba7a2bec03ecc"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] mempolicies: fix policy_zone check\n\nThere is a check in zonelist_policy that compares pieces of the bitmap\nobtained from a gfp mask via GFP_ZONETYPES with a zone number in function\nzonelist_policy().\n\nThe bitmap is an ORed mask of __GFP_DMA, __GFP_DMA32 and __GFP_HIGHMEM.\nThe policy_zone is a zone number with the possible values of ZONE_DMA,\nZONE_DMA32, ZONE_HIGHMEM and ZONE_NORMAL. These are two different domains\nof values.\n\nFor some reason seemed to work before the zone reduction patchset (It\ndefinitely works on SGI boxes since we just have one zone and the check\ncannot fail).\n\nWith the zone reduction patchset this check definitely fails on systems\nwith two zones if the system actually has memory in both zones.\n\nThis is because ZONE_NORMAL is selected using no __GFP flag at\nall and thus gfp_zone(gfpmask) \u003d\u003d 0. ZONE_DMA is selected when __GFP_DMA\nis set. __GFP_DMA is 0x01.  So gfp_zone(gfpmask) \u003d\u003d 1.\n\npolicy_zone is set to ZONE_NORMAL (\u003d\u003d1) if ZONE_NORMAL and ZONE_DMA are\npopulated.\n\nFor ZONE_NORMAL gfp_zone(\u003cno _GFP_DMA\u003e) yields 0 which is \u003c\npolicy_zone(ZONE_NORMAL) and so policy is not applied to regular memory\nallocations!\n\nInstead gfp_zone(__GFP_DMA) \u003d\u003d 1 which results in policy being applied\nto DMA allocations!\n\nWhat we realy want in that place is to establish the highest allowable\nzone for a given gfp_mask. If the highest zone is higher or equal to the\npolicy_zone then memory policies need to be applied. We have such\na highest_zone() function in page_alloc.c.\n\nSo move the highest_zone() function from mm/page_alloc.c into\ninclude/linux/gfp.h.  On the way we simplify the function and use the new\nzone_type that was also introduced with the zone reduction patchset plus we\nalso specify the right type for the gfp flags parameter.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "27bf71c2a7e596ed34e9bf2d4a5030321a09a1ad",
      "tree": "30aca46595486b7a9d69d2d2f58b305cf32f41d9",
      "parents": [
        "e53ef38d05dd59ed281a35590e4a5b64d8ff4c52"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: remove display of counters for unconfigured zones\n\neventcounters: Do not display counters for zones that are not available on an\narch\n\nDo not define or display counters for the DMA32 and the HIGHMEM zone if such\nzones were not configured.\n\n[akpm@osdl.org: s390 fix]\n[heiko.carstens@de.ibm.com: s390 fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e53ef38d05dd59ed281a35590e4a5b64d8ff4c52",
      "tree": "42e525df84454e89abd6cab8d7983a6a0188b6bb",
      "parents": [
        "fb0e7942bdcbbd2f90e61cb4cfa4fa892a873f8a"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: make ZONE_HIGHMEM optional\n\nMake ZONE_HIGHMEM optional\n\n- ifdef out code and definitions related to CONFIG_HIGHMEM\n\n- __GFP_HIGHMEM falls back to normal allocations if there is no\n  ZONE_HIGHMEM\n\n- GFP_ZONEMASK becomes 0x01 if there is no DMA32 and no HIGHMEM\n  zone.\n\n[jdike@addtoit.com: build fix]\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb0e7942bdcbbd2f90e61cb4cfa4fa892a873f8a",
      "tree": "71344e9afafbd631f4ac010bc8c48e0b16737299",
      "parents": [
        "2f1b6248682f8b39ca3c7e549dfc216d26c4109b"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: make ZONE_DMA32 optional\n\nMake ZONE_DMA32 optional\n\n- Add #ifdefs around ZONE_DMA32 specific code and definitions.\n\n- Add CONFIG_ZONE_DMA32 config option and use that for x86_64\n  that alone needs this zone.\n\n- Remove the use of CONFIG_DMA_IS_DMA32 and CONFIG_DMA_IS_NORMAL\n  for ia64 and fix up the way per node ZVCs are calculated.\n\n- Fall back to prior GFP_ZONEMASK of 0x03 if there is no\n  DMA32 zone.\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": "2f1b6248682f8b39ca3c7e549dfc216d26c4109b",
      "tree": "2340347d10fd0e564fb8527efe3ffbcb216e1906",
      "parents": [
        "98d2b0ebda72fc39cdefd3720d50b9b3ce409085"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: use enum to define zones, reformat and comment\n\nUse enum for zones and reformat zones dependent information\n\nAdd comments explaning the use of zones and add a zones_t type for zone\nnumbers.\n\nLine up information that will be #ifdefd by the following patches.\n\n[akpm@osdl.org: comment cleanups]\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": "c1f60a5a419cc60aff27daffb150f5a3a3a79ef4",
      "tree": "8ae176462d6f220cd744ae6c3454113eebda02a8",
      "parents": [
        "182e8e237349e7b6354f45aee4780b6423fd6a50"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h\n\nMove totalhigh_pages and nr_free_highpages() into highmem.c/.h\n\nMove the totalhigh_pages definition into highmem.c/.h.  Move the\nnr_free_highpages function into highmem.c\n\n[yoichi_yuasa@tripeaks.co.jp: build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f71bf0cac730ccb5ebcdf21747db75ae0445ccde",
      "tree": "2ba089be617218753b9d8b8faf05eb97eec42120",
      "parents": [
        "bbc7b92e337ac349ca917f9bf0b6be4743c14f3a"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: miscellaneous coding style fixes\n\nIt fixes various coding style issues, specially when spaces are useless.  For\nexample \u0027*\u0027 go next to the function name.\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e786e86a542ccc1133f333402526ad00b9c088ae",
      "tree": "db08d5e3fd398e9f22128a6867aa12497abe3e7c",
      "parents": [
        "bb0923a66820718f636736b22ce47372f79e3400"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: remove useless headers inclusions\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bb0923a66820718f636736b22ce47372f79e3400",
      "tree": "56554098cb8cda63a1f805db211f1eea750befae",
      "parents": [
        "71fb2e8f8753b66b1f4295aa264a2eb4e69381e8"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: limit to 80 columns width\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "71fb2e8f8753b66b1f4295aa264a2eb4e69381e8",
      "tree": "c292c4018cfa87f69661a966b3b13c6d84e7e019",
      "parents": [
        "69d49e681d7c7ed864a1ba45efc1e78433df8b9a"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: remove useless parentheses in bootmem header file\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2d1a07d487d8b36658404839cdf03a974968cefd",
      "tree": "1123ffc446b5e118d93c03d773f8b3815166c4ef",
      "parents": [
        "91023300057e96de7f46e95166a3e02394ae72f9"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: remove useless __init in header file\n\n__init in headers is pretty useless because the compiler doesn\u0027t check it, and\nthey get out of sync relatively frequently.  So if you see an __init in a\nheader file, it\u0027s quite unreliable and you need to check the definition\nanyway.\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "91023300057e96de7f46e95166a3e02394ae72f9",
      "tree": "b28306089d7f5631bb023c7657808380359df316",
      "parents": [
        "b221385bc41d6789edde3d2fa0cb20d5045730eb"
      ],
      "author": {
        "name": "keith mannthey",
        "email": "kmannth@us.ibm.com",
        "time": "Mon Sep 25 23:31:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] convert i386 NUMA KVA space to bootmem\n\nAddress a long standing issue of booting with an initrd on an i386 numa\nsystem.  Currently (and always) the numa kva area is mapped into low memory\nby finding the end of low memory and moving that mark down (thus creating\nspace for the kva).  The issue with this is that Grub loads initrds into\nthis similar space so when the kernel check the initrd it finds it outside\nmax_low_pfn and disables it (it thinks the initrd is not mapped into usable\nmemory) thus initrd enabled kernels can\u0027t boot i386 numa :(\n\nMy solution to the problem just converts the numa kva area to use the\nbootmem allocator to save it\u0027s area (instead of moving the end of low\nmemory).  Using bootmem allows the kva area to be mapped into more diverse\naddresses (not just the end of low memory) and enables the kva area to be\nmapped below the initrd if present.\n\nI have tested this patch on numaq(no initrd) and summit(initrd) i386 numa\nbased systems.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Keith Mannthey \u003ckmannth@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b221385bc41d6789edde3d2fa0cb20d5045730eb",
      "tree": "93f3317247d587fd011eb9d77cd73a49670d8d5f",
      "parents": [
        "204ec841fbea3e5138168edbc3a76d46747cc987"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Sep 25 23:31:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] mm/: make functions static\n\nThis patch makes the following needlessly global functions static:\n - slab.c: kmem_find_general_cachep()\n - swap.c: __page_cache_release()\n - vmalloc.c: __vmalloc_node()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "edc79b2a46ed854595e40edcf3f8b37f9f14aa3f",
      "tree": "c1120bebede9660ab00f9439aa7a84ab9434ac38",
      "parents": [
        "d08b3851da41d0ee60851f2c75b118e1f7a5fc89"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:30:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: balance dirty pages\n\nNow that we can detect writers of shared mappings, throttle them.  Avoids OOM\nby surprise.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d08b3851da41d0ee60851f2c75b118e1f7a5fc89",
      "tree": "a01f6930a1387e8f66607e2fe16c62bb7044353b",
      "parents": [
        "725d704ecaca4a43f067092c140d4f3271cf2856"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:30:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: tracking shared dirty pages\n\nTracking of dirty pages in shared writeable mmap()s.\n\nThe idea is simple: write protect clean shared writeable pages, catch the\nwrite-fault, make writeable and set dirty.  On page write-back clean all the\nPTE dirty bits and write protect them once again.\n\nThe implementation is a tad harder, mainly because the default\nbacking_dev_info capabilities were too loosely maintained.  Hence it is not\nenough to test the backing_dev_info for cap_account_dirty.\n\nThe current heuristic is as follows, a VMA is eligible when:\n - its shared writeable\n    (vm_flags \u0026 (VM_WRITE|VM_SHARED)) \u003d\u003d (VM_WRITE|VM_SHARED)\n - it is not a \u0027special\u0027 mapping\n    (vm_flags \u0026 (VM_PFNMAP|VM_INSERTPAGE)) \u003d\u003d 0\n - the backing_dev_info is cap_account_dirty\n    mapping_cap_account_dirty(vma-\u003evm_file-\u003ef_mapping)\n - f_op-\u003emmap() didn\u0027t change the default page protection\n\nPage from remap_pfn_range() are explicitly excluded because their COW\nsemantics are already horrid enough (see vm_normal_page() in do_wp_page()) and\nbecause they don\u0027t have a backing store anyway.\n\nmprotect() is taught about the new behaviour as well.  However it overrides\nthe last condition.\n\nCleaning the pages on write-back is done with page_mkclean() a new rmap call.\nIt can be called on any page, but is currently only implemented for mapped\npages, if the page is found the be of a VMA that accounts dirty pages it will\nalso wrprotect the PTE.\n\nFinally, in fs/buffers.c:try_to_free_buffers(); remove clear_page_dirty() from\nunder -\u003eprivate_lock.  This seems to be safe, since -\u003eprivate_lock is used to\nserialize access to the buffers, not the page itself.  This is needed because\nclear_page_dirty() will call into page_mkclean() and would thereby violate\nlocking order.\n\n[dhowells@redhat.com: Provide a page_mkclean() implementation for NOMMU]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "725d704ecaca4a43f067092c140d4f3271cf2856",
      "tree": "320cf8ab5457ac6c01c05da8c30d6026538ee259",
      "parents": [
        "a6ca1b99ed434f3fb41bbed647ed36c0420501e5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:30:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: VM_BUG_ON\n\nIntroduce a VM_BUG_ON, which is turned on with CONFIG_DEBUG_VM.  Use this\nin the lightweight, inline refcounting functions; PageLRU and PageActive\nchecks in vmscan, because they\u0027re pretty well confined to vmscan.  And in\npage allocate/free fastpaths which can be the hottest parts of the kernel\nfor kbuilds.\n\nUnlike BUG_ON, VM_BUG_ON must not be used to execute statements with\nside-effects, and should not be used outside core mm code.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6ca1b99ed434f3fb41bbed647ed36c0420501e5",
      "tree": "59bb799e202f912ced4230e6b4c194c9c0097758",
      "parents": [
        "3998b9301d3d55be8373add22b6bc5e11c1d9b71"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Mon Sep 25 23:30:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] update to the kernel kmap/kunmap API\n\nGive non-highmem architectures access to the kmap API for the purposes of\noverriding (this is what the attached patch does).\n\nThe proposal is that we should now require all architectures with coherence\nissues to manage data coherence via the kmap/kunmap API.  Thus driver\nwriters never have to write code like\n\n    kmap(page)\n    modify data in page\n    flush_kernel_dcache_page(page)\n    kunmap(page)\n\ninstead, kmap/kunmap will manage the coherence and driver (and filesystem)\nwriters don\u0027t need to worry about how to flush between kmap and kunmap.\n\nFor most architectures, the page only needs to be flushed if it was\nactually written to *and* there are user mappings of it, so the best\nimplementation looks to be: clear the page dirty pte bit in the kernel page\ntables on kmap and on kunmap, check page-\u003emappings for user maps, and then\nthe dirty bit, and only flush if it both has user mappings and is dirty.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "632bbfeee4f042c05bc65150b4433a297d3fe387",
      "tree": "ce67b5fa4bec38610fc0ecb9b20be6aa69763bb3",
      "parents": [
        "0a2966b48fb784e437520e400ddc94874ddbd4e8"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Mon Sep 25 23:30:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] trigger a syntax error if percpu macros are incorrectly used\n\nget_cpu_var()/per_cpu()/__get_cpu_var() arguments must be simple\nidentifiers.  Otherwise the arch dependent implementations might break.\n\nThis patch enforces the correct usage of the macros by producing a syntax\nerror if the variable is not a simple identifier.\n\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7e4720201ad44ace85a443f41d668a62a737e7d0",
      "tree": "8b9118dffcfd9511d9ce31b87776e04095f9acf1",
      "parents": [
        "7b29122f9ec54db5c38a66a11127d94db0817c17",
        "4cc6773508299377099aa30cf30e6a2196c5872d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 25 17:39:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 25 17:39:55 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:\n  [NetLabel]: update docs with website information\n  [NetLabel]: rework the Netlink attribute handling (part 2)\n  [NetLabel]: rework the Netlink attribute handling (part 1)\n  [Netlink]: add nla_validate_nested()\n  [NETLINK]: add nla_for_each_nested() to the interface list\n  [NetLabel]: change the SELinux permissions\n  [NetLabel]: make the CIPSOv4 cache spinlocks bottom half safe\n  [NetLabel]: correct improper handling of non-NetLabel peer contexts\n  [TCP]: make cubic the default\n  [TCP]: default congestion control menu\n  [ATM] he: Fix __init/__devinit conflict\n  [NETFILTER]: Add dscp,DSCP headers to header-y\n  [DCCP]: Introduce dccp_probe\n  [DCCP]: Use constants for CCIDs\n  [DCCP]: Introduce constants for CCID numbers\n  [DCCP]: Allow default/fallback service code.\n"
    },
    {
      "commit": "3212fe1594e577463bc8601d28aa008f520c3377",
      "tree": "6f4270c825c2df9f4a361360dab0963ecaed34c1",
      "parents": [
        "08992986497471ce575f23796268fb1b50b5c2ab"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Sep 25 16:25:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 25 17:38:36 2006 -0700"
      },
      "message": "[PATCH] cpu to node relationship fixup: map cpu to node\n\nAssume that a cpu is *physically* offlined at boot time...\n\nBecause smpboot.c::smp_boot_cpu_map() canoot find cpu\u0027s sapicid,\nnuma.c::build_cpu_to_node_map() cannot build cpu\u003c-\u003enode map for\nofflined cpu.\n\nFor such cpus, cpu_to_node map should be fixed at cpu-hot-add.\nThis mapping should be done before cpu onlining.\n\nThis patch also handles cpu hotremove case.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fcd48280643e92ec6cb29a04e9079dd7b6b5bfef",
      "tree": "c594e16a021262e97f8b41493529c95bd616529e",
      "parents": [
        "4fe5d5c07ab615a52fd1b0ceba5aeed7c612821a"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Mon Sep 25 15:56:09 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 25 15:56:09 2006 -0700"
      },
      "message": "[NetLabel]: rework the Netlink attribute handling (part 1)\n\nAt the suggestion of Thomas Graf, rewrite NetLabel\u0027s use of Netlink attributes\nto better follow the common Netlink attribute usage.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fe5d5c07ab615a52fd1b0ceba5aeed7c612821a",
      "tree": "245e504bb1049e86f9f6dc369b679c5a5ca495ec",
      "parents": [
        "22acb19a91d2b551ea37647747972e5286284b22"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Mon Sep 25 15:54:03 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 25 15:54:03 2006 -0700"
      },
      "message": "[Netlink]: add nla_validate_nested()\n\nAdd a new function, nla_validate_nested(), to validate nested Netlink\nattributes.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "22acb19a91d2b551ea37647747972e5286284b22",
      "tree": "c37455de7df838e76b6f4279f084bce95c16e416",
      "parents": [
        "df2115c3134d0d1a18c1f37f5192394e7f64d1e0"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Mon Sep 25 15:53:37 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 25 15:53:37 2006 -0700"
      },
      "message": "[NETLINK]: add nla_for_each_nested() to the interface list\n\nAt the top of include/net/netlink.h is a list of Netlink interfaces, however,\nthe nla_for_each_nested() macro was not listed.  This patch adds this interface\nto the list at the top of the header file.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14a72f53fb1bb5d5c2bdd8cf172219519664729a",
      "tree": "95a077fb9289a95c352af77f18f12e5aba3313c6",
      "parents": [
        "597811ec167fa01c926a0957a91d9e39baa30e64"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Mon Sep 25 15:52:01 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 25 15:52:01 2006 -0700"
      },
      "message": "[NetLabel]: correct improper handling of non-NetLabel peer contexts\n\nFix a problem where NetLabel would always set the value of \nsk_security_struct-\u003epeer_sid in selinux_netlbl_sock_graft() to the context of\nthe socket, causing problems when users would query the context of the\nconnection.  This patch fixes this so that the value in\nsk_security_struct-\u003epeer_sid is only set when the connection is NetLabel based,\notherwise the value is untouched.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a6d967a485c67ec8a1276261f39d81ace6a3e308",
      "tree": "3e46be7f279342316d4578995dfbfce99728c579",
      "parents": [
        "7c250413e5b7c3dfae89354725b70c76d7621395"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Sep 25 15:33:09 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Sep 25 15:33:09 2006 -0400"
      },
      "message": "[libata] No need for all those arch libata-portmap.h headers\n\nThey all contain the same thing.  Instead, have a single generic one in\ninclude/asm-generic, and permit an arch to override as needed.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3cc27547d6ee2d50ecdd11e9127bc3cd1947e8dd",
      "tree": "d70857f363fea3f8bc928bd2fd10d9a277c119bd",
      "parents": [
        "855fc73bf81e8f99606d6f5914c5b7c3b079d718"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Sep 25 02:55:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 20:07:49 2006 -0700"
      },
      "message": "[PATCH] SCSI gfp_t annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "76a081e5b32fde17f6f6d007e1806744cc848712",
      "tree": "869a5a0c406fbc71ffb803f57aad147014510f27",
      "parents": [
        "0d6c7ae22d4fadbc83677ea1a6144eea8911e319",
        "e41542f5167d6b506607f8dd111fa0a3e468ccb8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Sep 24 19:29:57 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Sep 24 19:29:57 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6\n"
    },
    {
      "commit": "0d6c7ae22d4fadbc83677ea1a6144eea8911e319",
      "tree": "20e8ef57cb366b5b8a9d773fc1b533b2bf9edaf5",
      "parents": [
        "508df253dbefb0385a629370f4244e3db197d3b8"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sun Sep 24 19:28:47 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 24 19:28:47 2006 -0700"
      },
      "message": "[NETFILTER]: Add dscp,DSCP headers to header-y\n\nThis patch adds xt_dscp.h and xt_DSCP.h to the kernel headers which are\nexported via \u0027make headers_install\u0027. These are necessary for userspace\nto add rules using dscp match and DSCP target.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e597c6045502dd0fa98a61aa95ba178f8a2cc03",
      "tree": "61d8994ed00550ae641e2a5743e072a1c02654fb",
      "parents": [
        "1db2ea398ffbfd9ea46d509ff0e4a85bb4b8c0ea"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Sep 24 23:42:20 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 15:55:03 2006 -0700"
      },
      "message": "[PATCH] fix iptables __user misannotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1db2ea398ffbfd9ea46d509ff0e4a85bb4b8c0ea",
      "tree": "a4c2f7df0133f46c5e92f79e3219462ee9168314",
      "parents": [
        "8abf1064c786ef5435b2d53cc8e9ebee13020de6"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Sep 24 23:41:42 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 15:55:03 2006 -0700"
      },
      "message": "[PATCH] netlabel gfp annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "638b093255e12e066ae16b8750f37383603f7bd8",
      "tree": "2a95d93f50f855f416dcef1a52585f95471d7e33",
      "parents": [
        "b7a818e4fcd2c3ee8c34c2367d345561c4c76a15"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Sep 24 23:39:25 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 15:55:03 2006 -0700"
      },
      "message": "[PATCH] restore libata build on frv\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b7a818e4fcd2c3ee8c34c2367d345561c4c76a15",
      "tree": "7d05ad4a8eadd18cce315af47ccd91304c4f72c3",
      "parents": [
        "398477d4bd57cc33792fd93035c2763ad78629c4",
        "0d5dc6c2dd7a3cd2b2f505b0625c4ec9c0e5b4f0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 15:28:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 15:28:50 2006 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: (28 commits)\n  ocfs2: Teach ocfs2_drop_lock() to use -\u003eset_lvb() callback\n  ocfs2: Remove -\u003eunblock lockres operation\n  ocfs2: move downconvert worker to lockres ops\n  ocfs2: Remove unused dlmglue functions\n  ocfs2: Have the metadata lock use generic dlmglue functions\n  ocfs2: Add -\u003eset_lvb callback in dlmglue\n  ocfs2: Add -\u003echeck_downconvert callback in dlmglue\n  ocfs2: Check for refreshing locks in generic unblock function\n  ocfs2: don\u0027t unconditionally pass LVB flags\n  ocfs2: combine inode and generic blocking AST functions\n  ocfs2: Add -\u003eget_osb() dlmglue locking operation\n  ocfs2: remove -\u003eunlock_ast() callback from ocfs2_lock_res_ops\n  ocfs2: combine inode and generic AST functions\n  ocfs2: Clean up lock resource refresh flags\n  ocfs2: Remove i_generation from inode lock names\n  ocfs2: Encode i_generation in the meta data lvb\n  ocfs2: Free up some space in the lvb\n  ocfs2: Remove special casing for inode creation in ocfs2_dentry_attach_lock()\n  ocfs2: manually d_move() during ocfs2_rename()\n  [PATCH] Allow file systems to manually d_move() inside of -\u003erename()\n  ...\n"
    },
    {
      "commit": "b4daf69722c49670d355d66439abda5ab5d4c5db",
      "tree": "4f257adf1af09cdb0e830881da69786d1dd47f7a",
      "parents": [
        "9e72cbf353e259bd30ab472d72d7bdb9be23fb12"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 24 22:07:25 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 24 22:07:25 2006 +0100"
      },
      "message": "[S390] Unexport \u003casm/z90crypt.h\u003e, export \u003casm/zcrypt.h\u003e in its place.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "9e72cbf353e259bd30ab472d72d7bdb9be23fb12",
      "tree": "2a31af40917fcce0f1d3b21a97e8fae5476ce417",
      "parents": [
        "02b25fcff676125a88169c8a78d4c6dd647574ed"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 24 22:06:48 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 24 22:06:48 2006 +0100"
      },
      "message": "Remove dead netfilter_logging.h from include/linux/Kbuild\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "02b25fcff676125a88169c8a78d4c6dd647574ed",
      "tree": "372fc8e885be41ba1819b2767c8889ecd97ff948",
      "parents": [
        "1694176a210189312e31b083bac1e1688981219a",
        "a68aa1cc6f3203b8a332683ebde67a00f39eec43"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 24 22:05:59 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 24 22:05:59 2006 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "b83eff641ed39bd631535b9a8971e161b056f541",
      "tree": "3989df2905034c50f5f035cd884fe33f5c709749",
      "parents": [
        "00e4d116a7ef94eb910be037912b0b2fc09f608b"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Fri Sep 22 14:25:36 2006 +1200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Sep 24 17:56:32 2006 -0300"
      },
      "message": "[DCCP]: Introduce constants for CCID numbers\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "349457ccf2592c14bdf13b6706170ae2e94931b1",
      "tree": "3670945b5a62617d38cf1f317487387032d3da4d",
      "parents": [
        "1390334b4c697b7588d5661fcf6acaeec409cf4c"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Fri Sep 08 14:22:21 2006 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Sun Sep 24 13:50:45 2006 -0700"
      },
      "message": "[PATCH] Allow file systems to manually d_move() inside of -\u003erename()\n\nSome file systems want to manually d_move() the dentries involved in a\nrename.  We can do this by making use of the FS_ODD_RENAME flag if we just\nhave nfs_rename() unconditionally do the d_move().  While there, we rename\nthe flag to be more descriptive.\n\nOCFS2 uses this to protect that part of the rename operation with a cluster\nlock.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n"
    },
    {
      "commit": "00e4d116a7ef94eb910be037912b0b2fc09f608b",
      "tree": "81e8a52c7529691b3c07605613da65cae80f41c9",
      "parents": [
        "1ab9dd0902df4f4ff56fbf672220549090ab28ba"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Sep 22 09:33:58 2006 +0100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Sep 24 17:49:26 2006 -0300"
      },
      "message": "[DCCP]: Allow default/fallback service code.\n\nThis has been discussed on dccp@vger and removes the necessity for applications\nto supply service codes in each and every case.\n\nIf an application does not want to provide a service code, that\u0027s fine, it will\nbe given 0. Otherwise, service codes can be set via socket options as before.\n\nThis patch has been tested using various client/server configurations\n(including listening on multiple service codes).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "a68aa1cc6f3203b8a332683ebde67a00f39eec43",
      "tree": "c05bd86850d8e0d0fb096a4b5f8d9f268b5561e8",
      "parents": [
        "a319a2773a13bab56a0d0b3744ba8703324313b5",
        "23930fa1cebfea6f79881c588ccd1b0781e49e3f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 10:19:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 10:19:56 2006 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: (50 commits)\n  [libata] Delete pata_it8172 driver\n  [PATCH] libata: improve handling of diagostic fail (and hardware that misreports it)\n  [PATCH] libata: fix non-uniform ports handling\n  Fix libata resource conflict for legacy mode\n  [libata] ata_piix: build fix\n  [PATCH] pata_amd: Check enable bits on Nvidia\n  [PATCH] Update SiS PATA\n  [libata] Add pata_jmicron driver to Kconfig, Makefile\n  [libata #pata-drivers] Trim trailing whitespace.\n  [libata] Trim trailing whitespace.\n  [libata] Add a bunch of PATA drivers.\n  Rename libata-bmdma.c to libata-sff.c.\n  libata: Grand renaming.\n  Clean up drivers/ata/Kconfig a bit.\n  [PATCH] CONFIG_PM\u003dn slim: drivers/scsi/sata_sil*\n  [PATCH] sata_via: Add SATA support for vt8237a\n  [PATCH] libata: change path to libata in libata.tmpl\n  [PATCH] libata: s/CONFIG_SCSI_SATA/CONFIG_[S]ATA/g in pci/quirks.c\n  libata: Make sure drivers/ata is a separate Kconfig menu\n  [libata] ata_piix: add missing kfree()\n  ...\n"
    },
    {
      "commit": "a319a2773a13bab56a0d0b3744ba8703324313b5",
      "tree": "f02c86acabd1031439fd422a167784007e84ebb1",
      "parents": [
        "e18fa700c9a31360bc8f193aa543b7ef7b39a06b",
        "183798799216fad36c7219fe8d4d6dee6b8fa755"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 10:15:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Sep 24 10:15:13 2006 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (217 commits)\n  net/ieee80211: fix more crypto-related build breakage\n  [PATCH] Spidernet: add ethtool -S (show statistics)\n  [NET] GT96100: Delete bitrotting ethernet driver\n  [PATCH] mv643xx_eth: restrict to 32-bit PPC_MULTIPLATFORM\n  [PATCH] Cirrus Logic ep93xx ethernet driver\n  r8169: the MMIO region of the 8167 stands behin BAR#1\n  e1000, ixgb: Remove pointless wrappers\n  [PATCH] Remove powerpc specific parts of 3c509 driver\n  [PATCH] s2io: Switch to pci_get_device\n  [PATCH] gt96100: move to pci_get_device API\n  [PATCH] ehea: bugfix for register access functions\n  [PATCH] e1000 disable device on PCI error\n  drivers/net/phy/fixed: #if 0 some incomplete code\n  drivers/net: const-ify ethtool_ops declarations\n  [PATCH] ethtool: allow const ethtool_ops\n  [PATCH] sky2: big endian\n  [PATCH] sky2: fiber support\n  [PATCH] sky2: tx pause bug fix\n  drivers/net: Trim trailing whitespace\n  [PATCH] ehea: IBM eHEA Ethernet Device Driver\n  ...\n\nManually resolved conflicts in drivers/net/ixgb/ixgb_main.c and\ndrivers/net/sky2.c related to CHECKSUM_HW/CHECKSUM_PARTIAL changes by\ncommit 84fa7933a33f806bbbaae6775e87459b1ec584c0 that just happened to be\nnext to unrelated changes in this update.\n"
    },
    {
      "commit": "e18fa700c9a31360bc8f193aa543b7ef7b39a06b",
      "tree": "1006f53177341c614d4aeb6c96e2e8f3859b5f52",
      "parents": [
        "4f5537de7c1531398e84e18a24f667e49cc94208"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Sep 24 11:13:19 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Sep 24 11:13:19 2006 -0400"
      },
      "message": "Move several *_SUPER_MAGIC symbols to include/linux/magic.h.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "23930fa1cebfea6f79881c588ccd1b0781e49e3f",
      "tree": "36d29e3f83661c4f5f45b6f74ac0d5f9886867a8",
      "parents": [
        "36b35a5be0e4b406acd816e2122d153e875105be",
        "4f5537de7c1531398e84e18a24f667e49cc94208"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Sep 24 01:52:47 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Sep 24 01:52:47 2006 -0400"
      },
      "message": "Merge branch \u0027master\u0027 into upstream\n"
    },
    {
      "commit": "1aedf2ccc60fade26c46fae12e28664d0da3f199",
      "tree": "d91083e3079f1ddb942a382ac2b5a7525570ad59",
      "parents": [
        "dfdc58ba354adb80d67c99f7be84f95a8e02e466",
        "1ab9dd0902df4f4ff56fbf672220549090ab28ba"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "jejb@sparkweed.localdomain",
        "time": "Sat Sep 23 21:03:52 2006 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@sparkweed.localdomain",
        "time": "Sat Sep 23 21:03:52 2006 -0500"
      },
      "message": "Merge mulgrave-w:git/linux-2.6\n\nConflicts:\n\n\tinclude/linux/blkdev.h\n\nTrivial merge to incorporate tag prototypes.\n"
    },
    {
      "commit": "dfdc58ba354adb80d67c99f7be84f95a8e02e466",
      "tree": "9cbbe31f7d3d5be0029fd7c1a8eeaaa02e53853a",
      "parents": [
        "a07f353701acae77e023f6270e8af353b37af7c4"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@steeleye.com",
        "time": "Wed Sep 20 12:00:18 2006 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Sat Sep 23 20:53:53 2006 -0500"
      },
      "message": "[SCSI] SPI transport class: misc DV fixes\n\nKey more of the domain validation settings off the inquiry data from\nthe disk (in particular, don\u0027t try IU or DT unless the disk claims to\nsupport them.\n\nAlso add a new dv_in_progress flag to prevent recursive DV.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "f7425b160db500520c33f241edb066fc5c413f03",
      "tree": "f1f50b935fa49a273f8df685b5fb2fcf6a0f07a6",
      "parents": [
        "9f261e011340bcd22c1dd48b465153bd78caa8c8",
        "f0063c4489a00ed5395378ef80a7edea4272f20b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 17:21:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 17:21:12 2006 -0700"
      },
      "message": "Merge branch \u0027linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa\n\n* \u0027linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: (148 commits)\n  [ALSA] intel8x0m - Free irq in suspend\n  [ALSA] Move CONFIG_SND_AC97_POWER_SAVE to pci/Kconfig\n  [ALSA] usb-audio: add mixer control names for the Aureon 5.1 MkII\n  [ALSA] ES1938: remove duplicate field initialization\n  [ALSA] usb-audio: increase number of packets per URB\n  [ALSA] hda-codec - Fix headphone auto-toggle on sigmatel codec\n  [ALSA] hda-intel - A slight cleanup of timeout check in azx_get_response()\n  [ALSA] hda-codec - Fix mic input with STAC92xx codecs\n  [ALSA] mixart: Use SEEK_{SET,CUR,END} instead of hardcoded values\n  [ALSA] gus: Use SEEK_{SET,CUR,END} instead of hardcoded values\n  [ALSA] opl4: Use SEEK_{SET,CUR,END} instead of hardcoded values\n  [ALSA] sound core: Use SEEK_{SET,CUR,END} instead of hardcoded values\n  [ALSA] hda-codec - Support multiple headphone pins\n  [ALSA] hda_intel prefer 24bit instead of 20bit\n  [ALSA] hda-codec - Add vendor ids for Motorola and Conexant\n  [ALSA] hda-codec - Add device id for Motorola si3054-compatible codec\n  [ALSA] Add missing compat ioctls for ALSA control API\n  [ALSA] powermac - Fix Oops when conflicting with aoa driver\n  [ALSA] aoa: add locking to tas codec\n  [ALSA] hda-intel - Fix suspend/resume with MSI\n  ...\n"
    },
    {
      "commit": "9f261e011340bcd22c1dd48b465153bd78caa8c8",
      "tree": "b1c266ea746a0e8591e6af781aef22854e652ff9",
      "parents": [
        "a4c12d6c5dde48c69464baf7c703e425ee511433",
        "026ed5c9185dcc4b2df92e98c3d61a01cea19cbf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:58:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:58:40 2006 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (74 commits)\n  NFS: unmark NFS direct I/O as experimental\n  NFS: add comments clarifying the use of nfs_post_op_update()\n  NFSv4: rpc_mkpipe creating socket inodes w/out sk buffers\n  NFS: Use SEEK_END instead of hardcoded value\n  NFSv4: When mounting with a port\u003d0 argument, substitute port\u003d2049\n  NFSv4: Poll more aggressively when handling NFS4ERR_DELAY\n  NFSv4: Handle the condition NFS4ERR_FILE_OPEN\n  NFSv4: Retry lease recovery if it failed during a synchronous operation.\n  NFS: Don\u0027t invalidate the symlink we just stuffed into the cache\n  NFS: Make read() return an ESTALE if the file has been deleted\n  NFSv4: It\u0027s perfectly legal for clp to be NULL here....\n  NFS: nfs_lookup - don\u0027t hash dentry when optimising away the lookup\n  SUNRPC: Fix Oops in pmap_getport_done\n  SUNRPC: Add refcounting to the struct rpc_xprt\n  SUNRPC: Clean up soft task error handling\n  SUNRPC: Handle ENETUNREACH, EHOSTUNREACH and EHOSTDOWN socket errors\n  SUNRPC: rpc_delay() should not clobber the rpc_task-\u003etk_status\n  Fix a referral error Oops\n  NFS: NFS_ROOT should use the new rpc_create API\n  NFS: Fix up compiler warnings on 64-bit platforms in client.c\n  ...\n\nManually resolved conflict in net/sunrpc/xprtsock.c\n"
    },
    {
      "commit": "a4c12d6c5dde48c69464baf7c703e425ee511433",
      "tree": "73c375e41a353e2da0461ff30d744bff73958b08",
      "parents": [
        "73af07de3e32b9ac328c3d1417258bb98a9b0a9b",
        "3b9f9a1c3903b64c38505f9fed3bb11e48dbc931"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:49:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:49:31 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (353 commits)\n  [IPV6] ADDRCONF: Mobile IPv6 Home Address support.\n  [IPV6] ADDRCONF: Allow non-DAD\u0027able addresses.\n  [IPV6] NDISC: Fix is_router flag setting.\n  [IPV6] ADDRCONF: Convert addrconf_lock to RCU.\n  [IPV6] NDISC: Add proxy_ndp sysctl.\n  [IPV6] NDISC: Set per-entry is_router flag in Proxy NA.\n  [IPV6] NDISC: Avoid updating neighbor cache for proxied address in receiving NA.\n  [IPV6]: Don\u0027t forward packets to proxied link-local address.\n  [IPV6] NDISC: Handle NDP messages to proxied addresses.\n  [NETFILTER]: PPTP conntrack: fix another GRE keymap leak\n  [NETFILTER]: PPTP conntrack: fix GRE keymap leak\n  [NETFILTER]: PPTP conntrack: fix PPTP_IN_CALL message types\n  [NETFILTER]: PPTP conntrack: check call ID before changing state\n  [NETFILTER]: PPTP conntrack: clean up debugging cruft\n  [NETFILTER]: PPTP conntrack: consolidate header parsing\n  [NETFILTER]: PPTP conntrack: consolidate header size checks\n  [NETFILTER]: PPTP conntrack: simplify expectation handling\n  [NETFILTER]: PPTP conntrack: remove unnecessary cid/pcid header pointers\n  [NETFILTER]: PPTP conntrack: fix header definitions\n  [NETFILTER]: PPTP conntrack: remove more dead code\n  ...\n"
    },
    {
      "commit": "c9802cd9574a80444e689c7525627b40d7dc3a06",
      "tree": "5954e2ac7e97023b51d36127963a1e9262fbcfe0",
      "parents": [
        "3eeab61aa3ddd3c0bedb7449ada1599de22fdb5a",
        "2d2f8d59b14bec6c745e219a350ac51d9e00673f"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "jejb@sparkweed.localdomain",
        "time": "Sat Sep 23 15:33:43 2006 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@sparkweed.localdomain",
        "time": "Sat Sep 23 15:33:43 2006 -0500"
      },
      "message": "Merge mulgrave-w:git/scsi-misc-2.6\n\nConflicts:\n\n\tdrivers/scsi/iscsi_tcp.c\n\tdrivers/scsi/iscsi_tcp.h\n\nPretty horrible merge between crypto hash consolidation\nand crypto_digest_...-\u003ecrypto_hash_... conversion\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "2efc80cb8ddc341d81de996920e3b2ad8a12b1f7",
      "tree": "029c820b78fd8eeaf9e378c79cb818382f93a781",
      "parents": [
        "13b5aeccc4350e5069c723e8f9becd7208ee02f2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sat Sep 23 16:45:55 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 11:34:43 2006 -0700"
      },
      "message": "[PATCH] #elif that should\u0027ve been #elif defined\n\n #elif CONFIG_44x\nin ibm4xx.h should\u0027ve been\n #elif defined(CONFIG_44x)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c8bd7eeee4c8f157fb61fb64b57500990b42e0e",
      "tree": "6d410adb72e69270c348a09ece9f5eb3a297af8a",
      "parents": [
        "3eeab61aa3ddd3c0bedb7449ada1599de22fdb5a"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 22 22:31:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 11:34:42 2006 -0700"
      },
      "message": "[KERNEL] Do not truncate to \u0027int\u0027 in ALIGN() macro.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "854b66e44260320c21ebe4b8a18e189f2e45b5be",
      "tree": "2e9636686f69d9f7ab659d3afa1b7495ef6de7d8",
      "parents": [
        "8f88820ee49359ea33af42845456ce9dbf54d39a"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Sep 08 12:27:38 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:46:55 2006 +0200"
      },
      "message": "[ALSA] ak4xxx - Remove bogus IPGA controls\n\nRemove IPGA volume controls and merge the IPGA range to ADC volume\ncontrols.  These two volumes are not really independent but connected\nsimply in different ranges 0-0x7f and 0x80-max.  It doesn\u0027t make sense\nto provide two controls.\nSince both 0x7f and 0x80 specify 0dB, a hack is needed for IPGA range\nto skip 0x80 (increment one) for such controls.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "9d19f48cfe2570562c2c6226780a7ca627b0f1f1",
      "tree": "dffe11da7daa0b27225c08badee58628923d961b",
      "parents": [
        "a7da6ce564a80952d9c0b210deca5a8cd3474a31"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Wed Sep 06 14:27:46 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:46:32 2006 +0200"
      },
      "message": "[ALSA] Add pcm_class attribute to PCM sysfs entry\n\nThis patch adds a new attribute, pcm_class, to each PCM sysfs entry.\nIt\u0027s useful to detect what kind of PCM stream is, for example, HAL\ncan check whether it\u0027s a modem or not.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "55a29af5ed5d914f017e6a7c613a4d7cc34f82d9",
      "tree": "74f44500e741a0ad0cbfd5bb182b3d98da107401",
      "parents": [
        "311e70a4741c736795da082da7290164d9cf3726"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Wed Sep 06 12:15:34 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:46:11 2006 +0200"
      },
      "message": "[ALSA] Add definition of TLV dB range compound\n\nAdded the definition of TLV dB range compound.  It contains one or\nmore dB-range or linear-volume TLV entries with min/max ranges.\nUsed for volume controls with non-linear curves.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "723b2b0d36fa7cea81a962af2d40d88520d5a5f1",
      "tree": "0020b109e0792aba552c99cff7b6576b81a5c2b6",
      "parents": [
        "d0ae48471570c680333cbe28c143bbab887a4ec2"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Wed Aug 30 16:49:54 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:45:08 2006 +0200"
      },
      "message": "[ALSA] Clean up and add TLV support to AK4xxx i2c driver\n\n- Clean up the code in AK4xxx-ADDA i2c code.\n- Fix capture gain controls for AK5365\n- Changed the static table for DAC/ADC mixer labels to use\n  structs\n- Implemented TLV entries for each AK codec\n  The volumes in AK4524, AK4528 and AK5365 are corrected with\n  a table to be suitable for dB conversion.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "063a40d9111ce7558f2fdfa4f85acfc47eb27353",
      "tree": "66b1d91583d6fa1c4596c349bebc03a0363273cb",
      "parents": [
        "1f14d167f0233342eab53bb1a429ddad1e848de4"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Aug 28 13:20:13 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:44:44 2006 +0200"
      },
      "message": "[ALSA] Add the definition of linear volume TLV\n\nAdded the definition of linear volume TLV type.\nSome DSP chips and codecs (e.g. AK codec) use linear volume control.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "1186ed8c7dc9c0185e783beddf241509cc224f1a",
      "tree": "f24bf18a5d860ab9a4655c6bc8f67a6eb4a2b667",
      "parents": [
        "c6ff77f71fe692fa48fe02dbfe74a01f3d5e55e2"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Wed Aug 23 19:53:28 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:44:12 2006 +0200"
      },
      "message": "[ALSA] Add dB scale information to vxpocket and vx222 drivers\n\nAdded the dB scale information to vxpocket and vx222 drivers.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "eac06a10d2b814dfacc36a8fff35ef07bf4eec8e",
      "tree": "b58b442323d539ae6edaebede6643f49213e4978",
      "parents": [
        "0e7febf15851fb438b9518654340d1f704d202e5"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Aug 22 13:16:25 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:43:28 2006 +0200"
      },
      "message": "[ALSA] Add dB scale information to ad1848 driver\n\nAdded the dB scale information to ad1848 driver.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "683fe1537e660c322c8af953773921e814791193",
      "tree": "fda0252e756a3b276a7cacad778e795c49739006",
      "parents": [
        "f5a5ffad072ec3c1fd636174c30f0ba52fe0259f"
      ],
      "author": {
        "name": "Jochen Voss",
        "email": "voss@seehuhn.de",
        "time": "Tue Aug 08 21:12:44 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:40:18 2006 +0200"
      },
      "message": "[ALSA] Revolution 5.1 - add AK5365 ADC support\n\nAdd support for the AK5365 ADC.\n\nSigned-off-by: Jochen Voss \u003cvoss@seehuhn.de\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "548a648b98318e4b843b636dd2c7f42377e19a00",
      "tree": "af08ffaaabd478080656a7fb8df149d37f66cdb8",
      "parents": [
        "1c3985580445ef9225c1ea7714d6d963f7626eeb"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jul 31 16:51:51 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:39:50 2006 +0200"
      },
      "message": "[ALSA] Fix control/status mmap with shared PCM substream\n\nThe flag to avoid 32bit-incompatible mmap for control/status records\nshould be outside the pcm substream instance since a substream can be\nshared among multiple opens.  Now it\u0027s flagged in pcm_file list that\nis directly assigned to file-\u003eprivate_data.\nAlso, removed snd_pcm_add_file() and remove_file() functions and\nsubstream.files field that are not really used in the code.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "31508f83f591dc8764427b6321c89f8f9e84bad2",
      "tree": "e8b131303a9397232b33fbaaf5591f097f93af35",
      "parents": [
        "fff36e472b4315df77513f4339c5c199c6aad28b"
      ],
      "author": {
        "name": "James Courtier-Dutton",
        "email": "James@superbug.co.uk",
        "time": "Sat Jul 22 17:02:10 2006 +0100"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:38:32 2006 +0200"
      },
      "message": "[ALSA] snd-emu10k1: Implement dB gain infomation.\n\n\nSigned-off-by: James Courtier-Dutton \u003cJames@superbug.co.uk\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "6a65d793b0a82c7e190d9fd92a479401b6a127ca",
      "tree": "3f55f0b9e853688203e764f09797758a2a5c8c22",
      "parents": [
        "11b3a7555aa1b1629614e919889a4479dfe6f37b"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jul 14 14:39:34 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:37:49 2006 +0200"
      },
      "message": "[ALSA] Remove unused tlv_rw field from struct snd_kcontrol\n\nRemove unused tlv_rw field from struct snd_kcontrol.  The callback is\nset in tlv.c field, instead.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "8aa9b586e42099817163aba01d925c2660c4dbbe",
      "tree": "b70172eafcb672074fda1858c7a9c5779a1132f8",
      "parents": [
        "6bbe13ecbbce4415a5a7959b3bc35b18313025e0"
      ],
      "author": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Wed Jul 05 17:34:51 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:37:26 2006 +0200"
      },
      "message": "[ALSA] Control API - more robust TLV implementation\n\n- added callback option\n- added READ/WRITE/COMMAND flags to access member\n- added WRITE/COMMAND ioctls\n- added SNDRV_CTL_EVENT_MASK_TLV for TLV change notifications\n- added TLV support to ELEM_ADD ioctl\n\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "6dbe662874ba08585eaf732d126762c25ac8e3f7",
      "tree": "7460c36d4d848f223b682f7a700866bcf6dbc7d5",
      "parents": [
        "2b29b13c5794f648cd5e839796496704d787f5a6"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jun 27 18:28:53 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:37:08 2006 +0200"
      },
      "message": "[ALSA] Add experimental support of aggressive AC97 power-saving mode\n\nAdded CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support\nof aggressive AC97 power-saving mode.  In this mode, the AC97\npowerdown register bits are dynamically controlled at each open/close\nof PCM streams.\nThe mode is activated via power_save option for snd-ac97-codec\ndriver.  As default it\u0027s off.  It can be turned on/off on the fly\nvia sysfs, too.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "2b29b13c5794f648cd5e839796496704d787f5a6",
      "tree": "b9753f2593aff429a8cca63e40f052a0fdd6aedb",
      "parents": [
        "c461482c8072bb073e6146db320d3da85cdc89ad"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 23 14:38:26 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:37:03 2006 +0200"
      },
      "message": "[ALSA] Deprecate snd_card_free_in_thread()\n\nDeprecated snd_card_free_in_thread(), replaced with\nsnd_card_free_when_closed().\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "c461482c8072bb073e6146db320d3da85cdc89ad",
      "tree": "3b69cfd292a488a8cb57ac9b040bd2b1b1a1e26d",
      "parents": [
        "746d4a02e68499fc6c1f8d0c43d2271853ade181"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 23 14:38:23 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:36:58 2006 +0200"
      },
      "message": "[ALSA] Unregister device files at disconnection\n\nOrignally proposed by Sam Revitch \u003csam.revitch@gmail.com\u003e.\nUnregister device files at disconnection to avoid the futher accesses.\nAlso, the dev_unregister callback is removed and replaced with the\ncombination of disconnect + free.\nA new function snd_card_free_when_closed() is introduced, which is\nused in USB disconnect callback.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "746d4a02e68499fc6c1f8d0c43d2271853ade181",
      "tree": "c4a1e9a0e8f5f95a44a3349d9b86490fe837428f",
      "parents": [
        "42750b04c5baa7c5ffdf0a8be2b9b320efdf069f"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Jun 23 14:37:59 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:36:48 2006 +0200"
      },
      "message": "[ALSA] Fix disconnection of proc interface\n\n- Add the linked list to each proc entry to enable a single-shot\n  disconnection (unregister)\n- Deprecate snd_info_unregister(), use snd_info_free_entry()\n- Removed NULL checks of snd_info_free_entry()\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "42750b04c5baa7c5ffdf0a8be2b9b320efdf069f",
      "tree": "52aea8f1eeb44405b67bc5b381cce6bc20e2bff6",
      "parents": [
        "3eeab61aa3ddd3c0bedb7449ada1599de22fdb5a"
      ],
      "author": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Thu Jun 01 18:34:01 2006 +0200"
      },
      "committer": {
        "name": "Jaroslav Kysela",
        "email": "perex@suse.cz",
        "time": "Sat Sep 23 10:36:42 2006 +0200"
      },
      "message": "[ALSA] Control API - TLV implementation for additional information like dB scale\n\nThis patch implements a TLV mechanism to transfer an additional information\nlike dB scale to the user space. The types might be extended in future.\nAcked-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n\nSigned-off-by: Jaroslav Kysela \u003cperex@suse.cz\u003e\n"
    },
    {
      "commit": "6b6ca86b77b62b798cf9ca2599036420abce7796",
      "tree": "cf631a3c293be45fa4bed54bca5dcbfc96a57df1",
      "parents": [
        "da45828e2835057045150b318c4fbe9bb91f18dd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Sep 05 12:55:57 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:25:01 2006 -0400"
      },
      "message": "SUNRPC: Add refcounting to the struct rpc_xprt\n\nIn a subsequent patch, this will allow the portmapper to take a reference\nto the rpc_xprt for which it is updating the port number, fixing an Oops.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "158998b6fe36f6acef087f574c96d44713499cc9",
      "tree": "afc0f330e51135cdcf05bd8c268bf514165a4e4a",
      "parents": [
        "5dd3177ae5012c1e2ad7a9ffdbd0e0d0de2f60e4"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Aug 24 01:03:17 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:54 2006 -0400"
      },
      "message": "SUNRPC: Make rpc_mkpipe() take the parent dentry as an argument\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5dd3177ae5012c1e2ad7a9ffdbd0e0d0de2f60e4",
      "tree": "2a8730d6443f6d33e8879cfc323396f9a570b97b",
      "parents": [
        "275a082fe9308e710324e26ccb5363c53d8fd45f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Aug 24 01:03:05 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:54 2006 -0400"
      },
      "message": "NFSv4: Fix a use-after-free issue with the nfs server.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "275a082fe9308e710324e26ccb5363c53d8fd45f",
      "tree": "e97df6e45f98ea2827f71dc749f8cd47f3f353cc",
      "parents": [
        "94a6d75320b3681e6e728b70e18bd186cb55e682"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 22 20:06:24 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:54 2006 -0400"
      },
      "message": "Add a real API for dealing with blk_congestion_wait()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "94a6d75320b3681e6e728b70e18bd186cb55e682",
      "tree": "0957071549d76ceb3857e419998818b11bce7269",
      "parents": [
        "873101b33776780d32610fc4c90c7358a5e98f51"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:23 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:53 2006 -0400"
      },
      "message": "NFS: Use cached page as buffer for NFS symlink requests\n\nNow that we have a copy of the symlink path in the page cache, we can pass\na struct page down to the XDR routines instead of a string buffer.\n\nTest plan:\nConnectathon, all NFS versions.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4f390c152bc87165da4b1f5b7d870b46fb106d4e",
      "tree": "643b5d12f76bd7d3688380fbaf69f607a34a06bf",
      "parents": [
        "d3db90e270791b21cd00d3c094884bffa907cc9e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:22 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:52 2006 -0400"
      },
      "message": "NFS: Fix double d_drop in nfs_instantiate() error path\n\nIf the LOOKUP or GETATTR in nfs_instantiate fail, nfs_instantiate will do a\nd_drop before returning.  But some callers already do a d_drop in the case\nof an error return.  Make certain we do only one d_drop in all error paths.\n\nThis issue was introduced because over time, the symlink proc API diverged\nslightly from the create/mkdir/mknod proc API.  To prevent other coding\nmistakes of this type, change the symlink proc API to be more like\ncreate/mkdir/mknod and move the nfs_instantiate call into the symlink proc\nroutines so it is used in exactly the same way for create, mkdir, mknod,\nand symlink.\n\nTest plan:\nConnectathon, all versions of NFS.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ff9aa5e56df60cc8565a93cc868fe25ae3f20e49",
      "tree": "ae1045652699feacd18aecbc7023edd430c2695e",
      "parents": [
        "9e1968c58d72c4b85d8a69bda1e194f9701fb224"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:21 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:51 2006 -0400"
      },
      "message": "SUNRPC: Eliminate xprt_create_proto and rpc_create_client\n\nThe two function call API for creating a new RPC client is now obsolete.\nRemove it.\n\nAlso, remove an unnecessary check to see whether the caller is capable of\nusing privileged network services.  The kernel RPC client always uses a\nprivileged ephemeral port by default; callers are responsible for checking\nthe authority of users to make use of any RPC service, or for specifying\nthat a nonprivileged port is acceptable.\n\nTest plan:\nRepeated runs of Connectathon locking suite.  Check network trace to ensure\ncorrectness of NLM requests and replies.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c2866763b4029411d166040306691773c12d4caf",
      "tree": "5b16b3a293843062234c5eaf377da2af93365266",
      "parents": [
        "6ca948238724c945bd353f51d54ae7d285f3889f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:20 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:49 2006 -0400"
      },
      "message": "SUNRPC: use sockaddr + size when creating remote transport endpoints\n\nPrepare for more generic transport endpoint handling needed by transports\nthat might use different forms of addressing, such as IPv6.\n\nIntroduce a single function call to replace the two-call\nxprt_create_proto/rpc_create_client API.  Define a new rpc_create_args\nstructure that allows callers to pass in remote endpoint addresses of\nvarying length.\n\nTest-plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6ca948238724c945bd353f51d54ae7d285f3889f",
      "tree": "222aa223d93a4ffc7e662e1d80bb3b5d28b5f1a2",
      "parents": [
        "c4efcb1d3e0bc76aeb9ca6301d19a5079893c6c9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:19 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:49 2006 -0400"
      },
      "message": "SUNRPC: Clean-up after previous patches.\n\nRemove some unused macros related to accessing an RPC peer address\n\nTest plan:\nCompile kernel with CONFIG_NFS option enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c4efcb1d3e0bc76aeb9ca6301d19a5079893c6c9",
      "tree": "23f113b897f1ab2e00e4fcf774d93711d7f703b8",
      "parents": [
        "e7f7865743fff3d3938ec7540e5a784d662426da"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:19 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:48 2006 -0400"
      },
      "message": "SUNRPC: Use \"sockaddr_storage\" for storing RPC client\u0027s remote peer address\n\nIPv6 addresses are big (128 bytes).  Now that no RPC client consumers treat\nthe addr field in rpc_xprt structs as an opaque, and access it only via the\nAPI calls, we can safely widen the field in the rpc_xprt struct to\naccomodate larger addresses.\n\nTest plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f425eba437f0051bde979ea2eef8bc875a77cd00",
      "tree": "c64aae65d42c1bd67604ec0ffe957c03dc3233fe",
      "parents": [
        "edb267a688fcee5335d596752f117a30c7152e44"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:18 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:48 2006 -0400"
      },
      "message": "SUNRPC: Create API for displaying remote peer address\n\nProvide an API for formatting the remote peer address for printing without\nexposing its internal structure.  The address could be dynamic, so we\nsupport a function call to get the address rather than reading it straight\nout of a structure.\n\nTest-plan:\nDestructive testing (unplugging the network temporarily).  Probably need\nto rig a server where certain services aren\u0027t running, or that returns an\nerror for some typical operation.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "edb267a688fcee5335d596752f117a30c7152e44",
      "tree": "b73a91f17f22baa81a3c0a4df1b01929680a2807",
      "parents": [
        "39d7bbcb5ba5e9d8d658b70903dd7939400e57db"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:18 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:47 2006 -0400"
      },
      "message": "SUNRPC: add xprt switch API for printing formatted remote peer addresses\n\nAdd a new method to the transport switch API to provide a way to convert\nthe opaque contents of xprt-\u003eaddr to a human-readable string.\n\nTest plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "39d7bbcb5ba5e9d8d658b70903dd7939400e57db",
      "tree": "591e25f18cc1779c88c1a9de9306b23ff50bd0e0",
      "parents": [
        "081f79a9b09b634f0dc08ed014e0195464d52535"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:18 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:47 2006 -0400"
      },
      "message": "SUNRPC: remove extraneous header inclusions\n\ninclude/linux/sunrpc/clnt.h already includes include/linux/sunrpc/xprt.h.\nWe can remove xprt.h from source files that already include clnt.h.\nLikewise include/linux/sunrpc/timer.h.\n\nTest plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ed39440a2573abc926f230267000f21fa5a87822",
      "tree": "f9b6ba1ce3a7f94fc9d3f4a3e82eea3fdcc965a6",
      "parents": [
        "bbf7c1dd2ae2b4040b41b1065ee9b1b6905b1605"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:17 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:45 2006 -0400"
      },
      "message": "SUNRPC: create API for getting remote peer address\n\nProvide an API for retrieving the remote peer address without allowing\ndirect access to the rpc_xprt struct.\n\nTest-plan:\nCompile kernel with CONFIG_NFS enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bbf7c1dd2ae2b4040b41b1065ee9b1b6905b1605",
      "tree": "b1867e722c1cc679b1834feeeeb21195f57dc873",
      "parents": [
        "5b1eacbcd78930d976eb50a93f1779d311b553d1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:16 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:44 2006 -0400"
      },
      "message": "SUNRPC: Introduce transport switch callout for pluggable rpcbind\n\nIntroduce a clean transport switch API for plugging in different types of\nrpcbind mechanisms.  For instance, rpcbind can cleanly replace the\nexisting portmapper client, or a transport can choose to implement RPC\nbinding any way it likes.\n\nTest plan:\nDestructive testing (unplugging the network temporarily).  Connectathon\nwith UDP and TCP.  NFSv2/3 and NFSv4 mounting should be carefully checked.\nProbably need to rig a server where certain services aren\u0027t running, or\nthat returns an error for some typical operation.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5b1eacbcd78930d976eb50a93f1779d311b553d1",
      "tree": "28e573a581f185a0f00e6dbd80435039e31d8c24",
      "parents": [
        "c4a5692fb83f23008c720fe84454d5603e80b103"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:16 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:40 2006 -0400"
      },
      "message": "SUNRPC: Support for RPC child tasks no longer needed\n\nThe previous patches removed the last user of RPC child tasks, so we can\nremove support for child tasks from net/sunrpc/sched.c now.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4a68179d38874c37be2802442a71b847f5d1a2a9",
      "tree": "688b345744d182e303f96891d396a0ee1e43520a",
      "parents": [
        "ec739ef03dc926d05051c8c5838971445504470a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:15 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:39 2006 -0400"
      },
      "message": "SUNRPC: Make RPC portmapper use per-transport storage\n\nMove connection and bind state that was maintained in the rpc_clnt\nstructure to the rpc_xprt structure.  This will allow the creation of\na clean API for plugging in different types of bind mechanisms.\n\nThis brings improvements such as the elimination of a single spin lock to\ncontrol serialization for all in-kernel RPC binding.  A set of per-xprt\nbitops is used to serialize tasks during RPC binding, just like it now\nworks for making RPC transport connections.\n\nTest-plan:\nDestructive testing (unplugging the network temporarily).  Connectathon\nwith UDP and TCP.  NFSv2/3 and NFSv4 mounting should be carefully checked.\nProbably need to rig a server where certain services aren\u0027t running, or\nthat returns an error for some typical operation.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ec739ef03dc926d05051c8c5838971445504470a",
      "tree": "940d3dafd873c159c1279ade15ba11ede1d12983",
      "parents": [
        "9c5bf38d85a31b946664bcc21078ef5bb10672f7"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:15 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:39 2006 -0400"
      },
      "message": "SUNRPC: Create a helper to tell whether a transport is bound\n\nHide the contents and format of xprt-\u003eaddr by eliminating direct uses\nof the xprt-\u003eaddr.sin_port field.  This change is required to support\nalternate RPC host address formats (eg IPv6).\n\nTest-plan:\nDestructive testing (unplugging the network temporarily).  Repeated runs of\nConnectathon locking suite with UDP and TCP.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "54ceac4515986030c2502960be620198dd8fe25b",
      "tree": "b4ae4305c5652c0fe883ef5ea3243da91dbd2b34",
      "parents": [
        "cf6d7b5de8535a9f0088c5cc28ee2dae87371b4a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 22 20:06:13 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:37 2006 -0400"
      },
      "message": "NFS: Share NFS superblocks per-protocol per-server per-FSID\n\nThe attached patch makes NFS share superblocks between mounts from the same\nserver and FSID over the same protocol.\n\nIt does this by creating each superblock with a false root and returning the\nreal root dentry in the vfsmount presented by get_sb(). The root dentry set\nstarts off as an anonymous dentry if we don\u0027t already have the dentry for its\ninode, otherwise it simply returns the dentry we already have.\n\nWe may thus end up with several trees of dentries in the superblock, and if at\nsome later point one of anonymous tree roots is discovered by normal filesystem\nactivity to be located in another tree within the superblock, the anonymous\nroot is named and materialises attached to the second tree at the appropriate\npoint.\n\nWhy do it this way? Why not pass an extra argument to the mount() syscall to\nindicate the subpath and then pathwalk from the server root to the desired\ndirectory? You can\u0027t guarantee this will work for two reasons:\n\n (1) The root and intervening nodes may not be accessible to the client.\n\n     With NFS2 and NFS3, for instance, mountd is called on the server to get\n     the filehandle for the tip of a path. mountd won\u0027t give us handles for\n     anything we don\u0027t have permission to access, and so we can\u0027t set up NFS\n     inodes for such nodes, and so can\u0027t easily set up dentries (we\u0027d have to\n     have ghost inodes or something).\n\n     With this patch we don\u0027t actually create dentries until we get handles\n     from the server that we can use to set up their inodes, and we don\u0027t\n     actually bind them into the tree until we know for sure where they go.\n\n (2) Inaccessible symbolic links.\n\n     If we\u0027re asked to mount two exports from the server, eg:\n\n\tmount warthog:/warthog/aaa/xxx /mmm\n\tmount warthog:/warthog/bbb/yyy /nnn\n\n     We may not be able to access anything nearer the root than xxx and yyy,\n     but we may find out later that /mmm/www/yyy, say, is actually the same\n     directory as the one mounted on /nnn. What we might then find out, for\n     example, is that /warthog/bbb was actually a symbolic link to\n     /warthog/aaa/xxx/www, but we can\u0027t actually determine that by talking to\n     the server until /warthog is made available by NFS.\n\n     This would lead to having constructed an errneous dentry tree which we\n     can\u0027t easily fix. We can end up with a dentry marked as a directory when\n     it should actually be a symlink, or we could end up with an apparently\n     hardlinked directory.\n\n     With this patch we need not make assumptions about the type of a dentry\n     for which we can\u0027t retrieve information, nor need we assume we know its\n     place in the grand scheme of things until we actually see that place.\n\nThis patch reduces the possibility of aliasing in the inode and page caches for\ninodes that may be accessed by more than one NFS export. It also reduces the\nnumber of superblocks required for NFS where there are many NFS exports being\nused from a server (home directory server + autofs for example).\n\nThis in turn makes it simpler to do local caching of network filesystems, as it\ncan then be guaranteed that there won\u0027t be links from multiple inodes in\nseparate superblocks to the same cache file.\n\nObviously, cache aliasing between different levels of NFS protocol could still\nbe a problem, but at least that gives us another key to use when indexing the\ncache.\n\nThis patch makes the following changes:\n\n (1) The server record construction/destruction has been abstracted out into\n     its own set of functions to make things easier to get right.  These have\n     been moved into fs/nfs/client.c.\n\n     All the code in fs/nfs/client.c has to do with the management of\n     connections to servers, and doesn\u0027t touch superblocks in any way; the\n     remaining code in fs/nfs/super.c has to do with VFS superblock management.\n\n (2) The sequence of events undertaken by NFS mount is now reordered:\n\n     (a) A volume representation (struct nfs_server) is allocated.\n\n     (b) A server representation (struct nfs_client) is acquired.  This may be\n     \t allocated or shared, and is keyed on server address, port and NFS\n     \t version.\n\n     (c) If allocated, the client representation is initialised.  The state\n     \t member variable of nfs_client is used to prevent a race during\n     \t initialisation from two mounts.\n\n     (d) For NFS4 a simple pathwalk is performed, walking from FH to FH to find\n     \t the root filehandle for the mount (fs/nfs/getroot.c).  For NFS2/3 we\n     \t are given the root FH in advance.\n\n     (e) The volume FSID is probed for on the root FH.\n\n     (f) The volume representation is initialised from the FSINFO record\n     \t retrieved on the root FH.\n\n     (g) sget() is called to acquire a superblock.  This may be allocated or\n     \t shared, keyed on client pointer and FSID.\n\n     (h) If allocated, the superblock is initialised.\n\n     (i) If the superblock is shared, then the new nfs_server record is\n     \t discarded.\n\n     (j) The root dentry for this mount is looked up from the root FH.\n\n     (k) The root dentry for this mount is assigned to the vfsmount.\n\n (3) nfs_readdir_lookup() creates dentries for each of the entries readdir()\n     returns; this function now attaches disconnected trees from alternate\n     roots that happen to be discovered attached to a directory being read (in\n     the same way nfs_lookup() is made to do for lookup ops).\n\n     The new d_materialise_unique() function is now used to do this, thus\n     permitting the whole thing to be done under one set of locks, and thus\n     avoiding any race between mount and lookup operations on the same\n     directory.\n\n (4) The client management code uses a new debug facility: NFSDBG_CLIENT which\n     is set by echoing 1024 to /proc/net/sunrpc/nfs_debug.\n\n (5) Clone mounts are now called xdev mounts.\n\n (6) Use the dentry passed to the statfs() op as the handle for retrieving fs\n     statistics rather than the root dentry of the superblock (which is now a\n     dummy).\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    }
  ],
  "next": "5006a76cca8f86c6975c16fcf67e83b8b0eee2b6"
}
