)]}'
{
  "log": [
    {
      "commit": "0f2ddca66d70c8ccba7486cf2d79c6b60e777abd",
      "tree": "7d58c31ab30ba2b9e94780008a2083ac87f80db5",
      "parents": [
        "e44543b83bf4ab84dc6bd5b88158c78b1ed1c208"
      ],
      "author": {
        "name": "From: Thiemo Nagel",
        "email": "thiemo.nagel@ph.tum.de",
        "time": "Tue Apr 07 14:07:47 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 07 14:07:47 2009 -0400"
      },
      "message": "ext4: check block device size on mount\n\nSigned-off-by: Thiemo Nagel \u003cthiemo.nagel@ph.tum.de\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "06705bff9114531a997a7d0c2520bea0f2927410",
      "tree": "f7bef499cd491c8171db45da5b02c168655d4236",
      "parents": [
        "e7c9e3e99adf6c49c5d593a51375916acc039d1e"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Mar 28 10:59:57 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Mar 28 10:59:57 2009 -0400"
      },
      "message": "ext4: Regularize mount options\n\nAdd support for using the mount options \"barrier\" and \"nobarrier\", and\n\"auto_da_alloc\" and \"noauto_da_alloc\", which is more consistent than\n\"barrier\u003d\u003c0|1\u003e\" or \"auto_da_alloc\u003d\u003c0|1\u003e\".  Most other ext3/ext4 mount\noptions use the foo/nofoo naming convention.  We allow the old forms\nof these mount options for backwards compatibility.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "afd4672dc7610b7feef5190168aa917cc2e417e4",
      "tree": "53a3aa709232b00473c8da70b792b350150956ff",
      "parents": [
        "7d39db14a42cbd719c7515b9da8f85a2eb6a0633"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Mar 16 23:12:23 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Mar 16 23:12:23 2009 -0400"
      },
      "message": "ext4: Add auto_da_alloc mount option\n\nAdd a mount option which allows the user to disable automatic\nallocation of blocks whose allocation by delayed allocation when the\nfile was originally truncated or when the file is renamed over an\nexisting file.  This feature is intended to save users from the\neffects of naive application writers, but it reduces the effectiveness\nof the delayed allocation code.  This mount option disables this\nsafety feature, which may be desirable for prodcutions systems where\nthe risk of unclean shutdowns or unexpected system crashes is low.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "7d39db14a42cbd719c7515b9da8f85a2eb6a0633",
      "tree": "5c93b9f76c9895183d1e973ed296cd9b7a1d9a0e",
      "parents": [
        "9f24e4208f7ee2748f157368b63287dc903fcf60"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Mar 04 19:31:53 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Mar 04 19:31:53 2009 -0500"
      },
      "message": "ext4: Use struct flex_groups to calculate get_orlov_stats()\n\nInstead of looping over all of the block groups in a flex group\nsumming their summary statistics, start tracking used_dirs in struct\nflex_groups, and use struct flex_groups instead.  This should save a\nbit of CPU for mkdir-heavy workloads.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "9f24e4208f7ee2748f157368b63287dc903fcf60",
      "tree": "255989fe69ebfb2b031dc7cf6dbe975df67c711a",
      "parents": [
        "b713a5ec55bf73c833f9883cdd761b20ee61a1ab"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Mar 04 19:09:10 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Mar 04 19:09:10 2009 -0500"
      },
      "message": "ext4: Use atomic_t\u0027s in struct flex_groups\n\nReduce pressure on the sb_bgl_lock family of locks by using atomic_t\u0027s\nto track the number of free blocks and inodes in each flex_group.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n\n"
    },
    {
      "commit": "b713a5ec55bf73c833f9883cdd761b20ee61a1ab",
      "tree": "77bbc689f442cad3ce8ca21d7b2c7cea2738d519",
      "parents": [
        "3197ebdb130473a92760100cbfe0d7e671838f48"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Mar 31 09:11:14 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Mar 31 09:11:14 2009 -0400"
      },
      "message": "ext4: remove /proc tuning knobs\n\nRemove tuning knobs in /proc/fs/ext4/\u003cdev/* since they have been\nreplaced by knobs in sysfs at /sys/fs/ext4/\u003cdev\u003e/*.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "3197ebdb130473a92760100cbfe0d7e671838f48",
      "tree": "7101dc642e91026a65264adb7845ce3561d691fe",
      "parents": [
        "afc32f7ee9febc020c73da61402351d4c90437f3"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Mar 31 09:10:09 2009 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Mar 31 09:10:09 2009 -0400"
      },
      "message": "ext4: Add sysfs support\n\nAdd basic sysfs support so that information about the mounted\nfilesystem and various tuning parameters can be accessed via\n/sys/fs/ext4/\u003cdev\u003e/*.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "afc32f7ee9febc020c73da61402351d4c90437f3",
      "tree": "7b78aaaac87eb704074f6ece996b2c78a69fbe18",
      "parents": [
        "d6014301b5599fba395c42a1e96a7fe86f7d0b2d"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Feb 28 19:39:58 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Feb 28 19:39:58 2009 -0500"
      },
      "message": "ext4: Track lifetime disk writes\n\nAdd a new superblock value which tracks the lifetime amount of writes\nto the filesystem.  This is useful in estimating the amount of wear on\nsolid state drives (SSD\u0027s) caused by writes to the filesystem.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "705895b61133ef43d106fe6a6bbdb2eec923867e",
      "tree": "ea05232098c0425fda052240a8bb0e6218bb5e82",
      "parents": [
        "3d0518f4758eca4339e75e5b9dbb7e06a5ce08b4"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sun Feb 15 18:07:52 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Feb 15 18:07:52 2009 -0500"
      },
      "message": "ext4: allocate -\u003es_blockgroup_lock separately\n\nAs spotted by kmemtrace, struct ext4_sb_info is 17664 bytes on 64-bit\nwhich makes it a very bad fit for SLAB allocators.  The culprit of the\nwasted memory is -\u003es_blockgroup_lock which can be as big as 16 KB when\nNR_CPUS \u003e\u003d 32.\n\nTo fix that, allocate -\u003es_blockgroup_lock, which fits nicely in a order 2\npage in the worst case, separately.  This shinks down struct ext4_sb_info\nenough to fit a 2 KB slab cache so now we allocate 16 KB + 2 KB instead of\n32 KB saving 14 KB of memory.\n\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "a269eb18294d35874c53311acc2cd0b5ef477ce5",
      "tree": "4da256ba45385688bd7f1e8b638ce76f884c8313",
      "parents": [
        "81a052273998f94b098945c4c313e05246956eb2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jan 26 17:04:39 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Mar 26 02:18:36 2009 +0100"
      },
      "message": "ext4: Use lowercase names of quota functions\n\nUse lowercase names of quota functions instead of old uppercase ones.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nAcked-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCC: linux-ext4@vger.kernel.org\n"
    },
    {
      "commit": "60e58e0f30e723464c2a7d34b71b8675566c572d",
      "tree": "2797ae1bccdad12d53c989a6dccea1c8ffd2bce3",
      "parents": [
        "643d00ccc311664188c8209bf8b596a30e139c3a"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Thu Jan 22 18:13:05 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Mar 26 02:18:34 2009 +0100"
      },
      "message": "ext4: quota reservation for delayed allocation\n\nUses quota reservation/claim/release to handle quota properly for delayed\nallocation in the three steps: 1) quotas are reserved when data being copied\nto cache when block allocation is defered 2) when new blocks are allocated.\nreserved quotas are converted to the real allocated quota, 2) over-booked\nquotas for metadata blocks are released back.\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nAcked-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "edf7245362f7b8b8c76c4a6cad3604bf80884848",
      "tree": "e5a78aeac197c945e1ef6c1321b3ec5dd78378e7",
      "parents": [
        "a219ce3748bbc596cec85c44754b3f6b994f1e1d"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jan 12 19:05:26 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Mar 26 02:18:34 2009 +0100"
      },
      "message": "ext4: Remove unnecessary quota functions\n\next4_dquot_initialize() and ext4_dquot_drop() is no longer\nneeded because of modified quota locking.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "8b1a8ff8b321a9384304aeea4dbdb9747daf7ee8",
      "tree": "7be11423c5b5a10e085122b5a3e8d004e5fa865a",
      "parents": [
        "ebd3610b110bbb18ea6f9f2aeed1e1068c537227"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Feb 28 00:08:53 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Feb 28 00:08:53 2009 -0500"
      },
      "message": "ext4: Remove duplicate call to ext4_commit_super() in ext4_freeze()\n\nCommit c4be0c1d added error checking to ext4_freeze() when calling\next4_commit_super().  Unfortunately the patch failed to remove the\noriginal call to ext4_commit_super(), with the net result that when\nfreezing the filesystem, the superblock gets written twice, the first\ntime without error checking.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "9eddacf9e9c03578ef2c07c9534423e823d677f8",
      "tree": "6b317bb2e531ba56c9bc7ece8c41ec039d12d309",
      "parents": [
        "c88ccea3143975294f5a52097546bcbb75975f52"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Feb 10 06:46:05 2009 -0500"
      },
      "committer": {
        "name": "Theodore Tso",
        "email": "tytso@mit.edu",
        "time": "Tue Feb 10 06:46:05 2009 -0500"
      },
      "message": "Revert \"ext4: wait on all pending commits in ext4_sync_fs()\"\n\nThis undoes commit 14ce0cb411c88681ab8f3a4c9caa7f42e97a3184.\n\nSince jbd2_journal_start_commit() is now fixed to return 1 when we\nstarted a transaction commit, there\u0027s some transaction waiting to be\ncommitted or there\u0027s a transaction already committing, we don\u0027t\nneed to call ext4_force_commit() in ext4_sync_fs(). Furthermore\next4_force_commit() can unnecessarily create sync transaction which is\nexpensive so it\u0027s worthwhile to remove it when we can.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12224\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: linux-ext4@vger.kernel.org\n"
    },
    {
      "commit": "c4be0c1dc4cdc37b175579be1460f15ac6495e9a",
      "tree": "716ea88318211ed27cadcebda0fd85c1f8246edb",
      "parents": [
        "69347a236b22c3962ea812511495e502dedfd50c"
      ],
      "author": {
        "name": "Takashi Sato",
        "email": "t-sato@yk.jp.nec.com",
        "time": "Fri Jan 09 16:40:58 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 09 16:54:42 2009 -0800"
      },
      "message": "filesystem freeze: add error handling of write_super_lockfs/unlockfs\n\nCurrently, ext3 in mainline Linux doesn\u0027t have the freeze feature which\nsuspends write requests.  So, we cannot take a backup which keeps the\nfilesystem\u0027s consistency with the storage device\u0027s features (snapshot and\nreplication) while it is mounted.\n\nIn many case, a commercial filesystem (e.g.  VxFS) has the freeze feature\nand it would be used to get the consistent backup.\n\nIf Linux\u0027s standard filesystem ext3 has the freeze feature, we can do it\nwithout a commercial filesystem.\n\nSo I have implemented the ioctls of the freeze feature.\nI think we can take the consistent backup with the following steps.\n1. Freeze the filesystem with the freeze ioctl.\n2. Separate the replication volume or create the snapshot\n   with the storage device\u0027s feature.\n3. Unfreeze the filesystem with the unfreeze ioctl.\n4. Take the backup from the separated replication volume\n   or the snapshot.\n\nThis patch:\n\nVFS:\nChanged the type of write_super_lockfs and unlockfs from \"void\"\nto \"int\" so that they can return an error.\nRename write_super_lockfs and unlockfs of the super block operation\nfreeze_fs and unfreeze_fs to avoid a confusion.\n\next3, ext4, xfs, gfs2, jfs:\nChanged the type of write_super_lockfs and unlockfs from \"void\"\nto \"int\" so that write_super_lockfs returns an error if needed,\nand unlockfs always returns 0.\n\nreiserfs:\nChanged the type of write_super_lockfs and unlockfs from \"void\"\nto \"int\" so that they always return 0 (success) to keep a current behavior.\n\nSigned-off-by: Takashi Sato \u003ct-sato@yk.jp.nec.com\u003e\nSigned-off-by: Masayuki Hamaguchi \u003cm-hamaguchi@ys.jp.nec.com\u003e\nCc: \u003cxfs-masters@oss.sgi.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.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": "2150edc6c5cf00f7adb54538b9ea2a3e9cedca3f",
      "tree": "f72a0d85e66f500b4cead348a231e3d3b9f357bc",
      "parents": [
        "cd764695b67386a81964f68e9c66efd9f13f4d29",
        "4b905671d2ea09fd48fed72c581df17e40823f39"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 17:14:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 17:14:59 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (57 commits)\n  jbd2: Fix oops in jbd2_journal_init_inode() on corrupted fs\n  ext4: Remove \"extents\" mount option\n  block: Add Kconfig help which notes that ext4 needs CONFIG_LBD\n  ext4: Make printk\u0027s consistently prefixed with \"EXT4-fs: \"\n  ext4: Add sanity checks for the superblock before mounting the filesystem\n  ext4: Add mount option to set kjournald\u0027s I/O priority\n  jbd2: Submit writes to the journal using WRITE_SYNC\n  jbd2: Add pid and journal device name to the \"kjournald2 starting\" message\n  ext4: Add markers for better debuggability\n  ext4: Remove code to create the journal inode\n  ext4: provide function to release metadata pages under memory pressure\n  ext3: provide function to release metadata pages under memory pressure\n  add releasepage hooks to block devices which can be used by file systems\n  ext4: Fix s_dirty_blocks_counter if block allocation failed with nodelalloc\n  ext4: Init the complete page while building buddy cache\n  ext4: Don\u0027t allow new groups to be added during block allocation\n  ext4: mark the blocks/inode bitmap beyond end of group as used\n  ext4: Use new buffer_head flag to check uninit group bitmaps initialization\n  ext4: Fix the race between read_inode_bitmap() and ext4_new_inode()\n  ext4: code cleanup\n  ...\n"
    },
    {
      "commit": "83982b6f47201c4c7767210d24d7d8c99567a0b3",
      "tree": "f1c19b1c6b5a34dd0c5de7519b78414b7a9267ee",
      "parents": [
        "4d783b093cd4f3e2738527365979cbd1c5101065"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 14:53:16 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 14:53:16 2009 -0500"
      },
      "message": "ext4: Remove \"extents\" mount option\n\nThis mount option is largely superfluous, and in fact the way it was\nimplemented was buggy; if a filesystem which did not have the extents\nfeature flag was mounted -o extents, the filesystem would attempt to\ncreate and use extents-based file even though the extents feature flag\nwas not eabled.  The simplest thing to do is to nuke the mount option\nentirely.  It\u0027s not all that useful to force the non-creation of new\nextent-based files if the filesystem can support it.\n\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": "4ec110281379826c5cf6ed14735e47027c3c5765",
      "tree": "593bcbafe3541264e4effe5310546617de0a76ce",
      "parents": [
        "b3881f74b31b7d47d0f1c4d89ac3e7f0b9c05e3e"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 14:53:26 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 14:53:26 2009 -0500"
      },
      "message": "ext4: Add sanity checks for the superblock before mounting the filesystem\n\nThis avoids insane superblock configurations that could lead to kernel\noops due to null pointer derefences.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d12371\n\nThanks to David Maciejak at Fortinet\u0027s FortiGuard Global Security\nResearch Team who discovered this bug independently (but at\napproximately the same time) as Thiemo Nagel, who submitted the patch.\n\nSigned-off-by: Thiemo Nagel \u003cthiemo.nagel@ph.tum.de\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "b3881f74b31b7d47d0f1c4d89ac3e7f0b9c05e3e",
      "tree": "131190b7ec627fd2ef2ecc818a7b9c17b83ccd63",
      "parents": [
        "40a1984d22294ab202f616e432bb8d3481897675"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:46:26 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:46:26 2009 -0500"
      },
      "message": "ext4: Add mount option to set kjournald\u0027s I/O priority\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a5b5ee320185adc091a3a31630d278806b19d8f0",
      "tree": "91754a6c5645a9d3dd0f9bee828550f704939bfc",
      "parents": [
        "157091a2c3cdc71422cbc71eace205cf1b9f2200"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Nov 25 15:31:35 2008 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:26 2009 -0800"
      },
      "message": "ext4: Add default allocation routines for quota structures\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "17bd13b31ce4fe7f789d8848e8cbc8cb42b10544",
      "tree": "ced03fa069a1493421b6c0b0c11e5a163b5dbed6",
      "parents": [
        "ee0d5ffe0da2aa992004447113e28622621a983f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Aug 20 18:14:35 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:36:56 2009 -0800"
      },
      "message": "ext4: Use sb_any_quota_loaded() instead of sb_any_quota_enabled()\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "c31910672376dfb8d020e32afa7249763bcd924a",
      "tree": "3f2b95a1d4a4da76d85d5bf32534fa3d15a82eac",
      "parents": [
        "c39a7f84d7845aa95d1c7c168f38215aedcc13c2"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 11:14:25 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 06 11:14:25 2009 -0500"
      },
      "message": "ext4: Remove code to create the journal inode\n\nThis code has been obsolete in quite some time, since the supported\nmethod for adding a journal inode is to use tune2fs (or to creating\nnew filesystem with a journal via mke2fs or mkfs.ext4).\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c39a7f84d7845aa95d1c7c168f38215aedcc13c2",
      "tree": "3e9d741df74eef7e6438dfd9a7ab5a32dd5a5501",
      "parents": [
        "6b082b531228c43d454c082fc0f969da1695b060"
      ],
      "author": {
        "name": "Toshiyuki Okajima",
        "email": "toshi.okajima@jp.fujitsu.com",
        "time": "Mon Jan 05 22:38:48 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:38:48 2009 -0500"
      },
      "message": "ext4: provide function to release metadata pages under memory pressure\n\nPages in the page cache belonging to ext4 data files are released via\nthe ext4_releasepage() function specified in the ext4 inode\u0027s\naddress_space_ops.  However, metadata blocks (such as indirect blocks,\ndirectory blocks, etc) are managed via the block device\naddress_space_ops, and they can not be released by\ntry_to_free_buffers() if they have a journal head attached to them.\n\nTo address this, we supply a release_metadata function which calls\njbd2_journal_try_to_free_buffers() function to free the metadata, and\nwhich is called by the block device\u0027s blkdev_releasepage() function.\n\nSigned-off-by: Toshiyuki Okajima \u003ctoshi.okajima@jp.fujitsu.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: linux-fsdevel@vger.kernel.org\n"
    },
    {
      "commit": "560671a0d3c9ad2d647fa6d09375a262e1f19c4f",
      "tree": "a52673326726062d53b35643d51a16739cd804fc",
      "parents": [
        "e8134b27e351e813414da3b95aa8eac6d3908088"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Jan 05 22:20:24 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:20:24 2009 -0500"
      },
      "message": "ext4: Use high 16 bits of the block group descriptor\u0027s free counts fields\n\nRename the lower bits with suffix _lo and add helper\nto access the values. Also rename bg_itable_unused_hi\nto bg_pad as in e2fsprogs.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "5d1b1b3f492f8696ea18950a454a141381b0f926",
      "tree": "e6277cd3e01c074403b9da7390de1daa6b9f248f",
      "parents": [
        "b7be019e80da4db96d283734d55366014509911c"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Jan 05 22:19:52 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:19:52 2009 -0500"
      },
      "message": "ext4: fix BUG when calling ext4_error with locked block group\n\nThe mballoc code likes to call ext4_error while it is holding locked\nblock groups.  This can causes a scheduling in atomic context BUG.  We\ncan\u0027t just unlock the block group and relock it after/if ext4_error\nreturns since that might result in race conditions in the case where\nthe filesystem is set to continue after finding errors.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "b3a6ffe16b5cc48abe7db8d04882dc45280eb693",
      "tree": "7bd0860ca93beb9aa8c5cb54a3081617d8d12de9",
      "parents": [
        "3c18ce71af754cefae75103dbae28817e04b2db4"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 12 09:51:16 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:29:51 2008 +0100"
      },
      "message": "Get rid of CONFIG_LSF\n\nWe have two seperate config entries for large devices/files. One\nis CONFIG_LBD that guards just the devices, the other is CONFIG_LSF\nthat handles large files. This doesn\u0027t make a lot of sense, you typically\nwant both or none. So get rid of CONFIG_LSF and change CONFIG_LBD wording\nto indicate that it covers both.\n\nAcked-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "3a06d778dfeda7eaeeb79bfa49cf97f2aae132b4",
      "tree": "08c813063950404356c9c64678eed72f21f217b9",
      "parents": [
        "1a0d3786dd57dbd74f340322054c3d618b999dcf"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Nov 22 15:04:59 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Nov 22 15:04:59 2008 -0500"
      },
      "message": "ext4: sparse fixes\n\n* Change EXT4_HAS_*_FEATURE to return a boolean\n* Add a function prototype for ext4_fiemap() in ext4.h\n* Make ext4_ext_fiemap_cb() and ext4_xattr_fiemap() be static functions\n* Add lock annotations to mb_free_blocks()\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "a9df9a49102f3578909cba7bd33784eb3b9caaa4",
      "tree": "1d383d422bf7185e8e87c1bcfc80f9beb3074cf8",
      "parents": [
        "cde6436004ad9cd8cab5a874b6fa8b01f1da91bf"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:18:16 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:18:16 2009 -0500"
      },
      "message": "ext4: Make ext4_group_t be an unsigned int\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": "30773840c19cea60dcef39545960d541b1ac1cf8",
      "tree": "f220a2dce451a40dc7264e8fd70c77c5a3908873",
      "parents": [
        "d7cfa4684d82f58e5d7cb73b8a3c88c169937f25"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jan 03 20:27:38 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jan 03 20:27:38 2009 -0500"
      },
      "message": "ext4: add fsync batch tuning knobs\n\nAdd new mount options, min_batch_time and max_batch_time, which\ncontrols how long the jbd2 layer should wait for additional filesystem\noperations to get batched with a synchronous write transaction.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "fde4d95ad8711c84a36735a17136c45b19746af9",
      "tree": "e4d4dcaeb18083be204ba8fe55a75400ded699ae",
      "parents": [
        "fd98496f467b3d26d05ab1498f41718b5ef13de5"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:17:35 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:17:35 2009 -0500"
      },
      "message": "ext4: remove extraneous newlines from calls to ext4_error() and ext4_warning()\n\nThis removes annoying blank syslog entries emitted by ext4_error() or\next4_warning(), since these functions add their own newline.\n\nSigned-off-by: Nick Warne \u003cnick@ukfsn.org\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "0390131ba84fd3f726f9e24fc4553828125700bb",
      "tree": "4c90afad4e8690e25aec0ce069fd450e92ab5f96",
      "parents": [
        "ff7ef329b268b603ea4a2303241ef1c3829fd574"
      ],
      "author": {
        "name": "Frank Mayhar",
        "email": "fmayhar@google.com",
        "time": "Wed Jan 07 00:06:22 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Jan 07 00:06:22 2009 -0500"
      },
      "message": "ext4: Allow ext4 to run without a journal\n\nA few weeks ago I posted a patch for discussion that allowed ext4 to run\nwithout a journal.  Since that time I\u0027ve integrated the excellent\ncomments from Andreas and fixed several serious bugs.  We\u0027re currently\nrunning with this patch and generating some performance numbers against\nboth ext2 (with backported reservations code) and ext4 with and without\na journal.  It just so happens that running without a journal is\nslightly faster for most everything.\n\nWe did\n\tiozone -T -t 4 s 2g -r 256k -T -I -i0 -i1 -i2\n\nwhich creates 4 threads, each of which create and do reads and writes on\na 2G file, with a buffer size of 256K, using O_DIRECT for all file opens\nto bypass the page cache.  Results:\n\n                     ext2        ext4, default   ext4, no journal\n  initial writes   13.0 MB/s        15.4 MB/s          15.7 MB/s\n  rewrites         13.1 MB/s        15.6 MB/s          15.9 MB/s\n  reads            15.2 MB/s        16.9 MB/s          17.2 MB/s\n  re-reads         15.3 MB/s        16.9 MB/s          17.2 MB/s\n  random readers    5.6 MB/s         5.6 MB/s           5.7 MB/s\n  random writers    5.1 MB/s         5.3 MB/s           5.4 MB/s \n\nSo it seems that, so far, this was a useful exercise.\n\nSigned-off-by: Frank Mayhar \u003cfmayhar@google.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "23475e264c4f5c8b635a31924851287ead1ebe32",
      "tree": "9fd63f363dbea794235eac51b75402d3d0baa46b",
      "parents": [
        "171bbfbeab7730031eec8025341401fabe540bd5"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Wed Nov 26 02:23:19 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Nov 26 02:23:19 2008 -0500"
      },
      "message": "ext4: Use simple_strtol() instead of simple_strtoul() in ext4_ui_proc_open\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "565a9617b2151e21b22700e97a8b04e70e103153",
      "tree": "d40db2a54cb27db9dda80b0a47405a6ae19d0fc1",
      "parents": [
        "791b7f08954869d7b8ff438f3dac3cfb39778297"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Jan 05 21:51:07 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 21:51:07 2009 -0500"
      },
      "message": "ext4: avoid ext4_error when mounting a fs with a single bg\n\nRemove some completely unneeded code which which caused an ext4_error\nto be generated when mounting a file system with only a single block\ngroup.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "14ce0cb411c88681ab8f3a4c9caa7f42e97a3184",
      "tree": "d441a71e13e68cb7651888ced97dbaf90b45b9b5",
      "parents": [
        "d94e99a64c3beece22dbfb2b335771a59184eb0a"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Nov 03 18:10:55 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Nov 03 18:10:55 2008 -0500"
      },
      "message": "ext4: wait on all pending commits in ext4_sync_fs()\n\nIn ext4_sync_fs, we only wait for a commit to finish if we started it,\nbut there may be one already in progress which will not be synced.\n\nIn the case of a data\u003dordered umount with pending long symlinks which\nare delayed due to a long list of other I/O on the backing block\ndevice, this causes the buffer associated with the long symlinks to\nnot be moved to the inode dirty list in the second phase of\nfsync_super.  Then, before they can be dirtied again, kjournald exits,\nseeing the UMOUNT flag and the dirty pages are never written to the\nbacking block device, causing long symlink corruption and exposing new\nor previously freed block data to userspace.\n\nTo ensure all commits are synced, we flush all journal commits now\nwhen sync_fs\u0027ing ext4.\n\nSigned-off-by: Arthur Jones \u003cajones@riverbed.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\n"
    },
    {
      "commit": "d94e99a64c3beece22dbfb2b335771a59184eb0a",
      "tree": "cac2a623703f51818c51481f47272e35d0b43215",
      "parents": [
        "ae2d9fb18e575ed37ffc241ece4bf68f0be4ae32"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Tue Nov 04 09:11:26 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Nov 04 09:11:26 2008 -0500"
      },
      "message": "ext4: Convert to host order before using the values.\n\nUse le16_to_cpu to read the s_reserved_gdt_blocks values\nfrom super block.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "f99b25897a86fcfff9140396a97261ae65fed872",
      "tree": "2191505f190d09ff31896487c73b8187cb475596",
      "parents": [
        "5e1f8c9e20a92743eefc9a82c2db835213905e26"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Oct 28 13:21:44 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Oct 28 13:21:44 2008 -0400"
      },
      "message": "ext4: Add support for non-native signed/unsigned htree hash algorithms\n\nThe original ext3 hash algorithms assumed that variables of type char\nwere signed, as God and K\u0026R intended.  Unfortunately, this assumption\nis not true on some architectures.  Userspace support for marking\nfilesystems with non-native signed/unsigned chars was added two years\nago, but the kernel-side support was never added (until now).\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "ef2cabf7c6d838eb0ee2b4fb8ef84f7c06ce16d9",
      "tree": "64c3c14ae4a3717c6c193773d87e31f5facc569e",
      "parents": [
        "44d6f78756560e95903de239e10f8a40a6eae444"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Mon Oct 27 22:53:05 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Oct 27 22:53:05 2008 -0400"
      },
      "message": "ext4: fix a bug accessing freed memory in ext4_abort\n\nVegard Nossum reported a bug which accesses freed memory (found via\nkmemcheck).  When journal has been aborted, ext4_put_super() calls\next4_abort() after freeing the journal_t object, and then ext4_abort()\naccesses it.  This patch fix it.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "22484856402bfa1ff3defe47f6029ab0418240d9",
      "tree": "140c67bf59674da350a7b51765d6ff7eb101b597",
      "parents": [
        "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
        "56b26add02b4bdea81d5e0ebda60db1fe3311ad4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:23:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:23:07 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev: (66 commits)\n  [PATCH] kill the rest of struct file propagation in block ioctls\n  [PATCH] get rid of struct file use in blkdev_ioctl() BLKBSZSET\n  [PATCH] get rid of blkdev_locked_ioctl()\n  [PATCH] get rid of blkdev_driver_ioctl()\n  [PATCH] sanitize blkdev_get() and friends\n  [PATCH] remember mode of reiserfs journal\n  [PATCH] propagate mode through swsusp_close()\n  [PATCH] propagate mode through open_bdev_excl/close_bdev_excl\n  [PATCH] pass fmode_t to blkdev_put()\n  [PATCH] kill the unused bsize on the send side of /dev/loop\n  [PATCH] trim file propagation in block/compat_ioctl.c\n  [PATCH] end of methods switch: remove the old ones\n  [PATCH] switch sr\n  [PATCH] switch sd\n  [PATCH] switch ide-scsi\n  [PATCH] switch tape_block\n  [PATCH] switch dcssblk\n  [PATCH] switch dasd\n  [PATCH] switch mtd_blkdevs\n  [PATCH] switch mmc\n  ...\n"
    },
    {
      "commit": "8264613def2e5c4f12bc3167713090fd172e6055",
      "tree": "00a8655bce02f97acf559580bdd9ba65919af2bf",
      "parents": [
        "0a0d8a46757e2063433c8cd52b7d654e02b4682b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 02 00:57:06 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:12:44 2008 -0400"
      },
      "message": "[PATCH] switch quota_on-related stuff to kern_path()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9a1c3542768b5a58e45a9216921cd10a3bae1205",
      "tree": "c20ffda950db868ec7e1e35aed532962de2ecfd9",
      "parents": [
        "511de73ff09034fb89c8d54bed201a10d057328c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 22 20:40:24 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:48:58 2008 -0400"
      },
      "message": "[PATCH] pass fmode_t to blkdev_put()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f287a1a56130be5fdb96a4a62d1290bd064f308e",
      "tree": "992ac8f5fef83cafae53b8fe00844f2ad3e79d07",
      "parents": [
        "3e624fc72fba09b6f999a9fbb87b64efccd38036"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Oct 16 22:50:48 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Oct 16 22:50:48 2008 -0400"
      },
      "message": "ext4: Remove automatic enabling of the HUGE_FILE feature flag\n\nIf the HUGE_FILE feature flag is not set, don\u0027t allow the creation of\nlarge files, instead of automatically enabling the feature flag.\nRecent versions of mke2fs will set the HUGE_FILE flag automatically\nanyway for ext4 filesystems.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "01436ef2e4710317f826c4893b31c07b2d8df88c",
      "tree": "e8c6a561e3f4803f6ee9ad7851623cd3e369bee9",
      "parents": [
        "0b09923eabd92f11a8b272dd3fd0347332d0e1e2"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 17 07:22:35 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 17 07:22:35 2008 -0400"
      },
      "message": "ext4: Remove unused mount options: nomballoc, mballoc, nocheck\n\nThese mount options don\u0027t actually do anything any more, so remove\nthem.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "5128273a326679970b9196a27ff812670927c1c4",
      "tree": "f2acecf3bed1af523ca385589579235dd1277995",
      "parents": [
        "22208dedbd7626e5fc4339c417f8d24cc21f79d7"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Fri Oct 17 09:16:19 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 17 09:16:19 2008 -0400"
      },
      "message": "ext4: Add missing newlines to printk messages\n\nThere are some newlines missing in ext4_check_descriptors, which\ncause the printk level to be printed out when the next printk call\nis made:\n\n[  778.847265] EXT4-fs: ext4_check_descriptors: Block bitmap for group 0\nnot in group (block 1509949442)!\u003c3\u003eEXT4-fs: group descriptors corrupted!\n[  802.646630] EXT4-fs: ext4_check_descriptors: Inode bitmap for group 0\nnot in group (block 9043971)!\u003c3\u003eEXT4-fs: group descriptors corrupted!\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c2774d84fd6cab2bfa2a2fae0b1ca8d8ebde48a2",
      "tree": "1319b98e55968e3223d8f2fb6cd7807cdfd80fe1",
      "parents": [
        "688f05a01983711a4e715b1d6e15a89a89c96a66"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Fri Oct 10 20:07:20 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 20:07:20 2008 -0400"
      },
      "message": "ext4: Do mballoc init before doing filesystem recovery\n\nDuring filesystem recovery we may be doing a truncate\nwhich expects some of the mballoc data structures to\nbe initialized. So do ext4_mb_init before recovery.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "a447c0932445f92ce6f4c1bd020f62c5097a7842",
      "tree": "bacf05bc7f9764515cdd6f7dc5e2254776b4f160",
      "parents": [
        "54cebc68c81eacac41a21bdfe99dc889d3882c60"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Oct 13 10:46:57 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 10:10:37 2008 -0700"
      },
      "message": "vfs: Use const for kernel parser table\n\nThis is a much better version of a previous patch to make the parser\ntables constant. Rather than changing the typedef, we put the \"const\" in\nall the various places where its required, allowing the __initconst\nexception for nfsroot which was the cause of the previous trouble.\n\nThis was posted for review some time ago and I believe its been in -mm\nsince then.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Alexander Viro \u003caviro@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3244fcb1ae03362e4aa8cb1a9039fbfd61661859",
      "tree": "fa46eff0dff3a9a046917bdb0c8ec3b2fef807f4",
      "parents": [
        "5bf5683a33f3584da6eced480967c4f7e11515a8"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Sun Oct 12 17:27:49 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Oct 12 17:27:49 2008 -0400"
      },
      "message": "ext4: fix build failure without procfs\n\nfs/ext4/super.c: In function \u0027ext4_fill_super\u0027:\nfs/ext4/super.c:2226: error: \u0027ext4_ui_proc_fops\u0027 undeclared (first use\nin this function)\nfs/ext4/super.c:2226: error: (Each undeclared identifier is reported\nonly once\nfs/ext4/super.c:2226: error: for each function it appears in.)\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "5bf5683a33f3584da6eced480967c4f7e11515a8",
      "tree": "4986ba3932d9f259fa1bc674deff3e35f689b243",
      "parents": [
        "7ad7445f60fe4d46c4c9d2a9463db180d2a3b270"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Fri Oct 10 22:12:43 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 22:12:43 2008 -0400"
      },
      "message": "ext4: add an option to control error handling on file data\n\nIf the journal doesn\u0027t abort when it gets an IO error in file data\nblocks, the file data corruption will spread silently.  Because\nmost of applications and commands do buffered writes without fsync(),\nthey don\u0027t notice the IO error.  It\u0027s scary for mission critical\nsystems.  On the other hand, if the journal aborts whenever it gets\nan IO error in file data blocks, the system will easily become\ninoperable.  So this patch introduces a filesystem option to\ndetermine whether it aborts the journal or just call printk() when\nit gets an IO error in file data.\n\nIf you mount an ext4 fs with data_err\u003dabort option, it aborts on file\ndata write error.  If you mount it with data_err\u003dignore, it doesn\u0027t\nabort, just call printk().  data_err\u003dignore is the default.\n\nHere is the corresponding patch of the ext3 version:\nhttp://kerneltrap.org/mailarchive/linux-kernel/2008/9/9/3239374\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "7ffe1ea8949c75ecffb7a4d988bb881a9fa62fbe",
      "tree": "42dc4e7dd16a33ba4c9b74cda41934e1fe27beb5",
      "parents": [
        "44519faf22ad6ce924ad0352d3dc200d9e0b66e8"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Fri Oct 10 20:29:21 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 20:29:21 2008 -0400"
      },
      "message": "ext4: add checks for errors from jbd2\n\nIf the journal has aborted due to a checkpointing failure, we\nhave to keep the contents of the journal space.  Otherwise, the\nfilesystem will lose uncheckpointed metadata completely and\nbecome inconsistent.  To avoid this, we need to keep needs_recovery\nflag if checkpoint has failed.\n\nWith this patch, ext4_put_super() detects a checkpointing failure\nfrom the return value of journal_destroy(), then it invokes\next4_abort() to make the filesystem read only and keep\nneeds_recovery flag.  Errors from jbd2_journal_flush() are also\nhandled by this patch in some places.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "03010a3350301baac2154fa66de925ae2981b7e3",
      "tree": "b1af2cecbb540faab4bd67dc1a28ad3384341d72",
      "parents": [
        "39d80c33a068d9fa63a36c3b2c0d718d38440dd1"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 20:02:48 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 20:02:48 2008 -0400"
      },
      "message": "ext4: Rename ext4dev to ext4\n\nThe ext4 filesystem is getting stable enough that it\u0027s time to drop\nthe \"dev\" prefix.  Also remove the requirement for the TEST_FILESYS\nflag.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "39d80c33a068d9fa63a36c3b2c0d718d38440dd1",
      "tree": "6110ca4101f533ced0db2fe18a7834cd8304f0a3",
      "parents": [
        "08a225f143bf3415fef6f3360d922be35da40543"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Mon Oct 06 21:37:44 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Oct 06 21:37:44 2008 -0400"
      },
      "message": "ext4: Avoid double dirtying of super block in ext4_put_super()\n\nWhile reading code I noticed that ext4_put_super() dirties the \nsuperblock bh twice. It is always done in ext4_commit_super()\ntoo. Remove the redundant dirty operation.\nShould be a nop semantically.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n\n"
    },
    {
      "commit": "ede86cc473defab74d778aeac14b19f43129d4d1",
      "tree": "19da8009accf1737171f5949413e46a9086d5fdc",
      "parents": [
        "23f8b79eae8a74e42a006ffa7c456e295c7e1c0d"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Oct 05 20:50:06 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Oct 05 20:50:06 2008 -0400"
      },
      "message": "ext4: Add debugging markers that can be used by systemtap\n\nThis debugging markers are designed to debug problems such as the\nrandom filesystem latency problems reported by Arjan.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c2ea3fde61f1df1dbf062345f23277dcd6f01dfe",
      "tree": "53ecbf57416326810540494e814c05753bf30874",
      "parents": [
        "240799cdf22bd789ea6852653c3b879d35ad0a6c"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 09:40:52 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 09:40:52 2008 -0400"
      },
      "message": "ext4: Remove old legacy block allocator\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "240799cdf22bd789ea6852653c3b879d35ad0a6c",
      "tree": "e696b60cc103f23838b5c14d8d397f692abffbc3",
      "parents": [
        "37515facd001942221d68171c81c1f46d54ffdd0"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Oct 09 23:53:47 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Oct 09 23:53:47 2008 -0400"
      },
      "message": "ext4: Use readahead when reading an inode from the inode table\n\nWith modern hard drives, reading 64k takes roughly the same time as\nreading a 4k block.  So request readahead for adjacent inode table\nblocks to reduce the time it takes when iterating over directories\n(especially when doing this in htree sort order) in a cold cache case.\nWith this patch, the time it takes to run \"git status\" on a kernel\ntree after flushing the caches via \"echo 3 \u003e /proc/sys/vm/drop_caches\"\nis reduced by 21%.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "5e8814f2f74f53d58aa5679bf32b38a7940033fe",
      "tree": "05f70d1d57d20111a57cd35fb971e36f836d24e8",
      "parents": [
        "9f6200bbfc962d8f926278cf5d5ddb90a228c322"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 23 18:07:35 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 23 18:07:35 2008 -0400"
      },
      "message": "ext4: Combine proc file handling into a single set of functions\n\nPreviously mballoc created a separate set of functions for each proc\nfile.  This combines the tunables into a single set of functions which\ngets used for all of the per-superblock proc files, saving\napproximately 2k of compiled object code.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "9f6200bbfc962d8f926278cf5d5ddb90a228c322",
      "tree": "86cf42e4f1fff753a38c64d49971efd04bfdd5f9",
      "parents": [
        "f702ba0fd7d50b5f5f5aea5317875a10d40b869f"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 23 09:18:24 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 23 09:18:24 2008 -0400"
      },
      "message": "ext4: move /proc setup and teardown out of mballoc.c\n\n...and into the core setup/teardown code in fs/ext4/super.c so that\nother parts of ext4 can define tuning parameters.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "914258bf2cb22bf4336a1b1d90c551b4b11ca5aa",
      "tree": "66a3068b53059154b4584166c4b2ce90ae833b42",
      "parents": [
        "730c213c79a638137b47a90624e4bac252f07ae7"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Oct 06 21:35:40 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Oct 06 21:35:40 2008 -0400"
      },
      "message": "ext4/jbd2: Avoid WARN() messages when failing to write to the superblock\n\nThis fixes some very common warnings reported by kerneloops.org\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "7ee1ec4ca30c6df8e989615cdaacb75f2af4fa6b",
      "tree": "6d097319a8020d53543af86dfd19ffbbb0110b6e",
      "parents": [
        "05496769e5da83ce22ed97345afd9c7b71d6bd24"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Sep 08 10:47:19 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 10:47:19 2008 -0400"
      },
      "message": "ext4: add missing unlock in ext4_check_descriptors() on error path\n\nIf there group descriptors are corrupted we need unlock the block\ngroup lock before returning from the function; else we will oops when\nfreeing a spinlock which is still being held.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "05496769e5da83ce22ed97345afd9c7b71d6bd24",
      "tree": "545c4d66296fe69ab24d34fd2f0298fb8ee66e4f",
      "parents": [
        "899fc1a4cf404747de2666534d508804597ee22f"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 16 14:36:17 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Sep 16 14:36:17 2008 -0400"
      },
      "message": "jbd2: clean up how the journal device name is printed\n\nCalculate the journal device name once and stash it away in the\njournal_s structure.  This avoids needing to call bdevname()\neverywhere and reduces stack usage by not needing to allocate an\non-stack buffer.  In addition, we eliminate the \u0027/\u0027 that can appear in\ndevice names (e.g. \"cciss/c0d0p9\" --- see kernel bugzilla #11321) that\ncan cause problems when creating proc directory names, and include the\ninode number to support ocfs2 which creates multiple journals with\ndifferent inode numbers.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c62a11fd9555007b1caab83b5bcbb443a43e32bb",
      "tree": "1bdafd4b2d7911c1148ac68f888eb0d47977b276",
      "parents": [
        "9d9f177572d9e4eba0f2e18523b44f90dd51fe74"
      ],
      "author": {
        "name": "Frederic Bohe",
        "email": "frederic.bohe@bull.net",
        "time": "Mon Sep 08 10:20:24 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 10:20:24 2008 -0400"
      },
      "message": "Update flex_bg free blocks and free inodes counters when resizing.\n\nThis fixes a bug which prevented the newly created inodes after a\nresize from being used on filesystems with flex_bg.\n\nSigned-off-by: Frederic Bohe \u003cfrederic.bohe@bull.net\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "6bc6e63fcd7dac9e633ea29f1fddd9580ab28f3f",
      "tree": "144d53023af5faeb94b9b3aa28e186a33e6c5b98",
      "parents": [
        "030ba6bc67b4f2bc5cd174f57785a1745c929abe"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Fri Oct 10 09:39:00 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 10 09:39:00 2008 -0400"
      },
      "message": "ext4: Add percpu dirty block accounting.\n\nThis patch adds dirty block accounting using percpu_counters.  Delayed\nallocation block reservation is now done by updating dirty block\ncounter.  In a later patch we switch to non delalloc mode if the\nfilesystem free blocks is greater than 150% of total filesystem dirty\nblocks\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": "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": "e5f8eab8851dff162e7ade46f084cb8575dc45f7",
      "tree": "d6404da53828fbfa7c84166ff0914ad06b0e12a0",
      "parents": [
        "4776004f54e4190e104caf620fd0fa5909412236"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 22:25:04 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Sep 08 22:25:04 2008 -0400"
      },
      "message": "ext4: Fix long long checkpatch warnings\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": "91246c009094142f95ecc7573b7caed2bcef52c7",
      "tree": "df84e815f9441f24558cf5d22dcc61d8b222497e",
      "parents": [
        "16eb72956496594d023a7d7cd14a86404ad195ad"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Tue Aug 19 21:14:52 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Aug 19 21:14:52 2008 -0400"
      },
      "message": "ext4: Initialize writeback_index to 0 when allocating a new inode\n\nThe write_cache_pages() function uses the mapping-\u003ewriteback_index as\nthe starting index to write out when range_cyclic is set.  Properly\ninitialize writeback_index so that we start the writeout at index 0.\n\nThis was found when debugging the small file fragmentation on ext4.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "8f616cd5249e03c9e1b371623d85e76d4b86bbc1",
      "tree": "94cbd990ac45743ac75203a7e1bd6a8fb63c5bc2",
      "parents": [
        "7e31aa11fc672bbe0dd0da59513c9efe3809ced7",
        "7d55992d60caa390460bad1a974eb2b3c11538f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 03 10:50:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 03 10:50:44 2008 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: remove write-only variables from ext4_ordered_write_end\n  ext4: unexport jbd2_journal_update_superblock\n  ext4: Cleanup whitespace and other miscellaneous style issues\n  ext4: improve ext4_fill_flex_info() a bit\n  ext4: Cleanup the block reservation code path\n  ext4: don\u0027t assume extents can\u0027t cross block groups when truncating\n  ext4: Fix lack of credits BUG() when deleting a badly fragmented inode\n  ext4: Fix ext4_ext_journal_restart()\n  ext4: fix ext4_da_write_begin error path\n  jbd2: don\u0027t abort if flushing file data failed\n  ext4: don\u0027t read inode block if the buffer has a write error\n  ext4: Don\u0027t allow lg prealloc list to be grow large.\n  ext4: Convert the usage of NR_CPUS to nr_cpu_ids.\n  ext4: Improve error handling in mballoc\n  ext4: lock block groups when initializing\n  ext4: sync up block and inode bitmap reading functions\n  ext4: Allow read/only mounts with corrupted block group checksums\n  ext4: Fix data corruption when writing to prealloc area\n"
    },
    {
      "commit": "77e69dac3cefacee939cb107ae9cd520a62338e0",
      "tree": "02ddee5ac85ceb632eab2aff994ffbd3233e51eb",
      "parents": [
        "1b7e190b4764ea3ca1080404dd593eae5230d2b3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 04:29:18 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:25 2008 -0400"
      },
      "message": "[PATCH] fix races and leaks in vfs_quota_on() users\n\n* new helper: vfs_quota_on_path(); equivalent of vfs_quota_on() sans the\n  pathname resolution.\n* callers of vfs_quota_on() that do their own pathname resolution and\n  checks based on it are switched to vfs_quota_on_path(); that way we\n  avoid the races.\n* reiserfs leaked dentry/vfsmount references on several failure exits.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2b2d6d019724de6e51ac5bcf22b5ef969daefa8b",
      "tree": "71145b61b73b200fd3d4bae520bb988f5f7d21f5",
      "parents": [
        "ec05e868ac80cc8fc7de6e5cf773b232198e49af"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jul 26 16:15:44 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jul 26 16:15:44 2008 -0400"
      },
      "message": "ext4: Cleanup whitespace and other miscellaneous style issues\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "51cc50685a4275c6a02653670af9f108a64e01cf",
      "tree": "819d47bd2b0c8a9d1835d863853804b0a0242b97",
      "parents": [
        "d91958815d214ea365b98cbff6215383897edcb6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Jul 25 19:45:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "SL*B: drop kmem cache argument from constructor\n\nKmem cache passed to constructor is only needed for constructors that are\nthemselves multiplexeres.  Nobody uses this \"feature\", nor does anybody uses\npassed kmem cache in non-trivial way, so pass only pointer to object.\n\nNon-trivial places are:\n\tarch/powerpc/mm/init_64.c\n\tarch/powerpc/mm/hugetlbpage.c\n\nThis is flag day, yes.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jon Tollefson \u003ckniht@linux.vnet.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\n[akpm@linux-foundation.org: fix arch/powerpc/mm/hugetlbpage.c]\n[akpm@linux-foundation.org: fix mm/slab.c]\n[akpm@linux-foundation.org: fix ubifs]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ec05e868ac80cc8fc7de6e5cf773b232198e49af",
      "tree": "3c57bd99439e1e9559a0ddf755e2a8be1bcb4676",
      "parents": [
        "12219aea6b944e36795267be31d43f9c484841be"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jul 24 12:49:59 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Jul 24 12:49:59 2008 -0400"
      },
      "message": "ext4: improve ext4_fill_flex_info() a bit\n\n- use kzalloc() instead of kmalloc() + memset()\n- improve a printk info\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "b5f10eed8125702929e57cca7e5956b1b9b6d015",
      "tree": "e5b38a6f654baea3658bf100320a4d66387988a3",
      "parents": [
        "e29d1cde63be0b5f1739416b5574a83c34bf8eeb"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Sat Aug 02 21:21:08 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Aug 02 21:21:08 2008 -0400"
      },
      "message": "ext4: lock block groups when initializing\n\nI noticed when filling a 1T filesystem with 4 threads using the\nfs_mark benchmark:\n\nfs_mark -d /mnt/test -D 256 -n 100000 -t 4 -s 20480 -F -S 0\n\nthat I occasionally got checksum mismatch errors:\n\nEXT4-fs error (device sdb): ext4_init_inode_bitmap: Checksum bad for group 6935\n\netc.  I\u0027d reliably get 4-5 of them during the run.\n\nIt appears that the problem is likely a race to init the bg\u0027s\nwhen the uninit_bg feature is enabled.\n\nWith the patch below, which adds sb_bgl_locking around initialization,\nI was able to complete several runs with no errors or warnings.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "8a266467b8c4841ca994d0fe59f39e584650e3df",
      "tree": "b9cde0d9ddf3d5eea87f609267b930e08024a9f1",
      "parents": [
        "d03856bd5e5abac717da137dc60fe4a691769bd0"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jul 26 14:34:21 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Jul 26 14:34:21 2008 -0400"
      },
      "message": "ext4: Allow read/only mounts with corrupted block group checksums\n\nIf the block group checksums are corrupted, still allow the mount to\nsucceed, so e2fsck can have a chance to try to fix things up.  Add\ncode in the remount r/w path to make sure the block group checksums\nare valid before allowing the filesystem to be remounted read/write.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "e4079a11f5ed966b7d972cc69e8d337a0f095e32",
      "tree": "1e70276654b4808cfcde549c7f2612947e5ab1c3",
      "parents": [
        "c07651b556323e0e763c452587fe29d2b034b314"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.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: do not set extents feature from the kernel\n\nWe\u0027ve talked for a while about getting rid of any feature-\nsetting from the kernel; this gets rid of the code which would\nset the INCOMPAT_EXTENTS flag on the first file write when mounted\nas ext4[dev].\n\nWith this patch, if the extents feature is not already set on disk,\nthen mounting as ext4 will fall back to noextents with a warning,\nand if -o extents is explicitly requested, the mount will fail,\nalso with warning.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c07651b556323e0e763c452587fe29d2b034b314",
      "tree": "6cae1d3c9a63e1a5ba83639003af792591845347",
      "parents": [
        "dd919b9822c5fd9fd72f95a602440130297c3857"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.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: Don\u0027t allow nonextenst mount option for large filesystem\n\nThe block mapped inode format can address only blocks within 2**32. This\ncauses a number of issues, the biggest of which is that the block\nallocator needs to be taught that certain inodes can not utilize block\nnumbers \u003e 2**32.  So until this is fixed, it is simplest to fail\nmounting of file systems with more than 2**32 blocks if the -o noextents\noption is given.\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": "dd919b9822c5fd9fd72f95a602440130297c3857",
      "tree": "da1958f89e5671cc7b16e0c45630c310c9b3b5bd",
      "parents": [
        "3e3398a08d6e516675d5af853d625dc7dd90eab1"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.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: Enable delalloc by default.\n\nEnable delalloc by default to ensure it gets sufficient testing and\nbecause it makes the filesystem much more efficient.  Add a nodealalloc\noption to disable delayed allocation, and update ext4_show_options to\nshow delayed allocation off if it is disabled.\n\nIf the data\u003djournal mount option is used, disable delayed allocation\nsince the delalloc code doesn\u0027t support data\u003djournal yet.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\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": "64769240bd07f446f83660bb143bb609d8ab4910",
      "tree": "db8bd8dda988adab6b4f6087a9b59ce504612009",
      "parents": [
        "29a814d2ee0e43c2980f33f91c1311ec06c0aa35"
      ],
      "author": {
        "name": "Alex Tomas",
        "email": "alex@clusterfs.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: Add delayed allocation support in data\u003dwriteback mode\n\nUpdated with fixes from Mingming Cao \u003ccmm@us.ibm.com\u003e to unlock and\nrelease the page from page cache if the delalloc write_begin failed, and\nproperly handle preallocated blocks.  Also added a fix to clear\nbuffer_delay in block_write_full_page() after allocating a delayed\nbuffer.\n\nUpdated with fixes from Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nto update i_disksize properly and to add bmap support for delayed\nallocation.\n\nUpdated with a fix from Valerie Clement \u003cvalerie.clement@bull.net\u003e to\navoid filesystem corruption when the filesystem is mounted with the\ndelalloc option and blocksize \u003c pagesize.\n\nSigned-off-by: Alex Tomas \u003calex@clusterfs.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by:  Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "678aaf481496b01473b778685eca231d6784098b",
      "tree": "298fa039e4910a0ead3cdfb814af167f378391bc",
      "parents": [
        "c851ed540173736e60d48b53b91a16ea5c903896"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "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: Use new framework for data\u003dordered mode in JBD2\n\nThis patch makes ext4 use inode-based implementation of data\u003dordered mode\nin JBD2. It allows us to unify some data\u003dordered and data\u003dwriteback paths\n(especially writepage since we don\u0027t have to start a transaction anymore)\nand remove some buffer walking.\n\nUpdated fix from Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nto fix file system hang due to corrupt jinode values.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\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": "47b4a50bebfd34b5e1fa2a9c673c8f31fa231cc1",
      "tree": "df382e97cdc28fc231104b8d19cdcfc3099b9d68",
      "parents": [
        "07031431072ece801d53d2c03d5e5bb21f4f64a4"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "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: Set journal pointer to NULL when journal is released\n\nSet sbi-\u003es_journal to NULL after we call journal_destroy(). This\nwill be later needed because after journal_destroy() is called,\next4_clear_inode() can still be called for some inodes (e.g. root\ninode) and we\u0027ll need to detect there that journal doesn\u0027t exists\nanymore.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "7477827f6686ce29b6216d9eb26f6b9027742dcc",
      "tree": "43bb05000b155120382066298c3d66a8422852f9",
      "parents": [
        "d9c769b769a8bcd70371c71797fc4e407b37ba75"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.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: Fix sparse warning\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "f9a8ac99fd79eb961a8573ccf058439bc17b4d3a",
      "tree": "9fadb826277793f1bfb155b031da8fd8c4fbde08",
      "parents": [
        "530576bbf379fc45cfb34f246257d8526db44567"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@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: remove redundant code in ext4_fill_super()\n\nThe previous sb_min_blocksize() has already set the block size.\n\nSigned-off-by: Li Zefan \u003clizf@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": "772cb7c83ba256a11c7bf99a11bef3858d23767c",
      "tree": "a42b97e5cbd870a76b2646c2dcb658a92c53f637",
      "parents": [
        "736603ab297506f4396cb5af592004499950fcfd"
      ],
      "author": {
        "name": "Jose R. Santos",
        "email": "jrs@us.ibm.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: New inode allocation for FLEX_BG meta-data groups.\n\nThis patch mostly controls the way inode are allocated in order to\nmake ialloc aware of flex_bg block group grouping.  It achieves this\nby bypassing the Orlov allocator when block group meta-data are packed\ntoghether through mke2fs.  Since the impact on the block allocator is\nminimal, this patch should have little or no effect on other block\nallocation algorithms. By controlling the inode allocation, it can\nbasically control where the initial search for new block begins and\nthus indirectly manipulate the block allocator.\n\nThis allocator favors data and meta-data locality so the disk will\ngradually be filled from block group zero upward.  This helps improve\nperformance by reducing seek time.  Since the group of inode tables\nwithin one flex_bg are treated as one giant inode table, uninitialized\nblock groups would not need to partially initialize as many inode\ntable as with Orlov which would help fsck time as the filesystem usage\ngoes up.\n\nSigned-off-by: Jose R. Santos \u003cjrs@us.ibm.com\u003e\nSigned-off-by: Valerie Clement \u003cvalerie.clement@bull.net\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "7ad72ca60b6be3c79f90a81ce5883e12a2c6e667",
      "tree": "7d685f946bdbe19219a3067549d5a5c8602f3c76",
      "parents": [
        "574ca174c97f790086e3e6f2251381420ad38fd0"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "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: Remove unused variable from ext4_show_options\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "4d04e4fbf8fc9f5136a64d45e2c20de095c08efb",
      "tree": "a81c0729acc8c0186b6069ad2e1681875e481603",
      "parents": [
        "f5c8f7dae75e1e6bb3200fc61302e4d5e2df3dc2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 04 09:59:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 04 10:40:05 2008 -0700"
      },
      "message": "ext4: add missing unlock to an error path in ext4_quota_write()\n\nWhen write in ext4_quota_write() fails, we have to properly release\ni_mutex.  One error path has been missing the unlock...\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "571640cad3fda6475da45d91cf86076f1f86bd9b",
      "tree": "a97ff3da9b60251c68358cd000c217cb37915ea2",
      "parents": [
        "034772b068be62a79470d6c1b81b01fbe27793ac"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon May 26 12:29:46 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon May 26 12:29:46 2008 -0400"
      },
      "message": "ext4: enable barriers by default\n\nI can\u0027t think of any valid reason for ext4 to not use barriers when\nthey are available;  I believe this is necessary for filesystem\nintegrity in the face of a volatile write cache on storage.\n\nAn administrator who trusts that the cache is sufficiently battery-\nbacked (and power supplies are sufficiently redundant, etc...)\ncan always turn it back off again.\n\nSuSE has carried such a patch for ext3 for quite some time now.\n\nAlso document the mount option while we\u0027re at it.\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\n"
    },
    {
      "commit": "cd0b6a39a1d68b61b1073662f40f747c8b728f98",
      "tree": "909c7e8e06ac74d89be5d5e94d2e3e562bf801bd",
      "parents": [
        "624080eded68738daee041ad64672a9d2614754f"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon May 26 10:28:28 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon May 26 10:28:28 2008 -0400"
      },
      "message": "ext4: Display the journal_async_commit mount option in /proc/mounts\n\nCc: Andreas Dilger \u003cadilger@clusterfs.com\u003e\nCc: Girish Shilamkar \u003cgirish@clusterfs.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "624080eded68738daee041ad64672a9d2614754f",
      "tree": "c1350c70233c1f7536a1927bacabe4084770d3c7",
      "parents": [
        "8ea76900be3b4522396e2021260d2818a27b3a5b"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Jun 06 17:50:40 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Jun 06 17:50:40 2008 -0400"
      },
      "message": "jbd2: If a journal checksum error is detected, propagate the error to ext4\n\nIf a journal checksum error is detected, the ext4 filesystem will call\next4_error(), and the mount will either continue, become a read-only\nmount, or cause a kernel panic based on the superblock flags\nindicating the user\u0027s preference of what to do in case of filesystem\ncorruption being detected.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "2c8be6b222f76c332d9faeb00c047996d340632c",
      "tree": "8cfac52caeb69c6d3697b60c7a6a9c54cedc47d2",
      "parents": [
        "0623543b3335c8e439cacf21af99bbf45da42c5a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue May 13 21:27:55 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue May 13 21:27:55 2008 -0400"
      },
      "message": "ext4: fix typos in messages and comments (journalled -\u003e journaled)\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "0623543b3335c8e439cacf21af99bbf45da42c5a",
      "tree": "41f6df8f1c11594df2834e3f54a68d08df25ef63",
      "parents": [
        "cd59e7b9781a35716b8a3e8c4aa2d48081d7daf7"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue May 13 19:11:51 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue May 13 19:11:51 2008 -0400"
      },
      "message": "ext4: fix synchronization of quota files in journal\u003ddata mode\n\nIn journal\u003ddata mode, it is not enough to do write_inode_now as done in\nvfs_quota_on() to write all data to their final location (which is\nneeded for quota_read to work correctly).  Calling journal_flush() does\nits job.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "cd59e7b9781a35716b8a3e8c4aa2d48081d7daf7",
      "tree": "b93d01eedfe059f0f033b2c6bb5d303486a1f689",
      "parents": [
        "dfc5d03f12e706c19ee37734184ea96582ef931d"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue May 13 19:11:51 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue May 13 19:11:51 2008 -0400"
      },
      "message": "ext4: Fix mount messages when quota disabled\n\nWhen quota is disabled, we should not print \u0027journaled quota not\nsupported\u0027 when user tried to mount non-journaled quota. Also fix typo\nin the message.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "dfc5d03f12e706c19ee37734184ea96582ef931d",
      "tree": "66397d0933ba3307a9de99db298ae790dda90336",
      "parents": [
        "8f40f672e6bb071812f61bfbd30efc3fc1263ad1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue May 13 19:11:51 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue May 13 19:11:51 2008 -0400"
      },
      "message": "ext4: correct mount option parsing to detect when quota options can be changed\n\nWe should not allow user to change quota mount options when quota is\njust suspended.  It would make mount options and internal quota state\ninconsistent.  Also we should not allow user to change quota format when\nquota is turned on.  On the other hand we can just silently ignore when\nsome option is set to the value it already has (mount does this on\nremount).\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "c19204b0ae3f8a125118fd5d425d3c7a5f8fda9b",
      "tree": "bca9e898c7a66315ffd2551acb52e2db4ec94c3b",
      "parents": [
        "8753e88f1b4345677620ec68f847222a6301e2fd"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Apr 29 22:00:28 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 22:00:28 2008 -0400"
      },
      "message": "ext4: don\u0027t use ext4_error in ext4_check_descriptors\n\nBecause ext4_check_descriptors is called at mount time you can\u0027t use ext4_error\nas it calls ext4_commit_sb, which since the sb isn\u0027t all the way initialized\ncauses bad things to happen (ie a panic).  This patch changes the ext4_error\u0027s\nto printk\u0027s to keep this problem from happening.  Thanks much,\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\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": "2887df139c40512cdc147d1a84d95d4f3d261bd1",
      "tree": "e42a0ad7c0532f373dc4b09928cd8396bcf4e6dc",
      "parents": [
        "53b7e9f6807c1274eee19201396b4c2b5f721553"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Apr 29 22:02:07 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 22:02:07 2008 -0400"
      },
      "message": "ext4: Fix hang on umount with quotas when journal is aborted\n\nCall dquot_drop() from ext4_dquot_drop() even if we fail to start a\ntransaction. Otherwise we never get to dropping references to quota structures\nfrom the inode and umount will hang indefinitely.  Thanks to Payphone LIOU for\nspotting the problem.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCC: Payphone LIOU \u003clioupayphone@gmail.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "46e665e9d297525d286989640cf4247cbe941df6",
      "tree": "4858cd21e48cab2b2c51839dd80378f6044d3394",
      "parents": [
        "620de4e19890c623eb4ba293ec19b42e2e391b89"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu Apr 17 10:38:59 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Apr 17 10:38:59 2008 -0400"
      },
      "message": "ext4: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "216c34b2b8a3687afed4d269acec140c8baf23fe",
      "tree": "f87ae5912c2635000c0c53d719a537f87e0a0877",
      "parents": [
        "e8546d0615542684ca02ba03edebec1a503beb6b"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Thu Apr 17 10:38:59 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Apr 17 10:38:59 2008 -0400"
      },
      "message": "ext4: convert byte order of constant instead of variable\n\nConvert byte order of constant instead of variable which can be done at\ncompile time (vs run time).\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "e8546d0615542684ca02ba03edebec1a503beb6b",
      "tree": "c0114f0e86278dd1418f5a548b38d5d1c4b157b3",
      "parents": [
        "9a0762c5af40e4aa64fef999967459c98e6ae4c9"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Thu Apr 17 10:38:59 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Thu Apr 17 10:38:59 2008 -0400"
      },
      "message": "ext4: le*_add_cpu conversion\n\nreplace all:\nlittle_endian_variable \u003d cpu_to_leX(leX_to_cpu(little_endian_variable) +\n\t\t\t\t\texpression_in_cpu_byteorder);\nwith:\n\tleX_add_cpu(\u0026little_endian_variable, expression_in_cpu_byteorder);\ngenerated with semantic patch\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: linux-ext4@vger.kernel.org\nCc: sct@redhat.com\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: adilger@clusterfs.com\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\n"
    },
    {
      "commit": "f3f12faa7414595f502721c90c34deccc1a03c71",
      "tree": "8d1761e9d0fb28ac35f4a4f7c4878caa171baf4c",
      "parents": [
        "53c550e9750434ddc4275fe0405170e0d1b46731"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Apr 29 22:05:28 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 22:05:28 2008 -0400"
      },
      "message": "ext4: fix mount option parsing\n\nThe \"resize\" option won\u0027t be noticed as it comes after the NULL option,\nso if you try to mount (or in this case remount) with that option it\nwon\u0027t be recognized.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "97bd42b9c8be748ad85b362ba3bd401f4d35be80",
      "tree": "161f8972e7e94e3c1a384e22fc4be55fe9c18c55",
      "parents": [
        "1dfc3220d963385a317264b11154c462a83596ed"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Apr 29 22:04:56 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 22:04:56 2008 -0400"
      },
      "message": "ext4:  check return of ext4_orphan_get properly\n\nThis patch fix a panic while running fsfuzzer. \nWe are improperly checking the return of ext4_orphan_get.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n\n"
    },
    {
      "commit": "6f28e08794749f3431e89302728e612343d9d9e4",
      "tree": "8763162c48584e72b9d35d12a221f002ca94847c",
      "parents": [
        "2fd83a4f3cd5a725168e3a269746dfce2adfa56a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Apr 28 02:14:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:33 2008 -0700"
      },
      "message": "quota: ext4: make ext4 handle quotaon on remount\n\nUpdate ext4 to handle quotaon on remount RW.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "1d957f9bf87da74f420424d16ece005202bbebd3"
}
