)]}'
{
  "log": [
    {
      "commit": "4acdbdbe5089c06d5e0c7e96783fcc4414ded00a",
      "tree": "77629aef70bd92983518b6f5dd13c70a222c4cbb",
      "parents": [
        "4aa49d130df9209707a97786a55a3f584b7345e9"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jul 21 13:14:46 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 13:14:46 2005 -0700"
      },
      "message": "[NETFILTER]: ip_conntrack_expect_related must not free expectation\n\nIf a connection tracking helper tells us to expect a connection, and\nwe\u0027re already expecting that connection, we simply free the one they\ngave us and return success.\n\nThe problem is that NAT helpers (eg. FTP) have to allocate the\nexpectation first (to see what port is available) then rewrite the\npacket.  If that rewrite fails, they try to remove the expectation,\nbut it was freed in ip_conntrack_expect_related.\n\nThis is one example of a larger problem: having registered the\nexpectation, the pointer is no longer ours to use.  Reference counting\nis needed for ctnetlink anyway, so introduce it now.\n\nTo have a single \"put\" path, we need to grab the reference to the\nconnection on creation, rather than open-coding it in the caller.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e2bf521d9728bfae9b6c3d484614e5962d0b5afd",
      "tree": "74a126835dc9e26fbca5080214f3cc1bb4f7c5ea",
      "parents": [
        "37da647d994cdac7e0bc8d2a365fbda403939a2b"
      ],
      "author": {
        "name": "Victor Fusco",
        "email": "victor@cetuc.puc-rio.br",
        "time": "Mon Jul 18 13:36:38 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 13:36:38 2005 -0700"
      },
      "message": "[NET]: Fix \"nocast type\" warnings in skbuff.h\n\nFrom: Victor Fusco \u003cvictor@cetuc.puc-rio.br\u003e\n\nFix the sparse warning \"implicit cast to nocast type\"\n\nSigned-off-by: Victor Fusco \u003cvictor@cetuc.puc-rio.br\u003e\nSigned-off-by: Domen Puncer \u003cdomen@coderock.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "23af27eb8fa9ea8614138c4cded7a16cb4197a55",
      "tree": "e558c59c98a759663e8691fbf731e5eb3fc49bb6",
      "parents": [
        "452f299da3253f65020143f743c2e207b752547b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 18 13:34:35 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 13:34:35 2005 -0700"
      },
      "message": "[PKT_SCHED]: Kill TCF_META_ID_TCCLASSID.\n\nThomas Graf states:\n\n\u003e I used to mark such ids as obsolete in the header but since\n\u003e skb is on diet anyway and there has been no official\n\u003e iproute2 release with the ematch bits included it might be\n\u003e a better idea to remove the ids from the header completely.\n\u003e Those that have picked up my patch on netdev shouldn\u0027t care\n\u003e about a ABI breakage, actually I doubt that someone is using\n\u003e it already.\n\nSo here\u0027s the patch to remove it.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "068e1b94bbd268f375349f68531829c8b7c210bc",
      "tree": "310708cce88df2f72a5f98d1cb67dc1d8fe19171",
      "parents": [
        "ddca3b80cef36cc668f924ef5154a79acb19ebd7"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Jul 13 01:10:46 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 13 11:25:24 2005 -0700"
      },
      "message": "[PATCH] s390: fadvise hint values.\n\nAdd special case for the POSIX_FADV_DONTNEED and POSIX_FADV_NOREUSE hint\nvalues for s390-64.  The user space values in the s390-64 glibc headers for\nthese two defines have always been 6 and 7 instead of 4 and 5.  All 64 bit\napplications therefore use the \"wrong\" values.  To get these applications\nworking without recompiling the kernel needs to accept the \"wrong\" values.\nSince the values for s390-31 are 4 and 5 the compat wrapper for fadvise64\nand fadvise64_64 need to rewrite the values for 31 bit system calls.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88bd5121d635136e01369141367f315665534b3c",
      "tree": "33de8dda3d77ebf7bf48864c464a36665f66497c",
      "parents": [
        "9a556e89081b0c1c2f83cee915363b15a68a6f2d"
      ],
      "author": {
        "name": "Anton Altaparmakov",
        "email": "aia21@cam.ac.uk",
        "time": "Wed Jul 13 01:10:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 13 11:25:24 2005 -0700"
      },
      "message": "[PATCH] Fix soft lockup due to NTFS: VFS part and explanation\n\nSomething has changed in the core kernel such that we now get concurrent\ninode write outs, one e.g via pdflush and one via sys_sync or whatever.\nThis causes a nasty deadlock in ntfs.  The only clean solution\nunfortunately requires a minor vfs api extension.\n\nFirst the deadlock analysis:\n\nPrerequisive knowledge: NTFS has a file $MFT (inode 0) loaded at mount\ntime.  The NTFS driver uses the page cache for storing the file contents as\nusual.  More interestingly this file contains the table of on-disk inodes\nas a sequence of MFT_RECORDs.  Thus NTFS driver accesses the on-disk inodes\nby accessing the MFT_RECORDs in the page cache pages of the loaded inode\n$MFT.\n\nThe situation: VFS inode X on a mounted ntfs volume is dirty.  For same\ninode X, the ntfs_inode is dirty and thus corresponding on-disk inode,\nwhich is as explained above in a dirty PAGE_CACHE_PAGE belonging to the\ntable of inodes ($MFT, inode 0).\n\nWhat happens:\n\nProcess 1: sys_sync()/umount()/whatever...  calls __sync_single_inode() for\n$MFT -\u003e do_writepages() -\u003e write_page for the dirty page containing the\non-disk inode X, the page is now locked -\u003e ntfs_write_mst_block() which\nclears PageUptodate() on the page to prevent anyone else getting hold of it\nwhilst it does the write out (this is necessary as the on-disk inode needs\n\"fixups\" applied before the write to disk which are removed again after the\nwrite and PageUptodate is then set again).  It then analyses the page\nlooking for dirty on-disk inodes and when it finds one it calls\nntfs_may_write_mft_record() to see if it is safe to write this on-disk\ninode.  This then calls ilookup5() to check if the corresponding VFS inode\nis in icache().  This in turn calls ifind() which waits on the inode lock\nvia wait_on_inode whilst holding the global inode_lock.\n\nProcess 2: pdflush results in a call to __sync_single_inode for the same\nVFS inode X on the ntfs volume.  This locks the inode (I_LOCK) then calls\nwrite-inode -\u003e ntfs_write_inode -\u003e map_mft_record() -\u003e read_cache_page() of\nthe page (in page cache of table of inodes $MFT, inode 0) containing the\non-disk inode.  This page has PageUptodate() clear because of Process 1\n(see above) so read_cache_page() blocks when tries to take the page lock\nfor the page so it can call ntfs_read_page().\n\nThus Process 1 is holding the page lock on the page containing the on-disk\ninode X and it is waiting on the inode X to be unlocked in ifind() so it\ncan write the page out and then unlock the page.\n\nAnd Process 2 is holding the inode lock on inode X and is waiting for the\npage to be unlocked so it can call ntfs_readpage() or discover that\nProcess 1 set PageUptodate() again and use the page.\n\nThus we have a deadlock due to ifind() waiting on the inode lock.\n\nThe only sensible solution: NTFS does not care whether the VFS inode is\nlocked or not when it calls ilookup5() (it doesn\u0027t use the VFS inode at\nall, it just uses it to find the corresponding ntfs_inode which is of\ncourse attached to the VFS inode (both are one single struct); and it uses\nthe ntfs_inode which is subject to its own locking so I_LOCK is irrelevant)\nhence we want a modified ilookup5_nowait() which is the same as ilookup5()\nbut it does not wait on the inode lock.\n\nWithout such functionality I would have to keep my own ntfs_inode cache in\nthe NTFS driver just so I can find ntfs_inodes independent of their VFS\ninodes which would be slow, memory and cpu cycle wasting, and incredibly\nstupid given the icache already exists in the VFS.\n\nBelow is a patch that does the ilookup5_nowait() implementation in\nfs/inode.c and exports it.\n\nilookup5_nowait.diff:\n\nIntroduce ilookup5_nowait() which is basically the same as ilookup5() but\nit does not wait on the inode\u0027s lock (i.e. it omits the wait_on_inode()\ndone in ifind()).\n\nThis is needed to avoid a nasty deadlock in NTFS.\n\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5995f16b4a464c8a57de7c9d5ddf4758dbacad41",
      "tree": "e26de11916f1f6234f954b262837501aca263da7",
      "parents": [
        "0399cb08c54708db231d616f106f64d920e0b723"
      ],
      "author": {
        "name": "Robert Love",
        "email": "rml@novell.com",
        "time": "Wed Jul 13 12:38:39 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 13 11:09:31 2005 -0700"
      },
      "message": "[PATCH] inotify: event ordering\n\nThis rearranges the event ordering for \"open\" to be consistent with the\nordering of the other events.\n\nSigned-off-by: Robert Love \u003crml@novell.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0399cb08c54708db231d616f106f64d920e0b723",
      "tree": "f0424d43c578f7c5c1e7aa6ea6ca1c906c7ac289",
      "parents": [
        "153f805781d35c91ab2f54aa2b8930cc4cfc7e89"
      ],
      "author": {
        "name": "Robert Love",
        "email": "rml@novell.com",
        "time": "Wed Jul 13 12:38:18 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 13 11:09:31 2005 -0700"
      },
      "message": "[PATCH] inotify: move sysctl\n\nThis moves the inotify sysctl knobs to \"/proc/sys/fs/inotify\" from\n\"/proc/sys/fs\".  Also some related cleanup.\n\nSigned-off-by: Robert Love \u003crml@novell.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0eeca28300df110bd6ed54b31193c83b87921443",
      "tree": "7db42d8a18d80eca538f5b7d25e0532b8fa38b85",
      "parents": [
        "bd4c625c061c2a38568d0add3478f59172455159"
      ],
      "author": {
        "name": "Robert Love",
        "email": "rml@novell.com",
        "time": "Tue Jul 12 17:06:03 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 20:38:38 2005 -0700"
      },
      "message": "[PATCH] inotify\n\ninotify is intended to correct the deficiencies of dnotify, particularly\nits inability to scale and its terrible user interface:\n\n        * dnotify requires the opening of one fd per each directory\n          that you intend to watch. This quickly results in too many\n          open files and pins removable media, preventing unmount.\n        * dnotify is directory-based. You only learn about changes to\n          directories. Sure, a change to a file in a directory affects\n          the directory, but you are then forced to keep a cache of\n          stat structures.\n        * dnotify\u0027s interface to user-space is awful.  Signals?\n\ninotify provides a more usable, simple, powerful solution to file change\nnotification:\n\n        * inotify\u0027s interface is a system call that returns a fd, not SIGIO.\n\t  You get a single fd, which is select()-able.\n        * inotify has an event that says \"the filesystem that the item\n          you were watching is on was unmounted.\"\n        * inotify can watch directories or files.\n\nInotify is currently used by Beagle (a desktop search infrastructure),\nGamin (a FAM replacement), and other projects.\n\nSee Documentation/filesystems/inotify.txt.\n\nSigned-off-by: Robert Love \u003crml@novell.com\u003e\nCc: John McCutchan \u003cttb@tentacle.dhs.org\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bd4c625c061c2a38568d0add3478f59172455159",
      "tree": "1c44a17c55bce2ee7ad5ea3d15a208ecc0955f74",
      "parents": [
        "7fa94c8868edfef8cb6a201fcc9a5078b7b961da"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 20:21:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 20:21:28 2005 -0700"
      },
      "message": "reiserfs: run scripts/Lindent on reiserfs code\n\nThis was a pure indentation change, using:\n\n\tscripts/Lindent fs/reiserfs/*.c include/linux/reiserfs_*.h\n\nto make reiserfs match the regular Linux indentation style.  As Jeff\nMahoney \u003cjeffm@suse.com\u003e writes:\n\n The ReiserFS code is a mix of a number of different coding styles, sometimes\n different even from line-to-line. Since the code has been relatively stable\n for quite some time and there are few outstanding patches to be applied, it\n is time to reformat the code to conform to the Linux style standard outlined\n in Documentation/CodingStyle.\n\n This patch contains the result of running scripts/Lindent against\n fs/reiserfs/*.c and include/linux/reiserfs_*.h. There are places where the\n code can be made to look better, but I\u0027d rather keep those patches separate\n so that there isn\u0027t a subtle by-hand hand accident in the middle of a huge\n patch. To be clear: This patch is reformatting *only*.\n\n A number of patches may follow that continue to make the code more consistent\n with the Linux coding style.\n\n Hans wasn\u0027t particularly enthusiastic about these patches, but said he\n wouldn\u0027t really oppose them either.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3f603ed319d5120e883e64ac5967b2fc848fc43b",
      "tree": "52ef311c245e4e4cd623b546ea1daf05a5ea8911",
      "parents": [
        "55ee3b8365fd5d301b9076eea739146f2b91e82c",
        "5028770a42e7bc4d15791a44c28f0ad539323807"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:04:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:04:50 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/lenb/linux-2.6\n"
    },
    {
      "commit": "67bc4eb0b1140a4bf364f2dcca152be659ed9057",
      "tree": "8dc373e0a622e80da888be3cc74932f33bb7485e",
      "parents": [
        "a2ac953d7c5c8ddbd01dfa0428b92497a69ad6ef"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jul 12 13:58:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:01:03 2005 -0700"
      },
      "message": "[PATCH] hardirq uses preempt\n\nhardirq.h uses preempt_count() from preempt.h\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "542d1c88bd7f73e2e59d41b12e4a9041deea89e4",
      "tree": "0968cf5c0695e74a0fa7357b6aa5083e10d9205d",
      "parents": [
        "7da6844cf7bc44dcda548a0a0aebf85f3a1c1485"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Tue Jul 12 13:58:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:01:02 2005 -0700"
      },
      "message": "[PATCH] tlb.h warning fix\n\nfree_pages_and_swap_cache() and free_page_and_swap_cache() use release_pages()\nand page_cache_release() respectively, so make sure that we have the\ndeclarations in scope.\n\nCc: Olaf Hering \u003colh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "08c6a96fd77836856c090ebb39beadc81cb8484d",
      "tree": "36e643a41179078abcb8a866894586cba9bbf7e0",
      "parents": [
        "5323125031799a7fd8602ce150c3902aedfdcba6"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Jul 12 13:58:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:01:01 2005 -0700"
      },
      "message": "[PATCH] ext3: fix options parsing\n\nFix a problem with ext3 mount option parsing.  When remount of a filesystem\nfails, old options are now restored.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d53d9f16ea95a91ad4aa114809dcde486ca4000d",
      "tree": "f9cacb8d23e209653c6af2d30791ee93593ceda3",
      "parents": [
        "22a4427972af371fddb49c0184a93851ad51070d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Tue Jul 12 13:58:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:00:58 2005 -0700"
      },
      "message": "[PATCH] name_to_dev_t warning fix\n\nkernel/power/disk.c needs a declaration of name_to_dev_t() in scope.  mount.h\nseems like an appropriate choice.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5028770a42e7bc4d15791a44c28f0ad539323807",
      "tree": "74800e35129775413c13ce7caf036ca19e3ce56c",
      "parents": [
        "9f02d6b7b43d46a74dd385f06090104ecd0fb807",
        "d8683a0cb5d09cb7f19feefa708424a84577e68f"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 17:21:56 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 17:21:56 2005 -0400"
      },
      "message": "[ACPI] merge acpi-2.6.12 branch into latest Linux 2.6.13-rc...\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9ffc7a0ebfcace0ed3eb77fb77e159f6f9443ec5",
      "tree": "4d4353bb6535aec7822ea71e594154979728e484",
      "parents": [
        "2824bd250f0be1551747cc3ed5ae07facc285b57",
        "f4637b55ba960d9987a836617271659e9b7b0de8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 13:16:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 13:16:40 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "ab611487d8ada506e511d2b8f22fb8e7be9939b9",
      "tree": "caa87031e209e8845f84209b69c6c8225def945f",
      "parents": [
        "84531c24f27b02daa8e54e2bb6dc74a730fdf0a5"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Jul 12 12:08:43 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 12 12:08:43 2005 -0700"
      },
      "message": "[NET]: __be\u0027ify *_type_trans()\n\ntr_type_trans(), hippi_type_trans() left as-is.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00ab997dd24fff82900665449f859e23a78ad5f4",
      "tree": "b9af59695b8c5c5350f8eb1aa0a216419d88768f",
      "parents": [
        "edfd6aee1f073ae645bd3e60ef96090fc9f0957b"
      ],
      "author": {
        "name": "david-b@pacbell.net",
        "email": "david-b@pacbell.net",
        "time": "Wed Jun 29 07:04:14 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jul 12 11:52:57 2005 -0700"
      },
      "message": "[PATCH] USB: another cdc descriptor\n\nThis adds another CDC descriptor type to \u003clinux/usb_cdc.h\u003e; the main claim\nto fame for this is that some Motorola phones include it.  It\u0027s not currently\nneeded by any driver code; included for completeness.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "5db539e49fc7471e23bf3c94ca304f008cb7b7f3",
      "tree": "5b6bdd7f27efdd5fcd7efffa9a612afece17f533",
      "parents": [
        "17f8bb7312fa9b00f80c3c0f8d5a5d698eb97bbd"
      ],
      "author": {
        "name": "Olav Kongas",
        "email": "ok@artecdesign.ee",
        "time": "Thu Jun 23 20:25:36 2005 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jul 12 11:52:56 2005 -0700"
      },
      "message": "[PATCH] USB: Fix kmalloc\u0027s flags type in USB\n\nGreg,\n\nThis patch fixes the kmalloc() flags argument type in USB\nsubsystem; hopefully all of its occurences. The patch was\nmade against patch-2.6.12-git2 from Jun 20.\n\nCleanup of flags for kmalloc() in USB subsystem.\n\nSigned-off-by: Olav Kongas \u003cok@artecdesign.ee\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c9c3e457de24cca2ca688fa397d93a241f472048",
      "tree": "570b7a07f9c6f570341481500a2bff21c1328d8d",
      "parents": [
        "acf05f4b7f558051ea0028e8e617144123650272"
      ],
      "author": {
        "name": "David Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Apr 01 00:07:31 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 00:03:30 2005 -0400"
      },
      "message": "[ACPI] PNPACPI vs sound IRQ\n\nhttp://bugme.osdl.org/show_bug.cgi?id\u003d4016\n\nWritten-by: David Shaohua Li \u003cshaohua.li@intel.com\u003e\nAcked-by: Adam Belay \u003cabelay@novell.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "55e59c511cea3c6c721971467c707e9955922bc2",
      "tree": "1dc3b66be2e71881167b7ba9259b291484567b01",
      "parents": [
        "6940fabaa35b893163b7043d0d1dc5d715f9e1ca"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Thu Mar 31 22:51:10 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 00:01:41 2005 -0400"
      },
      "message": "[ACPI] Evaluate CPEI Processor Override flag\n\nACPI 3.0 added a Correctable Platform Error Interrupt (CPEI)\nProcessor Overide flag to MADT.Platform_Interrupt_Source.\nRecord the processor that was provided as hint from ACPI.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "4e10d12a3d88c88fba3258809aa42d14fd8cf1d1",
      "tree": "195f69e8e25dec0f7344aab2bbdb353b9639df79",
      "parents": [
        "fb9802fa59b196d7f90bb3c2e33c555c6bdc4c54"
      ],
      "author": {
        "name": "David Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Mar 18 18:45:35 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Mon Jul 11 23:28:24 2005 -0400"
      },
      "message": "[ACPI] Bind PCI devices with ACPI devices\n\nImplement the framework for binding physical devices\nwith ACPI devices. A physical bus like PCI bus\nshould create a \u0027acpi_bus_type\u0027, with:\n\n.find_device:\n        For device which has parent such as normal PCI devices.\n\n.find_bridge:\n        It\u0027s for special devices, such as PCI root bridge\n\tor IDE controller.  Such devices generally haven\u0027t a\n\tparent or -\u003ebus. We use the special method\n\tto get an ACPI handle.\n\nUses new field in struct device: firmware_data\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d4277\n\nSigned-off-by: David Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "e2a5b420f716cd1a46674b1a90389612eced916f",
      "tree": "96f363f2e402d53428c046269514a82856b0cb34",
      "parents": [
        "be91492ca871e58f61b517cfba541095bb60001c"
      ],
      "author": {
        "name": "Alexey Starikovskiy",
        "email": "alexey.y.starikovskiy@intel.com",
        "time": "Fri Mar 18 16:20:46 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Mon Jul 11 23:20:49 2005 -0400"
      },
      "message": "[ACPI] ACPI poweroff fix\n\nRegister an \"acpi\" system device to be notified of shutdown preparation.\nThis depends on CONFIG_PM\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d4041\n\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "63522f7fdb624adef20cb9d90c7effcd5b6301b2",
      "tree": "12a63b8ce77baffc08f577be913bea02132f9812",
      "parents": [
        "200d481f28be4522464bb849dd0eb5f8cb6be781"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 11 14:29:11 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 11 14:29:11 2005 -0700"
      },
      "message": "[NETLINK]: Reserve NETLINK_NETFILTER.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "200d481f28be4522464bb849dd0eb5f8cb6be781",
      "tree": "8cd00ead1b202dfd377cf34000a5193959aa2e8b",
      "parents": [
        "f43a64c5e1a65d12b9b53a35ed2d5db441fcb64c",
        "97f927a4d7dbccde0a854a62c3ea54d90bae8679"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 11 10:18:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 11 10:18:18 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/tglx/mtd-2.6\n"
    },
    {
      "commit": "f7ceba360cce9af3fbc4e5a5b1bd40b570b7021c",
      "tree": "1d138496048bbf5851cd60dee7acb912cffc6971",
      "parents": [
        "8d8a64796fdee4e20355c6c12c9cc630a2e7494d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 10 19:29:45 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 10 19:29:45 2005 -0700"
      },
      "message": "[SPARC64]: Add syscall auditing support.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d369ddd2fc00fc3f46e9052d1017cbf407e3cdf7",
      "tree": "e7c91ce6639064462cb831dd0c48b9b93cad68d4",
      "parents": [
        "9126dfde9e5efd76f9d4246819bdc7ea66de3af0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 10 15:45:11 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 10 15:45:11 2005 -0700"
      },
      "message": "[SPARC64]: Add __read_mostly support.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ca9b907d140a5f249250d19f956129dbbbf84f73",
      "tree": "48f26110e23634f17d9c73e7a5a7b4239ffcd589",
      "parents": [
        "4c866aa798bc6de0a1d45495229e9f13c35b55c2"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Fri Jul 08 17:38:07 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 17:38:07 2005 -0700"
      },
      "message": "[IPV4]: multicast API \"join\" issues\n\n        This patch corrects a few problems with the IP_ADD_MEMBERSHIP\nsocket option:\n\n1) The existing code makes an attempt at reference counting joins when\n   using the ip_mreqn/imr_ifindex interface. Joining the same group\n   on the same socket is an error, whatever the API. This leads to\n   unexpected results when mixing ip_mreqn by index with ip_mreqn by\n   address, ip_mreq, or other API\u0027s. For example, ip_mreq followed by\n   ip_mreqn of the same group will \"work\" while the same two reversed\n   will not.\n           Fixed to always return EADDRINUSE on a duplicate join and\n   removed the (now unused) reference count in ip_mc_socklist.\n\n2) The group-search list in ip_mc_join_group() is comparing a full \n   ip_mreqn structure and all of it must match for it to find the\n   group. This doesn\u0027t correctly match a group that was joined with\n   ip_mreq or ip_mreqn with an address (with or without an index). It\n   also doesn\u0027t match groups that are joined by different addresses on\n   the same interface. All of these are the same multicast group,\n   which is identified by group address and interface index.\n           Fixed the check to correctly match groups so we don\u0027t get\n   duplicate group entries on the ip_mc_socklist.\n\n3) The old code allocates a multicast address before searching for\n   duplicates requiring it to free in various error cases. This\n   patch moves the allocate until after the search and\n   igmp_max_memberships check, so never a need to allocate, then free\n   an entry.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86a76caf8705e3524e15f343f3c4806939a06dc8",
      "tree": "ac2022a6073b5af228e009178048bdab070d2230",
      "parents": [
        "b03efcfb2180289718991bb984044ce6c5b7d1b0"
      ],
      "author": {
        "name": "Victor Fusco",
        "email": "victor@cetuc.puc-rio.br",
        "time": "Fri Jul 08 14:57:47 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 14:57:47 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nFrom: Victor Fusco \u003cvictor@cetuc.puc-rio.br\u003e\n\nFix the sparse warning \"implicit cast to nocast type\"\n\nSigned-off-by: Victor Fusco \u003cvictor@cetuc.puc-rio.br\u003e\nSigned-off-by: Domen Puncer \u003cdomen@coderock.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4c4cd222ee329025840bc2f8cebf71d36c62440c",
      "tree": "70d1d8e754e7ab7226a6eee6afeab8b892072600",
      "parents": [
        "3a4f98bbf481cb9f755005ac569ceb5303e1b69f"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:11 2005 -0700"
      },
      "message": "[PATCH] nfsd4: check lock type against openmode.\n\nWe shouldn\u0027t be allowing, e.g., write locks on files not open for read.  To\nenforce this, we add a pointer from the lock stateid back to the open stateid\nit came from, so that the check will continue to be correct even after the\nopen is upgraded or downgraded.\n\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b700949b781480819e53bdc38a53f053226dd75e",
      "tree": "1e09ac2b3e4c39e7167d4780f21ebaa416a1092a",
      "parents": [
        "444c2c07c2d7a6936d1381d381ab80e3f5541427"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: return better error on io incompatible with open mode\n\nfrom RFC 3530:\n\"Share reservations are established by OPEN operations and by their\nnature are mandatory in that when the OPEN denies READ or WRITE\noperations, that denial results in such operations being rejected\nwith error NFS4ERR_LOCKED.\"\n\n(Note that share_denied is really only a legal error for OPEN.)\n\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7fb64cee34f5dc743f697041717cafda8a94b5ac",
      "tree": "5b4e7b67cff7d64a46024036d0033f0d3e05b857",
      "parents": [
        "bd9aac523b812d58e644fde5e59f5697fb9e3822"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:20 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:09 2005 -0700"
      },
      "message": "[PATCH] nfsd4: seqid comments\n\nAdd some comments on the use of so_seqid, in an attempt to avoid some of the\nconfusion outlined in the previous patch....\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6ccbbb8865101d83c2e716f08feae1da1c48584",
      "tree": "0b55b0673704dcae39d614cb1495cf47590628fb",
      "parents": [
        "463090294e1e460cf97f5ade376d4b1e62bc5263"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Jul 07 17:59:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:24:07 2005 -0700"
      },
      "message": "[PATCH] nfsd4: fix sync\u0027ing of recovery directory\n\nWe need to fsync the recovery directory after writing to it, but we weren\u0027t\ndoing this correctly.  (For example, we weren\u0027t taking the i_sem when calling\n-\u003efsync().)\n\nJust reuse the existing nfsd fsync code instead.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "751c404b8f63e8199d5f2f8f2bcfd69b41d11caa",
      "tree": "d69c76ceadbaa6f5ca3fd7be881201e87ef93377",
      "parents": [
        "55e700b924f9e0ba24e3a071d1097d050b05abe6"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu Jul 07 17:57:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:52 2005 -0700"
      },
      "message": "[PATCH] namespace: rename _mntput to mntput_no_expire\n\nThis patch renames _mntput() to something a little more descriptive:\nmntput_no_expire().\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "55e700b924f9e0ba24e3a071d1097d050b05abe6",
      "tree": "36a5d2401211c8fe27f6210c6fddb6db699b8015",
      "parents": [
        "732dbef606f22a23cb3e1029d613977ec645e8ae"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu Jul 07 17:57:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:52 2005 -0700"
      },
      "message": "[PATCH] namespace: rename mnt_fslink to mnt_expire\n\nThis patch renames vfsmount-\u003emnt_fslink to something a little more\ndescriptive: vfsmount-\u003emnt_expire.\n\nSigned-off-by: Mike Waychison \u003cmichael.waychison@sun.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1ce88cf466f7b6078b14d67d186a3d7c19dd5609",
      "tree": "b9716f3a71e3285a998da9614cfbc132ca605542",
      "parents": [
        "202322e6f7cd12e82b5ff0fa92bbdf517fcf0947"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu Jul 07 17:57:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:51 2005 -0700"
      },
      "message": "[PATCH] namespace.c: fix race in mark_mounts_for_expiry()\n\nThis patch fixes a race found by Ram in mark_mounts_for_expiry() in\nfs/namespace.c.\n\nThe bug can only be triggered with simultaneous exiting of a process having\na private namespace, and expiry of a mount from within that namespace.\nIt\u0027s practically impossible to trigger, and I haven\u0027t even tried.  But\nstill, a bug is a bug.\n\nThe race happens when put_namespace() is called by another task, while\nmark_mounts_for_expiry() is between atomic_read() and get_namespace().  In\nthat case get_namespace() will be called on an already dead namespace with\nunforeseeable results.\n\nThe solution was suggested by Al Viro, with his own words:\n\n      Instead of screwing with atomic_read() in there, why don\u0027t we\n      simply do the following:\n      \ta) atomic_dec_and_lock() in put_namespace()\n      \tb) __put_namespace() called without dropping lock\n      \tc) the first thing done by __put_namespace would be\n      struct vfsmount *root \u003d namespace-\u003eroot;\n      namespace-\u003eroot \u003d NULL;\n      spin_unlock(...);\n      ....\n      umount_tree(root);\n      ...\n      \td) check in mark_... would be simply namespace \u0026\u0026 namespace-\u003eroot.\n\n      And we are all set; no screwing around with atomic_read(), no magic\n      at all.  Dying namespace gets NULL -\u003eroot.\n      All changes of -\u003eroot happen under spinlock.\n      If under a spinlock we see non-NULL -\u003emnt_namespace, it won\u0027t be\n      freed until we drop the lock (we will set -\u003emnt_namespace to NULL\n      under that lock before we get to freeing namespace).\n      If under a spinlock we see non-NULL -\u003emnt_namespace and\n      -\u003emnt_namespace-\u003eroot, we can grab a reference to namespace and be\n      sure that it won\u0027t go away.\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nAcked-by: Al Viro \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6c036527a630720063b67d9a65455e8caca2c8fa",
      "tree": "316e947f5f4efcda0205e48044ed1d12665eaed1",
      "parents": [
        "0db925af1db5f3dfe1691c35b39496e2baaff9c9"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "christoph@lameter.com",
        "time": "Thu Jul 07 17:56:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:46 2005 -0700"
      },
      "message": "[PATCH] mostly_read data section\n\nAdd a new section called \".data.read_mostly\" for data items that are read\nfrequently and rarely written to like cpumaps etc.\n\nIf these maps are placed in the .data section then these frequenly read\nitems may end up in cachelines with data is is frequently updated.  In that\ncase all processors in an SMP system must needlessly reload the cachelines\nagain and again containing elements of those frequently used variables.\n\nThe ability to share these cachelines will allow each cpu in an SMP system\nto keep local copies of those shared cachelines thereby optimizing\nperformance.\n\nSigned-off-by: Alok N Kataria \u003calokk@calsoftinc.com\u003e\nSigned-off-by: Shobhit Dayal \u003cshobhit@calsoftinc.com\u003e\nSigned-off-by: Christoph Lameter \u003cchristoph@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0db925af1db5f3dfe1691c35b39496e2baaff9c9",
      "tree": "bb9f827fa001b27f7a902abf174e8f0057c9df81",
      "parents": [
        "b84c21572de8a732062eff5592e3c4b3b1793bb8"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Jul 07 17:56:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:46 2005 -0700"
      },
      "message": "[PATCH] propagate __nocast annotations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a39722034ae37f80a1803bf781fe3fe1b03e20bc",
      "tree": "fb7ef719d745e28678d73f884108f4cb2ef79171",
      "parents": [
        "d6afe27bfff30fbec2cca6ad5626c22f4094d770"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Thu Jul 07 17:56:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:45 2005 -0700"
      },
      "message": "[PATCH] page_uptodate locking scalability\n\nUse a bit spin lock in the first buffer of the page to synchronise asynch\nIO buffer completions, instead of the global page_uptodate_lock, which is\nshowing some scalabilty problems.\n\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e00d9967e3addea86dded46deefc5daec5d52e5a",
      "tree": "bd6f4fba60ac6173f6e8e4a61461c74c06e3fc9a",
      "parents": [
        "2a569579be87b5ba61f9b6c54fd5f9f307c53962"
      ],
      "author": {
        "name": "Bernard Blackham",
        "email": "bernard@blackham.com.au",
        "time": "Thu Jul 07 17:56:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:43 2005 -0700"
      },
      "message": "[PATCH] pm: fix u32 vs. pm_message_t confusion in cpufreq\n\nFix u32 vs pm_message_t confusion in cpufreq.\n\nSigned-off-by: Bernard Blackham \u003cbernard@blackham.com.au\u003e\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cf36680887d6d942d2119c1ff1dfb2428b0f21f4",
      "tree": "1290244377993179daabe5f2e0f3f636fbafbc47",
      "parents": [
        "8dc4fd87f229414fc38648508aad7def2275fe81"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Thu Jul 07 17:56:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:37 2005 -0700"
      },
      "message": "[PATCH] move ioprio syscalls into syscalls.h\n\n- Make ioprio syscalls return long, like set/getpriority syscalls.\n- Move function prototypes into syscalls.h so we can pick them up in the\n  32/64bit compat code.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "79b9ce311e192e9a31fd9f3cf1ee4a4edf9e2650",
      "tree": "210896405b2b70aded7582750e20967df8c8e7bf",
      "parents": [
        "cb2c0233755429037462e16ea0d5497a0092738c"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "marcelo.tosatti@cyclades.com",
        "time": "Thu Jul 07 17:56:04 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:35 2005 -0700"
      },
      "message": "[PATCH] print order information when OOM killing\n\nDump the current allocation order when OOM killing.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cb2c0233755429037462e16ea0d5497a0092738c",
      "tree": "49c5d19090986c71b59dd2fb4c57b1e1ae33062d",
      "parents": [
        "ca3f5a95b7d04eef0f88464f8d3299c1c01e8e13"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mark.fasheh@oracle.com",
        "time": "Thu Jul 07 17:56:03 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:35 2005 -0700"
      },
      "message": "[PATCH] export generic_drop_inode() to modules\n\nOCFS2 wants to mark an inode which has been orphaned by another node so\nthat during final iput it takes the correct path through the VFS and can\npass through the OCFS2 delete_inode callback.  Since i_nlink can get out of\ndate with other nodes, the best way I see to accomplish this is by clearing\ni_nlink on those inodes at drop_inode time.  Other than this small amount\nof work, nothing different needs to happen, so I think it would be cleanest\nto be able to just call generic_drop_inode at the end of the OCFS2\ndrop_inode callback.\n\nSigned-off-by: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "97f927a4d7dbccde0a854a62c3ea54d90bae8679",
      "tree": "d571cdae6507be90d4ee67d4937b765e2b332d77",
      "parents": [
        "b9c86d595d2a11009c58c84a9a8792aeb4a8f278"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@tglx.tec.linutronix.de",
        "time": "Thu Jul 07 16:50:16 2005 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Thu Jul 07 16:50:16 2005 +0200"
      },
      "message": "[MTD] XIP cleanup\n\nMove the architecture dependend code into include/asm/mtd-xip.h\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "359ea2f1352a77177540a213283bc7489f546ced",
      "tree": "95a313a9d920e432bafcdf68a9c7fb0812aa389b",
      "parents": [
        "960b8466548c9bc6f718b5f470c1a58000fab09d",
        "e1d5dea1dfbfe484358c40db7f233ed6b5605646"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 06 17:04:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 06 17:04:06 2005 -0700"
      },
      "message": "Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "fbdae9f3e7fb57c07cb0d973f113eb25da2e8ff2",
      "tree": "b20909c92c2d48ab449343967b1c365732d7e4ff",
      "parents": [
        "176c3652c544b6f8d4bb1984c58c10080f45dbf0"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 06 13:53:29 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 06 13:53:29 2005 -0700"
      },
      "message": "[CRYPTO] Ensure cit_iv is aligned correctly\n\nThis patch ensures that cit_iv is aligned according to cra_alignmask\nby allocating it as part of the tfm structure.  As a side effect the\ncrypto layer will also guarantee that the tfm ctx area has enough space\nto be aligned by cra_alignmask.  This allows us to remove the extra\nspace reservation from the Padlock driver.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95477377995aefa2ec1654a9a3777bd57ea99146",
      "tree": "7aa4d6173de13c81c2fa0e4d2f9e0de22e141b6a",
      "parents": [
        "40725181b74be6b0e3bdc8c05bd1e0b9873ec5cc"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 06 13:52:09 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 06 13:52:09 2005 -0700"
      },
      "message": "[CRYPTO] Add alignmask for low-level cipher implementations\n\nThe VIA Padlock device requires the input and output buffers to\nbe aligned on 16-byte boundaries.  This patch adds the alignmask\nattribute for low-level cipher implementations to indicate their\nalignment requirements.\n\nThe mid-level crypt() function will copy the input/output buffers\nif they are not aligned correctly before they are passed to the\nlow-level implementation.\n\nStrictly speaking, some of the software implementations require\nthe buffers to be aligned on 4-byte boundaries as they do 32-bit\nloads.  However, it is not clear whether it is better to copy\nthe buffers or pay the penalty for unaligned loads/stores.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "40725181b74be6b0e3bdc8c05bd1e0b9873ec5cc",
      "tree": "abbc1057a5e0bd77385d17cfc6146617151e93bc",
      "parents": [
        "c774e93e2152d0be2612739418689e6e6400f4eb"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 06 13:51:52 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 06 13:51:52 2005 -0700"
      },
      "message": "[CRYPTO] Add support for low-level multi-block operations\n\nThis patch adds hooks for cipher algorithms to implement multi-block\nECB/CBC operations directly.  This is expected to provide significant\nperformance boots to the VIA Padlock.\n\nIt could also be used for improving software implementations such as\nAES where operating on multiple blocks at a time may enable certain\noptimisations.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e6557722e69840506eb8bc5a1edcdb4e447a917",
      "tree": "965d19e55a56d2daaed47711c01a8c27e29e592c",
      "parents": [
        "159f597a8bd0f1d7650d5e580c93a2666c9c26d1"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Wed Jul 06 15:44:41 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 06 12:55:20 2005 -0700"
      },
      "message": "[PATCH] openfirmware: generate device table for userspace\n\nThis converts the usage of struct of_match to struct of_device_id,\nsimilar to pci_device_id.  This allows a device table to be generated,\nwhich can be parsed by depmod(8) to generate a map file for module\nloading.\n\nIn order for hotplug to work with macio devices, patches to\nmodule-init-tools and hotplug must be applied.  Those patches are\navailable at:\n\n ftp://ftp.suse.com/pub/people/jeffm/linux/macio-hotplug/\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3539219c9ea20ebf6a5ea3cc534f423a3607c41",
      "tree": "d17c31c0eac0a7290ba5011b59a100fd9e9c9532",
      "parents": [
        "6430a8def12edebc1c9c7c2621d33ca0e8653c33",
        "a18bcb7450840f07a772a45229de4811d930f461"
      ],
      "author": {
        "name": "Artem B. Bityuckiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Jul 06 15:43:18 2005 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Wed Jul 06 19:40:38 2005 +0200"
      },
      "message": "Merge with rsync://fileserver/linux\n\nUpdate to 2.6.12-rc3\n"
    },
    {
      "commit": "6772926bef3c9f0ec761b39e5702535471fff70b",
      "tree": "b55f1b7af51e10c54781e24b5472236323d24ee5",
      "parents": [
        "4b1294f928d9396e45f62b1c306ac8bf9fae036b"
      ],
      "author": {
        "name": "Rusty Lynch",
        "email": "rusty.lynch@intel.com",
        "time": "Tue Jul 05 18:54:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 19:19:00 2005 -0700"
      },
      "message": "[PATCH] kprobes: fix namespace problem and sparc64 build\n\nThe following renames arch_init, a kprobes function for performing any\narchitecture specific initialization, to arch_init_kprobes in order to\ncleanup the namespace.\n\nAlso, this patch adds arch_init_kprobes to sparc64 to fix the sparc64 kprobes\nbuild from the last return probe patch.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5432ebb5f67f0be3264feb646f6f8f6c326899c9",
      "tree": "4a44975a8005fc67d7eca913eaed379bd3d49c8a",
      "parents": [
        "d06e7a56d91328267a96b1a4df4ede7529f829e8",
        "b2f571026594884e7a2a3f8bc6ad5c92e0703330"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 18:41:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 18:41:58 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "c1b4a7e69576d65efc31a8cea0714173c2841244",
      "tree": "92082532651cddc6f0649a9d7ca9ca63e381d310",
      "parents": [
        "0d9901df62fe4820aee86b49f1a074cdb5c6928e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 15:24:38 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 15:24:38 2005 -0700"
      },
      "message": "[TCP]: Move to new TSO segmenting scheme.\n\nMake TSO segment transmit size decisions at send time not earlier.\n\nThe basic scheme is that we try to build as large a TSO frame as\npossible when pulling in the user data, but the size of the TSO frame\noutput to the card is determined at transmit time.\n\nThis is guided by tp-\u003exmit_size_goal.  It is always set to a multiple\nof MSS and tells sendmsg/sendpage how large an SKB to try and build.\n\nLater, tcp_write_xmit() and tcp_push_one() chop up the packet if\nnecessary and conditions warrant.  These routines can also decide to\n\"defer\" in order to wait for more ACKs to arrive and thus allow larger\nTSO frames to be emitted.\n\nA general observation is that TSO elongates the pipe, thus requiring a\nlarger congestion window and larger buffering especially at the sender\nside.  Therefore, it is important that applications 1) get a large\nenough socket send buffer (this is accomplished by our dynamic send\nbuffer expansion code) 2) do large enough writes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc971dee6ece1fd0d431948924becd9c50e7b778",
      "tree": "e1f500970d3397adc14c4a286b81f8375f333af0",
      "parents": [
        "2f36895aa774cf4d1c3d68921e0209e796b66600"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Jul 05 15:03:46 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 15:03:46 2005 -0700"
      },
      "message": "[SHAPER]: Switch to spinlocks.\n\nDave, you were right and the sleeping locks in shaper were\nbroken. Markus Kanet noticed this and also tested the patch below that\nswitches locking to spinlocks.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "d06e7a56d91328267a96b1a4df4ede7529f829e8",
      "tree": "b8034a35c50986d93cb7c0f691f9471bc27b74d1",
      "parents": [
        "346fced899c7390e555cf90cd07d1e56b460d21b",
        "864ae180074931f3a28c84ea85aa8cfeca18bc4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 14:17:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 14:17:40 2005 -0700"
      },
      "message": "Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n"
    },
    {
      "commit": "1cbb3380ef683f742876f48e3739b3df4ea9e168",
      "tree": "f1c65a6325068ea7baeec716adea5176cdbe6f20",
      "parents": [
        "e176fe8954a5239c24afe79b1001ba3c29511963"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Tue Jul 05 14:13:41 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 14:13:41 2005 -0700"
      },
      "message": "[NET]: Reduce size of sk_buff by 4 bytes\n\nReduce local_df to a bit field and ip_summed to a 2 bits\nfield thus saving 13 bits. Move bit fields, packet type,\nand protocol into the spare area between the priority\nand the destructor. Saves 4 bytes on both, 32bit and\n64bit architectures.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e176fe8954a5239c24afe79b1001ba3c29511963",
      "tree": "418038ddda59950ac83decb708f25cd612d0ffe0",
      "parents": [
        "3154e540e374bbfd62693d95bc8ed51da95efe75"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Tue Jul 05 14:12:44 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 14:12:44 2005 -0700"
      },
      "message": "[NET]: Remove unused security member in sk_buff\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55820ee2f8c767a2833b21bd365e5753f50bd8ce",
      "tree": "fbf89b8f1365c18c5c2ee0fad15f61f6f3127af8",
      "parents": [
        "17af691cd19765b782d891fc50c1568d0f1276b3"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 05 14:08:10 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 14:08:10 2005 -0700"
      },
      "message": "[NET]: Fix signedness issues in net/core/filter.c\n\nThis is the code to load packet data into a register:\n\n                        k \u003d fentry-\u003ek;\n                        if (k \u003c 0) {\n...\n                        } else {\n                                u32 _tmp, *p;\n                                p \u003d skb_header_pointer(skb, k, 4, \u0026_tmp);\n                                if (p !\u003d NULL) {\n                                        A \u003d ntohl(*p);\n                                        continue;\n                                }\n                        }\n\nskb_header_pointer checks if the requested data is within the\nlinear area:\n\n        int hlen \u003d skb_headlen(skb);\n\n        if (offset + len \u003c\u003d hlen)\n                return skb-\u003edata + offset;\n\nWhen offset is within [INT_MAX-len+1..INT_MAX] the addition will\nresult in a negative number which is \u003c\u003d hlen.\n\nI couldn\u0027t trigger a crash on my AMD64 with 2GB of memory, but a\ncoworker tried on his x86 machine and it crashed immediately.\n\nThis patch fixes the check in skb_header_pointer to handle large\npositive offsets similar to skb_copy_bits. Invalid data can still\nbe accessed using negative offsets (also similar to skb_copy_bits),\nanyone using negative offsets needs to verify them himself.\n\nThanks to Thomas Vögtle \u003cthomas.voegtle@coreworks.de\u003e for verifying the\nproblem by crashing his machine and providing me with an Oops.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "346fced899c7390e555cf90cd07d1e56b460d21b",
      "tree": "4732fbdfc3bd40b5a2fd888bb741f42730e7c74d",
      "parents": [
        "17af691cd19765b782d891fc50c1568d0f1276b3",
        "43a6b76050aa137c51d00eec91d67ac43ac3846e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 11:35:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 05 11:35:58 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6\n"
    },
    {
      "commit": "e7270dec080002d8aa18256c756af6c32331ef48",
      "tree": "5f00f1e682b1423d9fcb31500a53c598dbba7e0a",
      "parents": [
        "19f7241a3b087bbf4dd107c979608fdb56c83a09"
      ],
      "author": {
        "name": "Raphael Assenat",
        "email": "raph@raphnet.net",
        "time": "Mon Jul 04 13:23:45 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 04 13:23:45 2005 -0700"
      },
      "message": "[SPARC64/COMPAT]: Add some compat ioctl for ppdev\n\nThe following patch adds some ioctls to include/linux/compat_ioctl.h\nto allow using ppdev from the 32 bit user space on sparc64.\n\nThis patch also adds the PPDEV option in the sparc64 menu, near Parallel\nprinter support in the \u0027General machine setup\u0027 submenu.\n\nAll those ioctls seem to be compatible, since (correct me if I\u0027m wrong)\nthey dont use the \u0027long\u0027 type. See include/linux/ppdev.h.\n\nThe application I used to test the new ioctls only used the following:\nPPEXCL\nPPCLAIM\nPPNEGOT\nPPGETMODES\nPPRCONTROL\nPPWCONTROL\nPPDATADIR\nPPWDATA\nPPRDATA\n\nBut I beleive that the other ioctls will work fine.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21e2c01dc3e38d466eda5871645878d2c3a33261",
      "tree": "a2a4fb15b2295e635de9f734f720f783c97a6513",
      "parents": [
        "13bbbf28fb914da6707aad44a073651f5c9d13a5"
      ],
      "author": {
        "name": "Rob Punkunus",
        "email": "rpunkunus@nvidia.com",
        "time": "Sun Jul 03 17:37:18 2005 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@elka.pw.edu.pl",
        "time": "Sun Jul 03 17:37:18 2005 +0200"
      },
      "message": "[PATCH] amd74xx: support MCP55 device IDs\n\nFrom: Rob Punkunus \u003crpunkunus@nvidia.com\u003e\n\nRob Punkunus recently submitted a patch to enable support for MCP51/MCP55 in\nthe amd74xx driver. This patch was whitespace-corrupted and didn\u0027t apply to\n2.6.12 since MCP51 support was merged in the 2.6.12-rc series.\n\nGentoo would like to support this hardware for our upcoming release media, so\nI fixed the patch, and here it is :)\n\nSigned-off-by: Daniel Drake \u003cdsd@gentoo.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@elka.pw.edu.pl\u003e"
    },
    {
      "commit": "75865858971add95809c5c9cd35dc4cfba08e33b",
      "tree": "e8b3fe78e15696f36156d1f94d35b7711590365f",
      "parents": [
        "299de0343c7d18448a69c635378342e9214b14af"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jun 30 02:18:12 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jul 01 13:35:50 2005 -0700"
      },
      "message": "[PATCH] PCI: clean up dynamic pci id logic\n\nThe dynamic pci id logic has been bothering me for a while, and now that\nI started to look into how to move some of this to the driver core, I\nthought it was time to clean it all up.\n\nIt ends up making the code smaller, and easier to follow, and fixes a\nfew bugs at the same time (dynamic ids were not being matched\neverywhere, and so could be missed on some call paths for new devices,\nsemaphore not needed to be grabbed when adding a new id and calling the\ndriver core, etc.)\n\nI also renamed the function pci_match_device() to pci_match_id() as\nthat\u0027s what it really does.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a03fa955576af50df80bec9127b46ef57e0877c0",
      "tree": "dc13df100ead9efae7b370b435b58bca4736ae39",
      "parents": [
        "26f674ae0e37190bf61c988e52911e4372fdb5f5"
      ],
      "author": {
        "name": "rajesh.shah@intel.com",
        "email": "rajesh.shah@intel.com",
        "time": "Thu Jun 02 15:41:48 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jul 01 13:35:49 2005 -0700"
      },
      "message": "[PATCH] PCI: Increase the number of PCI bus resources\n\nThis patch increases the number of resource pointers in the\npci_bus structure. This is needed to store \u003e4 resource ranges\nfor host bridges and transparent PCI bridges. With this change,\nall PCI buses will have more resource pointers, but most PCI\nbuses will only use the first 3 or 4, the remaining being NULL.\nThe PCI core already deals with this correctly.\n\nSigned-off-by: Rajesh Shah \u003crajesh.shah@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "23d3d602cb96addd3c1158424fb01a49ea5e81b1",
      "tree": "2daa85579c964bfe3d1a91fe365d202b8f38422b",
      "parents": [
        "afdce75f1eaebcf358b7594ba7969aade105c3b0"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jun 22 16:09:05 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jun 29 22:48:04 2005 -0700"
      },
      "message": "[PATCH] driver core: change bus_rescan_devices to return void\n\nNo one was looking at the return value of bus_rescan_devices, and it\nreally wasn\u0027t anything that anyone in the kernel would ever care about.\nSo change it which enabled some counting code to be removed also.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0edb586049e57c56e625536476931117a57671e9",
      "tree": "9d92bb9821d134d199d62de1ff3096ff2b73fdc7",
      "parents": [
        "fd782a4a99d2d3e818b9465c427b10f7f027d7da"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cohuck@de.ibm.com",
        "time": "Wed Jun 22 16:59:51 2005 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jun 29 22:48:03 2005 -0700"
      },
      "message": "[PATCH] driver core: add bus_find_device \u0026 driver_find_device functions\n\nAdd bus_find_device() and driver_find_device() which allow searching for a\ndevice in the bus\u0027s resp. the driver\u0027s klist and obtain a reference on it.\n\nSigned-off-by: Cornelia Huck \u003ccohuck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bfabb98688e7089381baa0974f7ff6786ce2a2d0",
      "tree": "a50b6e9bf90b6a2524b135f50831bfff8f38802a",
      "parents": [
        "be76c5fb406fad93ab93ba39e7858e03d58c5d30"
      ],
      "author": {
        "name": "Sean Young",
        "email": "sean@mess.org",
        "time": "Mon Jun 13 14:08:48 2005 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Wed Jun 29 14:21:36 2005 +0200"
      },
      "message": "[MTD] Use correct major number for INFTL\n\ninftl was assigned new major number 96, 94 is in use by dasd. See:\nhttp://www.ussg.iu.edu/hypermail/linux/kernel/0409.2/1220.html\n\nSigned-off-by: Sean Young \u003csean@mess.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "02b15e343aeefb49f8cac949be599d78250a568f",
      "tree": "c9316c3d91fd79d67b2e6b7eadea5c92723355d9",
      "parents": [
        "0dfc62465ef92c7ddcb1ba223bf062453566fd0f"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "tpoynor@mvista.com",
        "time": "Tue Jun 07 00:04:39 2005 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Wed Jun 29 14:18:40 2005 +0200"
      },
      "message": "[MTD] XIP for AMD CFI flash.\n\nAuthor: Vitaly Wool \u003cvwool@ru.mvista.com\u003e\nSigned-off-by: Todd Poynor \u003ctpoynor@mvista.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "0dfc62465ef92c7ddcb1ba223bf062453566fd0f",
      "tree": "0156e9b9996cf43dd67ceed53a2b8da0a516cdec",
      "parents": [
        "7ca6448dbfb398bba36eda3c01bc14b86c3675be"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 31 20:39:20 2005 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@mtd.linutronix.de",
        "time": "Wed Jun 29 14:15:17 2005 +0200"
      },
      "message": "[MTD] NAND: Reorganize chip locking\n\nThe code was wrong in several aspects. The locking order was\ninconsistent, the device aquire code did not reset a variable\nafter a wakeup and the wakeup handling was not working for\napplications where multiple chips are sharing a single\nhardware controller.\nWhen a hardware controller is available the locking is now\nreduced to the hardware controller lock and the waitqueue is\nmoved to the hardware controller structure in order to avoid\na wake_up_all().\n\nThe problem was pointed out by Ben Dooks, who also found the\nmissing variable reset as main cause for his deadlock problem.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a839688362e32f01608838516036697e30618b39",
      "tree": "a174d93d568ba9735b13bb6ebb5f1a36c8f56308",
      "parents": [
        "2fa938b8a3964c21b23d9d095091e7abc88249c5",
        "12dc2fdd3e6067f5137e4a6d8af0b1a994952f52"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:24:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:24:32 2005 -0700"
      },
      "message": "Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "115d6f3fd25991f2a7de1ff4d758086209b1ed12",
      "tree": "670765aa1d971e6173fb4f55dbe762d795665839",
      "parents": [
        "060d3027f26aab9adeac8ff6d1184bca67c7d174"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@brturbo.com.br",
        "time": "Tue Jun 28 20:45:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:36 2005 -0700"
      },
      "message": "[PATCH] V4L: API new webcam formats included\n\nAdd Philips Webcam format.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@brturbo.com.br\u003e\nSigned-off-by: Luc Saillard \u003cluc@saillard.org\u003e.\nSigned-off-by: Nickolay V Shmyrev \u003cnshmyrev@yandex.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "200803dfe4ff772740d63db725ab2f1b185ccf92",
      "tree": "f567852c984c947f792edb18fee273cfa363d374",
      "parents": [
        "21fe3471c3aaa5c489c5d3a4d705291eb7511248"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Jun 28 20:45:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:35 2005 -0700"
      },
      "message": "[PATCH] irqpoll\n\nAnyone reporting a stuck IRQ should try these options.  Its effectiveness\nvaries we\u0027ve found in the Fedora case.  Quite a few systems with misdescribed\nIRQ routing just work when you use irqpoll.  It also fixes up the VIA systems\nalthough thats now fixed with the VIA quirk (which we could just make default\nas its what Redmond OS does but Linus didn\u0027t like it historically).\n\nA small number of systems have jammed IRQ sources or misdescribes that cause\nan IRQ that we have no handler registered anywhere for.  In those cases it\ndoesn\u0027t help.\n\nSigned-off-by: Alan Cox \u003cnumber6@the-village.bc.nu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb3cc4320e1fd87143683b540e459a2e20fdc9bb",
      "tree": "bc684070d75cd741820410d743cffb4bd0721504",
      "parents": [
        "d6344532a26a318c128102507f6328aaafe02d4d"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Tue Jun 28 20:45:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:35 2005 -0700"
      },
      "message": "[PATCH] blk: light iocontext ops\n\nget_io_context needlessly turned off interrupts and checked for racing io\ncontext creations.  Both of which aren\u0027t needed, because the io context can\nonly be created while in process context of the current process.\n\nAlso, split the function in 2.  A light version, current_io_context does not\nelevate the reference count specifically, but can be used when in process\ncontext, because the process holds a reference itself.\n\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4cceb4d13abaedbd52e54053367c793ed4aedb6b",
      "tree": "b2b41bbe2fcc2d2917c4ef809b126ea90b1c0f65",
      "parents": [
        "3607d1dfc80dcfbd3a6f236c70aa0d8eb7292278"
      ],
      "author": {
        "name": "GOTO Masanori",
        "email": "gotom@debian.or.jp",
        "time": "Tue Jun 28 20:45:05 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:32 2005 -0700"
      },
      "message": "[PATCH] headers: include linux/types.h for usb_ch9.h\n\nThis patch for usb_ch9.h includes linux/types.h instead of asm/types.h so that\n__le16 and so on is explicitly defined.  It also cleans up non standard //\ncomment.\n\nSigned-off-by: GOTO Masanori \u003cgotom@debian.or.jp\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3607d1dfc80dcfbd3a6f236c70aa0d8eb7292278",
      "tree": "1d9c92a6a50156a41006ca5d3350bf779aad3bdf",
      "parents": [
        "12822bc272e857544476cef9175462711899008b"
      ],
      "author": {
        "name": "GOTO Masanori",
        "email": "gotom@debian.or.jp",
        "time": "Tue Jun 28 20:45:04 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:32 2005 -0700"
      },
      "message": "[PATCH] headers: include linux/compiler.h for __user\n\nThis patch lets i2c-dev.h include linux/compiler.h so that __user is defined.\n\nSigned-off-by: GOTO Masanori \u003cgotom@debian.or.jp\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "334a13ec3d01a1a4b4f2249735b793105cb4a519",
      "tree": "10d9f23026d8c1c75f172751322acaba7ff63d81",
      "parents": [
        "aade0e82739f4b24c5b952de68c8d794459ad531"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Jun 28 20:44:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:31 2005 -0700"
      },
      "message": "[PATCH] really remove xattr_acl.h\n\nLooks like it sneaked back with the NFS ACL merge..\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "687a21cee17000177b1935896b9b475acf136678",
      "tree": "41e59684ae6479e84b34edc46972ce32c2cc58b7",
      "parents": [
        "05133fc498e788e1c1ca4e906f9e05d9779fd63b"
      ],
      "author": {
        "name": "Pekka J Enberg",
        "email": "penberg@cs.Helsinki.FI",
        "time": "Tue Jun 28 20:44:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:31 2005 -0700"
      },
      "message": "[PATCH] rename wakeup_bdflush to wakeup_pdflush\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "05133fc498e788e1c1ca4e906f9e05d9779fd63b",
      "tree": "bb9e20a71f4f7062eec60ec8301acff6697aa204",
      "parents": [
        "b79646e3dd51b389b2a570b454f8e2fb7a613e37"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Tue Jun 28 20:44:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 21:20:31 2005 -0700"
      },
      "message": "[PATCH] swabb.h warning fixes\n\nIn file included from drivers/media/dvb/ttpci/av7110_hw.c:38:\ninclude/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type\ninclude/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type\nIn file included from drivers/media/dvb/ttpci/av7110_v4l.c:36:\ninclude/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type\ninclude/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type\nIn file included from drivers/media/dvb/ttpci/av7110_av.c:37:\ninclude/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type\ninclude/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type\ndrivers/isdn/icn/icn.c:719:4: warning: #warning TODO test headroom or use skb-\u003enb to flag ACK\nIn file included from drivers/media/dvb/ttpci/av7110_ca.c:39:\ninclude/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type\ninclude/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type\nIn file included from drivers/media/dvb/ttpci/av7110.c:41:\ninclude/linux/byteorder/swabb.h:96: warning: type qualifiers ignored on function return type\ninclude/linux/byteorder/swabb.h:110: warning: type qualifiers ignored on function return type\n\nDoes declaring a function to return a const value actually mean something to\ngcc?\n\nDunno.  Kill it and replace sone `__inline__\u0027s with `inline\u0027 too.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bcd61272db5e643b6d9c01c9d5085b914d9f19df",
      "tree": "8760fd161334fcdb0a6198b033ed617f8c02dd6c",
      "parents": [
        "ff593c592a5d674822dce31143635b025f6415b2"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arndb@de.ibm.com",
        "time": "Tue Jun 28 15:58:50 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 28 15:58:50 2005 -0700"
      },
      "message": "[NET]: Add missing include to linux/netdevice.h\n\nlinux/etherdevice.h can\u0027t be included standalone at the moment, which\nis required in order to sort the header files in the recommended\nalphabetic order. This patch fixes that and is needed to build spider_net.\n\nSigned-off-by: Arnd Bergmann \u003carndb@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7fe40f73d7591b38f129fe6a9c0fa46e0b192d09",
      "tree": "fbe5323ddd8990350bc85778b54301db93ce5f93",
      "parents": [
        "fb3d89498d268c8dedc1ab5b15fa64f536564577"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Jun 28 15:46:24 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 28 15:46:24 2005 -0700"
      },
      "message": "[IPV6]: remove more unused IPV6_AUTHHDR things.\n\nRemove two more unused IPV6_AUTHHDR option things, \nwhich I failed to remove them last time,\nplus, mark IPV6_AUTHHDR obsolete.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adb2705a89e8b41abcf29c0ed86f4ce93ab36734",
      "tree": "01d772570d58cce24b61874e711fd9f51e2729e7",
      "parents": [
        "f340c0d1a3f40fdcba69cd291530a4debc58748f",
        "8644d2a42bdba2d513f71c07eaf1b6f9b718b8eb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 14:59:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 14:59:07 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6\n"
    },
    {
      "commit": "2f85a42964dd43fed3a339701db046bee5a8b903",
      "tree": "c482ebfb01fb90ba48f20e8f6c871b00ea8e351a",
      "parents": [
        "7a1af5d7bb94af16b980a53330436b9fadc12435"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Jun 28 13:24:23 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 28 13:24:23 2005 -0700"
      },
      "message": "[SCTP] Make init \u0026 delayed sack timeouts configurable by user.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a47077a0b5aa2649751c46e7a27884e6686ccbf",
      "tree": "60e7c40a375057a31b5340226cd446ffa199413c",
      "parents": [
        "9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 28 12:56:45 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 28 12:56:45 2005 -0700"
      },
      "message": "[NETLINK]: Missing padding fields in dumped structures\n\nPlug holes with padding fields and initialized them to zero.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b3563c4fbff906991a1b4ef4609f99cca2a0de6a",
      "tree": "e5c0e4cb4a0a48ebeeb8b1515128c115c5aa528c",
      "parents": [
        "4095ebf1e641b0f37ee1cd04c903bb85cf4ed25b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jun 28 12:54:43 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 28 12:54:43 2005 -0700"
      },
      "message": "[NETLINK]: Clear padding in netlink messages\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8644d2a42bdba2d513f71c07eaf1b6f9b718b8eb",
      "tree": "c43b6c2fdf1b68b66906a2de69446dcec0f9af6b",
      "parents": [
        "1cde8a16815bd85c8137d1ea556398983c597c11",
        "99f95e5286df2f69edab8a04c7080d986ee4233b"
      ],
      "author": {
        "name": "Greg KH",
        "email": "greg@press.(none)",
        "time": "Mon Jun 27 22:07:56 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 22:07:56 2005 -0700"
      },
      "message": "Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "545493917dc90298e1c38f018ad893f5518928e7",
      "tree": "1c809616d3113785c0f7dd3039ea3b05c99c6440",
      "parents": [
        "d18c3db58bc544fce6662ca7edba616ca9788a70"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jun 23 17:35:56 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:47 2005 -0700"
      },
      "message": "[PATCH] PCI: add proper MCFG table parsing to ACPI core.\n\nThis patch is the first step in properly handling the MCFG PCI table.\nIt defines the structures properly, and saves off the table so that the\npci mmconfig code can access it.  It moves the parsing of the table a\nlittle later in the boot process, but still before the information is\nneeded.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bb4a61b6eaee01707f24deeefc5d7136f25f75c5",
      "tree": "8d353d7b04addad950de8ae24eda7cdfe6fbea85",
      "parents": [
        "e24c2d963a604d9eaa560c90371fa387d3eec8f1"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Jun 06 23:07:46 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:46 2005 -0700"
      },
      "message": "[PATCH] PCI: fix up errors after dma bursting patch and CONFIG_PCI\u003dn\n\nWith CONFIG_PCI\u003dn:\n\nIn file included from include/linux/pci.h:917,\n                 from lib/iomap.c:6:\ninclude/asm/pci.h:104: warning: `enum pci_dma_burst_strategy\u0027 declared inside parameter list\ninclude/asm/pci.h:104: warning: its scope is only this definition or declaration, which is probably not what you want.\ninclude/asm/pci.h: In function `pci_dma_burst_advice\u0027:\ninclude/asm/pci.h:106: dereferencing pointer to incomplete type\ninclude/asm/pci.h:106: `PCI_DMA_BURST_INFINITY\u0027 undeclared (first use in this function)\ninclude/asm/pci.h:106: (Each undeclared identifier is reported only once\ninclude/asm/pci.h:106: for each function it appears in.)\nmake[1]: *** [lib/iomap.o] Error 1\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e24c2d963a604d9eaa560c90371fa387d3eec8f1",
      "tree": "66be193d59dd22fac0b62980769c4f19e045b5a2",
      "parents": [
        "2311b1f2bbd36fa5f366a7448c718b2556e0f02c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 12:55:50 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:45 2005 -0700"
      },
      "message": "[PATCH] PCI: DMA bursting advice\n\nAfter seeing, at best, \"guesses\" as to the following kind\nof information in several drivers, I decided that we really\nneed a way for platforms to specifically give advice in this\narea for what works best with their PCI controller implementation.\n\nBasically, this new interface gives DMA bursting advice on\nPCI.  There are three forms of the advice:\n\n1) Burst as much as possible, it is not necessary to end bursts\n   on some particular boundary for best performance.\n\n2) Burst on some byte count multiple.  A DMA burst to some multiple of\n   number of bytes may be done, but it is important to end the burst\n   on an exact multiple for best performance.\n\n   The best example of this I am aware of are the PPC64 PCI\n   controllers, where if you end a burst mid-cacheline then\n   chip has to refetch the data and the IOMMU translations\n   which hurts performance a lot.\n\n3) Burst on a single byte count multiple.  Bursts shall end\n   exactly on the next multiple boundary for best performance.\n\n   Sparc64 and Alpha\u0027s PCI controllers operate this way.  They\n   disconnect any device which tries to burst across a cacheline\n   boundary.\n\n   Actually, newer sparc64 PCI controllers do not have this behavior.\n   That is why the \"pdev\" is passed into the interface, so I can\n   add code later to check which PCI controller the system is using\n   and give advice accordingly.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "2311b1f2bbd36fa5f366a7448c718b2556e0f02c",
      "tree": "10e836c5c34893f8098464a5ae15aba351a7bb2a",
      "parents": [
        "a0d399a808916d22c1c222c6b5ca4e8edd6d91a9"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Fri May 13 17:44:10 2005 +1000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:45 2005 -0700"
      },
      "message": "[PATCH] PCI: fix-pci-mmap-on-ppc-and-ppc64.patch\n\nThis is an updated version of Ben\u0027s fix-pci-mmap-on-ppc-and-ppc64.patch\nwhich is in 2.6.12-rc4-mm1.\n\nIt fixes the patch to work on PPC iSeries, removes some debug printks\nat Ben\u0027s request, and incorporates your\nfix-pci-mmap-on-ppc-and-ppc64-fix.patch also.\n\nOriginally from Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n\nThis patch was discussed at length on linux-pci and so far, the last\niteration of it didn\u0027t raise any comment.  It\u0027s effect is a nop on\narchitecture that don\u0027t define the new pci_resource_to_user() callback\nanyway.  It allows architecture like ppc who put weird things inside of\nPCI resource structures to convert to some different value for user\nvisible ones.  It also fixes mmap\u0027ing of IO space on those archs.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a0d399a808916d22c1c222c6b5ca4e8edd6d91a9",
      "tree": "4c4f41d86652c7783cd5900605f36344253d3ef1",
      "parents": [
        "0e888adc41ffc02b700ade715c182a17e766af84"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Thu Apr 28 00:25:59 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:45 2005 -0700"
      },
      "message": "[PATCH] ACPI based I/O APIC hot-plug: acpiphp support\n\nThis patch adds PCI based I/O xAPIC hot-add support to ACPIPHP\ndriver. When PCI root bridge is hot-added, all PCI based I/O xAPICs\nunder the root bridge are hot-added by this patch. Hot-remove support\nis TBD.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b1bb248a5d2230a3d8ef42199c742194a8580b15",
      "tree": "5335d22256e1c6f755f7aff01432ed2d5d722c9b",
      "parents": [
        "8d50e332c8bd4f4e8cc76e8ed7326aa6f18182aa"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Thu Apr 28 00:25:58 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:44 2005 -0700"
      },
      "message": "[PATCH] ACPI based I/O APIC hot-plug: add interfaces\n\nThis patch adds the following new interfaces for I/O xAPIC\nhotplug. The implementation of these interfaces depends on each\narchitecture.\n\n    o int acpi_register_ioapic(acpi_handle handle, u64 phys_addr,\n\t\t\t       u32 gsi_base);\n\n        This new interface is to add a new I/O xAPIC specified by\n        phys_addr and gsi_base pair. phys_addr is the physical address\n        to which the I/O xAPIC is mapped and gsi_base is global system\n        interrupt base of the I/O xAPIC. acpi_register_ioapic returns\n        0 on success, or negative value on error.\n\n    o int acpi_unregister_ioapic(acpi_handle handle, u32 gsi_base);\n\n        This new interface is to remove a I/O xAPIC specified by\n        gsi_base. acpi_unregister_ioapic returns 0 on success, or\n        negative value on error.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c431ada45d65b305a6aab4557067e564b23ce5a5",
      "tree": "3fefb8a354860d9c39781dbbf042c992da5a9cd5",
      "parents": [
        "efe1ec27837d6639eae82e1f5876910ba6433c3f"
      ],
      "author": {
        "name": "Rajesh Shah",
        "email": "rajesh.shah@intel.com",
        "time": "Thu Apr 28 00:25:45 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:39 2005 -0700"
      },
      "message": "[PATCH] acpi bridge hotadd: ACPI based root bridge hot-add\n\nWhen you hot-plug a (root) bridge hierarchy, it may have p2p bridges and\ndevices attached to it that have not been configured by firmware.  In this\ncase, we need to configure the devices before starting them.  This patch\nseparates device start from device scan so that we can introduce the\nconfiguration step in the middle.\n\nI kept the existing semantics for pci_scan_bus() since there are a huge number\nof callers to that function.\n\nAlso, I have no way of testing the changes I made to the parisc files, so this\nneeds review by those folks.  Sorry for the massive cross-post, this touches\nfiles in many different places.\n\nSigned-off-by: Rajesh Shah \u003crajesh.shah@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c36ad397a30fcf9369d82584324cc24189eb6b1c",
      "tree": "a5cbb451a2e9ea3ea12b6d279c72d77ac96c3028",
      "parents": [
        "c903e41e67046e7f52bbc404bd5aa654d12540cc",
        "99f95e5286df2f69edab8a04c7080d986ee4233b"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Jun 28 00:46:22 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Jun 28 00:46:22 2005 -0400"
      },
      "message": "Merge /spare/repo/linux-2.6/\n"
    },
    {
      "commit": "a5fe736eaf9bae1b45317313de04b564441b94f2",
      "tree": "3b194431e6767702fa09f54a39b4c2ae788eaf00",
      "parents": [
        "1bad3f4050b2a641bbfeaddb2717b28247311e9c"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Jun 27 22:47:18 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Jun 27 22:47:18 2005 -0400"
      },
      "message": "Update is_multicast_ether_addr() definition; net/ieee80211.h cleanups.\n"
    },
    {
      "commit": "aecab27aeabaa897d69fc082686df314329830de",
      "tree": "4637bd095fbcab2b2090b34118be1c1474ac88b6",
      "parents": [
        "0c7ab67602e65b3ba7aaa81f023b034cd7458ec6"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Mon Jun 27 16:28:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 18:03:21 2005 -0700"
      },
      "message": "[PATCH] pcmcia: mod_devicetable.h fix for different sizes in kernel- and userspace\n\nThe size of pointers may differ between (userspace) modpost and (kernelspace)\nmodules -- so fix mod_devicetable.h to reflect this possibility.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f602ff7eb4e44e7245bfeeba4d078144703fcd76",
      "tree": "e919cf5470a7e963ae4ce9f21b7fa1ed3bd4cb71",
      "parents": [
        "ff1fa9ef3c9fb23a6baa06b63f4bdf3de089b29a"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Mon Jun 27 16:28:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 18:03:07 2005 -0700"
      },
      "message": "[PATCH] pcmcia: match \"anonymous\" cards\n\nIf a card doesn\u0027t provide _any_ information about itself, assume it is a\nso-called \"anonymous\" card.  pcmciamtd will bind to it if it is configured to\ndo so.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ea7b38825bba66a81745a706da70a1c81adc95bd",
      "tree": "e4a55eb31a250cfc5465d17cc89450e0b5445862",
      "parents": [
        "23a83bfe6ab51c745d109d979c78a96fe3e93f5c"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Mon Jun 27 16:28:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 18:03:06 2005 -0700"
      },
      "message": "[PATCH] pcmcia: match for fake CIS\n\nAdd another match flag for devices needing a CIS override.  The driver will\nonly probe/attach if the CIS has been replaced before.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1ad275e3e7d253d44f03868e85977c908e334fed",
      "tree": "82f0a1fc070f32c015be14596c50c681d90d4c1a",
      "parents": [
        "3ee13937525f6044d769b1a84d5db5669ac1959e"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Mon Jun 27 16:28:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 18:03:06 2005 -0700"
      },
      "message": "[PATCH] pcmcia: device and driver matching\n\nThe actual matching of pcmcia drivers and pcmcia devices.  The original\nversion of this was written by David Woodhouse.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da9091ee3b5f9808c64abb925cefe7b100018614",
      "tree": "ab16a874b58cb1a0dbe3cc4ee9e1afb766b69c97",
      "parents": [
        "bb732d7b3699afe8859f27e93000860bb4103cca"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jun 27 15:24:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 17:36:41 2005 -0700"
      },
      "message": "[PATCH] ide: it8212 backport for Bartlomiej IDE\n\nThis lets you throw out the iteraid stuff that has ended up back in due\nto stupid goings on in the IDE world. Its the same heavily tested code\nshipped in Fedora/Red Hat products but without the other dependancies on\nthe Bartlomiej IDE layer.\n\nPre-requisite: the ide-disk patch I sent to handle pure LBA devices.\n\nObviously you lose things like hot unplug with the Bartlomiej IDE layer\nat the moment but that won\u0027t matter to most users.\n\nThe patch does the following\n- Add IT8211/12 to pci_ids.h\n- Add Makefile/Kconfig entry\n- Add it8212 driver\n\nNo core IDE code is touched by this diff\n\nEmbedded system testing and the ability to force raid mode off by David\nHowells\n\nMade possible by the ite reference code, documentation and also several\nclarifications and pieces of assistance provided by ITE themselves\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "802eae7c800fb7f583e6c06afa363585af2bef00",
      "tree": "fa30469a4dc1f1a20abdf9466ec3c68bddef6ac9",
      "parents": [
        "9ec4b1f356b3bad928ae8e2aa9caebfa737d52df"
      ],
      "author": {
        "name": "Rusty Lynch",
        "email": "rusty.lynch@intel.com",
        "time": "Mon Jun 27 15:17:08 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 15:23:52 2005 -0700"
      },
      "message": "[PATCH] Return probe redesign: architecture independent changes\n\nThe following is the second version of the function return probe patches\nI sent out earlier this week.  Changes since my last submission include:\n\n* Fix in ppc64 code removing an unneeded call to re-enable preemption\n* Fix a build problem in ia64 when kprobes was turned off\n* Added another BUG_ON check to each of the architecture trampoline\n  handlers\n\nMy initial patch description \u003d\u003d\u003e\n\n From my experiences with adding return probes to x86_64 and ia64, and the\nfeedback on LKML to those patches, I think we can simplify the design\nfor return probes.\n\nThe following patch tweaks the original design such that:\n\n* Instead of storing the stack address in the return probe instance, the\n  task pointer is stored.  This gives us all we need in order to:\n    - find the correct return probe instance when we enter the trampoline\n      (even if we are recursing)\n    - find all left-over return probe instances when the task is going away\n\n  This has the side effect of simplifying the implementation since more\n  work can be done in kernel/kprobes.c since architecture specific knowledge\n  of the stack layout is no longer required.  Specifically, we no longer have:\n\t- arch_get_kprobe_task()\n\t- arch_kprobe_flush_task()\n\t- get_rp_inst_tsk()\n\t- get_rp_inst()\n\t- trampoline_post_handler() \u003csee next bullet\u003e\n\n* Instead of splitting the return probe handling and cleanup logic across\n  the pre and post trampoline handlers, all the work is pushed into the\n  pre function (trampoline_probe_handler), and then we skip single stepping\n  the original function.  In this case the original instruction to be single\n  stepped was just a NOP, and we can do without the extra interruption.\n\nThe new flow of events to having a return probe handler execute when a target\nfunction exits is:\n\n* At system initialization time, a kprobe is inserted at the beginning of\n  kretprobe_trampoline.  kernel/kprobes.c use to handle this on it\u0027s own,\n  but ia64 needed to do this a little differently (i.e. a function pointer\n  is really a pointer to a structure containing the instruction pointer and\n  a global pointer), so I added the notion of arch_init(), so that\n  kernel/kprobes.c:init_kprobes() now allows architecture specific\n  initialization by calling arch_init() before exiting.  Each architecture\n  now registers a kprobe on it\u0027s own trampoline function.\n\n* register_kretprobe() will insert a kprobe at the beginning of the targeted\n  function with the kprobe pre_handler set to arch_prepare_kretprobe\n  (still no change)\n\n* When the target function is entered, the kprobe is fired, calling\n  arch_prepare_kretprobe (still no change)\n\n* In arch_prepare_kretprobe() we try to get a free instance and if one is\n  available then we fill out the instance with a pointer to the return probe,\n  the original return address, and a pointer to the task structure (instead\n  of the stack address.)  Just like before we change the return address\n  to the trampoline function and mark the instance as used.\n\n  If multiple return probes are registered for a given target function,\n  then arch_prepare_kretprobe() will get called multiple times for the same\n  task (since our kprobe implementation is able to handle multiple kprobes\n  at the same address.)  Past the first call to arch_prepare_kretprobe,\n  we end up with the original address stored in the return probe instance\n  pointing to our trampoline function. (This is a significant difference\n  from the original arch_prepare_kretprobe design.)\n\n* Target function executes like normal and then returns to kretprobe_trampoline.\n\n* kprobe inserted on the first instruction of kretprobe_trampoline is fired\n  and calls trampoline_probe_handler() (no change here)\n\n* trampoline_probe_handler() consumes each of the instances associated with\n  the current task by calling the registered handler function and marking\n  the instance as unused until an instance is found that has a return address\n  different then the trampoline function.\n\n  (change similar to my previous ia64 RFC)\n\n* If the task is killed with some left-over return probe instances (meaning\n  that a target function was entered, but never returned), then we just\n  free any instances associated with the task.  (Not much different other\n  then we can handle this without calling architecture specific functions.)\n\n  There is a known problem that this patch does not yet solve where\n  registering a return probe flush_old_exec or flush_thread will put us\n  in a bad state.  Most likely the best way to handle this is to not allow\n  registering return probes on these two functions.\n\n  (Significant change)\n\nThis patch series applies to the 2.6.12-rc6-mm1 kernel, and provides:\n  * kernel/kprobes.c changes\n  * i386 patch of existing return probes implementation\n  * x86_64 patch of existing return probe implementation\n  * ia64 implementation\n  * ppc64 implementation (provided by Ananth)\n\nThis patch implements the architecture independant changes for a reworking\nof the kprobes based function return probes design. Changes include:\n\n  * Removing functions for querying a return probe instance off a stack address\n  * Removing the stack_addr field from the kretprobe_instance definition,\n    and adding a task pointer\n  * Adding architecture specific initialization via arch_init()\n  * Removing extern definitions for the architecture trampoline functions\n    (this isn\u0027t needed anymore since the architecture handles the\n     initialization of the kprobe in the return probe trampoline function.)\n\nSigned-off-by: Rusty Lynch \u003crusty.lynch@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9ec4b1f356b3bad928ae8e2aa9caebfa737d52df",
      "tree": "24d27ffed66595a9d864448ec53200ca1745f62c",
      "parents": [
        "d3b8a1a8496c83bc4a3cc76505c29255af15572c"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Mon Jun 27 15:17:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 15:23:52 2005 -0700"
      },
      "message": "[PATCH] kprobes: fix single-step out of line - take2\n\nNow that PPC64 has no-execute support, here is a second try to fix the\nsingle step out of line during kprobe execution.  Kprobes on x86_64 already\nsolved this problem by allocating an executable page and using it as the\nscratch area for stepping out of line.  Reuse that.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "d3b8a1a8496c83bc4a3cc76505c29255af15572c"
}
