)]}'
{
  "log": [
    {
      "commit": "3d0518f4758eca4339e75e5b9dbb7e06a5ce08b4",
      "tree": "30a45a1c82d830646a69591c470680573e14de07",
      "parents": [
        "8bad4597c2d71365adfa846ea1ca6cf99161a455"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sat Feb 14 23:01:36 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Feb 14 23:01:36 2009 -0500"
      },
      "message": "ext4: New rec_len encoding for very large blocksizes\n\nThe rec_len field in the directory entry is 16 bits, so to encode\nblocksizes larger than 64k becomes problematic.  This patch allows us\nto supprot block sizes up to 256k, by using the low 2 bits to extend\nthe range of rec_len to 2**18-1 (since valid rec_len sizes must be a\nmultiple of 4).  We use the convention that a rec_len of 0 or 65535\nmeans the filesystem block size, for compatibility with older kernels.\n\nIt\u0027s unlikely we\u0027ll see VM pages of up to 256k, but at some point we\nmight find that the Linux VM has been enhanced to support filesystem\nblock sizes \u003e than the VM page size, at which point it might be useful\nfor some applications to allow very large filesystem block sizes.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "abda14189251563a50f56da5ea2e37e904ac4cba",
      "tree": "4c6e3a00f247cad1c41896f749c2c01cebff579f",
      "parents": [
        "4ec110281379826c5cf6ed14735e47027c3c5765"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 00:20:32 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 00:20:32 2009 -0500"
      },
      "message": "ext4: Make printk\u0027s consistently prefixed with \"EXT4-fs: \"\n\nPreviously, some were \"ext4: \", and some were \"EXT4: \"; change them to\nbe consistent with most ext4 printk\u0027s, which is to use \"EXT4-fs: \".\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "498e5f24158da7bf8fa48074a70e370e22844492",
      "tree": "1434b349c8eca3b0667af0b385533cbcd599c1c3",
      "parents": [
        "a9df9a49102f3578909cba7bd33784eb3b9caaa4"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Nov 05 00:14:04 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Nov 05 00:14:04 2008 -0500"
      },
      "message": "ext4: Change unsigned long to unsigned int\n\nConvert the unsigned longs that are most responsible for bloating the\nstack usage on 64-bit systems.\n\nNearly all places in the ext3/4 code which uses \"unsigned long\" is\nprobably a bug, since on 32-bit systems a ulong a 32-bits, which means\nwe are wasting stack space on 64-bit systems.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "3c37fc86d20fe35be656f070997d62f75c2e4874",
      "tree": "eb9593356a2aa3233ab8f198f044e81413423cde",
      "parents": [
        "8c9fa93d51123c5540762b1a9e1919d6f9c4af7c"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 11:39:08 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 22:37:55 2008 -0400"
      },
      "message": "ext4: Fix duplicate entries returned from getdents() system call\n\nFix a regression caused by commit d0156417, \"ext4: fix ext4_dx_readdir\nhash collision handling\", where deleting files in a large directory\n(requiring more than one getdents system call), results in some\nfilenames being returned twice.  This was caused by a failure to\nupdate info-\u003ecurr_hash and info-\u003ecurr_minor_hash, so that if the\ndirectory had gotten modified since the last getdents() system call\n(as would be the case if the user is running \"rm -r\" or \"git clean\"),\na directory entry would get returned twice to the userspace.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\nThis patch fixes the bug reported by Markus Trippelsdorf at:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11844\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nTested-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\n"
    },
    {
      "commit": "9d9f177572d9e4eba0f2e18523b44f90dd51fe74",
      "tree": "91104778c9f4bc15fc483e44314733818865b264",
      "parents": [
        "cf17fea6575cb1739552e1d0cb2b446305ee3d0c"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Oct 09 11:15:52 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Oct 09 11:15:52 2008 -0400"
      },
      "message": "ext4: Avoid printk floods in the face of directory corruption\n\nNote: some people thinks this represents a security bug, since it\nmight make the system go away while it is printing a large number of\nconsole messages, especially if a serial console is involved.  Hence,\nit has been assigned CVE-2008-3528, but it requires that the attacker\neither has physical access to your machine to insert a USB disk with a\ncorrupted filesystem image (at which point why not just hit the power\nbutton), or is otherwise able to convince the system administrator to\nmount an arbitrary filesystem image (at which point why not just\ninclude a setuid shell or world-writable hard disk device file or some\nsuch).  Me, I think they\u0027re just being silly. --tytso\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: linux-ext4@vger.kernel.org\nCc: Eugene Teo \u003ceugeneteo@kernel.sg\u003e\n"
    },
    {
      "commit": "af5bc92dded4d98dfeabc8b5b9812571345b263d",
      "tree": "5cfaf27e673a09d3ad1341c175559be0a3ea990d",
      "parents": [
        "e5f8eab8851dff162e7ade46f084cb8575dc45f7"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 22:25:24 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 22:25:24 2008 -0400"
      },
      "message": "ext4: Fix whitespace checkpatch warnings/errors\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "4776004f54e4190e104caf620fd0fa5909412236",
      "tree": "ebd37cb847d58d434ad4ea3bd98c77256f05347e",
      "parents": [
        "1f7c14c62ce63805f9574664a6c6de3633d4a354"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 23:00:52 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 23:00:52 2008 -0400"
      },
      "message": "ext4: Add printk priority levels to clean up checkpatch warnings\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "d015641734cde55d2fce48a6db3983c8a029fe05",
      "tree": "af2f6f0ef56d3b525227196f0caed1fb19ab4014",
      "parents": [
        "cd21322616c3af265d39bf15321d436e667a5dd1"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 19 21:57:43 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 19 21:57:43 2008 -0400"
      },
      "message": "ext4: Fix ext4_dx_readdir hash collision handling\n\nThis fixes a bug where readdir() would return a directory entry twice\nif there was a hash collision in an hash tree indexed directory.\n\nSigned-off-by: Eugene Dashevsky \u003ceugene@ibrix.com\u003e\nSigned-off-by: Mike Snitzer \u003cmsnitzer@ibrix.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "d2a1763791a634e315ec926b62829c1e88842c86",
      "tree": "75a701a89829ba7d728fdc19c30aa2794b9706b9",
      "parents": [
        "e8ced39d5e8911c662d4d69a342b9d053eaaac4e"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Mon Jul 14 17:52:37 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jul 14 17:52:37 2008 -0400"
      },
      "message": "ext4: delayed allocation ENOSPC handling\n\nThis patch does block reservation for delayed\nallocation, to avoid ENOSPC later at page flush time.\n\nBlocks(data and metadata) are reserved at da_write_begin()\ntime, the freeblocks counter is updated by then, and the number of\nreserved blocks is store in per inode counter.\n        \nAt the writepage time, the unused reserved meta blocks are returned\nback. At unlink/truncate time, reserved blocks are properly released.\n\nUpdated fix from  Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nto fix the oldallocator block reservation accounting with delalloc, added\nlock to guard the counters and also fix the reservation for meta blocks.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "69baee062a044ef1588e423e52131710e7584d1a",
      "tree": "b9ba2b28b041d1db20d822ba8fc37a3e6dfdc825",
      "parents": [
        "91d99827791fdd5f9424458ad5ae870f89dbcadf"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 11 19:27:31 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Jul 11 19:27:31 2008 -0400"
      },
      "message": "ext4: improve some code in rb tree part of dir.c\n\n* remove unnecessary code in free_rb_tree_fname\n\n* rename free_rb_tree_fname to ext4_htree_create_dir_info\n  since it and ext4_htree_free_dir_info are a pair\n\n* replace kmalloc with kzalloc in ext4_htree_free_dir_info\n\nAll these make the code more readable and simple.\nPS: this patch is also suitable for ext3.\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "3dcf54515aa4981a647ad74859199032965193a5",
      "tree": "b95d895bb2f6fa15be29411b15d538c21b0de930",
      "parents": [
        "216553c4b7f3e3e2beb4981cddca9b2027523928"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Apr 29 18:13:32 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 18:13:32 2008 -0400"
      },
      "message": "ext4: move headers out of include/linux\n\nMove ext4 headers out of include/linux.  This is just the trivial move,\nthere\u0027s some more thing that could be done later. \n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "5cdd7b2d7716a7ed7d6dc7588e2d015f04d46640",
      "tree": "c2146662517bbd22377a54d1487e202d86dde6db",
      "parents": [
        "161e7b7c1d24112d188df9a7b30d468a8d135b96"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Apr 29 22:03:54 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 22:03:54 2008 -0400"
      },
      "message": "Convert ext4 to use unlocked_ioctl\n\nI checked ext4_ioctl and it looked largely safe to not be used\nwithout BKL.  So convert it over to unlocked_ioctl.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "642be6ec218b956fbae88304449720f76ba0d578",
      "tree": "ac72e5bcddf63a6e3b9fbdaaa84cd993a64c1094",
      "parents": [
        "bfa274e2436fc7ef72ef51c878083647f1cfd429"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Feb 25 17:20:46 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Feb 25 17:20:46 2008 -0500"
      },
      "message": "Remove incorrect BKL comments in ext4\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "725d26d3f09ccb5bac4b4293096b985a312a0d67",
      "tree": "1c49a07da252832fc6842c88a2359e8cd43af636",
      "parents": [
        "a72d7f834e1afa08421938d7eb06bd8e56b0e58c"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Jan 28 23:58:27 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 28 23:58:27 2008 -0500"
      },
      "message": "ext4: Introduce ext4_lblk_t\n\nThis patch adds a new data type ext4_lblk_t to represent\nthe logical file blocks.\n\nThis is the preparatory patch to support large files in ext4\nThe follow up patch with convert the ext4_inode i_blocks to\nrepresent the number of blocks in file system block size. This\nchanges makes it possible to have a block number 2**32 -1 which\nwill result in overflow if the block number is represented by\nsigned long. This patch convert all the block number to type\next4_lblk_t which is typedef to __u32\n\nAlso remove dead code ext4_ext_walk_space\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\n"
    },
    {
      "commit": "a72d7f834e1afa08421938d7eb06bd8e56b0e58c",
      "tree": "21c6fbbf4187fa8ba56878ea2d5e576e123e1f95",
      "parents": [
        "afc7cbca5bfd556c3e12d3acefbee5ab0cbd4670"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jan 28 23:58:27 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 28 23:58:27 2008 -0500"
      },
      "message": "ext4: Avoid rec_len overflow with 64KB block size\n\nWith 64KB blocksize, a directory entry can have size 64KB which does not fit\ninto 16 bits we have for entry lenght. So we store 0xffff instead and convert\nvalue when read from / written to disk. The patch also converts some places\nto use ext4_next_entry() when we are changing them anyway.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\n"
    },
    {
      "commit": "4074fe3736b1a43431dff870bf9055ac5dcf3f03",
      "tree": "bd33adb6b06eef7f7405addac686ae170750903d",
      "parents": [
        "f077d0d7ea5d65d01f2ce2e7131e964c13a32433"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Tue Oct 16 18:38:25 2007 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Oct 17 18:50:00 2007 -0400"
      },
      "message": "ext4: remove #ifdef CONFIG_EXT4_INDEX\n\nCONFIG_EXT4_INDEX is not an exposed config option in the kernel, and it is\nunconditionally defined in ext4_fs.h.  tune2fs is already able to turn off\ndir indexing, so at this point it\u0027s just cluttering up the code.  Remove\nit.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2b47c3611de05c585e2d81204f6c7e3e255a3461",
      "tree": "24a14614fb9bf507b4b6ad3fa6a7cfa5a92318fb",
      "parents": [
        "41d10da3717409de33d5441f2f6d8f072ab3fbb6"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Tue Oct 16 23:27:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:53 2007 -0700"
      },
      "message": "Fix f_version type: should be u64 instead of unsigned long\n\nFix f_version type: should be u64 instead of long\n\nThere is a type inconsistency between struct inode i_version and struct file\nf_version.\n\nfs.h:\n\nstruct inode\n  u64                     i_version;\n\nand\n\nstruct file\n  unsigned long           f_version;\n\nUsers do:\n\nfs/ext3/dir.c:\n\nif (filp-\u003ef_version !\u003d inode-\u003ei_version) {\n\nSo why isn\u0027t f_version a u64 ? It becomes a problem if versions gets\nhigher than 2^32 and we are on an architecture where longs are 32 bits.\n\nThis patch changes the f_version type to u64, and updates the users accordingly.\n\nIt applies to 2.6.23-rc2-mm2.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4e6b498d6e06742d72706ef50593a9c4dd72214",
      "tree": "74a573302b2ea086c0d21907175be604f110f5b1",
      "parents": [
        "0bb7ba6b9c358c12084a3cbc6ac08c8d1e973937"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Tue Oct 16 01:24:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:42:52 2007 -0700"
      },
      "message": "readahead: combine file_ra_state.prev_index/prev_offset into prev_pos\n\nCombine the file_ra_state members\n\t\t\t\tunsigned long prev_index\n\t\t\t\tunsigned int prev_offset\ninto\n\t\t\t\tloff_t prev_pos\n\nIt is more consistent and better supports huge files.\n\nThanks to Peter for the nice proposal!\n\n[akpm@linux-foundation.org: fix shift overflow]\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf914a7d656e62b9dd3e0dffe4f62b953ae6048d",
      "tree": "baf7e79de006ca80eac426d2d1be4c52f5f19624",
      "parents": [
        "fe3cba17c49471e99d3421e675fc8b3deaaf0b70"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jul 19 01:48:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:44 2007 -0700"
      },
      "message": "readahead: split ondemand readahead interface into two functions\n\nSplit ondemand readahead interface into two functions.  I think this makes it\na little clearer for non-readahead experts (like Rusty).\n\nInternally they both call ondemand_readahead(), but the page argument is\nchanged to an obvious boolean flag.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc7868fcb9a73990e6f30371c1be465c436a7a7f",
      "tree": "21dfd3e625bb4a9f78a7795f0a5b110c3dd8843e",
      "parents": [
        "a08a166fe77d9f9ad88ed6d06b97e73453661f89"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Thu Jul 19 01:48:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:44 2007 -0700"
      },
      "message": "readahead: convert ext3/ext4 invocations\n\nConvert ext3/ext4 dir reads to use on-demand readahead.\n\nReadahead for dirs operates _not_ on file level, but on blockdev level.  This\nmakes a difference when the data blocks are not continuous.  And the read\nroutine is somehow opaque: there\u0027s no handy info about the status of current\npage.  So a simplified call scheme is employed: to call into readahead\nwhenever the current page falls out of readahead windows.\n\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nCc: Steven Pratt \u003cslpratt@austin.ibm.com\u003e\nCc: Ram Pai \u003clinuxram@us.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e63340ae6b6205fef26b40a75673d1c9c0c8bb90",
      "tree": "8d3212705515edec73c3936bb9e23c71d34a7b41",
      "parents": [
        "04c9167f91e309c9c4ea982992aa08e83b2eb42e"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue May 08 00:28:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "header cleaning: don\u0027t include smp_lock.h when not used\n\nRemove includes of \u003clinux/smp_lock.h\u003e where it is not used/needed.\nSuggested by Al Viro.\n\nBuilds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,\nsparc64, and arm (all 59 defconfigs).\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d549890e69156800878a486f832e92d8f3d7c97",
      "tree": "8da371c871c0fff5cce76a767349edd76457f43e",
      "parents": [
        "fe21a69389165b9641a8d0b89e00a71c4e5f5d59"
      ],
      "author": {
        "name": "Josef \"Jeff\" Sipek",
        "email": "jsipek@cs.sunysb.edu",
        "time": "Fri Dec 08 02:36:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:41 2006 -0800"
      },
      "message": "[PATCH] ext4: change uses of f_{dentry, vfsmnt} to use f_path\n\nChange all the uses of f_{dentry,vfsmnt} to f_path.{dentry,mnt} in the ext4\nfilesystem.\n\nSigned-off-by: Josef \"Jeff\" Sipek \u003cjsipek@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e6c4021190c828d7fa24a464db589f86c6708341",
      "tree": "242161ac94ddf2bff98bb105f8ba804a3b1873e8",
      "parents": [
        "40b851348fe9bf49c26025b34261d25142269b60"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Dec 06 20:36:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:33 2006 -0800"
      },
      "message": "[PATCH] handle ext4 directory corruption better\n\nI\u0027ve been using Steve Grubb\u0027s purely evil \"fsfuzzer\" tool, at\nhttp://people.redhat.com/sgrubb/files/fsfuzzer-0.4.tar.gz\n\nBasically it makes a filesystem, splats some random bits over it, then\ntries to mount it and do some simple filesystem actions.\n\nAt best, the filesystem catches the corruption gracefully.  At worst,\nthings spin out of control.\n\nAs you might guess, we found a couple places in ext4 where things spin out\nof control :)\n\nFirst, we had a corrupted directory that was never checked for\nconsistency...  it was corrupt, and pointed to another bad \"entry\" of\nlength 0.  The for() loop looped forever, since the length of\next4_next_entry(de) was 0, and we kept looking at the same pointer over and\nover and over and over...  I modeled this check and subsequent action on\nwhat is done for other directory types in ext4_readdir...\n\n(adding this check adds some computational expense; I am testing a followup\npatch to reduce the number of times we check and re-check these directory\nentries, in all cases.  Thanks for the idea, Andreas).\n\nNext we had a root directory inode which had a corrupted size, claimed to\nbe \u003e 200M on a 4M filesystem.  There was only really 1 block in the\ndirectory, but because the size was so large, readdir kept coming back for\nmore, spewing thousands of printk\u0027s along the way.\n\nPer Andreas\u0027 suggestion, if we\u0027re in this read error condition and we\u0027re\ntrying to read an offset which is greater than i_blocks worth of bytes,\nstop trying, and break out of the loop.\n\nWith these two changes fsfuzz test survives quite well on ext4.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "63f5793351d821749979e36889f9c089c6028c83",
      "tree": "654a9e600891ccf0c70c0bbbc0a15a52743ff90e",
      "parents": [
        "ceea16bf85fb46035dda1db263ca29b0e07e22ba"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Oct 11 01:21:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:19 2006 -0700"
      },
      "message": "[PATCH] ext4 whitespace cleanups\n\nSomeone\u0027s tab key is emitting spaces.  Attempt to repair some of the damage.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a86c61812637c7dd0c57e29880cffd477b62f2e7",
      "tree": "10737307293afde2999a887cfeac32c7d7584aa7",
      "parents": [
        "c3fcc8137ce4296ad6ab94f88bd60cbe03d21527"
      ],
      "author": {
        "name": "Alex Tomas",
        "email": "alex@clusterfs.com",
        "time": "Wed Oct 11 01:21:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:16 2006 -0700"
      },
      "message": "[PATCH] ext3: add extent map support\n\nOn disk extents format:\n/*\n* this is extent on-disk structure\n* it\u0027s used at the bottom of the tree\n*/\nstruct ext3_extent {\n__le32  ee_block;       /* first logical block extent covers */\n__le16  ee_len;         /* number of blocks covered by extent */\n__le16  ee_start_hi;    /* high 16 bits of physical block */\n__le32  ee_start;       /* low 32 bigs of physical block */\n};\n\nSigned-off-by: Alex Tomas \u003calex@clusterfs.com\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dab291af8d6307a3075c3d67d0cc8f98e646cb94",
      "tree": "a2207ab3e2e00472e5e3c969ad0dd211fb9e4151",
      "parents": [
        "a920e9416b3469994860ab552dfd7fd5a5aff162"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Wed Oct 11 01:21:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:16 2006 -0700"
      },
      "message": "[PATCH] jbd2: enable building of jbd2 and have ext4 use it rather than jbd\n\nReworked from a patch by Mingming Cao and Randy Dunlap\n\nSigned-off-By: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "617ba13b31fbf505cc21799826639ef24ed94af0",
      "tree": "2a41e8c993f7c1eed115ad24047d546ba56cbdf5",
      "parents": [
        "ac27a0ec112a089f1a5102bc8dffc79c8c815571"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Wed Oct 11 01:20:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:15 2006 -0700"
      },
      "message": "[PATCH] ext4: rename ext4 symbols to avoid duplication of ext3 symbols\n\nMingming Cao originally did this work, and Shaggy reproduced it using some\nscripts from her.\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ac27a0ec112a089f1a5102bc8dffc79c8c815571",
      "tree": "bcbcc0a5a88bf99b35119d9d9d660a37c503d787",
      "parents": [
        "502717f4e112b18d9c37753a32f675bec9f2838b"
      ],
      "author": {
        "name": "Dave Kleikamp",
        "email": "shaggy@austin.ibm.com",
        "time": "Wed Oct 11 01:20:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:15 2006 -0700"
      },
      "message": "[PATCH] ext4: initial copy of files from ext3\n\nStart of the ext4 patch series.  See Documentation/filesystems/ext4.txt for\ndetails.\n\nThis is a simple copy of the files in fs/ext3 to fs/ext4 and\n/usr/incude/linux/ext3* to /usr/include/ex4*\n\nSigned-off-by: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ]
}
