)]}'
{
  "log": [
    {
      "commit": "dd00a99e7a4b739bd41ef4093760efc7e447f963",
      "tree": "2bb5bfafc0de89bd00ef530540e91e8297fc5d57",
      "parents": [
        "c5ddb547e899993be56dc7d0bf72bfd7a8d4ae1e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu May 10 03:15:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:53 2007 -0700"
      },
      "message": "md: avoid a possibility that a read error can wrongly propagate through md/raid1 to a filesystem.\n\nWhen a raid1 has only one working drive, we want read error to propagate up\nto the filesystem as there is no point failing the last drive in an array.\n\nCurrently the code perform this check is racy.  If a write and a read a\nboth submitted to a device on a 2-drive raid1, and the write fails followed\nby the read failing, the read will see that there is only one working drive\nand will pass the failure up, even though the one working drive is actually\nthe *other* one.\n\nSo, tighten up the locking.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c5ddb547e899993be56dc7d0bf72bfd7a8d4ae1e",
      "tree": "8fd92eb230ac482efd44b02796414a0dcfbb9f28",
      "parents": [
        "bcf889f96597137760c6edfdd0ee59fd37cb108c"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Thu May 10 03:15:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:53 2007 -0700"
      },
      "message": "drivers/hwmon: switch to using input_dev-\u003edev.parent\n\nIn preparation for struct class_device -\u003e struct device input core\nconversion, switch to using input_dev-\u003edev.parent when specifying device\nposition in sysfs tree.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nAcked-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bcf889f96597137760c6edfdd0ee59fd37cb108c",
      "tree": "f9b878addc86abb81d9f376e5226dd1574db4aee",
      "parents": [
        "d4751a2797bc0a37a8e85783d65ffaa9de689e60"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Thu May 10 03:15:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:53 2007 -0700"
      },
      "message": "SLUB: remove nr_cpu_ids hack\n\nThis was in SLUB in order to head off trouble while the nr_cpu_ids\nfunctionality was not merged.  Its merged now so no need to still have this.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d4751a2797bc0a37a8e85783d65ffaa9de689e60",
      "tree": "140781a632156218de3e5e99d608c053fe5639da",
      "parents": [
        "5a18c92aab13aac7917bc87ceefa23da68698be4"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Thu May 10 03:15:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:53 2007 -0700"
      },
      "message": "SLUB: SLUB_DEBUG must depend on SLUB\n\nOtherwise people get asked about SLUB_DEBUG even if they have another\nslab allocator enabled.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a18c92aab13aac7917bc87ceefa23da68698be4",
      "tree": "ee03d8c6ee5d695ea4e548680ab09253f5874685",
      "parents": [
        "0cfe61e1a72b345073bb7900a7887da8541abc7a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu May 10 03:15:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:53 2007 -0700"
      },
      "message": "Revert \"[PATCH] paravirt: Add startup infrastructure for paravirtualization\"\n\nThis reverts commit c9ccf30d77f04064fe5436027ab9d2230c7cdd94.\n\nEntering the kernel at startup_32 without passing our real mode data in\n%esi, and without guaranteeing that physical and virtual addresses are\nidentity mapped makes head.S impossible to maintain.\n\nThe only user of this infrastructure is lguest which is not merged so\nnothing we currently support will break by removing this over designed\nnightmare, and only the pending lguest patches will be affected.  The\npending Xen patches have a different entry point that they use.\n\nWe are currently discussing what Xen and lguest need to do to boot the\nkernel in a more normal fashion so using startup_32 in this weird manner is\nclearly not their long term direction.\n\nSo let\u0027s remove this code in head.S before it causes brain damage to people\ntrying to maintain head.S\n\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Zachary Amsden \u003czach@vmware.com\u003e\nCC: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0cfe61e1a72b345073bb7900a7887da8541abc7a",
      "tree": "934fd1e24f7f20c16b171136cf5e4cf34e436d03",
      "parents": [
        "c4a7f5eb5f6a02dcc3a35e47c37c3d221ebc1cc2"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk@arm.linux.org.uk",
        "time": "Thu May 10 03:15:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "arm: fix i2c-pxa build\n\nFrom commit 7d054817b780e664bed6701b2aa637718e1905b7:\n\u003e According to the PXA27x developer\u0027s manual, we shall do so.\n\nWe shall also at least compile test our changes.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c4a7f5eb5f6a02dcc3a35e47c37c3d221ebc1cc2",
      "tree": "cf83d46aedc25d01422627e315c2f8a60adb0266",
      "parents": [
        "6f076f5dd9d227cea2704061048894b00cc0d62b"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu May 10 03:15:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "ocfs2: kobject/kset foobar\n\nFix gcc warning and Oops that it causes:\n\nfs/ocfs2/cluster/masklog.c:161: warning: assignment from incompatible pointer type\n[ 2776.204120] OCFS2 Node Manager 1.3.3\n[ 2776.211729] BUG: spinlock bad magic on CPU#0, modprobe/4424\n[ 2776.214269]  lock: ffff810021c8fe18, .magic: ffffffff, .owner: /6394416, .owner_cpu: 0\n[ 2776.217864] [ 2776.217865] Call Trace:\n[ 2776.219662]  [\u003cffffffff803426c8\u003e] spin_bug+0x9e/0xe9\n[ 2776.221921]  [\u003cffffffff803427bf\u003e] _raw_spin_lock+0x23/0xf9\n[ 2776.224417]  [\u003cffffffff8051acf4\u003e] _spin_lock+0x9/0xb\n[ 2776.226676]  [\u003cffffffff8033c3b1\u003e] kobject_shadow_add+0x98/0x1ac\n[ 2776.229367]  [\u003cffffffff8033c4d0\u003e] kobject_add+0xb/0xd\n[ 2776.231665]  [\u003cffffffff8033c4df\u003e] kset_add+0xd/0xf\n[ 2776.233845]  [\u003cffffffff8033c5a6\u003e] kset_register+0x23/0x28\n[ 2776.236309]  [\u003cffffffff8808ccb7\u003e] :ocfs2_nodemanager:mlog_sys_init+0x68/0x6d\n[ 2776.239518]  [\u003cffffffff8808ccee\u003e] :ocfs2_nodemanager:o2cb_sys_init+0x32/0x4a\n[ 2776.242726]  [\u003cffffffff880b80a6\u003e] :ocfs2_nodemanager:init_o2nm+0xa6/0xd5\n[ 2776.245772]  [\u003cffffffff8025266c\u003e] sys_init_module+0x1471/0x15d2\n[ 2776.248465]  [\u003cffffffff8033f250\u003e] simple_strtoull+0x0/0xdc\n[ 2776.250959]  [\u003cffffffff8020948e\u003e] system_call+0x7e/0x83\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f076f5dd9d227cea2704061048894b00cc0d62b",
      "tree": "0c6be41a5d1d77ef78e76ba9d1861a062aef55bd",
      "parents": [
        "a6a62b69b9f1b0cec0a119c5f4cd2f17d091e8f5"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu May 10 03:15:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "early_pfn_to_nid needs to be __meminit\n\nSince it is referenced by memmap_init_zone (which is __meminit) via the\nearly_pfn_in_nid macro when CONFIG_NODES_SPAN_OTHER_NODES is set (which\nbasically means PowerPC 64).\n\nThis removes a section mismatch warning in those circumstances.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a6a62b69b9f1b0cec0a119c5f4cd2f17d091e8f5",
      "tree": "755c0cf722173987bdbd9865ff46f9cdefbcd94d",
      "parents": [
        "5bbf5d39f88af9e8173f7331a3741a8b3ff16a1c"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu May 10 03:15:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "AF_RXRPC: reduce debugging noise\n\nReduce debugging noise generated by AF_RXRPC.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5bbf5d39f88af9e8173f7331a3741a8b3ff16a1c",
      "tree": "8bd516e07d2cb8b7578d9783ca45d0a23290dc23",
      "parents": [
        "b9b1f8d5930a813879278d0cbfc8c658d6a038dc"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu May 10 03:15:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "AFS: further write support fixes\n\nFurther fixes for AFS write support:\n\n (1) The afs_send_pages() outer loop must do an extra iteration if it ends\n     with \u0027first \u003d\u003d last\u0027 because \u0027last\u0027 is inclusive in the page set\n     otherwise it fails to send the last page and complete the RxRPC op under\n     some circumstances.\n\n (2) Similarly, the outer loop in afs_pages_written_back() must also do an\n     extra iteration if it ends with \u0027first \u003d\u003d last\u0027, otherwise it fails to\n     clear PG_writeback on the last page under some circumstances.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b9b1f8d5930a813879278d0cbfc8c658d6a038dc",
      "tree": "1879e0e70ce946e3519a205698f4dd1b34a3a7ea",
      "parents": [
        "218e180e7ea5334e1f94121940ba82cd1f0f4e58"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu May 10 03:15:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "AFS: write support fixes\n\nAFS write support fixes:\n\n (1) Support large files using the 64-bit file access operations if available\n     on the server.\n\n (2) Use kmap_atomic() rather than kmap() in afs_prepare_page().\n\n (3) Don\u0027t do stuff in afs_writepage() that\u0027s done by the caller.\n\n[akpm@linux-foundation.org: fix right shift count \u003e\u003d width of type]\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "218e180e7ea5334e1f94121940ba82cd1f0f4e58",
      "tree": "5b7aa47a2439c40b8b68a3bfd9e2f72bf07cf385",
      "parents": [
        "894b8788d7f265eb7c6f75a9a77cedeb48f51586"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu May 10 03:15:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "add upper-32-bits macro\n\nWe keep on getting \"right shift count \u003e\u003d width of type\" warnings when doing\nthings like\n\n\tsector_t s;\n\n\tx \u003d s \u003e\u003e 56;\n\nbecause with CONFIG_LBD\u003dn, s is only 32-bit.  Similar problems can occur with\ndma_addr_t\u0027s.\n\nSo add a simple wrapper function which code can use to avoid this warning.\nThe above example would become\n\n\tx \u003d upper_32_bits(s) \u003e\u003e 24;\n\nThe first user is in fact AFS.\n\nCc: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: \"Cameron, Steve\" \u003cSteve.Cameron@hp.com\u003e\nCc: \"Miller, Mike (OS Dev)\" \u003cMike.Miller@hp.com\u003e\nCc: Hisashi Hifumi \u003chifumi.hisashi@oss.ntt.co.jp\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "894b8788d7f265eb7c6f75a9a77cedeb48f51586",
      "tree": "4b00fa4704090876895b8a7528c6fe5e2201fc28",
      "parents": [
        "02b67325a6d34f2ae67484a8802b6ffc9ce9931d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Thu May 10 03:15:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "slub: support concurrent local and remote frees and allocs on a slab\n\nAvoid atomic overhead in slab_alloc and slab_free\n\nSLUB needs to use the slab_lock for the per cpu slabs to synchronize with\npotential kfree operations.  This patch avoids that need by moving all free\nobjects onto a lockless_freelist.  The regular freelist continues to exist\nand will be used to free objects.  So while we consume the\nlockless_freelist the regular freelist may build up objects.\n\nIf we are out of objects on the lockless_freelist then we may check the\nregular freelist.  If it has objects then we move those over to the\nlockless_freelist and do this again.  There is a significant savings in\nterms of atomic operations that have to be performed.\n\nWe can even free directly to the lockless_freelist if we know that we are\nrunning on the same processor.  So this speeds up short lived objects.\nThey may be allocated and freed without taking the slab_lock.  This is\nparticular good for netperf.\n\nIn order to maximize the effect of the new faster hotpath we extract the\nhottest performance pieces into inlined functions.  These are then inlined\ninto kmem_cache_alloc and kmem_cache_free.  So hotpath allocation and\nfreeing no longer requires a subroutine call within SLUB.\n\n[I am not sure that it is worth doing this because it changes the easy to\nread structure of slub just to reduce atomic ops.  However, there is\nsomeone out there with a benchmark on 4 way and 8 way processor systems\nthat seems to show a 5% regression vs.  Slab.  Seems that the regression is\ndue to increased atomic operations use vs.  SLAB in SLUB).  I wonder if\nthis is applicable or discernable at all in a real workload?]\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02b67325a6d34f2ae67484a8802b6ffc9ce9931d",
      "tree": "a3cc9248dd5b7e16ee22d69808cff80cc80e602d",
      "parents": [
        "de5603748af8bf7deac403e6ba92887f8d18e812"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Thu May 10 03:15:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 10 09:26:52 2007 -0700"
      },
      "message": "x86_64: fix default_do_nmi() missing return after an if ()\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de5603748af8bf7deac403e6ba92887f8d18e812",
      "tree": "fd93862c70ec0eeba5fe340d7519ab33a9cb1dff",
      "parents": [
        "b5f0adbcc4f16e378882d8f68fe3111df04911be",
        "225c7b1feef1b41170f7037a5b10a65cd8a42c54"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 19:40:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 19:40:09 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:\n  IB/mlx4: Add a driver Mellanox ConnectX InfiniBand adapters\n  IB: Put rlimit accounting struct in struct ib_umem\n  IB/uverbs: Export ib_umem_get()/ib_umem_release() to modules\n"
    },
    {
      "commit": "b5f0adbcc4f16e378882d8f68fe3111df04911be",
      "tree": "b4326ed528a0962abe9e0bf783f687b3b23e4896",
      "parents": [
        "0a09d9a49cc4a7f65b76f848821d4a8bb7cc1230",
        "5b2fc499917e5897a13add780e181b4cef197072"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 18:53:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 18:53:12 2007 -0700"
      },
      "message": "Merge branch \u0027usb-move\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027usb-move\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:\n  Move USB network drivers to drivers/net/usb.\n"
    },
    {
      "commit": "0a09d9a49cc4a7f65b76f848821d4a8bb7cc1230",
      "tree": "50839e8c1d52c7c5fcd93fab6ad5a81b59135cff",
      "parents": [
        "44ce6294d07555c3d313757105fd44b78208407f",
        "e0863397cb8f3ede356ef2cb7dcdccc9956cdc6d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 18:52:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 18:52:45 2007 -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:\n  Doc Fix: remove mention of combined mode-related kernel parameters\n  libata: fix kernel-doc parameters\n  Fix pata_qdi.c probe code\n  pata_scc: fix compilation\n  sata_via: add missing PM hooks\n  sata_nv: fix ADMA freeze/thaw/irq_clear issues\n  pata_pcmcia.c: add card ident for jvc cdrom\n  sata_promise: SATAII-150/300 TX4 port numbering fix\n  sata_promise: fix another error decode regression\n  libata-acpi: fix _GTF command protocol for ATAPI devices\n"
    },
    {
      "commit": "44ce6294d07555c3d313757105fd44b78208407f",
      "tree": "29659bee16a4d7111124c6f41289bc9c11669e70",
      "parents": [
        "497f050c42e46a4b1f6a9bcd8827fa5d97fe1feb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 18:51:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 18:51:36 2007 -0700"
      },
      "message": "Revert \"md: improve partition detection in md array\"\n\nThis reverts commit 5b479c91da90eef605f851508744bfe8269591a0.\n\nQuoth Neil Brown:\n\n  \"It causes an oops when auto-detecting raid arrays, and it doesn\u0027t\n   seem easy to fix.\n\n   The array may not be \u0027open\u0027 when do_md_run is called, so\n   bdev-\u003ebd_disk might be NULL, so bd_set_size can oops.\n\n   This whole approach of opening an md device before it has been\n   assembled just seems to get more and more painful.  I think I\u0027m going\n   to have to come up with something clever to provide both backward\n   comparability with usage expectation, and sane integration into the\n   rest of the kernel.\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5b2fc499917e5897a13add780e181b4cef197072",
      "tree": "1a1ba52c0c2a7ce9843875cdd713d75d37c4ea1b",
      "parents": [
        "3cb7396b7b26585b1ab7c1a8ca554ec103da5d37"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 21:31:55 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 21:31:55 2007 -0400"
      },
      "message": "Move USB network drivers to drivers/net/usb.\n\nIt is preferable to group drivers by usage (net, scsi, ATA, ...) than\nby bus.  When reviewing drivers, the [PCI|USB|PCMCIA|...] maintainer\nis probably less qualified on networking issues than a networking\nmaintainer.  Also, from a practical standpoint, chips often\nappear on multiple buses, which is why we do not put drivers into\ndrivers/pci/net.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e0863397cb8f3ede356ef2cb7dcdccc9956cdc6d",
      "tree": "699e3cbaeb0f9ffecfef66b6d4b1a5e6f5b1be63",
      "parents": [
        "6b38d1d1d50234453e12ccdbbb162d10ece6430f"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jesse.barnes@intel.com",
        "time": "Tue May 01 14:34:39 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:47 2007 -0400"
      },
      "message": "Doc Fix: remove mention of combined mode-related kernel parameters\n\nLooks like you removed the combined_mode quirk (yay!) but didn\u0027t update\nkernel-parameters.txt...  might confuse people.  Here\u0027s a patch to remove\nmention of it from the documentation.\n\nSigned-off-by:  Jesse Barnes \u003cjesse.barnes@intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6b38d1d1d50234453e12ccdbbb162d10ece6430f",
      "tree": "864408fc9df9b43d74db2fbb346635f3a78b9543",
      "parents": [
        "6878cce57b43b24eee1a4de6d189051c4646b575"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 01 17:35:55 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:47 2007 -0400"
      },
      "message": "libata: fix kernel-doc parameters\n\nWarning(linux-2.6.21-git4//drivers/ata/libata-core.c:904): No description found for parameter \u0027new_sectors\u0027\nWarning(linux-2.6.21-git4//drivers/ata/libata-core.c:941): No description found for parameter \u0027new_sectors\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6878cce57b43b24eee1a4de6d189051c4646b575",
      "tree": "453ac2809b4222621acbad1e8600f7e2cee4ba5f",
      "parents": [
        "0397bad5b413226b8f55f599b185ab506d13b078"
      ],
      "author": {
        "name": "Samuel Thibault",
        "email": "samuel.thibault@ens-lyon.org",
        "time": "Thu May 03 11:30:25 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:47 2007 -0400"
      },
      "message": "Fix pata_qdi.c probe code\n\nThere is a small typo in the probe code of pata_qdi.c, here is a patch.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0397bad5b413226b8f55f599b185ab506d13b078",
      "tree": "48f610bfdd19874bde1aee122b80c7b34f37a7c6",
      "parents": [
        "e1e143cf976ed635a45b768b4a26684173320d6f"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu May 03 23:44:59 2007 +0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "pata_scc: fix compilation\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "e1e143cf976ed635a45b768b4a26684173320d6f",
      "tree": "960f622a1081ff903c5d6a91cfcab327a04012c7",
      "parents": [
        "53014e2526dff68628adb11c44bd1e8f2a2a9ae9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri May 04 15:30:34 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "sata_via: add missing PM hooks\n\nFor some reason, sata_via is missing PM hooks.  Add them.  Spotted by\nJeroen Janssen \u003cjeroen.janssen@gmail.com\u003e.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Jeroen Janssen \u003cjeroen.janssen@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "53014e2526dff68628adb11c44bd1e8f2a2a9ae9",
      "tree": "50908a1ef9967d221bc80ae32cb7c27b90ff3235",
      "parents": [
        "7871e74acbf5013970daaa1d032854210282340c"
      ],
      "author": {
        "name": "Robert Hancock",
        "email": "hancockr@shaw.ca",
        "time": "Sat May 05 15:36:36 2007 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "sata_nv: fix ADMA freeze/thaw/irq_clear issues\n\nThis patch fixes some problems with ADMA-capable controllers with\nregard to freeze, thaw and irq_clear libata callbacks. Freeze and\nthaw didn\u0027t switch the ADMA-specific interrupts on or off, and more\ncritically the irq_clear function didn\u0027t respect the restriction that\nthe notifier clear registers for both ports have to be written at\nthe same time even when only one port is being cleared. This could\nresult in timeouts on one port when error handling (i.e. as a result\nof hotplug) occurred on the other port.\n\nAs well, this fixes some issues in the interrupt handler: we shouldn\u0027t\ncheck any ADMA status if the port has ADMA switched off because of\nan ATAPI device, and it also checks to see if any ADMA interrupt has\nbeen raised even when we are in port-register mode.\n\nSigned-off-by: Robert Hancock \u003chancockr@shaw.ca\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "7871e74acbf5013970daaa1d032854210282340c",
      "tree": "10bf6a15d0192f2d83fd279a2e3fb835f7e74da4",
      "parents": [
        "5ac2fe57569c5fbbd4288e3e7fead332b4300ef0"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Tue May 08 15:20:56 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "pata_pcmcia.c: add card ident for jvc cdrom\n\nupdate pata_pcmcia to add card ident for JVC MP-CDX1 cdrom drive\ncard info:\nPRODID_1\u003d\"KME\"\nPRODID_2\u003d\"KXLC005\"\nPRODID_3\u003d\"00\"\nMANFID\u003d0032,2904\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "5ac2fe57569c5fbbd4288e3e7fead332b4300ef0",
      "tree": "05b6f04dbec9c76a0cfb73a3124668d5cee1cc56",
      "parents": [
        "8ffcfd9d0dc735071379760c23317f15904f9056"
      ],
      "author": {
        "name": "Mikael Pettersson",
        "email": "mikpe@it.uu.se",
        "time": "Sun May 06 22:14:01 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "sata_promise: SATAII-150/300 TX4 port numbering fix\n\nThere is a known problem with sata_promise on SATAII-150/300 TX4\ncontroller cards: it enumerates drives in an order that differs\nfrom the port numbers printed on the controller cards. However,\nPromise\u0027s BIOS and Linux driver both get the order right.\n\nI investigated Promise\u0027s Linux driver (v1.01.0.23), and found\nthat it explicitly changes the mapping from logical port number\nto ATA engine MMIO address on the SATAII TX4 cards. It does this\non all SATAII TX4 cards, without inspecting revision etc. The\nSATAII TX2plus cards continue to use the same mapping that was\nused for the first-generation chips.\n\nThis patch updates sata_promise to use the new port number to\nATA engine mapping on SATAII TX4 cards, which fixes the drive\nenumeration order problem on those cards. Tested on several\n1st and 2nd generation TX2plus and TX4 chips.\n\nSigned-off-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8ffcfd9d0dc735071379760c23317f15904f9056",
      "tree": "f2c83d453ebb8410eb5ed1ccae216248cabdaa42",
      "parents": [
        "48be6b18336567a795bc41e4526f9adfb3a3d68e"
      ],
      "author": {
        "name": "Mikael Pettersson",
        "email": "mikpe@it.uu.se",
        "time": "Sun May 06 22:12:31 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "sata_promise: fix another error decode regression\n\nThe sata_promise error decode update changed pdc_host_intr()\nto return and not complete the qc after detecting an error.\nUnfortunately not completing the qc:s causes them to always\ntime out on error, which is wrong and has nasty side-effects.\n\nThis patch updates pdc_error_intr() to call ata_port_abort(),\nsimilar to ahci and sata_sil24. Doing this is important as it\nmakes EH see the original error and not a bogus timeout.\n\nSigned-off-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "48be6b18336567a795bc41e4526f9adfb3a3d68e",
      "tree": "41bca21966fe455b96bf4f1cbbe888608fa21d55",
      "parents": [
        "3cb7396b7b26585b1ab7c1a8ca554ec103da5d37"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon Apr 23 02:06:46 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 20:15:46 2007 -0400"
      },
      "message": "libata-acpi: fix _GTF command protocol for ATAPI devices\n\n_GTF command is never ATA_PROT_ATAPI_NODATA whether the device is\nATAPI or not.  It\u0027s always ATA_PROT_NODATA.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "497f050c42e46a4b1f6a9bcd8827fa5d97fe1feb",
      "tree": "be857182f44883b010e6fef97570246567af12f2",
      "parents": [
        "5bebf82fff53a96f330c0879ffe870bdf3aaeab6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed May 09 18:52:35 2007 +0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 19:25:15 2007 -0400"
      },
      "message": "atl1: add netconsole support\n\nCopied from b44 driver, but it works:\n\nnetconsole: device eth0 not up yet, forcing it\natl1: eth0 link is up 100 Mbps full duplex\nnetconsole: network logging started\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "5bebf82fff53a96f330c0879ffe870bdf3aaeab6",
      "tree": "d5ddfcb318dbb008acb6618e80fccbacd3f5cebf",
      "parents": [
        "5b982c5bb7db5cfbc15236d9d45cec32e5472ed5"
      ],
      "author": {
        "name": "Paul Walmsley",
        "email": "paul@booyaka.com",
        "time": "Wed May 09 10:47:16 2007 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 19:25:15 2007 -0400"
      },
      "message": "Fix hang on IBM Token Ring PCMCIA card ejection\n\nEjecting a PCMCIA IBM Token Ring card that has not had its dev-\u003eopen()\ncalled will reliably trigger an uninitialized spinlock oops when\nspinlock debugging is enabled. The system then hangs, occasionally\nsoftlockup oopsing.  Apparently ibmtr.c:tok_interrupt() doesn\u0027t expect\nto be called before tok_open(), but tok_interrupt() gets called anyway\nwhen the card is ejected.  So, set an already-existing flag which\ncauses tok_interrupt() to bail out early upon card ejection. Tested by\ninserting and removing the PCMCIA card several times.\n\nSigned-off-by: Paul Walmsley \u003cpaul@booyaka.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "5b982c5bb7db5cfbc15236d9d45cec32e5472ed5",
      "tree": "fb700a17cc01b682694f20fb962b0b1ff0866bdd",
      "parents": [
        "2c4f365ad2361c93c097e958b2b0a7a112750228"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Tue May 08 13:36:20 2007 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 19:25:15 2007 -0400"
      },
      "message": "skge: default WOL should be magic only (rev2)\n\nBy default, the skge driver now enables wake on magic and wake on PHY.\nThis is a bad default (bug), wake on PHY means machine will never shutdown\nif connected to a switch.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003ea\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2c4f365ad2361c93c097e958b2b0a7a112750228",
      "tree": "83c046142a6e057f005b97b4b7356cd4ff7a9783",
      "parents": [
        "3cb7396b7b26585b1ab7c1a8ca554ec103da5d37",
        "47c93d2faf9d7e94393852823480ea61c868caee"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 18:54:49 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed May 09 18:54:49 2007 -0400"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream\n"
    },
    {
      "commit": "3cb7396b7b26585b1ab7c1a8ca554ec103da5d37",
      "tree": "94720199f016045fe2a204ac8fd26c0029f4544c",
      "parents": [
        "d0b6e0e380d6a32d479120a8b5d98cdff936ec8c",
        "317a46a200e6514a1acf50ed30291160185a5c73"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 15:41:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 15:41:31 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6:\n  ide: fix PIO setup on resume for ATAPI devices\n  ide: legacy PCI bus order probing fixes\n  ide: add ide_proc_register_port()\n  ide: add \"initializing\" argument to ide_register_hw()\n  ide: cable detection fixes (take 2)\n  ide: move IDE settings handling to ide-proc.c\n  ide: split off ioctl handling from IDE settings (v2)\n  ide: make /proc/ide/ optional\n  ide: add ide_tune_dma() helper\n  ide: rework the code for selecting the best DMA transfer mode (v3)\n  ide: fix UDMA/MWDMA/SWDMA masks (v3)\n"
    },
    {
      "commit": "d0b6e0e380d6a32d479120a8b5d98cdff936ec8c",
      "tree": "57b584f4ba8504eb39e9f12234fc78db7fff0477",
      "parents": [
        "5329571b3c978635f6d832cc884fdd61ff94e0da",
        "7a13e932281e7042a592f4f14db0b348199e7aac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 15:29:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 15:29:58 2007 -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:\n  NFS: Kill the obsolete NFS_PARANOIA\n  NFS: use __set_current_state()\n  sunrpc: fix crash in rpc_malloc()\n  NFS: Clean up NFSv4 XDR error message\n  NFS: NFS client underestimates how large an NFSv4 SETATTR reply can be\n  SUNRPC: Fix pointer arithmetic bug recently introduced in rpc_malloc/free\n  NFS: Remove redundant check in nfs_check_verifier()\n  NFS: Fix a jiffie wraparound issue\n"
    },
    {
      "commit": "317a46a200e6514a1acf50ed30291160185a5c73",
      "tree": "36e75ca7c0a1f4662f91145077433695123a774e",
      "parents": [
        "6d208b39c45edee5def6c201fcd51561c5a39828"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "message": "ide: fix PIO setup on resume for ATAPI devices\n\nPIO should be restored also for ATAPI devices during resume, fix it.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6d208b39c45edee5def6c201fcd51561c5a39828",
      "tree": "55645d2b6173e3161d12e5c9efdc4bd052b75b56",
      "parents": [
        "5cbf79cdb37be2aa2a1b4fa94144526b14557060"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "message": "ide: legacy PCI bus order probing fixes\n\nIDE PCI host drivers should register themselves with IDE core only when\nIDE driver is built-in, otherwise (IDE driver is modular and thus IDE PCI\nhost drivers are also modular) the code has no effect and just complicates\nthe probing.\n\nFix it by adding new config option CONFIG_IDEPCI_PCIBUS (defined only when\nneeded and invisible to the user) and covering by #ifdef/#endif the code\nin question.  It turned out that \"ide\u003dreverse\" was silently accepted but did\nnothing in case when IDE driver was modular, this is fixed now.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "5cbf79cdb37be2aa2a1b4fa94144526b14557060",
      "tree": "1fcfbc1248b9904e5890cc593f018ee0a8a53238",
      "parents": [
        "869c56ee9de1b72cd3f8ab9cdfbd3601e55c61f2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "message": "ide: add ide_proc_register_port()\n\n* create_proc_ide_interfaces() tries to add /proc entries for every probed\n  and initialized IDE port, replace it by ide_proc_register_port() which does\n  it only for the given port (also rename destroy_proc_ide_interface() to\n  ide_proc_unregister_port() for consistency)\n  \n* convert {create,destroy}_proc_ide_interface[s]() users to use new functions\n\n* pmac driver depended on proc_ide_create() to add /proc port entries, fix it\n  \n* au1xxx-ide, swarm and cs5520 drivers depended indirectly on ide-generic\n  driver (CONFIG_IDE_GENERIC\u003dy) to add port /proc entries, fix them\n\n* there is now no need to add /proc entries for IDE ports in proc_ide_create()\n  so don\u0027t do it\n\n* proc_ide_create() needs now to be called before drivers are probed - fix it,\n  while at it make proc_ide_create() create /proc \"ide\" directory\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "869c56ee9de1b72cd3f8ab9cdfbd3601e55c61f2",
      "tree": "0f295ba89c774f9a20b2b089a29f288cd80b8094",
      "parents": [
        "7f8f48af0861c38c28d4abd550102643e0ea9e6a"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "message": "ide: add \"initializing\" argument to ide_register_hw()\n\nAdd \"initializing\" argument to ide_register_hw() and use it instead of ide.c\nwide variable of the same name.  Update all users of ide_register_hw()\naccordingly.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "7f8f48af0861c38c28d4abd550102643e0ea9e6a",
      "tree": "6ec47ace87afbd96cc1144d423854b09d9f21d75",
      "parents": [
        "7662d046df09e80680b77b68de896beab45e675e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "message": "ide: cable detection fixes (take 2)\n\nTejun\u0027s recent eighty_ninty_three() fix has inspired me to do more thorough\nreview of the cable detection code...\n\n* print user-friendly warning about limiting the maximum transfer speed\n  to UDMA33 (and the reason behind it) when 80-wire cable is not detected,\n  also while at it cleanup eighty_ninty_three() a bit\n\n* use eighty_ninty_three() in ide_ata66_check(), this actually fixes 3 bugs:\n  - bit 14 (word 93 validity check) \u003d\u003d 1 \u0026\u0026 bit 13 (80-wire cable test) \u003d\u003d 1\n    were used as 80-wire cable present test for CONFIG_IDEDMA_IVB\u003dn case\n    (please see FIXME comment in eighty_ninty_three() for more details)\n  - CONFIG_IDEDMA_IVB\u003dy/n cases were interchanged\n  - check for SATA devices was missing\n\n* remove private cable warnings from pdc_202xx{old,new} drivers now that core\n  code provides this functionality (plus, in pdc202xx_new case the test could\n  give false warnings for ATAPI devices because pdc202xx_new driver doesn\u0027t\n  even support ATAPI DMA)\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "7662d046df09e80680b77b68de896beab45e675e",
      "tree": "ea2281c59399b3867fb37e1005a0f0e0d2170c5d",
      "parents": [
        "1497943ee692aa7519fa972d0e3a339649bf3a96"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "message": "ide: move IDE settings handling to ide-proc.c\n\n* move\n\t__ide_add_setting()\n\tide_add_setting()\n\t__ide_remove_setting()\n\tauto_remove_settings()\n\tide_find_setting_by_name()\n\tide_read_setting()\n\tide_write_setting()\n\tset_xfer_rate()\n\tide_add_generic_settings()\n\tide_register_subdriver()\n\tide_unregister_subdriver()\n\n  from ide.c to ide-proc.c\n\n* set_{io_32bit,pio_mode,using_dma}() cannot be marked static now, fix it\n\n* rename ide_[un]register_subdriver() to ide_proc_[un]register_driver(),\n  update device drivers to use new names\n\n* add CONFIG_IDE_PROC_FS\u003dn versions of ide_proc_[un]register_driver()\n  and ide_add_generic_settings()\n\n* make ide_find_setting_by_name(), ide_{read,write}_setting()\n  and ide_{add,remove}_proc_entries() static\n\n* cover IDE settings code in device drivers with CONFIG_IDE_PROC_FS #ifdef,\n  also while at it cover with CONFIG_IDE_PROC_FS #ifdef ide_driver_t.proc\n\n* remove bogus comment from ide.h\n\n* cover with CONFIG_IDE_PROC_FS #ifdef .proc and .settings in ide_drive_t\n\nBesides saner code this patch results in the IDE core smaller by ~2 kB\n(on x86-32) and IDE disk driver by ~1 kB (ditto) when CONFIG_IDE_PROC_FS\u003dn.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1497943ee692aa7519fa972d0e3a339649bf3a96",
      "tree": "dc70ee9731f66dd323ddb397380b62c0c2977add",
      "parents": [
        "ecfd80e4a514123070b4cfb674b817ba75055df2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:10 2007 +0200"
      },
      "message": "ide: split off ioctl handling from IDE settings (v2)\n\n* do write permission and min/max checks in ide_procset_t functions\n\n* ide-disk.c: drive-\u003eid is always available so cleanup \"multcount\" setting\n  accordingly\n\n* ide-disk.c: \"address\" setting was incorrectly defined as type TYPE_INTA,\n  fix it by using type TYPE_BYTE and updating ide_drive_t-\u003eadressing field,\n  the bug didn\u0027t trigger because this IDE setting uses custom -\u003eset function\n\n* ide.c: add set_ksettings() for handling HDIO_SET_KEEPSETTINGS ioctl\n\n* ide.c: add set_unmaskirq() for handling HDIO_SET_UNMASKINTR ioctl\n\n* handle ioctls directly in generic_ide_ioclt() and idedisk_ioctl()\n  instead of using IDE settings to deal with them\n\n* remove no longer needed ide_find_setting_by_ioctl() and {read,write}_ioctl\n  fields from ide_settings_t, also remove now unused TYPE_INTA handling\n\nv2:\n* add missing EXPORT_SYMBOL_GPL(ide_setting_sem) needed now for ide-disk\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ecfd80e4a514123070b4cfb674b817ba75055df2",
      "tree": "956baa39e22030d139803b7585bd71e91c637bb5",
      "parents": [
        "29e744d088e3555f4efbdf390f01088dd66993b6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:09 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:09 2007 +0200"
      },
      "message": "ide: make /proc/ide/ optional\n\nAll important information/features should be already available through\nsysfs and ioctl interfaces.\n\nAdd CONFIG_IDE_PROC_FS (CONFIG_SCSI_PROC_FS rip-off) config option,\ndisabling it makes IDE driver ~5 kB smaller (on x86-32).\n\nWhile at it add CONFIG_PROC_FS\u003dn versions of proc_ide_{create,destroy}()\nand remove no longer needed #ifdefs.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "29e744d088e3555f4efbdf390f01088dd66993b6",
      "tree": "2747692efcef505872d29e0b62cb2345b0d64978",
      "parents": [
        "2d5eaa6dd744a641e75503232a01f52d0768884c"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:09 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:09 2007 +0200"
      },
      "message": "ide: add ide_tune_dma() helper\n\nAfter reworking the code responsible for selecting the best DMA\ntransfer mode it is now possible to add generic ide_tune_dma() helper.\n\nConvert some IDE PCI host drivers to use it (the ones left need more work).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "2d5eaa6dd744a641e75503232a01f52d0768884c",
      "tree": "0736bd00ea3bd032d601d0a676c998cb043b877a",
      "parents": [
        "18137207236285989dfc0ee7f929b954199228f3"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:08 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:08 2007 +0200"
      },
      "message": "ide: rework the code for selecting the best DMA transfer mode (v3)\n\nDepends on the \"ide: fix UDMA/MWDMA/SWDMA masks\" patch.\n\n* add ide_hwif_t.udma_filter hook for filtering UDMA mask\n  (use it in alim15x3, hpt366, siimage and serverworks drivers)\n* add ide_max_dma_mode() for finding best DMA mode for the device\n  (loosely based on some older libata-core.c code)\n* convert ide_dma_speed() users to use ide_max_dma_mode()\n* make ide_rate_filter() take \"ide_drive_t *drive\" as an argument instead\n  of \"u8 mode\" and teach it to how to use UDMA mask to do filtering\n* use ide_rate_filter() in hpt366 driver\n* remove no longer needed ide_dma_speed() and *_ratemask()\n* unexport eighty_ninty_three()\n\nv2:\n* rename -\u003efilter_udma_mask to -\u003eudma_filter\n  [ Suggested by Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e. ]\n\nv3:\n* updated for scc_pata driver (fixes XFER_UDMA_6 filtering for user-space\n  originated transfer mode change requests when 100MHz clock is used)\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "18137207236285989dfc0ee7f929b954199228f3",
      "tree": "d55f1287ae64318190e18cb7a64ca514c76c3414",
      "parents": [
        "de372ecd80a42c4fb485c7232475301a18d05184"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:07 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:07 2007 +0200"
      },
      "message": "ide: fix UDMA/MWDMA/SWDMA masks (v3)\n\n* use 0x00 instead of 0x80 to disable -\u003e{ultra,mwdma,swdma}_mask\n* add udma_mask field to ide_pci_device_t and use it to initialize\n  -\u003eultra_mask in aec62xx, cmd64x, pdc202xx_{new,old} and piix drivers\n* fix UDMA masks to match with chipset specific *_ratemask()\n  (alim15x3, hpt366, serverworks and siimage drivers need UDMA mask\n   filtering method - done in the next patch)\n\nv2:\n* piix: fix cable detection for 82801AA_1 and 82372FB_1\n  [ Noticed by Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e. ]\n* cmd64x: use hwif-\u003ecds-\u003eudma_mask\n  [ Suggested by Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e. ]\n* aec62xx: fix newly introduced bug - check DMA status not command register\n  [ Noticed by Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e. ]\n\nv3:\n* piix: use hwif-\u003ecds-\u003eudma_mask\n  [ Suggested by Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e. ]\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "7a13e932281e7042a592f4f14db0b348199e7aac",
      "tree": "474245a3ed19f26528fd8b1bdda946fa9cd751d7",
      "parents": [
        "fee7f23feaf0845fdfd47d20cddc75652552fbb8"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Thu Apr 26 00:29:02 2007 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:58:01 2007 -0400"
      },
      "message": "NFS: Kill the obsolete NFS_PARANOIA\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fee7f23feaf0845fdfd47d20cddc75652552fbb8",
      "tree": "d5ce2fd3e86f6cf0fa61af8d4a5ecff8f149b796",
      "parents": [
        "ddce40df6e14dd474bbd9daa006dcc290dea6326"
      ],
      "author": {
        "name": "Milind Arun Choudhary",
        "email": "milindchoudhary@gmail.com",
        "time": "Thu Apr 26 00:29:03 2007 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:58:01 2007 -0400"
      },
      "message": "NFS: use __set_current_state()\n\nuse __set_current_state(TASK_*) instead of current-\u003estate \u003d TASK_*, in fs/nfs\n\nSigned-off-by: Milind Arun Choudhary \u003cmilindchoudhary@gmail.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ddce40df6e14dd474bbd9daa006dcc290dea6326",
      "tree": "29995b5d0ad7fcab114d388b4ab1675e32ba963e",
      "parents": [
        "e4cc6ee2e40bdd57990577b7f851fa2ca48edf47"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed May 09 08:30:11 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:58:00 2007 -0400"
      },
      "message": "sunrpc: fix crash in rpc_malloc()\n\n\nWhile the comment says:\n * To prevent rpciod from hanging, this allocator never sleeps,\n * returning NULL if the request cannot be serviced immediately.\n\nThe function does not actually check for NULL pointers being returned.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e4cc6ee2e40bdd57990577b7f851fa2ca48edf47",
      "tree": "fa2515a197df6a75be707a1054a0c0f026f38ba4",
      "parents": [
        "6ce7dc940701cf3fde3c6e826a696b333092cbb1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue May 08 18:23:28 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:58:00 2007 -0400"
      },
      "message": "NFS: Clean up NFSv4 XDR error message\n\nMake it more useful for debugging purposes.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6ce7dc940701cf3fde3c6e826a696b333092cbb1",
      "tree": "0894788349bae7b0d1707dcab98505b5ada8a3ef",
      "parents": [
        "aa3d1faebe6e214cd96be0e587571477ff6fd9fc"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue May 08 18:23:28 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:58:00 2007 -0400"
      },
      "message": "NFS: NFS client underestimates how large an NFSv4 SETATTR reply can be\n\nThe maximum size of an NFSv4 SETATTR compound reply should include the\nGETATTR operation that we send.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "aa3d1faebe6e214cd96be0e587571477ff6fd9fc",
      "tree": "d2295c15e30437a2bc693bd71b79a42c742ffc8b",
      "parents": [
        "e70c490810dc683fad39e57cf00e69d5f120c542"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue May 08 18:23:28 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:57:59 2007 -0400"
      },
      "message": "SUNRPC: Fix pointer arithmetic bug recently introduced in rpc_malloc/free\n\nUse a cleaner method to find the size of an rpc_buffer.  This actually\nworks on x86-64!\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e70c490810dc683fad39e57cf00e69d5f120c542",
      "tree": "24276f69c064376d3c69979f61e181b377560795",
      "parents": [
        "e62c2bba1fb7cf068eb78d731da46e4447a9efb1"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 09:00:18 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:57:59 2007 -0400"
      },
      "message": "NFS: Remove redundant check in nfs_check_verifier()\n\nThe check for nfs_attribute_timeout(dir) in nfs_check_verifier is\nredundant: nfs_lookup_revalidate() will already call nfs_revalidate_inode()\non the parent dir when necessary.\n\nThe only case where this is not done is the case of a negative dentry. Fix\nthis case by moving up the revalidation code.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e62c2bba1fb7cf068eb78d731da46e4447a9efb1",
      "tree": "bce53fe724400f7cfa1ae4621aafc6aa70bd564d",
      "parents": [
        "38cb162b7585d837083b8365da1eb32687c5164c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 09:00:17 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed May 09 17:57:58 2007 -0400"
      },
      "message": "NFS: Fix a jiffie wraparound issue\n\ndentry verifiers are always set to the parent directory\u0027s\ncache_change_attribute. There is no reason to be testing for anything other\nthan equality when we\u0027re trying to find out if the dentry has been checked\nsince the last time the directory was modified.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5329571b3c978635f6d832cc884fdd61ff94e0da",
      "tree": "67c0d1e2c44abdc45a2e021b60d22019c1ad1fb4",
      "parents": [
        "38cb162b7585d837083b8365da1eb32687c5164c"
      ],
      "author": {
        "name": "akpm@linux-foundation.org",
        "email": "akpm@linux-foundation.org",
        "time": "Wed May 09 00:43:17 2007 -0700"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Wed May 09 14:20:59 2007 -0700"
      },
      "message": "[IA64] sa_interrupt is deprecated\n\nSeems more than just deprecated, we can\u0027t build using SA_INTERUPT.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "38cb162b7585d837083b8365da1eb32687c5164c",
      "tree": "e4ae15715b23b320b1a92699fac767bc766c8f0b",
      "parents": [
        "ba7cc09c9c9e29a57045dc5bbf843ac1cfad3283",
        "e180583b85f4a48bd55924712c88e5d8eb182e08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:38:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:38:45 2007 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] wire up pselect, ppoll\n  [IA64] Add TIF_RESTORE_SIGMASK\n  [IA64] unwind did not work for processes born with CLONE_STOPPED\n  [IA64] Optional method to purge the TLB on SN systems\n  [IA64] SPIN_LOCK_UNLOCKED macro cleanup in arch/ia64\n  [IA64-SN2][KJ] mmtimer.c-kzalloc\n  [IA64] fix stack alignment for ia32 signal handlers\n  [IA64] - Altix: hotplug after intr redirect can crash system\n  [IA64] save and restore cpus_allowed in cpu_idle_wait\n  [IA64] Removal of percpu TR cleanup in kexec code\n  [IA64] Fix some section mismatch errors\n"
    },
    {
      "commit": "ba7cc09c9c9e29a57045dc5bbf843ac1cfad3283",
      "tree": "7e2d39269803b53ba048f3bad11cd6a1a38b35b9",
      "parents": [
        "d84c4124c4b6611301b402e8611b7e36de3bd351",
        "b7aa48be1e7a11e36448a7db58931bbf735d2718"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:10:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:10:11 2007 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (21 commits)\n  [MTD] [CHIPS] Remove MTD_OBSOLETE_CHIPS (jedec, amd_flash, sharp)\n  [MTD] Delete allegedly obsolete \"bank_size\" field of mtd_info.\n  [MTD] Remove unnecessary user space check from mtd.h.\n  [MTD] [MAPS] Remove flash maps for no longer supported 405LP boards\n  [MTD] [MAPS] Fix missing printk() parameter in physmap_of.c MTD driver\n  [MTD] [NAND] platform NAND driver: add driver\n  [MTD] [NAND] platform NAND driver: update header\n  [JFFS2] Simplify and clean up jffs2_add_tn_to_tree() some more.\n  [JFFS2] Remove another bogus optimisation in jffs2_add_tn_to_tree()\n  [JFFS2] Remove broken insert_point optimisation in jffs2_add_tn_to_tree()\n  [JFFS2] Remember to calculate overlap on nodes which replace older nodes\n  [JFFS2] Don\u0027t advance c-\u003ewbuf_ofs to next eraseblock after wbuf flush\n  [MTD] [NAND] at91_nand.c: CMDLINE_PARTS support\n  [MTD] [NAND] Tidy up handling of page number in nand_block_bad()\n  [MTD] block2mtd_paramline[] mustn\u0027t be __initdata\n  [MTD] [NAND] Support multiple chips in CAFÉ driver\n  [MTD] [NAND] Rename cafe.c to cafe_nand.c and remove the multi-obj magic\n  [MTD] [NAND] Use rslib for CAFÉ ECC\n  [RSLIB] Support non-canonical GF representations\n  [JFFS2] Remove dead file histo_mips.h\n  ...\n"
    },
    {
      "commit": "d84c4124c4b6611301b402e8611b7e36de3bd351",
      "tree": "d83cfaabfb901755d85074815ad948028dc7b03f",
      "parents": [
        "932c37c375cca25175f9b6acee4c75d7a96d985f",
        "a3cf4ea8729a5d448742fd5a0a003827c9f25cb6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:08:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:08:20 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  sh: Fix stacktrace simplification fallout.\n  sh: SH7760 DMABRG support.\n  sh: clockevent/clocksource/hrtimers/nohz TMU support.\n  sh: Truncate MAX_ACTIVE_REGIONS for the common case.\n  rtc: rtc-sh: Fix rtc_dev pointer for rtc_update_irq().\n  sh: Convert to common die chain.\n  sh: Wire up utimensat syscall.\n  sh: landisk mv_nr_irqs definition.\n  sh: Fixup ndelay() xloops calculation for alternate HZ.\n  sh: Add 32-bit opcode feature CPU flag.\n  sh: Fix PC adjustments for varying opcode length.\n  sh: Support for SH-2A 32-bit opcodes.\n  sh: Kill off redundant __div64_32 symbol export.\n  sh: Share exception vector table for SH-3/4.\n  sh: Always define TRAPA_BUG_OPCODE.\n  sh: __GFP_REPEAT for pte allocations, too.\n  rtc: rtc-sh: Fix up dev_dbg() warnings.\n  sh: generic quicklist support.\n"
    },
    {
      "commit": "932c37c375cca25175f9b6acee4c75d7a96d985f",
      "tree": "d7ba3620cd9a7a21c2de1bdfc7badd7637ed635e",
      "parents": [
        "c855ff3718e5f667b463b20b9de516b4cd7625ad",
        "805f53f085346b6765eda02820721a14ce0d644f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:05:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:05:57 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027for-linus\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm: (28 commits)\n  ARM: OMAP: Fix GCC-reported compile time bug\n  ARM: OMAP: restore CONFIG_GENERIC_TIME\n  ARM: OMAP: partial LED fixes\n  ARM: OMAP: add SoSSI clock (call propagate_rate for childrens)\n  ARM: OMAP: FB sync with N800 tree (support for dynamic SRAM allocations)\n  ARM: OMAP: Sync framebuffer headers with N800 tree\n  ARM: OMAP: Mostly cosmetic to sync up with linux-omap tree\n  ARM: OMAP: Fix gpmc header\n  ARM: OMAP: Add mailbox support for IVA\n  [ARM] armv7: add Makefile and Kconfig entries\n  [ARM] armv7: add support for asid-tagged VIVT I-cache\n  [ARM] armv7: add dedicated ARMv7 barrier instructions\n  [ARM] armv7: Add ARMv7 cacheid macros\n  [ARM] armv7: add support for ARMv7 cores.\n  [ARM] Fix ARM branch relocation range\n  [ARM] 4363/1: AT91: Remove legacy PIO definitions\n  [ARM] 4361/1: AT91: Build error\n  ARM: OMAP: Sync core code with linux-omap\n  ARM: OMAP: Sync headers with linux-omap\n  ARM: OMAP: h4 must have blinky leds!!\n  ...\n"
    },
    {
      "commit": "c855ff3718e5f667b463b20b9de516b4cd7625ad",
      "tree": "5f5f2db132c80705db2254fc8f2f222160228aa5",
      "parents": [
        "aabded9c3aab5160ae2ca3dd1fa0fa37f3d510e4"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed May 09 13:42:20 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:04:03 2007 -0700"
      },
      "message": "Fix a bad error case handling in read_cache_page_async()\n\nCommit 6fe6900e1e5b6fa9e5c59aa5061f244fe3f467e2 introduced a nasty bug\nin read_cache_page_async().\n\nIt added a \"mark_page_accessed(page)\" at the final return path in\nread_cache_page_async().  But in error cases, \u0027page\u0027 holds the error\ncode, and you can\u0027t mark it accessed.\n\n[ and Glauber de Oliveira Costa points out that we can use a return\n  instead of adding more goto\u0027s ]\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aabded9c3aab5160ae2ca3dd1fa0fa37f3d510e4",
      "tree": "8544d546735bcb975b8dec296eb9b6dc6531fb2a",
      "parents": [
        "9a9136e270af14da506f66bcafcc506b86a86498",
        "f1a1eb299a8422c3e8d41753095bec44b2493398"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:56:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:56:01 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:\n  [POWERPC] Further fixes for the removal of 4level-fixup hack from ppc32\n  [POWERPC] EEH: log all PCI-X and PCI-E AER registers\n  [POWERPC] EEH: capture and log pci state on error\n  [POWERPC] EEH: Split up long error msg\n  [POWERPC] EEH: log error only after driver notification.\n  [POWERPC] fsl_soc: Make mac_addr const in fs_enet_of_init().\n  [POWERPC] Don\u0027t use SLAB/SLUB for PTE pages\n  [POWERPC] Spufs support for 64K LS mappings on 4K kernels\n  [POWERPC] Add ability to 4K kernel to hash in 64K pages\n  [POWERPC] Introduce address space \"slices\"\n  [POWERPC] Small fixes \u0026 cleanups in segment page size demotion\n  [POWERPC] iSeries: Make HVC_ISERIES the default\n  [POWERPC] iSeries: suppress build warning in lparmap.c\n  [POWERPC] Mark pages that don\u0027t exist as nosave\n  [POWERPC] swsusp: Introduce register_nosave_region_late\n"
    },
    {
      "commit": "9a9136e270af14da506f66bcafcc506b86a86498",
      "tree": "b4d0a6877d92635134b7a944d0032fbc43227fd2",
      "parents": [
        "3960208f9ca0cf6bdb31c21c59ac0526303f8b34",
        "7bb2acb76e8168ca5d0bde5a5a56585a11b3525a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:54:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:54:17 2007 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (25 commits)\n  sound: convert \"sound\" subdirectory to UTF-8\n  MAINTAINERS: Add cxacru website/mailing list\n  include files: convert \"include\" subdirectory to UTF-8\n  general: convert \"kernel\" subdirectory to UTF-8\n  documentation: convert the Documentation directory to UTF-8\n  Convert the toplevel files CREDITS and MAINTAINERS to UTF-8.\n  remove broken URLs from net drivers\u0027 output\n  Magic number prefix consistency change to Documentation/magic-number.txt\n  trivial: s/i_sem /i_mutex/\n  fix file specification in comments\n  drivers/base/platform.c: fix small typo in doc\n  misc doc and kconfig typos\n  Remove obsolete fat_cvf help text\n  Fix occurrences of \"the the \"\n  Fix minor typoes in kernel/module.c\n  Kconfig: Remove reference to external mqueue library\n  Kconfig: A couple of grammatical fixes in arch/i386/Kconfig\n  Correct comments in genrtc.c to refer to correct /proc file.\n  Fix more \"deprecated\" spellos.\n  Fix \"deprecated\" typoes.\n  ...\n\nFix trivial comment conflict in kernel/relay.c.\n"
    },
    {
      "commit": "3960208f9ca0cf6bdb31c21c59ac0526303f8b34",
      "tree": "ca1948cec8fb390e5298498361194db145e2e49f",
      "parents": [
        "b0b73cb41d56ee391f20cbd3e4304e2303a8829b",
        "47cc3e780474be2e462278d63d77c27a493b28ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:50:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:50:25 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://www.atmel.no/~hskinnemoen/linux/kernel/avr32\n\n* \u0027for-linus\u0027 of git://www.atmel.no/~hskinnemoen/linux/kernel/avr32:\n  [AVR32] Wire up sys_utimensat\n  [AVR32] Fix section mismatch .taglist -\u003e .init.text\n  [AVR32] Implement dma_{alloc,free}_writecombine()\n  AVR32: Spinlock initializer cleanup\n  [AVR32] Use correct config symbol when setting cpuflags\n"
    },
    {
      "commit": "b0b73cb41d56ee391f20cbd3e4304e2303a8829b",
      "tree": "69d6ebfed9c252e8689001a82dc438a74f89fd46",
      "parents": [
        "29bd44337799e4cb85aec5157a9c88a0da66642a"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed May 09 00:02:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:49:33 2007 -0700"
      },
      "message": "i386: msr.h: be paranoid about types and parentheses\n\nWhen implementing things as macros, make sure we use typecasts and\nparentheses where needed.  The macros as defined were vulnerable to\nsurreptitious promotion causing problems.\n\nAvoid macros where practical; e.g. wrmsr() can be an inline instead.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "29bd44337799e4cb85aec5157a9c88a0da66642a",
      "tree": "454124f8ce577a814fde5edc08b26cdf1138f122",
      "parents": [
        "21c42bd8db2acd7c884d132efbf7aee9ca970b06"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed May 09 00:02:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:49:33 2007 -0700"
      },
      "message": "i386: remove unused rdtsc() macro\n\nAll users to the two-part rdtsc() macro have already switched to using\nrdtscl() or rdtscll().  Remove the now-obsolete macro.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21c42bd8db2acd7c884d132efbf7aee9ca970b06",
      "tree": "1ebbed858d9aaca784ff5b8bdf2fa30c27dc6738",
      "parents": [
        "5b479c91da90eef605f851508744bfe8269591a0"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed May 09 00:02:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:49:33 2007 -0700"
      },
      "message": "i386: cpu/transmeta.c: fix definition of USER686\n\nThe definition of USER686 is supposed to be a mask of feature bits,\nnot an OR of feature numbers!  It happened to work anyway on the only\nprocessor affected, simply by pure coincidence.  Fix.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5b479c91da90eef605f851508744bfe8269591a0",
      "tree": "d7c2844926d96d794d66b974b300eba2d047465e",
      "parents": [
        "08a02ecd28bad35a47357e611044dcbeab06e3d7"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:35:39 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "md: improve partition detection in md array\n\nmd currently uses -\u003emedia_changed to make sure rescan_partitions\nis call on md array after they are assembled.\n\nHowever that doesn\u0027t happen until the array is opened, which is later\nthan some people would like.\n\nSo use blkdev_ioctl to do the rescan immediately that the\narray has been assembled.\n\nThis means we can remove all the -\u003echange infrastructure as it was only used\nto trigger a partition rescan.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "08a02ecd28bad35a47357e611044dcbeab06e3d7",
      "tree": "31050d686e58d55411f95c89204321aa2ea2b63a",
      "parents": [
        "42b9bebe3fea3d3ce381bc6735a3fb50e6613f06"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:35:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "md: allow reshape_position for md arrays to be set via sysfs\n\n\"reshape_position\" records how much progress has been made on a \"reshape\"\n(adding drives, changing layout or chunksize).\n\nWhen it is set, the number of drives, layout and chunksize can have\ntwo possible values, an old an a new.\n\nSo allow these different values to be visible, and allow both old and new to\nbe set: Set the old ones first, then the reshape_position, then the new\nvalues.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42b9bebe3fea3d3ce381bc6735a3fb50e6613f06",
      "tree": "e99aec5ccb154e2f09a89a9b16f9e174b40b2863",
      "parents": [
        "4d167f09375bd6c18447d3fcc18baaf3acd15fbc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:35:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "md: remove the slash from the name of a kmem_cache used by raid5\n\nSLUB doesn\u0027t like slashes as it wants to use the cache name as the name of a\ndirectory (or symlink) in sysfs.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d167f09375bd6c18447d3fcc18baaf3acd15fbc",
      "tree": "4132b4061678bf6124c3045035c023e83aebe825",
      "parents": [
        "e11e93facc38fb264a5ff1e154ebb2f11dc5cffa"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:35:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "md: stop using csum_partial for checksum calculation in md\n\nIf CONFIG_NET is not selected, csum_partial is not exported, so md.ko cannot\nuse it.  We shouldn\u0027t really be using csum_partial anyway as it is an\ninternal-to-networking interface.\n\nSo replace it with C code to do the same thing.  Speed is not crucial here, so\nsomething simple and correct is best.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e11e93facc38fb264a5ff1e154ebb2f11dc5cffa",
      "tree": "0128d05a5a3d51704f25ad4622b5dad4078d1430",
      "parents": [
        "c3f94b40e1676172dfa88abfffd8baffe7ac607c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed May 09 02:35:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "md: move test for whether level supports bitmap to correct place\n\nWe need to check for internal-consistency of superblock in load_super.\nvalidate_super is for inter-device consistency.\n\nWith the test in the wrong place, a badly created array will confuse md rather\nan produce sensible errors.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3f94b40e1676172dfa88abfffd8baffe7ac607c",
      "tree": "c5440bae6c2a63cefbf87ef32936b45b46dd357d",
      "parents": [
        "50511da3da4d984fb944b2e373781b60915daf65"
      ],
      "author": {
        "name": "Martin Peschke",
        "email": "mp3@de.ibm.com",
        "time": "Wed May 09 02:35:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "md: cleanup: use seq_release_private() where appropriate\n\nWe can save some lines of code by using seq_release_private().\n\nSigned-off-by: Martin Peschke \u003cmp3@de.ibm.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "50511da3da4d984fb944b2e373781b60915daf65",
      "tree": "17a3d4526fdd87ca20393cd7deef5270b5c19cf9",
      "parents": [
        "bc0ca06e24545117b69c94b1219dbe19392a0c5a"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Wed May 09 02:35:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "drivers/md.c: Use ARRAY_SIZE macro when appropriate\n\nUse ARRAY_SIZE macro already defined in kernel.h\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@gmail.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc0ca06e24545117b69c94b1219dbe19392a0c5a",
      "tree": "f7d2bdd1e205884280413e01c66ebfefab3f9af8",
      "parents": [
        "880169dd2edc4297b7811a0542be9766ca6945bc"
      ],
      "author": {
        "name": "Michal Piotrowski",
        "email": "michal.k.k.piotrowski@gmail.com",
        "time": "Wed May 09 02:35:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "frame buffer: geforce 7300 gt\n\nMy geforce isn\u0027t supported by nvidia frame buffer.\n\n/sbin/lspci\n01:00.0 VGA compatible controller: nVidia Corporation Unknown device 02e2 (rev a2)\n\n/usr/sbin/fbset -i\n\nmode \"1024x768-60\"\n    # D: 65.003 MHz, H: 48.365 kHz, V: 60.006 Hz\n    geometry 1024 768 1024 32767 8\n    timings 15384 160 24 29 3 136 6\n    accel true\n    rgba 8/0,8/0,8/0,0/0\nendmode\n\nFrame buffer device information:\n    Name        : NV2e\n    Address     : 0xe0000000\n    Size        : 134217728\n    Type        : PACKED PIXELS\n    Visual      : PSEUDOCOLOR\n    XPanStep    : 8\n    YPanStep    : 1\n    YWrapStep   : 0\n    LineLength  : 1024\n    MMIO Address: 0xf6000000\n    MMIO Size   : 16777216\n    Accelerator : Unknown (46)\n\nHere is a patch for this problem.\n\nSigned-off-by: Michal Piotrowski \u003cmichal.k.k.piotrowski@gmail.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "880169dd2edc4297b7811a0542be9766ca6945bc",
      "tree": "38f9ecb7507c37982291fa9f131682daf91c3c27",
      "parents": [
        "5a87ede94595f58934000e26e8b13398e63868b5"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed May 09 02:35:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "fbdev: add support for AVR32\n\nProvide framebuffer page protection flags and definitions of\nfb_readl/fb_writel for AVR32.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a87ede94595f58934000e26e8b13398e63868b5",
      "tree": "e97b7e505753c8243ec10c008e9ff39e61c92d09",
      "parents": [
        "681e14730c73cc2c71af282c001de6bc71c22f00"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Wed May 09 02:35:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "svgalib: move fb_get_caps to svgalib\n\nMove fb_get_caps() method to svgalib.c as svga_get_caps() so it can be used by\ns3fb, arkfb and vt8623fb.\n\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "681e14730c73cc2c71af282c001de6bc71c22f00",
      "tree": "3dfb470010566c2085524d9ae7d4791a787e4aaf",
      "parents": [
        "558b7bd86c32978648cda5deb5c758d77ef0c165"
      ],
      "author": {
        "name": "Ondrej Zajicek",
        "email": "santiago@crfreenet.org",
        "time": "Wed May 09 02:35:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "arkfb: new framebuffer driver for ARK Logic cards\n\nThis patch adds fbdev driver for graphics cards with ARK Logic 2000PV graphics\nchip with ICS 5342 ramdac.\n\n[adaplas@gmail.com: build fixes]\nSigned-off-by: Ondrej Zajicek \u003csantiago@crfreenet.org\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "558b7bd86c32978648cda5deb5c758d77ef0c165",
      "tree": "4840567ca9496fe5bf0e9ac564650d613ae6c360",
      "parents": [
        "c3c117f06e95ea993ba4ed3b246fd76f87a4683f"
      ],
      "author": {
        "name": "Ondrej Zajicek",
        "email": "santiago@crfreenet.org",
        "time": "Wed May 09 02:35:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "vt8623fb: new framebuffer driver for VIA VT8623\n\nThis patch adds fbdev driver for graphics core in VIA VT8623\n\n[adaplas@gmail.com: build fixes]\nSigned-off-by: Ondrej Zajicek \u003csantiago@crfreenet.org\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c3c117f06e95ea993ba4ed3b246fd76f87a4683f",
      "tree": "c6bc7a29d7e07e78588d4edd064c038dcd0d86aa",
      "parents": [
        "affd872ebbe4f045d70a3f4b33b20f5f6c894bcc"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed May 09 02:35:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "i386 mmzone: use __maybe_unused\n\nReplace automatic variable instances of __attribute__ ((unused)) with\n__maybe_unused.\n\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "affd872ebbe4f045d70a3f4b33b20f5f6c894bcc",
      "tree": "85375b385b29a81db1064ad99018221d13b3044e",
      "parents": [
        "d16aaffa752c7fd50df951e631dd0c11f80d9cbf"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed May 09 02:35:29 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "i386: voyager: use __maybe_unused\n\nReplace automatic variable instances of __attribute__((unused)) with\n__maybe_unused in mca_nmi_hook().\n\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d16aaffa752c7fd50df951e631dd0c11f80d9cbf",
      "tree": "216b3c7046eb548600d0a29c1b87c7702aca8062",
      "parents": [
        "f6744c02bc50797c1a83f8303ebcc96673ca0524"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed May 09 02:35:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:57 2007 -0700"
      },
      "message": "sh: dma: use __maybe_unused\n\nThere is no such thing as labeling a variable as __attribute__((used)).  Since\nts_shift is not referenced in inline assembly, we assume that we\u0027re simply\nsuppressing a warning here if the variable is declared but unreferenced.\n\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f6744c02bc50797c1a83f8303ebcc96673ca0524",
      "tree": "ee30cf5efd9ff33ea2b6c9b33878d3de2a71cc02",
      "parents": [
        "0d7ebbbc6eaa5539f78ab20ed6ff1725a4e332ef"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed May 09 02:35:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "i386 pci: use __maybe_unused\n\nUse the new macro here\n\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0d7ebbbc6eaa5539f78ab20ed6ff1725a4e332ef",
      "tree": "ddef8183ac6440e96678fd4d1159ee86619e2a97",
      "parents": [
        "f7e4217b007d1f73e7e3cf10ba4fea4a608c603f"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Wed May 09 02:35:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "compiler: introduce __used and __maybe_unused\n\n__used is defined to be __attribute__((unused)) for all pre-3.3 gcc\ncompilers to suppress warnings for unused functions because perhaps they\nare referenced only in inline assembly.  It is defined to be\n__attribute__((used)) for gcc 3.3 and later so that the code is still\nemitted for such functions.\n\n__maybe_unused is defined to be __attribute__((unused)) for both function\nand variable use if it could possibly be unreferenced due to the evaluation\nof preprocessor macros.  Function prototypes shall be marked with\n__maybe_unused if the actual definition of the function is dependant on\npreprocessor macros.\n\nNo update to compiler-intel.h is necessary because ICC supports both\n__attribute__((used)) and __attribute__((unused)) as specified by the gcc\nmanual.\n\n__attribute_used__ is deprecated and will be removed once all current\ncode is converted to using __used.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7e4217b007d1f73e7e3cf10ba4fea4a608c603f",
      "tree": "9c3932bb871d4b6727dc588e4d6c9987637aaee5",
      "parents": [
        "c9f4f06d3191bd91c1a081b54a6c8e913e7b8a83"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Wed May 09 02:35:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "rename thread_info to stack\n\nThis finally renames the thread_info field in task structure to stack, so that\nthe assumptions about this field are gone and archs have more freedom about\nplacing the thread_info structure.\n\nNonbroken archs which have a proper thread pointer can do the access to both\ncurrent thread and task structure via a single pointer.\n\nIt\u0027ll allow for a few more cleanups of the fork code, from which e.g.  ia64\ncould benefit.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\n[akpm@linux-foundation.org: build fix]\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9f4f06d3191bd91c1a081b54a6c8e913e7b8a83",
      "tree": "fe6bb926f612e67b1e57c6a448c7e5d41dd69dad",
      "parents": [
        "e61a1c1c4f240cec61300c8f27518c3e47570fd4"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Wed May 09 02:35:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "wrap access to thread_info\n\nRecently a few direct accesses to the thread_info in the task structure snuck\nback, so this wraps them with the appropriate wrapper.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e61a1c1c4f240cec61300c8f27518c3e47570fd4",
      "tree": "479d3b921577eaa642c4b1071acfeb4cb8ecf8ab",
      "parents": [
        "b52f52a093bb1e841e014c2087b5bee7162da413"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Wed May 09 02:35:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "Allow arch to initialize arch field of the module structure\n\nThis will later allow an arch to add module specific information via linker\ngenerated tables instead of poking directly in the module object structure.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b52f52a093bb1e841e014c2087b5bee7162da413",
      "tree": "7b7135897195fc9d14473d3ab824d59a4b65e5ad",
      "parents": [
        "4037d452202e34214e8a939fa5621b2b3bbb45b7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 09 02:35:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "clocksource: fix resume logic\n\nWe need to make sure that the clocksources are resumed, when timekeeping is\nresumed.  The current resume logic does not guarantee this.\n\nAdd a resume function pointer to the clocksource struct, so clocksource\ndrivers which need to reinitialize the clocksource can provide a resume\nfunction.\n\nAdd a resume function, which calls the maybe available clocksource resume\nfunctions and resets the watchdog function, so a stable TSC can be used\naccross suspend/resume.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4037d452202e34214e8a939fa5621b2b3bbb45b7",
      "tree": "31b59c0ca94fba4d53b6738b0bad3d1e9fde3063",
      "parents": [
        "77461ab33229d48614402decfb1b2eaa6d446861"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed May 09 02:35:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "Move remote node draining out of slab allocators\n\nCurrently the slab allocators contain callbacks into the page allocator to\nperform the draining of pagesets on remote nodes.  This requires SLUB to have\na whole subsystem in order to be compatible with SLAB.  Moving node draining\nout of the slab allocators avoids a section of code in SLUB.\n\nMove the node draining so that is is done when the vm statistics are updated.\nAt that point we are already touching all the cachelines with the pagesets of\na processor.\n\nAdd a expire counter there.  If we have to update per zone or global vm\nstatistics then assume that the pageset will require subsequent draining.\n\nThe expire counter will be decremented on each vm stats update pass until it\nreaches zero.  Then we will drain one batch from the pageset.  The draining\nwill cause vm counter updates which will then cause another expiration until\nthe pcp is empty.  So we will drain a batch every 3 seconds.\n\nNote that remote node draining is a somewhat esoteric feature that is required\non large NUMA systems because otherwise significant portions of system memory\ncan become trapped in pcp queues.  The number of pcp is determined by the\nnumber of processors and nodes in a system.  A system with 4 processors and 2\nnodes has 8 pcps which is okay.  But a system with 1024 processors and 512\nnodes has 512k pcps with a high potential for large amount of memory being\ncaught in them.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77461ab33229d48614402decfb1b2eaa6d446861",
      "tree": "d2675ff079e887645ed25ae5f793aa907d53c66a",
      "parents": [
        "d1187ed21026fd512b87851d0ca26d9ae16f9059"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed May 09 02:35:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "Make vm statistics update interval configurable\n\nMake it configurable.  Code in mm makes the vm statistics intervals\nindependent from the cache reaper use that opportunity to make it\nconfigurable.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1187ed21026fd512b87851d0ca26d9ae16f9059",
      "tree": "35d77758f134f3b69d3e00ca042a5d5ca6a59373",
      "parents": [
        "455c017ae3934797653549704c286e7bcc3a9397"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed May 09 02:35:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "vmstat: use our own timer events\n\nvmstat is currently using the cache reaper to periodically bring the\nstatistics up to date.  The cache reaper does only exists in SLUB as a way to\nprovide compatibility with SLAB.  This patch removes the vmstat calls from the\nslab allocators and provides its own handling.\n\nThe advantage is also that we can use a different frequency for the updates.\nRefreshing vm stats is a pretty fast job so we can run this every second and\nstagger this by only one tick.  This will lead to some overlap in large\nsystems.  F.e a system running at 250 HZ with 1024 processors will have 4 vm\nupdates occurring at once.\n\nHowever, the vm stats update only accesses per node information.  It is only\nnecessary to stagger the vm statistics updates per processor in each node.  Vm\ncounter updates occurring on distant nodes will not cause cacheline\ncontention.\n\nWe could implement an alternate approach that runs the first processor on each\nnode at the second and then each of the other processor on a node on a\nsubsequent tick.  That may be useful to keep a large amount of the second free\nof timer activity.  Maybe the timer folks will have some feedback on this one?\n\n[jirislaby@gmail.com: add missing break]\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "455c017ae3934797653549704c286e7bcc3a9397",
      "tree": "7b5b67916b064e3ce7868082e0915f37b437aeb8",
      "parents": [
        "8bb7844286fb8c9fce6f65d8288aeb09d03a5e0d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 09 02:35:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "microcode: use suspend-related CPU hotplug notifications\n\nMake the microcode driver use the suspend-related CPU hotplug notifications\nto handle the CPU hotplug events occuring during system-wide suspend and\nresume transitions.  Remove the global variable suspend_cpu_hotplug\npreviously used for this purpose.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8bb7844286fb8c9fce6f65d8288aeb09d03a5e0d",
      "tree": "f4e305edaedbde05774bb1e4acd89a9475661d2e",
      "parents": [
        "f37bc2712b54ec641e0c0c8634f1a4b61d9956c0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 09 02:35:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "Add suspend-related notifications for CPU hotplug\n\nSince nonboot CPUs are now disabled after tasks and devices have been\nfrozen and the CPU hotplug infrastructure is used for this purpose, we need\nspecial CPU hotplug notifications that will help the CPU-hotplug-aware\nsubsystems distinguish normal CPU hotplug events from CPU hotplug events\nrelated to a system-wide suspend or resume operation in progress.  This\npatch introduces such notifications and causes them to be used during\nsuspend and resume transitions.  It also changes all of the\nCPU-hotplug-aware subsystems to take these notifications into consideration\n(for now they are handled in the same way as the corresponding \"normal\"\nones).\n\n[oleg@tv-sign.ru: cleanups]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f37bc2712b54ec641e0c0c8634f1a4b61d9956c0",
      "tree": "0b73fd72a74115922e8e88bd56667c04b9299767",
      "parents": [
        "f2fff596955867d407cc7e8e426097bd9ad2be9b"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Wed May 09 02:35:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "fs: deprecate memclear_highpage_flush\n\nNow that all the in-tree users are converted over to zero_user_page(),\ndeprecate the old memclear_highpage_flush() call.\n\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f2fff596955867d407cc7e8e426097bd9ad2be9b",
      "tree": "68ca108b7eecef9d789fb7bf9eb2405854880575",
      "parents": [
        "0c11d7a9e9e9793219baf715048c190a84bead57"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Wed May 09 02:35:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "reiserfs: use zero_user_page\n\nUse zero_user_page() instead of open-coding it.\n\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0c11d7a9e9e9793219baf715048c190a84bead57",
      "tree": "ba5557118502f04a6dc12b66a6afacac1144256b",
      "parents": [
        "f36dca90e674a1a62cad810f630629c0008b2128"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Wed May 09 02:35:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:55 2007 -0700"
      },
      "message": "ext3: use zero_user_page\n\nUse zero_user_page() instead of open-coding it.\n\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f36dca90e674a1a62cad810f630629c0008b2128",
      "tree": "56c7d0570d63de5af08dfa64859689904d91432d",
      "parents": [
        "01f2705daf5a36208e69d7cf95db9c330f843af6"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Wed May 09 02:35:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:55 2007 -0700"
      },
      "message": "affs: use zero_user_page\n\nUse zero_user_page() instead of open-coding it.\n\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01f2705daf5a36208e69d7cf95db9c330f843af6",
      "tree": "2d2c7a042c2466ed985f6e0950450c099f02725f",
      "parents": [
        "38a23e311b6cd389b9d8af2ea6c28c8cffbe581c"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Wed May 09 02:35:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:55 2007 -0700"
      },
      "message": "fs: convert core functions to zero_user_page\n\nIt\u0027s very common for file systems to need to zero part or all of a page,\nthe simplist way is just to use kmap_atomic() and memset().  There\u0027s\nactually a library function in include/linux/highmem.h that does exactly\nthat, but it\u0027s confusingly named memclear_highpage_flush(), which is\ndescriptive of *how* it does the work rather than what the *purpose* is.\nSo this patchset renames the function to zero_user_page(), and calls it\nfrom the various places that currently open code it.\n\nThis first patch introduces the new function call, and converts all the\ncore kernel callsites, both the open-coded ones and the old\nmemclear_highpage_flush() ones.  Following this patch is a series of\nconversions for each file system individually, per AKPM, and finally a\npatch deprecating the old call.  The diffstat below shows the entire\npatchset.\n\n[akpm@linux-foundation.org: fix a few things]\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "38a23e311b6cd389b9d8af2ea6c28c8cffbe581c",
      "tree": "742b2d0e5e6f7015afe92dfa87ed22964082b8cb",
      "parents": [
        "34f01cc1f512fa783302982776895c73714ebbc2"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@o2.pl",
        "time": "Wed May 09 02:35:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:55 2007 -0700"
      },
      "message": "timer: parenthesis fix in tbase_get_deferrable() etc\n\nSigned-off-by: Jarek Poplawski \u003cjarkao2@o2.pl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34f01cc1f512fa783302982776895c73714ebbc2",
      "tree": "776b50ee9592803853b3b4c1845f8ba527b868b9",
      "parents": [
        "d0aa7a70bf03b9de9e995ab272293be1f7937822"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed May 09 02:35:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:55 2007 -0700"
      },
      "message": "FUTEX: new PRIVATE futexes\n\n  Analysis of current linux futex code :\n  --------------------------------------\n\nA central hash table futex_queues[] holds all contexts (futex_q) of waiting\nthreads.\n\nEach futex_wait()/futex_wait() has to obtain a spinlock on a hash slot to\nperform lookups or insert/deletion of a futex_q.\n\nWhen a futex_wait() is done, calling thread has to :\n\n1) - Obtain a read lock on mmap_sem to be able to validate the user pointer\n     (calling find_vma()). This validation tells us if the futex uses\n     an inode based store (mapped file), or mm based store (anonymous mem)\n\n2) - compute a hash key\n\n3) - Atomic increment of reference counter on an inode or a mm_struct\n\n4) - lock part of futex_queues[] hash table\n\n5) - perform the test on value of futex.\n\t(rollback is value !\u003d expected_value, returns EWOULDBLOCK)\n\t(various loops if test triggers mm faults)\n\n6) queue the context into hash table, release the lock got in 4)\n\n7) - release the read_lock on mmap_sem\n\n   \u003cblock\u003e\n\n8) Eventually unqueue the context (but rarely, as this part  may be done\n   by the futex_wake())\n\nFutexes were designed to improve scalability but current implementation has\nvarious problems :\n\n- Central hashtable :\n\n  This means scalability problems if many processes/threads want to use\n  futexes at the same time.\n  This means NUMA unbalance because this hashtable is located on one node.\n\n- Using mmap_sem on every futex() syscall :\n\n  Even if mmap_sem is a rw_semaphore, up_read()/down_read() are doing atomic\n  ops on mmap_sem, dirtying cache line :\n    - lot of cache line ping pongs on SMP configurations.\n\n  mmap_sem is also extensively used by mm code (page faults, mmap()/munmap())\n  Highly threaded processes might suffer from mmap_sem contention.\n\n  mmap_sem is also used by oprofile code. Enabling oprofile hurts threaded\n  programs because of contention on the mmap_sem cache line.\n\n- Using an atomic_inc()/atomic_dec() on inode ref counter or mm ref counter:\n  It\u0027s also a cache line ping pong on SMP. It also increases mmap_sem hold time\n  because of cache misses.\n\nMost of these scalability problems come from the fact that futexes are in\none global namespace.  As we use a central hash table, we must make sure\nthey are all using the same reference (given by the mm subsystem).  We\nchose to force all futexes be \u0027shared\u0027.  This has a cost.\n\nBut fact is POSIX defined PRIVATE and SHARED, allowing clear separation,\nand optimal performance if carefuly implemented.  Time has come for linux\nto have better threading performance.\n\nThe goal is to permit new futex commands to avoid :\n - Taking the mmap_sem semaphore, conflicting with other subsystems.\n - Modifying a ref_count on mm or an inode, still conflicting with mm or fs.\n\nThis is possible because, for one process using PTHREAD_PROCESS_PRIVATE\nfutexes, we only need to distinguish futexes by their virtual address, no\nmatter the underlying mm storage is.\n\nIf glibc wants to exploit this new infrastructure, it should use new\n_PRIVATE futex subcommands for PTHREAD_PROCESS_PRIVATE futexes.  And be\nprepared to fallback on old subcommands for old kernels.  Using one global\nvariable with the FUTEX_PRIVATE_FLAG or 0 value should be OK.\n\nPTHREAD_PROCESS_SHARED futexes should still use the old subcommands.\n\nCompatibility with old applications is preserved, they still hit the\nscalability problems, but new applications can fly :)\n\nNote : the same SHARED futex (mapped on a file) can be used by old binaries\n*and* new binaries, because both binaries will use the old subcommands.\n\nNote : Vast majority of futexes should be using PROCESS_PRIVATE semantic,\nas this is the default semantic. Almost all applications should benefit\nof this changes (new kernel and updated libc)\n\nSome bench results on a Pentium M 1.6 GHz (SMP kernel on a UP machine)\n\n/* calling futex_wait(addr, value) with value !\u003d *addr */\n433 cycles per futex(FUTEX_WAIT) call (mixing 2 futexes)\n424 cycles per futex(FUTEX_WAIT) call (using one futex)\n334 cycles per futex(FUTEX_WAIT_PRIVATE) call (mixing 2 futexes)\n334 cycles per futex(FUTEX_WAIT_PRIVATE) call (using one futex)\nFor reference :\n187 cycles per getppid() call\n188 cycles per umask() call\n181 cycles per ni_syscall() call\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nPierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: \"Ulrich Drepper\" \u003cdrepper@gmail.com\u003e\nCc: \"Nick Piggin\" \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Ingo Molnar\" \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d0aa7a70bf03b9de9e995ab272293be1f7937822",
      "tree": "194b30b7b8374b946f166996cb99fb95eb3b7819",
      "parents": [
        "c19384b5b296905d4988c7c684ff540a0f9d65be"
      ],
      "author": {
        "name": "Pierre Peiffer",
        "email": "pierre.peiffer@bull.net",
        "time": "Wed May 09 02:35:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:55 2007 -0700"
      },
      "message": "futex_requeue_pi optimization\n\nThis patch provides the futex_requeue_pi functionality, which allows some\nthreads waiting on a normal futex to be requeued on the wait-queue of a\nPI-futex.\n\nThis provides an optimization, already used for (normal) futexes, to be used\nwith the PI-futexes.\n\nThis optimization is currently used by the glibc in pthread_broadcast, when\nusing \"normal\" mutexes.  With futex_requeue_pi, it can be used with\nPRIO_INHERIT mutexes too.\n\nSigned-off-by: Pierre Peiffer \u003cpierre.peiffer@bull.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "c19384b5b296905d4988c7c684ff540a0f9d65be"
}
