)]}'
{
  "log": [
    {
      "commit": "205c109a7a96d9a3d8ffe64c4068b70811fef5e8",
      "tree": "2822c27a8d51045bb55821517dc763e73fe19871",
      "parents": [
        "ae361ff46ba93b2644675d9de19e885185f0d0c1"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 01:25:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:57 2007 -0700"
      },
      "message": "jffs2: convert to new aops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b160292cc216a50fd0cd386b0bda2cd48352c73b",
      "tree": "ef07cf98f91353ee4c9ec1e1ca7a2a5d9d4b538a",
      "parents": [
        "b37bde147890c8fea8369a5a4e230dabdea4ebfb",
        "bbf25010f1a6b761914430f5fca081ec8c7accd1"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 14:43:54 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 14:43:54 2007 +0100"
      },
      "message": "Merge Linux 2.6.23\n"
    },
    {
      "commit": "4fc8a6078660be781d6ddf4daddfd9d817d2a455",
      "tree": "5054b94e261b6f6683f148a5299007feb1f4113e",
      "parents": [
        "b534e70cf5529378a1ed994492641ec0330554eb"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 14:29:39 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 14:29:39 2007 +0100"
      },
      "message": "[JFFS2] Remove stray debugging printk\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "b534e70cf5529378a1ed994492641ec0330554eb",
      "tree": "d0257ffa39a331cad12e855122cb1e540b0eac41",
      "parents": [
        "69ca4378aa376cf2c49657d4f6951da56c27cd3a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:35:58 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:35:58 2007 +0100"
      },
      "message": "[JFFS2] Handle dirents on the flash with embedded zero bytes in names.\n\nIn three places: summary scan, normal scan, REF_PRISTINE GC.\n\nJust truncate at the NUL, since that was the correct thing to do in the\nonly case where this (inexplicable) breakage has been seen.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "69ca4378aa376cf2c49657d4f6951da56c27cd3a",
      "tree": "e1d8c8eb423f8a88be02f949ef88539c1f1bd8eb",
      "parents": [
        "a8c68f32644fc8942b25af9239967dd01be621fa"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:33:50 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:33:50 2007 +0100"
      },
      "message": "[JFFS2] Check for creation of dirents with embedded zero bytes in name.\n\nI have no idea how this happened, but OLPC trac #4184 suggests that it\ndid. Catch it early.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "a8c68f32644fc8942b25af9239967dd01be621fa",
      "tree": "220d4fdd0e27266d893c224c763646e201a40463",
      "parents": [
        "2665ea842dc9f4c04bdb57f8b7c2023759ac8c85"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:32:16 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:32:16 2007 +0100"
      },
      "message": "[JFFS2] Don\u0027t count all \u0027very dirty\u0027 blocks except in debug mode\n\n... where we\u0027ll actually print the count in a debug message.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "2665ea842dc9f4c04bdb57f8b7c2023759ac8c85",
      "tree": "eb7fa11e07a8760d4ed819211d9fb936727c4c5f",
      "parents": [
        "85becc535b7f33be5aefdb8ecea9fac4998e4b6f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:31:23 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:31:23 2007 +0100"
      },
      "message": "[JFFS2] Check whether garbage-collection actually obsoleted its victim.\n\nIn OLPC trac #4184 we found a case where a corrupted node didn\u0027t\nactually get obsoleted when we tried to garbage-collect it. So we wrote\nout many million copies of it, in repeated attempts to obsolete it,\nuntil the flash became full. Don\u0027t Do That.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "85becc535b7f33be5aefdb8ecea9fac4998e4b6f",
      "tree": "b459f5913d6ce3982b8636053f65c0386f6a12b6",
      "parents": [
        "1437085c3780f064a06df662195a2695e7d75c09"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:29:07 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 13 11:29:07 2007 +0100"
      },
      "message": "[JFFS2] Relax threshold for triggering GC due to dirty blocks.\n\nInstead of matching resv_blocks_gcmerge, which is only about 3, instead\nmatch resv_blocks_gctrigger, which includes a proportion of the total\ndevice size.\n\nThese ought to become tunable from userspace, at some point.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "8fb870df5a1f261294b833dd807bcba3bacface6",
      "tree": "2e6018f0256feca906797b248603202962302fa6",
      "parents": [
        "49defc015ff58fda46a3afa3462dfdfa69bc8401"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 06 15:12:58 2007 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 06 15:12:58 2007 -0400"
      },
      "message": "[JFFS2] Trigger garbage collection when very_dirty_list size becomes excessive\n\nWith huge amounts of free space, we weren\u0027t bothering to GC for while a\nwhile, and pathological numbers of obsolete nodes were accumulating,\nseriously affecting performance on NAND flash (OLPC trac #3978)\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "59d8235be2ab38ddaffbe9137385095a5e8b0a77",
      "tree": "aa944a21c7ccdd1031a1ad337e7167ab76f522e8",
      "parents": [
        "097f2576eb7dbc8cd5f610847f229f4fea305b80"
      ],
      "author": {
        "name": "Andy Lowe",
        "email": "alowe@mvista.com",
        "time": "Fri Jan 12 18:05:24 2007 -0500"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 23 18:41:17 2007 +0100"
      },
      "message": "[JFFS2] Fix unpoint length\n\nFix a couple of instances in JFFS2 where the unpoint() routine is\nbeing called with the wrong length in cases where the point() routine\ntruncated a request.\n\nSigned-off-by: Andy Lowe \u003calowe@mvista.com\u003e\nSigned-off-by: Nicolas Pitre \u003cnico@cam.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "fc0e01974ccccc7530b7634a63ee3fcc57b845ea",
      "tree": "2680036a725a5cef83330ea618aa77e0494880ec",
      "parents": [
        "40ffbfad6bb79a99cc7627bdaca0ee22dec526f6"
      ],
      "author": {
        "name": "Jason Lunz",
        "email": "lunz@falooley.org",
        "time": "Sat Sep 01 12:06:03 2007 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Sep 02 18:18:38 2007 +0100"
      },
      "message": "[JFFS2] fix write deadlock regression\n\nI\u0027ve bisected the deadlock when many small appends are done on jffs2 down to\nthis commit:\n\ncommit 6fe6900e1e5b6fa9e5c59aa5061f244fe3f467e2\nAuthor: Nick Piggin \u003cnpiggin@suse.de\u003e\nDate:   Sun May 6 14:49:04 2007 -0700\n\n    mm: make read_cache_page synchronous\n\n    Ensure pages are uptodate after returning from read_cache_page, which allows\n    us to cut out most of the filesystem-internal PageUptodate calls.\n\n    I didn\u0027t have a great look down the call chains, but this appears to fixes 7\n    possible use-before uptodate in hfs, 2 in hfsplus, 1 in jfs, a few in\n    ecryptfs, 1 in jffs2, and a possible cleared data overwritten with readpage in\n    block2mtd.  All depending on whether the filler is async and/or can return\n    with a !uptodate page.\n\nIt introduced a wait to read_cache_page, as well as a\nread_cache_page_async function equivalent to the old read_cache_page\nwithout any callers.\n\nSwitching jffs2_gc_fetch_page to read_cache_page_async for the old\nbehavior makes the deadlocks go away, but maybe reintroduces the\nuse-before-uptodate problem? I don\u0027t understand the mm/fs interaction\nwell enough to say.\n\n[It\u0027s fine. dwmw2.]\n\nSigned-off-by: Jason Lunz \u003clunz@falooley.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ac0c955d5048c2c580fa7166a89133f0fd76c125",
      "tree": "041ac4fb544c7244a1a0b35c8ceabc142d5645c1",
      "parents": [
        "68d09b1b6780415d82160f6b6d88e82bd724e691",
        "b377fd3982ad957c796758a90e2988401a884241"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 23 10:43:14 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 23 10:43:14 2007 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "f4e35647f5c0ac24ca1ba14f84bf817ec0483b72",
      "tree": "a379a91cbb060a1de6fcf0e78f4b256f0c7d12db",
      "parents": [
        "9ed437c50d89eabae763dd422579f73fdebf288d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Aug 10 14:01:30 2007 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Aug 22 12:41:48 2007 +0100"
      },
      "message": "[JFFS2] fix printk warning in jffs2_block_check_erase()\n\nfs/jffs2/erase.c: In function \u0027jffs2_block_check_erase\u0027:\nfs/jffs2/erase.c:355: warning: format \u0027%08x\u0027 expects type \u0027unsigned int\u0027, but argument 3 has type \u0027long unsigned int\u0027\n\nand\n\nfs/jffs2/erase.c: In function \u0027jffs2_erase_pending_blocks\u0027:\nfs/jffs2/erase.c:404: warning: \u0027bad_offset\u0027 may be used uninitialized in this function\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "9ed437c50d89eabae763dd422579f73fdebf288d",
      "tree": "22329b749200798165a8a07fe141e9cbc3b1c733",
      "parents": [
        "09b3fba562ce366312b90a6f71d0b727b4d93ba9"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Aug 22 12:39:19 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Aug 22 12:39:19 2007 +0100"
      },
      "message": "[JFFS2] Fix ACL vs. mode handling.\n\nWhen POSIX ACL support was enabled, we weren\u0027t writing correct\nlegacy modes to the medium on inode creation, or when the ACL was set.\nThis meant that the permissions would be incorrect after the file system\nwas remounted.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "b5748643332bf75274e0b639926d57e86fb133cf",
      "tree": "b649c2d0abe6149343ec17dd0f4a8a5827759082",
      "parents": [
        "2046219364a40bcb13482ff68eb6ccec13405633"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Aug 20 11:05:29 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Aug 20 22:44:27 2007 -0700"
      },
      "message": "JFFS2 locking regression fix.\n\nCommit a491486a2087ac3dfc00efb4f838c8d684afaf54 introduced a locking\nproblem in JFFS2 -- we up() the alloc_sem when we weren\u0027t previously\nholding it. This leads to all kinds of fun behaviour later.\n\nThere was a _reason_ for the\n\tif (1 /* alternative path needs testing */ ||\nwhich the above-mentioned commit removed :)\n\nDiscovered and debugged by Giulio Fedel \u003cgiulio.fedel@andorsystems.com\u003e\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "09b3fba562ce366312b90a6f71d0b727b4d93ba9",
      "tree": "be34f5fe551c0c72a92bff56adcc6d46cddb7fb6",
      "parents": [
        "471f717a48d25afcb9428c9523cd0557738b7115"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 09 17:28:20 2007 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 09 17:28:20 2007 +0800"
      },
      "message": "[JFFS2] Correct cleanmarker checks -- we should use only 8 bytes\n\nCommit a7a6ace1406f95c3edb8365788f85984377f3832 revamped the OOB\nhandling but accidentally switched to 12-byte cleanmarkers, which is\nincompatible with what \u0027flash_eraseall -j\u0027 will do. So using\nflash_eraseall -j and then trying to mount the \u0027empty\u0027 flash will fail,\nbecause the cleanmarkers aren\u0027t recognised.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "b8e3ec30c232eb76c96ecab52205fe46e8b0473a",
      "tree": "77ffc5efb4c4be2f65679ad8d589b11d955ae984",
      "parents": [
        "7b687707d769112aee220bafd50fa113363717ff"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jul 05 01:57:26 2007 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 02 21:43:46 2007 +0100"
      },
      "message": "[JFFS2] Print correct node offset when complaining about broken data CRC\n\nDebugging the hardware problems in OLPC trac #1905 would be a whole lot\neasier if the correct node offsets were printed for the offending nodes.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "7b687707d769112aee220bafd50fa113363717ff",
      "tree": "633d4682e1cb30447d7ea9a13d975db357cf9381",
      "parents": [
        "71c23397752c0e40722d931ab9152342e9673336"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 19:49:36 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 02 21:43:03 2007 +0100"
      },
      "message": "[JFFS2] Fix suspend failure with JFFS2 GC thread.\n\nThe try_to_freeze() call was in the wrong place; we need it in the\nsignal-pending loop now that a pending freeze also makes\nsignal_pending() return true.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "71c23397752c0e40722d931ab9152342e9673336",
      "tree": "b6bc0e6b37b815c9f054b5184c8d1b8ec72208ce",
      "parents": [
        "5bd5c03c317085339deb044ba52fce131a6a0b67"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Jun 29 13:39:57 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 02 21:39:50 2007 +0100"
      },
      "message": "[JFFS2] Deletion dirents should be REF_NORMAL, not REF_PRISTINE.\n\nOtherwise they\u0027ll never actually get garbage-collected.\nNoted by Jonathan Larmour.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "5bd5c03c317085339deb044ba52fce131a6a0b67",
      "tree": "2d4b7691136f6069ef074c5f7b2b872f2ecd9f2d",
      "parents": [
        "370504cf7c68b953de55c41d5e0be97d30f3cf00"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Sun Jun 24 19:22:29 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Aug 02 21:36:35 2007 +0100"
      },
      "message": "[JFFS2] Prevent oops after \u0027node added in wrong place\u0027 debug check\n\njffs2_add_physical_node_ref() should never really return error -- it\u0027s\nan internal debugging check which triggered. We really need to work out\nwhy and stop it happening. But in the meantime, let\u0027s make the failure\nmode a little less nasty.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "39fe5434cb9de5da40510028b17b96bc4eb312b3",
      "tree": "7a02a317b9ad57da51ca99887c119e779ccf3f13",
      "parents": [
        "0fc72b81d3111d114ab378935b1cf07680ca1289",
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Jul 23 10:20:10 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Jul 23 10:20:10 2007 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "20c2df83d25c6a95affe6157a4c9cac4cf5ffaac",
      "tree": "415c4453d2b17a50abe7a3e515177e1fa337bd67",
      "parents": [
        "64fb98fc40738ae1a98bcea9ca3145b89fb71524"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "message": "mm: Remove slab destructors from kmem_cache_create().\n\nSlab destructors were no longer supported after Christoph\u0027s\nc59def9f222d44bb7e2f0a559f2906191a0862d7 change. They\u0027ve been\nBUGs for both slab and slub, and slob never supported them\neither.\n\nThis rips out support for the dtor pointer from kmem_cache_create()\ncompletely and fixes up every single callsite in the kernel (there were\nabout 224, not including the slab allocator definitions themselves,\nor the documentation references).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "3bd858ab1c451725c07a805dcb315215dc85b86e",
      "tree": "5d49c4300e350d64fd81eb3230b81f754117e0c1",
      "parents": [
        "49c13b51a15f1ba9f6d47e26e4a3886c4f3931e2"
      ],
      "author": {
        "name": "Satyam Sharma",
        "email": "ssatyam@cse.iitk.ac.in",
        "time": "Tue Jul 17 15:00:08 2007 +0530"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 12:00:03 2007 -0700"
      },
      "message": "Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check\n\nIntroduce is_owner_or_cap() macro in fs.h, and convert over relevant\nusers to it. This is done because we want to avoid bugs in the future\nwhere we check for only effective fsuid of the current task against a\nfile\u0027s owning uid, without simultaneously checking for CAP_FOWNER as\nwell, thus violating its semantics.\n[ XFS uses special macros and structures, and in general looked ...\nuntouchable, so we leave it alone -- but it has been looked over. ]\n\nThe (current-\u003efsuid !\u003d inode-\u003ei_uid) check in generic_permission() and\nexec_permission_lite() is left alone, because those operations are\ncovered by CAP_DAC_OVERRIDE and CAP_DAC_READ_SEARCH. Similarly operations\nfalling under the purview of CAP_CHOWN and CAP_LEASE are also left alone.\n\nSigned-off-by: Satyam Sharma \u003cssatyam@cse.iitk.ac.in\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nAcked-by: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "831441862956fffa17b9801db37e6ea1650b0f69",
      "tree": "b0334921341f8f1734bdd3243de76d676329d21c",
      "parents": [
        "787d2214c19bcc9b6ac48af0ce098277a801eded"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Jul 17 04:03:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jul 17 10:23:02 2007 -0700"
      },
      "message": "Freezer: make kernel threads nonfreezable by default\n\nCurrently, the freezer treats all tasks as freezable, except for the kernel\nthreads that explicitly set the PF_NOFREEZE flag for themselves.  This\napproach is problematic, since it requires every kernel thread to either\nset PF_NOFREEZE explicitly, or call try_to_freeze(), even if it doesn\u0027t\ncare for the freezing of tasks at all.\n\nIt seems better to only require the kernel threads that want to or need to\nbe frozen to use some freezer-related code and to remove any\nfreezer-related code from the other (nonfreezable) kernel threads, which is\ndone in this patch.\n\nThe patch causes all kernel threads to be nonfreezable by default (ie.  to\nhave PF_NOFREEZE set by default) and introduces the set_freezable()\nfunction that should be called by the freezable kernel threads in order to\nunset PF_NOFREEZE.  It also makes all of the currently freezable kernel\nthreads call set_freezable(), so it shouldn\u0027t cause any (intentional)\nchange of behaviour to appear.  Additionally, it updates documentation to\ndescribe the freezing of tasks more accurately.\n\n[akpm@linux-foundation.org: build fixes]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0fc72b81d3111d114ab378935b1cf07680ca1289",
      "tree": "4c8afd9a7c7dfb4f475c410788e4322dc5ca0740",
      "parents": [
        "3b23c1f5fa7e4c99e9451958a1004ef7434a71f0"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 15:33:14 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 15:33:14 2007 +0100"
      },
      "message": "[JFFS2] Add declaration of jffs2_lzo_{init,exit} to compr.h\n\nfs/jffs2/compr.c: In function ‘jffs2_compressors_init’:\nfs/jffs2/compr.c:320: warning: implicit declaration of function ‘jffs2_lzo_init’\nfs/jffs2/compr.c: In function ‘jffs2_compressors_exit’:\nfs/jffs2/compr.c:346: warning: implicit declaration of function ‘jffs2_lzo_exit’\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "3b23c1f5fa7e4c99e9451958a1004ef7434a71f0",
      "tree": "2442c774918a422dee47b44d92515fcfb1897f35",
      "parents": [
        "c799aca31bfe61ba3a91133acf5a13a0773087d4"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@openedhand.com",
        "time": "Tue Jul 10 10:28:42 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 15:04:38 2007 +0100"
      },
      "message": "[JFFS2] Add a \"favourlzo\" compression mode\n\nAdd a \"favourlzo\" compression mode to jffs2 which tries to\noptimise by size but gives lzo an advantage when comparing sizes.\nThis means the faster lzo algorithm can be preferred when there\nisn\u0027t much difference in compressed size (the exact threshold can\nbe changed).\n\nSigned-off-by: Richard Purdie \u003crpurdie@openedhand.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "c799aca31bfe61ba3a91133acf5a13a0773087d4",
      "tree": "d05f44fbec08e26fd52b8b1f4c7b5d162cfe3c31",
      "parents": [
        "8691a729a2a3d739ee40a577053157393450aabd"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@openedhand.com",
        "time": "Tue Jul 10 10:28:36 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 15:03:53 2007 +0100"
      },
      "message": "[JFFS2] Add LZO compression support.\n\nAdd LZO1X compression/decompression support to jffs2.\n\nLZO\u0027s interface doesn\u0027t entirely match that required by jffs2 so a\nbuffer and memcpy is unavoidable.\n\nSigned-off-by: Richard Purdie \u003crpurdie@openedhand.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "db1b39d8b860e3716620c225bc86e0ec41764e34",
      "tree": "8739074db733ef767400ea92cfbfed9352ddb92d",
      "parents": [
        "a6bc432e296dfa1f05d4b586ca5ca3085a2d42d7",
        "4eb6bf6bfb580afaf1e1a1d30cba17a078530cf4"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 14:55:48 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 14:55:48 2007 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "a6bc432e296dfa1f05d4b586ca5ca3085a2d42d7",
      "tree": "db51669fcc74686efb4c65f98938907d76202ffa",
      "parents": [
        "ef53cb02ffee8ceb44ea75f778f77eace6b9c89a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 14:23:54 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Jul 11 14:23:54 2007 +0100"
      },
      "message": "[JFFS2] Add support for write-buffer verification.\n\nWe\u0027ve seen some evil corruption issues, where the corruption seems to be\nintroduced after the JFFS2 crc32 is calculated but before the NAND\ncontroller calculates the ECC. So it\u0027s in RAM or in the PCI DMA\ntransfer; not on the flash. Attempt to catch it earlier by (optionally)\nreading back from the flash immediately after writing it.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ef53cb02ffee8ceb44ea75f778f77eace6b9c89a",
      "tree": "3e41f74e33ca8b995f5aeb914074ac980b10e56a",
      "parents": [
        "16adce7b6f4dab015d0b93274b41f8aae6fe07a5"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jul 10 10:01:22 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jul 10 10:01:22 2007 +0100"
      },
      "message": "[JFFS2] Whitespace cleanups.\n\nConvert many spaces to tabs; one or two other minor cosmetic fixes.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "5ffc4ef45b3b0a57872f631b4e4ceb8ace0d7496",
      "tree": "437ec32a58ac5e4794565b2bbb3da6611f0d6a04",
      "parents": [
        "534f2aaa6ab07cd71164180bc958a7dcde41db11"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 01 11:49:19 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:04:13 2007 +0200"
      },
      "message": "sendfile: remove .sendfile from filesystems that use generic_file_sendfile()\n\nThey can use generic_file_splice_read() instead. Since sys_sendfile() now\nprefers that, there should be no change in behaviour.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b2e25235fe8b4b6cd8cd6a792cbe883d7417eaac",
      "tree": "7f55270f3f208d59aa973c6660acf92d0aa62ae0",
      "parents": [
        "9c5ef0fbfa0b0be219290b05a39135b957479251"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jul 05 01:57:26 2007 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jul 05 01:57:26 2007 -0400"
      },
      "message": "[JFFS2] Print correct node offset when complaining about broken data CRC\n\nDebugging the hardware problems in OLPC trac #1905 would be a whole lot\neasier if the correct node offsets were printed for the offending nodes.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "e2baf4ed168589af8224d51f0ac50e65bcdee3f6",
      "tree": "3cce4ea07535c6b0d204da53d15f91c146d46a70",
      "parents": [
        "ba609a9d97ba231c3d94443c50579ceb5fc33867"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jul 03 16:51:19 2007 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@bombadil.infradead.org",
        "time": "Wed Jul 04 10:24:29 2007 -0400"
      },
      "message": "[JFFS2] Fix readinode failure when read_dnode() detects CRC failure.\n\nWe should have stopped returning 1 from read_dnode() to indicate\nfailure. We can just mark the damn thing obsolete immediately. But I\nmissed a case where we don\u0027t.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "14c6381ee46b32b9b38073cd023b618ab4f60629",
      "tree": "afdefe8336a3bc9132cc2d94e91b3fd7108caf06",
      "parents": [
        "8dab169b8bdea3bcbc08b15fdbd9a21526fdbb77"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jul 03 16:51:19 2007 -0400"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jul 03 16:51:19 2007 -0400"
      },
      "message": "[JFFS2] Fix readinode failure when read_dnode() detects CRC failure.\n\nWe should have stopped returning 1 from read_dnode() to indicate\nfailure. We can just mark the damn thing obsolete immediately. But I\nmissed a case where we don\u0027t.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "43dfa07fbb6b8bd5b6173a5bab48470f578c8e5b",
      "tree": "2818c8f74de363c2a4084b9b050685d0a17beec9",
      "parents": [
        "663d77a7ccfd407cf7491dbd53c7c17eef58c96a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Jun 29 13:39:57 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Jun 29 13:39:57 2007 +0100"
      },
      "message": "[JFFS2] Deletion dirents should be REF_NORMAL, not REF_PRISTINE.\n\nOtherwise they\u0027ll never actually get garbage-collected.\nNoted by Jonathan Larmour.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "e716dd3644c2a79d6ffa4359bac06f57479dcb34",
      "tree": "a678acd5fc667e5b55adb7294fd5c6097aedc634",
      "parents": [
        "66bfaeaa90432a585d7e9e70605ee4df3ede9890"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 19:49:36 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 19:49:36 2007 +0100"
      },
      "message": "[JFFS2] Fix suspend failure with JFFS2 GC thread.\n\nThe try_to_freeze() call was in the wrong place; we need it in the\nsignal-pending loop now that a pending freeze also makes\nsignal_pending() return true.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "66bfaeaa90432a585d7e9e70605ee4df3ede9890",
      "tree": "31c585ef0afff2420a9a13930842c1d82bb084f3",
      "parents": [
        "d364fb18cd991734eb54aa8840e70030b0c9f699"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 19:03:11 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 19:03:11 2007 +0100"
      },
      "message": "[JFFS2] Improve diagnostic output for \u0027node added in wrong place\u0027 check\n\nJocke has seen this fail. We want to know why.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "d364fb18cd991734eb54aa8840e70030b0c9f699",
      "tree": "d007845c788cb2a5b2d35ab01fc38a944e36c087",
      "parents": [
        "f79c44980aae3f50fe73e50789641df265953cc6"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Wed Jun 27 01:24:09 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 19:02:15 2007 +0100"
      },
      "message": "[JFFS2] Reduce time for which erase_free_sem is held during erase.\n\nWith current desing erase_free_sem is locked every time the flash\nblock is being erased. For NOR flashes - ~1 second is needed to erase\nsingle flash block. In the worst case scenario erase_free_sem may be\nlocked for a couple of seconds when the number of blocks is being\nerased (e.g. after large file was removed). When erase_free_sem is\nlocked all read/write operations for given JFFS2 partition are locked\ntoo - in effect from time to time access to the JFFS2 partition is\nlocked for a number of seconds. This fix makes critical section in\nflash erasing procedure shorter - now erase_free_sem is locked around\nerase_completion_lock spinlock only.\n\nOriginally from Radoslaw Bisewski\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "f79c44980aae3f50fe73e50789641df265953cc6",
      "tree": "85d9a28ba77ace19d970f32db4c5a92dbbded6a6",
      "parents": [
        "fab2c399129273713b7dcc6a54cef17ca124a47f"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Sun Jun 24 19:22:29 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 18:55:27 2007 +0100"
      },
      "message": "[JFFS2] Prevent oops after \u0027node added in wrong place\u0027 debug check\n\njffs2_add_physical_node_ref() should never really return error -- it\u0027s\nan internal debugging check which triggered. We really need to work out\nwhy and stop it happening. But in the meantime, let\u0027s make the failure\nmode a little less nasty.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "fab2c399129273713b7dcc6a54cef17ca124a47f",
      "tree": "738297917ecf605447fe29755b2b4053fd16a783",
      "parents": [
        "7eafaed55f4b8599cfe55449a6ed88d3693954de"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Fri Jun 01 15:14:09 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 18:41:22 2007 +0100"
      },
      "message": "[JFFS2] Use point(), if available, to check newly erased blocks.\n\nFaster and won\u0027t trash the D-cache.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "fd5324909e410a3202c1b01bd507c2dfba58fca5",
      "tree": "8a92d922c5ad4338c39a1fd366ef0e38f6c6419f",
      "parents": [
        "b75ae8603568ae18f270213693758c78fb8a29ff"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Tue Jun 26 23:32:10 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jun 28 18:37:48 2007 +0100"
      },
      "message": "[JFFS2] Fix hanging close for /dev/mtd character device.\n\nWhen pdflush is erasing lots of sectors, drivers calling\nmtd-\u003esync will hang until all blocks are erased. Be nicer.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ec4883b015c3212f6f6d04fb2ff45f528492f598",
      "tree": "0e393eb198a35a90adafcd8129564d0173aafad4",
      "parents": [
        "464cf177df7727efcc5506322fc5d0c8b896f545",
        "0477d24e2a87a9077b62298b01b031929f5cf2a2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jun 04 17:54:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jun 04 17:54:09 2007 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  [JFFS2] Fix obsoletion of metadata nodes in jffs2_add_tn_to_tree()\n  [MTD] Fix error checking after get_mtd_device() in get_sb_mtd functions\n  [JFFS2] Fix buffer length calculations in jffs2_get_inode_nodes()\n  [JFFS2] Fix potential memory leak of dead xattrs on unmount.\n  [JFFS2] Fix BUG() caused by failing to discard xattrs on deleted files.\n  [MTD] generalise the handling of MTD-specific superblocks\n  [MTD] [MAPS] don\u0027t force uclinux mtd map to be root dev\n"
    },
    {
      "commit": "0477d24e2a87a9077b62298b01b031929f5cf2a2",
      "tree": "3c9c925bbdfb1d2b77559653ef30c1b734e331ef",
      "parents": [
        "718ea8361b15aec5f4cb559d63ba34bc5a58d8f9"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Jun 01 20:04:43 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Jun 01 20:04:43 2007 +0100"
      },
      "message": "[JFFS2] Fix obsoletion of metadata nodes in jffs2_add_tn_to_tree()\n\nWe should keep the mdata node with higher version number, not just the\none we happen to find latest. Doh.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ea55d30798ac206c9f584ac264b6b8eb093d237a",
      "tree": "4de974f44ddcc4d8615b3e761c62924b6b29af9a",
      "parents": [
        "2ad8ee713566671875216ebcec64f2eda47bd19d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed May 30 12:08:14 2007 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Jun 01 13:20:29 2007 +0100"
      },
      "message": "[JFFS2] Fix buffer length calculations in jffs2_get_inode_nodes()\n\nIf we have already read enough bytes, no need to call read_more().\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "2ad8ee713566671875216ebcec64f2eda47bd19d",
      "tree": "b8ad57ea0041b66b68eae2bb089f0c70b13a7ab9",
      "parents": [
        "8ae5d31263c746f1680d005b33a82d167cdb9eb6"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 08 00:12:58 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun May 20 11:30:38 2007 -0400"
      },
      "message": "[JFFS2] Fix potential memory leak of dead xattrs on unmount.\n\nAn xattr_datum which ends up orphaned should be freed by the GC \nthread. But if we umount before the GC thread is finished, or if we \nmount read-only and the GC thread never runs, they might never be \nfreed. Clean them up during unmount, if there are any left.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "8ae5d31263c746f1680d005b33a82d167cdb9eb6",
      "tree": "a407ee09563352b8e49d49e53dfc2cdb3c663346",
      "parents": [
        "acaebfd8a7af0019b2edfcf4045c56c3e18375c5"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 05 17:50:25 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun May 20 11:28:22 2007 -0400"
      },
      "message": "[JFFS2] Fix BUG() caused by failing to discard xattrs on deleted files.\n\nWhen we cannot mark nodes as obsolete, such as on NAND flash, we end up \nhaving to delete inodes with !nlink in jffs2_build_remove_unlinked_inode().\nHowever, jffs2_build_xattr_subsystem() runs later than this, and will\nattach an xref to the dead inode. Then later when the last nodes of that\ndead inode are erased we hit a BUG() in jffs2_del_ino_cache() \nbecause we\u0027re not supposed to get there with an xattr still attached to \nthe inode which is being killed.\n\nThe simple fix is to refrain from attaching xattrs to inodes with zero \nnlink, in jffs2_build_xattr_subsystem(). It\u0027s it\u0027s OK to trust nlink \nhere because the file system isn\u0027t actually mounted yet, so there\u0027s no \nchance that a zero-nlink file could actually be alive still because \nit\u0027s open.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "a35afb830f8d71ec211531aeb9a621b09a2efb39",
      "tree": "198280081e1f8b2f6c450742a5075cc7904a3d58",
      "parents": [
        "5577bd8a85c8b7643a241789b14fafa9c8a6c7db"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed May 16 22:10:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu May 17 05:23:04 2007 -0700"
      },
      "message": "Remove SLAB_CTOR_CONSTRUCTOR\n\nSLAB_CTOR_CONSTRUCTOR is always specified. No point in checking it.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acaebfd8a7af0019b2edfcf4045c56c3e18375c5",
      "tree": "312d91a96fbc6ed3672220e2c4087a196e5ab6cf",
      "parents": [
        "33672f72b24191fb17c3666ec1c620f3fa617b50"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu May 10 22:51:50 2007 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri May 11 12:14:15 2007 +0100"
      },
      "message": "[MTD] generalise the handling of MTD-specific superblocks\n\nGeneralise the handling of MTD-specific superblocks so that JFFS2 and ROMFS\ncan both share it.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ba7cc09c9c9e29a57045dc5bbf843ac1cfad3283",
      "tree": "7e2d39269803b53ba048f3bad11cd6a1a38b35b9",
      "parents": [
        "d84c4124c4b6611301b402e8611b7e36de3bd351",
        "b7aa48be1e7a11e36448a7db58931bbf735d2718"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:10:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 13:10:11 2007 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (21 commits)\n  [MTD] [CHIPS] Remove MTD_OBSOLETE_CHIPS (jedec, amd_flash, sharp)\n  [MTD] Delete allegedly obsolete \"bank_size\" field of mtd_info.\n  [MTD] Remove unnecessary user space check from mtd.h.\n  [MTD] [MAPS] Remove flash maps for no longer supported 405LP boards\n  [MTD] [MAPS] Fix missing printk() parameter in physmap_of.c MTD driver\n  [MTD] [NAND] platform NAND driver: add driver\n  [MTD] [NAND] platform NAND driver: update header\n  [JFFS2] Simplify and clean up jffs2_add_tn_to_tree() some more.\n  [JFFS2] Remove another bogus optimisation in jffs2_add_tn_to_tree()\n  [JFFS2] Remove broken insert_point optimisation in jffs2_add_tn_to_tree()\n  [JFFS2] Remember to calculate overlap on nodes which replace older nodes\n  [JFFS2] Don\u0027t advance c-\u003ewbuf_ofs to next eraseblock after wbuf flush\n  [MTD] [NAND] at91_nand.c: CMDLINE_PARTS support\n  [MTD] [NAND] Tidy up handling of page number in nand_block_bad()\n  [MTD] block2mtd_paramline[] mustn\u0027t be __initdata\n  [MTD] [NAND] Support multiple chips in CAFÉ driver\n  [MTD] [NAND] Rename cafe.c to cafe_nand.c and remove the multi-obj magic\n  [MTD] [NAND] Use rslib for CAFÉ ECC\n  [RSLIB] Support non-canonical GF representations\n  [JFFS2] Remove dead file histo_mips.h\n  ...\n"
    },
    {
      "commit": "1c97964520503c60aa91680d4b525236c2885a36",
      "tree": "098110a567287266a62cdd0c800fa63ac6bdb206",
      "parents": [
        "fcf3cafb3e7e7750f4876571492594c3a4854ee5"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 08 00:19:54 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 08 00:19:54 2007 +0100"
      },
      "message": "[JFFS2] Simplify and clean up jffs2_add_tn_to_tree() some more.\n\nFixing at least a couple more bugs in the process.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "50953fe9e00ebbeffa032a565ab2f08312d51a87",
      "tree": "9f95f56f0b51600959a76cd88ce17f6e9c7a98a3",
      "parents": [
        "4b1d89290b62bb2db476c94c82cf7442aab440c8"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun May 06 14:50:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:57 2007 -0700"
      },
      "message": "slab allocators: Remove SLAB_DEBUG_INITIAL flag\n\nI have never seen a use of SLAB_DEBUG_INITIAL.  It is only supported by\nSLAB.\n\nI think its purpose was to have a callback after an object has been freed\nto verify that the state is the constructor state again?  The callback is\nperformed before each freeing of an object.\n\nI would think that it is much easier to check the object state manually\nbefore the free.  That also places the check near the code object\nmanipulation of the object.\n\nAlso the SLAB_DEBUG_INITIAL callback is only performed if the kernel was\ncompiled with SLAB debugging on.  If there would be code in a constructor\nhandling SLAB_DEBUG_INITIAL then it would have to be conditional on\nSLAB_DEBUG otherwise it would just be dead code.  But there is no such code\nin the kernel.  I think SLUB_DEBUG_INITIAL is too problematic to make real\nuse of, difficult to understand and there are easier ways to accomplish the\nsame effect (i.e.  add debug code before kfree).\n\nThere is a related flag SLAB_CTOR_VERIFY that is frequently checked to be\nclear in fs inode caches.  Remove the pointless checks (they would even be\npointless without removeal of SLAB_DEBUG_INITIAL) from the fs constructors.\n\nThis is the last slab flag that SLUB did not support.  Remove the check for\nunimplemented flags from SLUB.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fcf3cafb3e7e7750f4876571492594c3a4854ee5",
      "tree": "803c98c2335c7fbb336cfca805ee500b6eae0b69",
      "parents": [
        "96dd8d25d1ca8c233bd47752349d27a631c18719"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon May 07 13:16:13 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon May 07 13:16:13 2007 +0100"
      },
      "message": "[JFFS2] Remove another bogus optimisation in jffs2_add_tn_to_tree()\n\nWe attempted to insert new nodes into the tree by just using\nrb_replace_node to let them replace an earlier node which they\ncompletely overlapped. However, that could place the new node into the\nwrong place in the tree, since its start could be node only before the\nstart of the victim, but before the node _before_ the victim in the tree\n(if that previous node actually ends _after_ the new node, thus isn\u0027t\nentirely overlapped and wasn\u0027t itself chosen to be the victim).\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "96dd8d25d1ca8c233bd47752349d27a631c18719",
      "tree": "e76be6a42fe3396d02762d78383aec10edd68456",
      "parents": [
        "1123e2a85941c7f506bd42c91c7e9ab74fc42d79"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun May 06 14:41:40 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun May 06 14:41:40 2007 +0100"
      },
      "message": "[JFFS2] Remove broken insert_point optimisation in jffs2_add_tn_to_tree()\n\nThe original code would remember, during the first pass over the tree,\na suitable place to start the insertion from when we eventually come\nto add a new node.\n\nThe optimisation was broken, and we sometimes ended up inserting a new\nnode in the wrong place because we started the insertion from the wrong\npoint.\n\nJust ditch the optimisation and start the insertion from the root of the\ntree, for now. I\u0027ll try it again when I\u0027m feeling cleverer.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "1123e2a85941c7f506bd42c91c7e9ab74fc42d79",
      "tree": "dd8474b7d3a00442178b18baf62c09642d306845",
      "parents": [
        "3fddb6c985e3823c991399840d2d5ef5940e1b60"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 05 16:29:34 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 05 16:29:34 2007 +0100"
      },
      "message": "[JFFS2] Remember to calculate overlap on nodes which replace older nodes\n\nThis fixes a problem Artem found with the integck test tool -- we\nweren\u0027t correctly keeping track of the \u0027overlap\u0027 flag in some cases,\nwhich led to the nodes being played back in an incorrect order and file\ncorruption.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "3fddb6c985e3823c991399840d2d5ef5940e1b60",
      "tree": "d8da4d00e1c66eca503c511913532e6d98ea0ab2",
      "parents": [
        "693ef66d8914f50cb899b5268676ea508d1f3178"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 05 09:52:49 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat May 05 09:52:49 2007 +0100"
      },
      "message": "[JFFS2] Don\u0027t advance c-\u003ewbuf_ofs to next eraseblock after wbuf flush\n\nAfter flushing the last page of an eraseblock, don\u0027t leave the\nwbuf \u0027offset\u0027 field pointing at the start of the next physical\neraseblock. This was causing a BUG() on NOR-ECC (Sibley) flash, where\nwe start writing a little further in, after the cleanmarker.\n\nDebugged by Alexander Belyakov \u003cabelyako@googlemail.com\u003e\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "7c96b7a146eb81d13be738709c36752c20abe4fc",
      "tree": "9b7fa70aef6a888a3169faaee13e1d36d4548556",
      "parents": [
        "431bca73f7bc96cf9d51ae9bfd783d3c5bafd7cb"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed May 02 08:36:21 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed May 02 08:36:21 2007 +0100"
      },
      "message": "[JFFS2] Remove dead file histo_mips.h\n\nIts contents were subsumed into compr_rubin.c in a previous\ncommit, but I forgot to git-rm it.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "d1da4e50e5d09f02c340927a4fcb7f54202fa033",
      "tree": "7f98317bdd45dbdb7644e9179891c5af6a3a8ef1",
      "parents": [
        "78ab67da1002d954ea4c3e2b441e2483c41f94e8",
        "a205752d1ad2d37d6597aaae5a56fc396a770868"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 27 19:16:19 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 27 19:16:19 2007 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/mtd/Kconfig\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "0029da3bf430eea498eee8cef5933f9214534b8a",
      "tree": "8fd93094f370e5bde1640df97764ac56d3f118ba",
      "parents": [
        "801c135ce73d5df1caf3eca35b66a10824ae0707"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Oct 04 19:15:21 2006 +0300"
      },
      "committer": {
        "name": "Frank Haverkamp",
        "email": "haver@vnet.ibm.com",
        "time": "Fri Apr 27 14:24:08 2007 +0300"
      },
      "message": "JFFS2: add UBI support\n\nThis patch make JFFS2 able to work with UBI volumes via the emulated MTD\ndevices which are directly mapped to these volumes.\n\nSigned-off-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\n"
    },
    {
      "commit": "f6449f4ece2bf283500bda73edcbea82f2cb3a1b",
      "tree": "8b506666f2af8d79375290e4504f35b2b6a7e6a3",
      "parents": [
        "61c4b23770d1b0cef7c06a23378ab544eb0c64b4"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Apr 26 07:27:04 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Apr 26 07:27:04 2007 +0100"
      },
      "message": "[JFFS2] Fix compr_rubin.c build after include file elimination.\n\nIt seems to be silly season lately.\n\n(Oops, test builds are more useful if the file in question is actually\nconfigured on. dwmw2).\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "61c4b23770d1b0cef7c06a23378ab544eb0c64b4",
      "tree": "b4cf1e784621d2f60a3494ded1d5852934107c22",
      "parents": [
        "c00c310eac04a28d2143368ae988716792ed53ce"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 17:04:23 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 17:04:23 2007 +0100"
      },
      "message": "[JFFS2] Handle inodes with only a single metadata node with non-zero isize\n\nThis should never happen unless there\u0027s corruption on the medium and the\nactual data nodes go missing. But the failure mode (an oops when we assume\nthe fragtree isn\u0027t empty and go looking for its last node) isn\u0027t useful.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "c00c310eac04a28d2143368ae988716792ed53ce",
      "tree": "38ddce44f83105b2d593620c34638d699052857f",
      "parents": [
        "c36c46d53b2f95bfcbe992cfb541a78ab92310a4"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 14:16:47 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 14:16:47 2007 +0100"
      },
      "message": "[JFFS2] Tidy up licensing/copyright boilerplate.\n\nIn particular, remove the bit in the LICENCE file about contacting\nRed Hat for alternative arrangements. Their errant IS department broke\nthat arrangement a long time ago -- the policy of collecting copyright\nassignments from contributors came to an end when the plug was pulled on\nthe servers hosting the project, without notice or reason.\n\nWe do still dual-license it for use with eCos, with the GPL+exception\nlicence approved by the FSF as being GPL-compatible. It\u0027s just that nobody\nhas the right to license it differently.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "0dec4c8bc6ed62a65b61594aa754e21270423796",
      "tree": "42f4f16e9173fc75aa27e69510b9b4e123122d30",
      "parents": [
        "df8e96f39103adf5a13332d784040a2c62667243"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "joakim.tjernlund@transmode.se",
        "time": "Sat Mar 10 17:08:44 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 04:13:06 2007 +0100"
      },
      "message": "[JFFS2] Better fix for all-zero node headers\n\nNo need to check for all-zero header since the header cannot\nbe zero due to other checks.\n\nReplace the all-zero header check in readinode.c with a\ncheck for the magic word.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "df8e96f39103adf5a13332d784040a2c62667243",
      "tree": "01d7259260f628f4075c39c1cc7804b72998a601",
      "parents": [
        "44b998e1eb254edc87177819ee693690fac68b7f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 03:23:42 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 25 03:23:42 2007 +0100"
      },
      "message": "[JFFS2] Improve read_inode memory usage, v2.\n\nWe originally used to read every node and allocate a jffs2_tmp_dnode_info\nstructure for each, before processing them in (reverse) version order\nand discarding the ones which are obsoleted by later nodes.\n\nWith huge logfiles, this behaviour caused memory problems. For example, a\nfile involved in OLPC trac #1292 has 1822391 nodes, and would cause the XO\nmachine to run out of memory during the first stage of read_inode().\n\nInstead of just inserting nodes into a tree in version order as we find\nthem, we now put them into a tree in order of their offset within the\nfile, which allows us to immediately discard nodes which are completely\nobsoleted.\n\nWe don\u0027t use a full tree with \u0027fragments\u0027 pointing to the real data\nstructure, as we do in the normal fragtree. We sort only on the start\naddress, and add an \u0027overlapped\u0027 flag to the tmp_dnode_info to indicate\nthat the node in question is (partially) overlapped by another.\n\nWhen the scan is complete, we start at the end of the file, adding each\nnode to a real fragtree as before. Where the node is non-overlapped, we\njust add it (it doesn\u0027t matter that it\u0027s not the latest version; there is\nno overlap). When the node at the end of the tree _is_ overlapped, we sort\nit and all its overlapping nodes into version order and then add them to\nthe fragtree in that order.\n\nThis \u0027early discard\u0027 reduces the peak allocation of tmp_dnode_info\nstructures from 1.8M to a mere 62872 (3.5%) in the degenerate case\nreferenced above.\n\nThis version of the patch also correctly rememembers the highest node\nversion# seen for an inode when it\u0027s scanned.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "44b998e1eb254edc87177819ee693690fac68b7f",
      "tree": "2f7d5511d8f0efc9e824a042d5ff50793a74de31",
      "parents": [
        "566865a2a4791c9290155f651ee0c2c606db0b1d"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Apr 23 12:11:46 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Apr 23 12:11:46 2007 +0100"
      },
      "message": "[JFFS2] Improve failure mode if inode checking leaves unchecked space.\n\nWe should never find the unchecked size is non-zero after we\u0027ve finished\nchecking all inodes. If it happens, used to BUG(), leaving the alloc_sem\nheld and deadlocking. Instead, just return -ENOSPC after complaining. The\nGC thread will die, but read-only operation should be able to continue and\nthe file system should be unmountable.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "566865a2a4791c9290155f651ee0c2c606db0b1d",
      "tree": "e4dd0114aa60857937a98dc89aca201afc0c8595",
      "parents": [
        "3e67fe4543333048e486d7f360a0e2ae5d76c053"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Apr 23 12:07:17 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Apr 23 12:07:17 2007 +0100"
      },
      "message": "[JFFS2] Fix cross-endian build.\n\nWhen compiling a LE-capable JFFS2 on PowerPC, wbuf.c fails to compile:\n\nfs/jffs2/wbuf.c:973: error: braced-group within expression allowed only inside a function\nfs/jffs2/wbuf.c:973: error: initializer element is not constant\nfs/jffs2/wbuf.c:973: error: (near initialization for ‘oob_cleanmarker.magic’)\nfs/jffs2/wbuf.c:974: error: braced-group within expression allowed only inside a function\nfs/jffs2/wbuf.c:974: error: initializer element is not constant\nfs/jffs2/wbuf.c:974: error: (near initialization for ‘oob_cleanmarker.nodetype’)\nfs/jffs2/wbuf.c:975: error: braced-group within expression allowed only inside a function\nfs/jffs2/wbuf.c:976: error: initializer element is not constant\nfs/jffs2/wbuf.c:976: error: (near initialization for ‘oob_cleanmarker.totlen’)\n\nProvide constant_cpu_to_je{16,32} functions, and use them for initialising the\noffending structure.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "a491486a2087ac3dfc00efb4f838c8d684afaf54",
      "tree": "1e464d41597184ece141e5a025f55fa1f1548ab8",
      "parents": [
        "ec98c681a5355469eee70227b7e0a88f0d688483"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Fri Mar 16 16:15:45 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 20 23:09:28 2007 -0400"
      },
      "message": "[JFFS2] Obsolete dirent nodes immediately on unlink, where possible.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "c2aecda79cd872679b9b11f9e59d797fb4c7d677",
      "tree": "3e4faadfeaf51cd849592029f757503008720585",
      "parents": [
        "10731f83009e2556f98ffa5c7c2cbffe66dacfb3"
      ],
      "author": {
        "name": "Joakim Tjernlund",
        "email": "Joakim.Tjernlund@transmode.se",
        "time": "Tue Mar 27 13:32:09 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 17 14:07:34 2007 -0400"
      },
      "message": "[JFFS2] Speed up mount for directly-mapped NOR flash\n\nRemove excessive scanning of empty flash after a clean\nmarker for users of the point/unpoint method. cfi_cmdset_0001\nuses point/unpoint by default iff flash mapping is linear.\nThe speedup is several orders of magnitude if FS is less than\nhalf full.\n\nSigned-off-by: Joakim Tjernlund \u003cJoakim.Tjernlund@transmode.se\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "10731f83009e2556f98ffa5c7c2cbffe66dacfb3",
      "tree": "8b3f3c446e82e06ab1794af7e1c04bf300f3b023",
      "parents": [
        "7f762ab24ca2215b69a1395b5b58877f8282a089"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Apr 04 13:59:11 2007 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 17 14:05:48 2007 -0400"
      },
      "message": "[JFFS2] fix buffer sise calculations in jffs2_get_inode_nodes()\n\nIn read inode we have an optimization which prevents one\nmin. I/O unit (e.g. NAND page) to be read more then once.\n\nNamely, at the beginning we do not know which node type we read,\nso we read so we assume we read the directory entry, because it\nhas the smallest node header. When we read it, we read up to the\nnext min. I/O unit, just because if later we\u0027ll need to read more,\nwe already have this data.\n\nIf it turns out to be that the node is not directory entry, and\nwe need more data, and we did not read it because it sits in the\nnext min. I/O unit, we read the whole next (or several next)\nmin. I/O unit(s). And if it happens to be that we read a data node,\nand we\u0027ve read part of its data, we calculate partial CRC.\nSo if later we need to check data CRC, we\u0027ll only read the rest\nof the data from further min. I/O units and continue CRC checking.\n\nThis code was a bit messy and buggy. The bug was that it assumed\nrelatively large min. I/O unit, so that the largest node header\ncould overlap only one min. I/O unit boundary.\n\nThis parch clean-ups the code a bit and fixes this bug.\nThe patch was not tested on flash with small min. I/O unit, like\nNOR-ECC, nut it was tested on NAND with 512 bytes NAND page, so\nit at least does not break NAND. It was also tested with mtdram\nso it should not break NOR.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "7f762ab24ca2215b69a1395b5b58877f8282a089",
      "tree": "38774bcd57912c5d6506959c86ee639cdeebe7b3",
      "parents": [
        "99c2594f0e13de1ca84f97efc3f9e7bc49f91e11"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Wed Apr 04 13:47:53 2007 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 17 13:56:44 2007 -0400"
      },
      "message": "[JFFS2] Disable summary after wbuf recovery\n\nAfter a write error, any data in the write buffer must\nbe relocated.  This is handled by the jffs2_wbuf_recover\nfunction.  This function does not fix up the erase block\nsummary information that is collected for writing at the\nend of the block, which results in an incorrect summary\n(or BUG if the summary was found to be empty).\n\nAs the summary is not essential (it is an optimisation),\nit may be disabled for the current erase block when this\nsituation arises.  This patch does that.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "99c2594f0e13de1ca84f97efc3f9e7bc49f91e11",
      "tree": "1443d71d19473758d21bbdcb3a3f080b9449c4f2",
      "parents": [
        "a5ac8aeb29000fcab8d91848273a6616fcd039ee"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Thu Mar 29 11:00:47 2007 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 17 13:56:23 2007 -0400"
      },
      "message": "[JFFS2] Prevent list corruption when handling write errors\n\nIf a write error occurs, the affected block is placed on the\nbad_used_list.  In the case that the write error occured\nwhen writing summary data the block was also being placed on\nthe dirty_list, which caused list corruption and ultimately\na soft lockup in jffs2_mark_node_obsolete. This fixes that.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "b0afbbec4981417f79e05865a36e57abfc289002",
      "tree": "b0e14a643310de8e1232859f5b4af3effe3a7ea6",
      "parents": [
        "4226b510371efd9cdc628663527d36aee36054a9"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Mar 21 11:07:05 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 17 13:53:51 2007 -0400"
      },
      "message": "[JFFS2] fix deadlock on error path\n\nWhen the MTD driver returns write failure, the following deadlock\noccurs:\n\nWe are in __jffs2_flush_wbuf(), we hold \u0026c-\u003ewbuf_sem. Write failure.\njffs2_wbuf_recover()-\u003ejffs2_reserve_space_gc()-\u003ejffs2_do_reserve_space()\n-\u003ejffs2_erase_pending_blocks()-\u003ejffs2_flash_read()\n\nand it tries to lock \u0026c-\u003ewbuf_sem again. Deadlock.\n\nReported-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "53043002ef6cc0369fd5c5fa0a257f290ba6a3a6",
      "tree": "cad0817f06b09b442eb395b4fc201e1deade8f3f",
      "parents": [
        "873b6a230652803d1de480f5d3b802e4ffd0bcad"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@inhell4.tec.linutronix.de",
        "time": "Thu Apr 05 11:09:01 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 17 18:26:18 2007 +0100"
      },
      "message": "[JFFS2] check node crc before doing anything else\n\nCheck the node CRC on scan before doing anything else with the node.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "8dc64fca75b631142f282047d7f6ae9e8af82543",
      "tree": "fc8669a5380744346f11dd7fa35feb7c5f0d6af6",
      "parents": [
        "68aa0fa87f6d4b2f5e8ad39ecaec8bba9137bb3d"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Mar 26 21:45:41 2007 -0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Apr 02 14:11:25 2007 -0400"
      },
      "message": "[JFFS2] Delete everything related to obsolete JFFS2_PROC option\n\nDelete everything related to the apparently non-existent kernel config\noption JFFS2_PROC.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "3a6effe81fa0bd2fb9c6c5ecde665492536733e3",
      "tree": "37c44f9cb0826e3b3e5eacb82031a7608c22b62e",
      "parents": [
        "f47273e5c8f679220091335e0bed79e46237cfda"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Sat Mar 10 03:57:25 2007 -0500"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Mar 10 10:16:36 2007 +0100"
      },
      "message": "[JFFS2] Remove superfluous source file fs/jffs2/comprtest.c\n\n  Delete the obsolete source file fs/jffs2/comprtest.c.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "0feba829ee82a6e43baabe3f0bdf91bd937a67a1",
      "tree": "a12bbe59f2d8a9ff208a4670395c9a1fae5bbbd7",
      "parents": [
        "c7258a4477b5ed0243c28ec107b98bb946757448"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Mar 08 10:35:10 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Mar 09 12:29:39 2007 +0000"
      },
      "message": "[JFFS2] print a message when marking bad block\n\nNew bad eraseblock is an event which is important enough to be printed\nabout.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "c7258a4477b5ed0243c28ec107b98bb946757448",
      "tree": "c1b3bce6ea3567ac7e23241ec13a2c4a40972b0f",
      "parents": [
        "470bc844361b238bcbe6a07ba47d51fca25f2742"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Mar 09 11:44:00 2007 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Mar 09 11:44:00 2007 +0000"
      },
      "message": "[JFFS2] Check for all-zero node headers\n\nDue to a poor choice of CRC32 seed, a node header which is all zeroes\nwould pass the CRC32 check. Explicitly check for this case, and treat it\nas we do a CRC failure.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "f8a922c7bb4d93bd84b7371a8e2571e667d2afb5",
      "tree": "3c412fe0a57cfd222e2a4b63f5599e5a2a08f08f",
      "parents": [
        "89e2bf61da9d7664293a57100a419f8116252607"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Mar 08 10:28:30 2007 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Mar 08 10:28:30 2007 +0000"
      },
      "message": "[JFFS2] Use yield() between GC passes in background thread.\n\nThe garbage collection thread is strictly an optimisation. Everything it\ndoes would also be done just-in-time in the context of something in\nuserspace trying to access the file system.\n\nSometimes, however, it\u0027s a pessimisation. Especially during early boot\nwhen it\u0027s checksumming nodes and scanning inodes which are shortly going\nto be pulled in by read_inode anyway. We end up building the rbtree of\nnode coverage twice for the same inode.\n\nBy switching to yield() instead of cond_resched() in the main loop, we\nobserve boot times on the OLPC system going down from about 100 seconds to\n60.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "180bfb31fef77815d56b875d4f28d353fdc87bf8",
      "tree": "67a7fbae2581e97639473d76dc5a359556c090db",
      "parents": [
        "1f92267c51a514f35ad5b0fd46cb099c0980b679"
      ],
      "author": {
        "name": "Vitaly Wool",
        "email": "vwool@ru.mvista.com",
        "time": "Tue Mar 06 17:01:04 2007 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Mar 08 09:18:31 2007 +0000"
      },
      "message": "[JFFS2] Fix writebuffer recovery in the first page of a block\n\nFor the case when nand_write_page fail with -EIO for the first page in an\neraseblock, jffs2_wbuf_recover ends up producing a BUG in jffs2_block_refile\nas jeb-\u003efirst_node is not yet set up (it\u0027s set up later in jffs2_wbuf_recover).\nThis BUG is not really a bug; it\u0027s just jffs2_wbuf_recover calling\njffs2_block_refile with the wrong second parameter.\nThis patch takes care of this situation.\n\nSigned-off-by: Vitaly Wool \u003cvwool@ru.mvista.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "4935361766cc73949fe032cd157d314f288922ba",
      "tree": "1584f81525ae05a04d515b13a4787cd8eed46029",
      "parents": [
        "2874b391bd78a5b8cb84be67297a345fbdec4ac8",
        "4f65992381112acd7d2732665a9eae492c2c9de6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 19 13:34:11 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 19 13:34:11 2007 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (49 commits)\n  [MTD] [NAND] S3C2412 fix hw ecc\n  [MTD] [NAND] Work around false compiler warning in CAFÉ driver\n  [JFFS2] printk warning fixes\n  [MTD] [MAPS] ichxrom warning fix\n  [MTD] [MAPS] amd76xrom warning fix\n  [MTD] [MAPS] esb2rom warning fixes\n  [MTD] [MAPS] ck804xrom warning fix\n  [MTD] [MAPS] netsc520 warning fix\n  [MTD] [MAPS] sc520cdp warning fix\n  [MTD] [ONENAND] onenand_base warning fix\n  [MTD] [NAND] eXcite nand flash driver\n  [MTD] Improve heuristic for detecting wrong-endian RedBoot partition table\n  [MTD] Fix RedBoot partition parsing regression harder.\n  [MTD] [NAND] S3C2410: Hardware ECC correction code\n  [JFFS2] Use MTD_OOB_AUTO to automatically place cleanmarker on NAND\n  [MTD] Clarify OOB-operation interface comments\n  [MTD] remove unused ecctype,eccsize fields from struct mtd_info\n  [MTD] [NOR] Intel: remove ugly PROGREGION macros\n  [MTD] [NOR] STAA: use writesize instead off eccsize to represent ECC block\n  [MTD] OneNAND: Invalidate bufferRAM after erase\n  ...\n"
    },
    {
      "commit": "7be26bfb2ef3b3a768232d11d9aad9222b053d0a",
      "tree": "da1d4045ae038da18160c9dce8a1e727ea409725",
      "parents": [
        "3a38d3af92c423687fa3c916ad3e1288980024e3"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Sat Feb 17 16:02:10 2007 -0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Feb 18 16:43:14 2007 +0000"
      },
      "message": "[JFFS2] printk warning fixes\n\nfs/jffs2/wbuf.c: In function \u0027jffs2_check_oob_empty\u0027:\nfs/jffs2/wbuf.c:993: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 3 has type \u0027size_t\u0027\nfs/jffs2/wbuf.c:993: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027size_t\u0027\nfs/jffs2/wbuf.c: In function \u0027jffs2_check_nand_cleanmarker\u0027:\nfs/jffs2/wbuf.c:1036: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 3 has type \u0027size_t\u0027\nfs/jffs2/wbuf.c:1036: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027size_t\u0027\nfs/jffs2/wbuf.c: In function \u0027jffs2_write_nand_cleanmarker\u0027:\nfs/jffs2/wbuf.c:1062: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 3 has type \u0027size_t\u0027\nfs/jffs2/wbuf.c:1062: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027size_t\u0027\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ee9b6d61a2a43c5952eb43283f8db284a4e70b8a",
      "tree": "afb0340e79d3e9d14f39df20e165ce2efe941b18",
      "parents": [
        "c5ef1c42c51b1b5b4a401a6517bdda30933ddbaf"
      ],
      "author": {
        "name": "Josef \u0027Jeff\u0027 Sipek",
        "email": "jsipek@cs.sunysb.edu",
        "time": "Mon Feb 12 00:55:41 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:47 2007 -0800"
      },
      "message": "[PATCH] Mark struct super_operations const\n\nThis patch is inspired by Arjan\u0027s \"Patch series to mark struct\nfile_operations and struct inode_operations const\".\n\nCompile tested with gcc \u0026 sparse.\n\nSigned-off-by: Josef \u0027Jeff\u0027 Sipek \u003cjsipek@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92e1d5be91a0e3ffa5c4697eeb09b2aa22792122",
      "tree": "4eb22a9f6c38e9f4cc2a5100cd6659b0af08b7ae",
      "parents": [
        "754661f143e70d66eae6c48532ca245aa05dec0e"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct inode_operations const 2\n\nMany struct inode_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a7a6ace1406f95c3edb8365788f85984377f3832",
      "tree": "852a51608c1e2f437786750ca326ee8ce4b61364",
      "parents": [
        "73a4421c5a0aa77b996891e7616b396c360b3ed8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Jan 31 11:38:53 2007 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Feb 09 15:34:08 2007 +0000"
      },
      "message": "[JFFS2] Use MTD_OOB_AUTO to automatically place cleanmarker on NAND\n\nNowadays MTD supports an MTD_OOB_AUTO option which allows users\nto access free bytes in NAND\u0027s OOB as a contiguous buffer, although\nit may be highly discontinuous.\n\nThis patch teaches JFFS2 to use this nice feature instead of the\nold MTD_OOB_PLACE option. This for example caused problems with\nOneNAND. Now JFFS2 does not care how are the free bytes situated.\n\nThis may change position of the clean marker on some flashes,\nbut this is not a problem. JFFS2 will just re-erase the empty\neraseblocks and write the new (correct) clean marker.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "cfa72397cf3a15f2841447440fd53980b3ecd624",
      "tree": "d6e3dd264f523845e0c0fb05da377485c3bc40e6",
      "parents": [
        "0d36da3b409536a24266c5f0972f2e1cfae1afd4"
      ],
      "author": {
        "name": "Dmitry Adamushko",
        "email": "dmitry.adamushko@gmail.com",
        "time": "Fri Jan 19 01:20:30 2007 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Feb 09 15:00:21 2007 +0000"
      },
      "message": "JFFS2: memory leak in jffs2_do_mount_fs()\n\nIf  jffs2_sum_init()  fails,  c-\u003eblocks is not freed neither in\njffs2_do_mount_fs() nor in jffs2_do_fill_super().\n\nSigned-off-by: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "9cdf083f981b8d37b3212400a359368661385099",
      "tree": "aa15a6a08ad87e650dea40fb59b3180bef0d345b",
      "parents": [
        "e499e01d234a31d59679b7b1e1cf628d917ba49a",
        "a8b3485287731978899ced11f24628c927890e78"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jan 18 10:34:51 2007 +1100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Thu Jan 18 10:34:51 2007 +1100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "e499e01d234a31d59679b7b1e1cf628d917ba49a",
      "tree": "176b32c989fc852d69090adfc0835028d0854f29",
      "parents": [
        "8fa7a41f65956ac3b6653dc6274c5111c99093ff"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Jan 13 08:19:03 2007 +0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Jan 13 08:19:03 2007 +0800"
      },
      "message": "[JFFS2] debug.h: include \u003clinux/sched.h\u003e for current-\u003epid\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "abb536e7ac8719243cfc4b40b39bf3eefd028f82",
      "tree": "82b84bffa39ae9a4f469e3da751934ac8fadd861",
      "parents": [
        "a2166b933ef9099b4fa6860b165e6dac553a97aa"
      ],
      "author": {
        "name": "Kyungmin Park",
        "email": "kyungmin.park@samsung.com",
        "time": "Fri Dec 22 16:39:30 2006 +0900"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Jan 10 14:03:20 2007 +0200"
      },
      "message": "[JFFS2] use the ref_offset macro\n\nDon\u0027t use ref-\u003eflash_offset directly in debugging code, use the ref_offset macro instead.\n\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\n"
    },
    {
      "commit": "a2166b933ef9099b4fa6860b165e6dac553a97aa",
      "tree": "6b9828492a1edb156e981082b931f16f832baa1f",
      "parents": [
        "85de3d9bc779c198f8667cffc291b0ecad082b5e"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Thu Dec 28 12:01:41 2006 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Jan 10 14:01:00 2007 +0200"
      },
      "message": "[JFFS2] Reschedule in loops\n\nMake JFFS2 nicer and teach it to call cond_resched() in loops\nwhich may be quite large.\n\nSigned-off-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\n"
    },
    {
      "commit": "85de3d9bc779c198f8667cffc291b0ecad082b5e",
      "tree": "8e1e3c8342c4915decf39c8b1b3c6e84a5e78f4c",
      "parents": [
        "aba54da3d05e910199ea8255992c244c9abadd91"
      ],
      "author": {
        "name": "Amit Choudhary",
        "email": "amit2030@gmail.com",
        "time": "Tue Jan 02 21:16:10 2007 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jan 02 21:16:10 2007 +0000"
      },
      "message": "[JFFS2] Fix error-path leak in summary scan\n\nSigned-off-by: Amit Choudhary \u003camit2030@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "aba54da3d05e910199ea8255992c244c9abadd91",
      "tree": "fc634ff11819f2f94ef23478d6471757dc21c6d6",
      "parents": [
        "0bf3a9d82adc62fb05e3f108ddd46eb088960f26"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Tue Dec 19 15:45:23 2006 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Dec 19 14:20:16 2006 +0000"
      },
      "message": "[JFFS2] add cond_resched() when garbage collecting deletion dirent\n\nWe observe soft lockups when doing heavy test which creates\ndirectory with a lot of direntries and deletes them. This\ncycle is the reason fo this. Make it nicer and add cond_resched()\ninside of it.\n\nSigned-off-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "3d375d9e0feee79e63a552a3eb3b46f989afce34",
      "tree": "2fa6b2d68831adf9ac909ab5ae6b86a465c50282",
      "parents": [
        "db06e2a93ff73270e0053c37c88073094e77913d"
      ],
      "author": {
        "name": "Yan Burman",
        "email": "burman.yan@gmail.com",
        "time": "Mon Dec 04 15:03:01 2006 -0800"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Dec 10 11:50:34 2006 +0000"
      },
      "message": "[JFFS2] replace kmalloc+memset with kzalloc\n\nReplace kmalloc+memset with kzalloc\n\nSigned-off-by: Yan Burman \u003cburman.yan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ec2e203c8297d576c74a101cebd657bc1f180dd1",
      "tree": "c47f9eacbe60b7731bba054c46f5a32a3be33909",
      "parents": [
        "4d832d460e13dd9c2cc93739ac0fd75bd8645e93"
      ],
      "author": {
        "name": "Josef Sipek",
        "email": "jsipek@fsl.cs.sunysb.edu",
        "time": "Fri Dec 08 02:37:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:46 2006 -0800"
      },
      "message": "[PATCH] struct path: convert jffs2\n\nSigned-off-by: Josef Sipek \u003cjsipek@fsl.cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7dfb71030f7636a0d65200158113c37764552f93",
      "tree": "276b812903d377b16d8828e888552fd256f48aab",
      "parents": [
        "8a05aac2631aa0e6494d9dc990f8c68ed8b8fde7"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] Add include/linux/freezer.h and move definitions from sched.h\n\nMove process freezing functions from include/linux/sched.h to freezer.h, so\nthat modifications to the freezer or the kernel configuration don\u0027t require\nrecompiling just about everything.\n\n[akpm@osdl.org: fix ueagle driver]\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e94b1766097d53e6f3ccfb36c8baa562ffeda3fc",
      "tree": "93fa0a8ab84976d4e89c50768ca8b8878d642a0d",
      "parents": [
        "54e6ecb23951b195d02433a741c7f7cb0b796c78"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_KERNEL\n\nSLAB_KERNEL is an alias of GFP_KERNEL.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "914e26379decf1fd984b22e51fd2e4209b7a7f1b",
      "tree": "4f20ee40e959699e344cdff0e117d309d238f6be",
      "parents": [
        "f6a570333e554b48ad589e7137c77c57809eee81"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Oct 18 13:55:46 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 04 02:00:24 2006 -0500"
      },
      "message": "[PATCH] severing fs.h, radix-tree.h -\u003e sched.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9c74034f8fc5d93fbe5656421cbbdc4c76ddda28",
      "tree": "e5a205e124c0e42899743d765598f82a228156c2",
      "parents": [
        "9fe912cea32aec18f860c95e8574410b5892481b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Oct 11 14:52:47 2006 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "dedekind@infradead.org",
        "time": "Wed Nov 29 17:06:38 2006 +0200"
      },
      "message": "[MTD] return error code from get_mtd_device()\n\nget_mtd_device() returns NULL in case of any failure. Teach it to return an\nerror code instead. Fix all users as well.\n\nSigned-off-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\n"
    },
    {
      "commit": "7014568bad55c20b7ee4f439d78c9e875912d51f",
      "tree": "1b558ef8d77d31925cc396ed69d8f785615cf09f",
      "parents": [
        "191876729901d0c8dab8a331f9a1e4b73a56457b"
      ],
      "author": {
        "name": "Vitaly Wool",
        "email": "vwool@ru.mvista.com",
        "time": "Fri Nov 03 18:20:38 2006 +0300"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Nov 28 22:39:03 2006 +0000"
      },
      "message": "[MTD] [NAND] remove len/ooblen confusion.\n\nAs was discussed between Ricard Wanderlöf, David Woodhouse, Artem \nBityutskiy and me, the current API for reading/writing OOB is confusing. \n\nThe thing that introduces confusion is the need to specify ops.len \ntogether with ops.ooblen for reads/writes that concern only OOB not data \narea. So, ops.len is overloaded: when ops.datbuf !\u003d NULL it serves to \nspecify the length of the data read, and when ops.datbuf \u003d\u003d NULL, it \nserves to specify the full OOB read length.\n\nThe patch inlined below is the slightly updated version of the previous \npatch serving the same purpose, but with the new Artem\u0027s comments taken \ninto account.\n\nArtem, BTW, thanks a lot for your valuable input!\n\nSigned-off-by: Vitaly Wool \u003cvwool@ru.mvista.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "513b046c96cc2fbce730a3474f6f7ff0c4fdd05c",
      "tree": "e8006368b6f643067486f92405a404757807d6da",
      "parents": [
        "82810b7b6cc7a74c68881a13b0eb66c7a6370fcc",
        "c7a3bd177f248d01ee18a01d22048c80e071c331"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 21 16:46:04 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Oct 21 16:46:04 2006 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    }
  ],
  "next": "c7cf0c68ea4e2020db7204eb0ed4412b2cbb167d"
}
