)]}'
{
  "log": [
    {
      "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": "be857df1dd8d8e1491e60d999caf3b8446ccd475",
      "tree": "c3c45d80066bab95bd6f677f05afebf4ba6efe56",
      "parents": [
        "91f68b7359144aa40bb9668124543d15284750b4"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jan 07 18:09:12 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:15 2009 -0800"
      },
      "message": "generic swap(): ext3: remove local swap() macro\n\nUse the new generic implementation.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04143e2fb9d512c21e1dcfb561dbb0445dcfdc8c",
      "tree": "1a8b6add3f19db63663bcf33205b771272e451d8",
      "parents": [
        "2e8671cb566da993425d324fc355af31edc6e7f1"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Wed Jan 07 18:07:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:01 2009 -0800"
      },
      "message": "ext3: tighten restrictions on inode flags\n\nAt the moment there are few restrictions on which flags may be set on\nwhich inodes.  Specifically DIRSYNC may only be set on directories and\nIMMUTABLE and APPEND may not be set on links.  Tighten that to disallow\nTOPDIR being set on non-directories and only NODUMP and NOATIME to be set\non non-regular file, non-directories.\n\nIntroduces a flags masking function which masks flags based on mode and\nuse it during inode creation and when flags are set via the ioctl to\nfacilitate future consistency.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e8671cb566da993425d324fc355af31edc6e7f1",
      "tree": "6da1dc8231ecbff398229398b602a6a3543979fd",
      "parents": [
        "5df096d67ec2b6578518caed7d57317a4b807aa1"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Wed Jan 07 18:07:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:01 2009 -0800"
      },
      "message": "ext3: don\u0027t inherit inappropriate inode flags from parent\n\nAt present INDEX is the only flag that new ext3 inodes do NOT inherit from\ntheir parent.  In addition prevent the flags DIRTY, ECOMPR, IMAGIC and\nTOPDIR from being inherited.  List inheritable flags explicitly to prevent\nfuture flags from accidentally being inherited.\n\nThis fixes the TOPDIR flag inheritance bug reported at\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9866.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5df096d67ec2b6578518caed7d57317a4b807aa1",
      "tree": "8e92d19c89dea347eed6fc018fc6e4388bf9ebdc",
      "parents": [
        "f420d4dc4272fd223986762df2ad06056ddebada"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Wed Jan 07 18:07:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:00 2009 -0800"
      },
      "message": "ext3: allocate -\u003es_blockgroup_lock separately\n\nAs spotted by kmemtrace, struct ext3_sb_info is 17152 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 ext3_sb_info\nenough to fit a 1 KB slab cache so now we allocate 16 KB + 1 KB instead of\n32 KB saving 15 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: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "157091a2c3cdc71422cbc71eace205cf1b9f2200",
      "tree": "4d941f73fb8899a3701d77b6484a271a3dc6083a",
      "parents": [
        "4103003b3abb85af9dec9e60616ae086c2bcb4c9"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Nov 25 15:31:34 2008 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:25 2009 -0800"
      },
      "message": "ext3: 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": "ee0d5ffe0da2aa992004447113e28622621a983f",
      "tree": "602c66693af5f1cadbc4f6c3d1475ff048aa94f5",
      "parents": [
        "f55abc0fb9c3189de3da829adf3220322c0da43e"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Aug 20 18:11:50 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:36:56 2009 -0800"
      },
      "message": "ext3: 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": "54566b2c1594c2326a645a3551f9d989f7ba3c5e",
      "tree": "b373f3283fe5e197d0df29cd6b645c35adf1076c",
      "parents": [
        "e687d691cb3790d25e31c74f5941fd7c565e9df5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sun Jan 04 12:00:53 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 04 13:33:20 2009 -0800"
      },
      "message": "fs: symlink write_begin allocation context fix\n\nWith the write_begin/write_end aops, page_symlink was broken because it\ncould no longer pass a GFP_NOFS type mask into the point where the\nallocations happened.  They are done in write_begin, which would always\nassume that the filesystem can be entered from reclaim.  This bug could\ncause filesystem deadlocks.\n\nThe funny thing with having a gfp_t mask there is that it doesn\u0027t really\nallow the caller to arbitrarily tinker with the context in which it can be\ncalled.  It couldn\u0027t ever be GFP_ATOMIC, for example, because it needs to\ntake the page lock.  The only thing any callers care about is __GFP_FS\nanyway, so turn that into a single flag.\n\nAdd a new flag for write_begin, AOP_FLAG_NOFS.  Filesystems can now act on\nthis flag in their write_begin function.  Change __grab_cache_page to\naccept a nofs argument as well, to honour that flag (while we\u0027re there,\nchange the name to grab_cache_page_write_begin which is more instructive\nand does away with random leading underscores).\n\nThis is really a more flexible way to go in the end anyway -- if a\nfilesystem happens to want any extra allocations aside from the pagecache\nones in ints write_begin function, it may now use GFP_KERNEL (rather than\nGFP_NOFS) for common case allocations (eg.  ocfs2_alloc_write_ctxt, for a\nrandom example).\n\n[kosaki.motohiro@jp.fujitsu.com: fix ubifs]\n[kosaki.motohiro@jp.fujitsu.com: fix fuse]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.28.x]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n[ Cleaned up the calling convention: just pass in the AOP flags\n  untouched to the grab_cache_page_write_begin() function.  That\n  just simplifies everybody, and may even allow future expansion of the\n  logic.   - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b082b531228c43d454c082fc0f969da1695b060",
      "tree": "dbd2f64945064e31383a24729fcdb672a23f65e9",
      "parents": [
        "87d8fe1ee6b8d2f95076142d58c440dba4e7bdc2"
      ],
      "author": {
        "name": "Toshiyuki Okajima",
        "email": "toshi.okajima@jp.fujitsu.com",
        "time": "Mon Jan 05 22:38:14 2009 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 05 22:38:14 2009 -0500"
      },
      "message": "ext3: provide function to release metadata pages under memory pressure\n\nPages in the page cache belonging to ext3 data files are released via\nthe ext3_releasepage() function specified in the ext3 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 try_to_free_pages() function which calls\njournal_try_to_free_buffers() function to free the metadata, and which\nis 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": "c38012daa7ad902a39a4213ba2b3fe50e81157ea",
      "tree": "69dd3bdf2efe82f9bee13eaf729df7bf70e89381",
      "parents": [
        "41080b5a240113328c607f22b849f653373db0ce"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 30 02:02:50 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 31 18:07:44 2008 -0500"
      },
      "message": "nfsd race fixes: ext3\n\next3 analog of the previous patch\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b5ed3112b5f74c8ec1c7aa03a76c596635e85197",
      "tree": "943736d8c2502a8bebf71d86296bd98377235690",
      "parents": [
        "8d6d0c4da2dbbe0a69fea3692146af39f139f8b4"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Dec 19 20:47:14 2008 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 31 18:07:39 2008 -0500"
      },
      "message": "ext3: ensure fast symlinks are NUL-terminated\n\nEnsure fast symlink targets are NUL-terminated, even if corrupted\non-disk.\n\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Stephen Tweedie \u003csct@redhat.com\u003e\nCc: linux-ext4@vger.kernel.org\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2b828925652340277a889cbc11b2d0637f7cdaf7",
      "tree": "32fcb3d3e466fc419fad2d3717956a5b5ad3d35a",
      "parents": [
        "3a3b7ce9336952ea7b9564d976d068a238976c9d",
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 11:29:12 2008 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\tsecurity/keys/internal.h\n\tsecurity/keys/process_keys.c\n\tsecurity/keys/request_key.c\n\nFixed conflicts above by using the non \u0027tsk\u0027 versions.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "6a2f90e9fae0824e8b6b123f1ea7d9fff9079ef3",
      "tree": "7ae64fd6e64eefbafd021f4c3afaeba1673c3f1c",
      "parents": [
        "a8dd4d67bdf9c48c5ebfa366592fde7e2d318b4f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:38:51 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:38:51 2008 +1100"
      },
      "message": "CRED: Wrap task credential accesses in the Ext3 filesystem\n\nWrap access to task credentials so that they can be separated more easily from\nthe task_struct during the introduction of COW creds.\n\nChange most current-\u003e(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().\n\nChange some task-\u003ee?[ug]id to task_e?[ug]id().  In some places it makes more\nsense to use RCU directly rather than a convenient wrapper; these will be\naddressed by later patches.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Stephen Tweedie \u003csct@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: adilger@sun.com\nCc: linux-ext4@vger.kernel.org\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "6cdfcc275e40b89fb020da1088ead86a61d33115",
      "tree": "9518d64cb5d0e68ac2731aa5391d2d3a32728c34",
      "parents": [
        "50d7d5bf3168db5d04566dd7ffb9a820e9fdf484"
      ],
      "author": {
        "name": "Theodore Tso",
        "email": "tytso@mit.edu",
        "time": "Wed Nov 12 13:27:01 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 12 17:17:17 2008 -0800"
      },
      "message": "ext3: Clean up outdated and incorrect comment for ext3_write_super()\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c87591b719737b4e91eb1a9fa8fd55a4ff1886d6",
      "tree": "b442f22c99aa46524d4c1256dffadeaec975607e",
      "parents": [
        "fbdd12676c83df77480f00ebd32fc98fbe3bf836"
      ],
      "author": {
        "name": "Arthur Jones",
        "email": "ajones@riverbed.com",
        "time": "Thu Nov 06 12:53:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 06 15:41:19 2008 -0800"
      },
      "message": "ext3: wait on all pending commits in ext3_sync_fs\n\nIn ext3_sync_fs, we only wait for a commit to finish if we started it, but\nthere 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 are\ndelayed due to a long list of other I/O on the backing block device, this\ncauses the buffer associated with the long symlinks to not be moved to the\ninode dirty list in the second phase of fsync_super.  Then, before they\ncan be dirtied again, kjournald exits, seeing the UMOUNT flag and the\ndirty pages are never written to the backing block device, causing long\nsymlink corruption and exposing new or previously freed block data to\nuserspace.\n\nThis can be reproduced with a script created\nby Eric Sandeen \u003csandeen@redhat.com\u003e:\n\n\t#!/bin/bash\n\n\tumount /mnt/test2\n\tmount /dev/sdb4 /mnt/test2\n\trm -f /mnt/test2/*\n\tdd if\u003d/dev/zero of\u003d/mnt/test2/bigfile bs\u003d1M count\u003d512\n\ttouch\n\t/mnt/test2/thisisveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongfilename\n\tln -s\n\t/mnt/test2/thisisveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongfilename\n\t/mnt/test2/link\n\tumount /mnt/test2\n\tmount /dev/sdb4 /mnt/test2\n\tls /mnt/test2/\n\tumount /mnt/test2\n\nTo ensure all commits are synced, we flush all journal commits now when\nsync_fs\u0027ing ext3.\n\nSigned-off-by: Arthur Jones \u003cajones@riverbed.com\u003e\nCc: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.everything]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59e315b4c410b00a9acd0f24a00dbadbe81ce692",
      "tree": "d19e7b45d98c42c6f94cb5aa292e2efea44244f5",
      "parents": [
        "f99b25897a86fcfff9140396a97261ae65fed872"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Dec 06 16:58:39 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Dec 06 16:58:39 2008 -0500"
      },
      "message": "ext3/4: Fix loop index in do_split() so it is signed\n\nThis fixes a gcc warning but it doesn\u0027t appear able to result in a\nfailure, since the primary way the loop is exited is the first\nconditional in the for loop, and at least for a consistent filesystem,\nthe signed/unsigned should in practice never be exposed.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "5e1f8c9e20a92743eefc9a82c2db835213905e26",
      "tree": "0c945d1e31b87d1d8c18381f4ffe99122ddb797b",
      "parents": [
        "8f72fbdf0d92e6127583cc548bf043c60cd4720f"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Oct 28 13:21:55 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Oct 28 13:21:55 2008 -0400"
      },
      "message": "ext3: 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\nCc: akpm@linux-foundation.org\nCc: linux-kernel@vger.kernel.org\n"
    },
    {
      "commit": "44d6f78756560e95903de239e10f8a40a6eae444",
      "tree": "2f4e1ec9219eb9f8e3d564856e5c40174bd869e7",
      "parents": [
        "0173a3265b228da319ceb9c1ec6a5682fd1b2d92"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Mon Oct 27 22:51:46 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Oct 27 22:51:46 2008 -0400"
      },
      "message": "ext3: fix a bug accessing freed memory in ext3_abort\n\nVegard Nossum reported a bug which accesses freed memory (found via\nkmemcheck).  When journal has been aborted, ext3_put_super() calls\next3_abort() after freeing the journal_t object, and then ext3_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": "8c9fa93d51123c5540762b1a9e1919d6f9c4af7c",
      "tree": "e0c09b583c785be17bd2509b7c71fd7db3ad9aad",
      "parents": [
        "57f8f7b60db6f1ed2c6918ab9230c4623a9dbe37"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 11:38:37 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sat Oct 25 22:37:44 2008 -0400"
      },
      "message": "ext3: Fix duplicate entries returned from getdents() system call\n\nFix a regression caused by commit 6a897cf4, \"ext3: fix ext3_dx_readdir\nhash collision handling\", where deleting files in a large directory\n(requiring more than one getdents system call), results in some\nfilenames being returned twice.  This was caused by a failure to\nupdate info-\u003ecurr_hash and info-\u003ecurr_minor_hash, so that if the\ndirectory had gotten modified since the last getdents() system call\n(as would be the case if the user is running \"rm -r\" or \"git clean\"),\na directory entry would get returned twice to the userspace.\n\nThis patch fixes the bug reported by Markus Trippelsdorf at:\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11844\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nTested-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\n"
    },
    {
      "commit": "12e1ec9ff31d388305da644b452c9f80d244aa55",
      "tree": "9e5fa992d12885a6b1c16c1175c692f99ac03bd7",
      "parents": [
        "1f6d6e8ebe73ba9d9d4c693f7f6f50f661dbd6e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 11:48:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 11:48:56 2008 -0700"
      },
      "message": "ext3 quota support: fix compile failure\n\nThis one was due to a merge error: we added a use of nd.path in commit\n2d7c820e56ce83b23daee9eb5343730fb309418e (\"ext3: add checks for errors\nfrom jbd\"), and concurrently we got rid of \u0027nd\u0027 and used a naked \u0027path\u0027\nin commit 8264613def2e5c4f12bc3167713090fd172e6055 (\"[PATCH] switch\nquota_on-related stuff to kern_path()\").\n\nThat all merged cleanly, but it didn\u0027t actually _work_.  This should fix\nit.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\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": "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
      "tree": "af19ed28db83e8f52690872ac99336da1cf2fd3b",
      "parents": [
        "5b34653963de7a6d0d8c783527457d68fddc60fb",
        "fd217f4d70172c526478f2bc76859e909fdfa674"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (46 commits)\n  [PATCH] fs: add a sanity check in d_free\n  [PATCH] i_version: remount support\n  [patch] vfs: make security_inode_setattr() calling consistent\n  [patch 1/3] FS_MBCACHE: don\u0027t needlessly make it built-in\n  [PATCH] move executable checking into -\u003epermission()\n  [PATCH] fs/dcache.c: update comment of d_validate()\n  [RFC PATCH] touch_mnt_namespace when the mount flags change\n  [PATCH] reiserfs: add missing llseek method\n  [PATCH] fix -\u003ellseek for more directories\n  [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent\n  [PATCH vfs-2.6 5/6] vfs: remove LOOKUP_PARENT from non LOOKUP_PARENT lookup\n  [PATCH vfs-2.6 4/6] vfs: remove unnecessary fsnotify_d_instantiate()\n  [PATCH vfs-2.6 3/6] vfs: add __d_instantiate() helper\n  [PATCH vfs-2.6 2/6] vfs: add d_ancestor()\n  [PATCH vfs-2.6 1/6] vfs: replace parent \u003d\u003d dentry-\u003ed_parent by IS_ROOT()\n  [PATCH] get rid of on-stack dentry in udf\n  [PATCH 2/2] anondev: switch to IDA\n  [PATCH 1/2] anondev: init IDR statically\n  [JFFS2] Use d_splice_alias() not d_add() in jffs2_lookup()\n  [PATCH] Optimise NFS readdir hack slightly.\n  ...\n"
    },
    {
      "commit": "2d7c820e56ce83b23daee9eb5343730fb309418e",
      "tree": "a64db3f90c8826a03c591be492faaf64ab7bf14a",
      "parents": [
        "4afe978530702c934dfdb11f54073136818b2119"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Wed Oct 22 14:15:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:01 2008 -0700"
      },
      "message": "ext3: add checks for errors from jbd\n\nIf the journal has aborted due to a checkpointing failure, we have to\nkeep the contents of the journal space.  Otherwise, the filesystem will\nlose uncheckpointed metadata completely and become inconsistent.  To\navoid this, we need to keep needs_recovery flag if checkpoint has\nfailed.\n\nWith this patch, ext3_put_super() detects a checkpointing failure from\nthe return value of journal_destroy(), then it invokes ext3_abort() to\nmake the filesystem read only and keep needs_recovery flag.  Errors\nfrom journal_flush() are also handled by this patch in some places.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "734711abac46c8fee4d70cc9876ebc6d9edb4971",
      "tree": "8e93a3530b9bc6142316441b2e6e396cadb00f2f",
      "parents": [
        "5f556aab907a358c7837cc9a83c3aea4e69cff5b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 24 07:26:48 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:08 2008 -0400"
      },
      "message": "[PATCH] get rid of on-stack fake dentry in ext3_get_parent()\n\nBetter pass parent and qstr to ext3_find_entry() explicitly than\nuse such kludges, especially since the stack footprint is nasty\nenough and we have every chance to be deep in call chain.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "440037287c5ebb07033ab927ca16bb68c291d309",
      "tree": "c4be3843ea87a777c2647f471895917005d8068f",
      "parents": [
        "4ea3ada2955e4519befa98ff55dd62d6dfbd1705"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Aug 11 15:49:04 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:01 2008 -0400"
      },
      "message": "[PATCH] switch all filesystems over to d_obtain_alias\n\nSwitch all users of d_alloc_anon to d_obtain_alias.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\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": "6da0b38f4433fb0f24615449d7966471b6e5eae0",
      "tree": "9f163fbbc7342406bb602de447293c0b11628c6f",
      "parents": [
        "0d468300dc97d6aec084799ffe39253ac366f1e4"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 20 22:28:45 2008 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 11:43:59 2008 -0700"
      },
      "message": "fs/Kconfig: move ext2, ext3, ext4, JBD, JBD2 out\n\nUse fs/*/Kconfig more, which is good because everything related to one\nfilesystem is in one place and fs/Kconfig is quite fat.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cdbf6dba28e8e6268c8420857696309470009fd9",
      "tree": "ab41f3c567a5e94f3c0e500ab796ad3bdd38806c",
      "parents": [
        "5ec8b75e3a2a94860ee99b5456fe1a963c8680e5"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Sat Oct 18 20:28:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:38 2008 -0700"
      },
      "message": "ext3: avoid printk floods in the face of directory corruption\n\nA very large directory with many read failures (either due to storage\nproblems, or due to invalid size \u0026 blocks from corruption) will generate a\nprintk storm as the filesystem continues to try to read all the blocks.\nThis flood of messages can tie up the box until it is complete - which may\nbe a very long time, especially for very large corrupted values.\n\nThis is fixed by only reporting the corruption once each time we try to\nread the directory.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Eugene Teo \u003ceugeneteo@kernel.sg\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ec8b75e3a2a94860ee99b5456fe1a963c8680e5",
      "tree": "7b79032a1450c955d17ea909f001404802fc9c01",
      "parents": [
        "6a897cf447a83c9c3fd1b85a1e525c02d6eada7d"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Oct 18 20:28:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:38 2008 -0700"
      },
      "message": "ext3: truncate block allocated on a failed ext3_write_begin\n\nFor blocksize \u003c pagesize we need to remove blocks that got allocated in\nblock_write_begin() if we fail with ENOSPC for later blocks.\nblock_write_begin() internally does this if it allocated page locally.\nThis makes sure we don\u0027t have blocks outside inode.i_size during ENOSPC.\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: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a897cf447a83c9c3fd1b85a1e525c02d6eada7d",
      "tree": "d31c7e566cafce2886bf57079bbb7eea738f8d10",
      "parents": [
        "960a22ae60c8a723bd17da3b929fe0bcea6d007e"
      ],
      "author": {
        "name": "Eugene Dashevsky",
        "email": "eugene@ibrix.com",
        "time": "Sat Oct 18 20:27:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:38 2008 -0700"
      },
      "message": "ext3: fix ext3_dx_readdir hash collision handling\n\nThis fixes a bug where readdir() would return a directory entry twice\nif there was a hash collision in an hash tree indexed directory.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Eugene Dashevsky \u003ceugene@ibrix.com\u003e\nSigned-off-by: Mike Snitzer \u003cmsnitzer@ibrix.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e4fb5e283870757024294bc4567a7c59d936f0b",
      "tree": "162263fe9e712124d3df886ca57d8db752a3237d",
      "parents": [
        "46d01a225e694f1a4343beea44f1e85105aedd7e"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Sat Oct 18 20:27:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:37 2008 -0700"
      },
      "message": "ext3: 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 blocks,\nthe file data corruption will spread silently.  Because most of\napplications and commands do buffered writes without fsync(), they don\u0027t\nnotice the IO error.  It\u0027s scary for mission critical systems.  On the\nother hand, if the journal aborts whenever it gets an IO error in file\ndata blocks, the system will easily become inoperable.  So this patch\nintroduces a filesystem option to determine whether it aborts the journal\nor just call printk() when it gets an IO error in file data.\n\nIf you mount a ext3 fs with data_err\u003dabort option, it aborts on file data\nwrite error.  If you mount it with data_err\u003dignore, it doesn\u0027t abort, just\ncall printk().  data_err\u003dignore is the default.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "46d01a225e694f1a4343beea44f1e85105aedd7e",
      "tree": "34b841b58e19de0bd43d8780e8635c25ef6eb37b",
      "parents": [
        "972fbf779832e5ad15effa7712789aeff9224c37"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Sat Oct 18 20:27:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:37 2008 -0700"
      },
      "message": "ext3: fix ext3 block reservation early ENOSPC issue\n\nWe could run into ENOSPC error on ext3, even when there is free blocks on\nthe filesystem.\n\nThe problem is triggered in the case the goal block group has 0 free\nblocks , and the rest block groups are skipped due to the check of\n\"free_blocks \u003c windowsz/2\".  Current code could fall back to non\nreservation allocation to prevent early ENOSPC after examing all the block\ngroups with reservation on , but this code was bypassed if the reservation\nwindow is turned off already, which is true in this case.\n\nThis patch fixed two issues:\n1) We don\u0027t need to turn off block reservation if the goal block group has\n0 free blocks left and continue search for the rest of block groups.\n\nCurrent code the intention is to turn off the block reservation if the\ngoal allocation group has a few (some) free blocks left (not enough for\nmake the desired reservation window),to try to allocation in the goal\nblock group, to get better locality.  But if the goal blocks have 0 free\nblocks, it should leave the block reservation on, and continues search for\nthe next block groups,rather than turn off block reservation completely.\n\n2) we don\u0027t need to check the window size if the block reservation is off.\n\nThe problem was originally found and fixed in ext4.\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "972fbf779832e5ad15effa7712789aeff9224c37",
      "tree": "8fba1c79ad44ad871684a3e1b1b638a8625d9495",
      "parents": [
        "885e353c7427db7b60692789741b34e605b0b69b"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Sat Oct 18 20:27:55 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:37 2008 -0700"
      },
      "message": "ext3: don\u0027t try to resize if there are no reserved gdt blocks left\n\nWhen trying to resize a ext3 fs and you run out of reserved gdt blocks,\nyou get an error that doesn\u0027t actually tell you what went wrong, it just\nsays that the gdb it picked is not correct, which is the case since you\ndon\u0027t have any reserved gdt blocks left.  This patch adds a check to make\nsure you have reserved gdt blocks to use, and if not prints out a more\nrelevant error.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Andreas Dilger \u003cadilger@sun.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\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": "68c9d702bb72f367f3b148963ec6cf5e07ff7f65",
      "tree": "16fc61a1bd973c14a7858ab1fbcb306d3ae75184",
      "parents": [
        "00dc417fa3e763345b34ccb6034d72de76eea0a1"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Fri Oct 03 17:32:43 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Oct 03 17:32:43 2008 -0400"
      },
      "message": "generic block based fiemap implementation\n\nAny block based fs (this patch includes ext3) just has to declare its own\nfiemap() function and then call this generic function with its own\nget_block_t. This works well for block based filesystems that will map\nmultiple contiguous blocks at one time, but will work for filesystems that\nonly map one block at a time, you will just end up with an \"extent\" for each\nblock. One gotcha is this will not play nicely where there is hole+data\nafter the EOF. This function will assume its hit the end of the data as soon\nas it hits a hole after the EOF, so if there is any data past that it will\nnot pick that up. AFAIK no block based fs does this anyway, but its in the\ncomments of the function anyway just in case.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: linux-fsdevel@vger.kernel.org\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": "8ab22b9abb5c55413802e4adc9aa6223324547c3",
      "tree": "cff3319e1275e8a7c083d492889ec6bd0c7712d3",
      "parents": [
        "d84a52f62f6a396ed77aa0052da74ca9e760b28a"
      ],
      "author": {
        "name": "Hisashi Hifumi",
        "email": "hifumi.hisashi@oss.ntt.co.jp",
        "time": "Mon Jul 28 15:46:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "vfs: pagecache usage optimization for pagesize!\u003dblocksize\n\nWhen we read some part of a file through pagecache, if there is a\npagecache of corresponding index but this page is not uptodate, read IO\nis issued and this page will be uptodate.\n\nI think this is good for pagesize \u003d\u003d blocksize environment but there is\nroom for improvement on pagesize !\u003d blocksize environment.  Because in\nthis case a page can have multiple buffers and even if a page is not\nuptodate, some buffers can be uptodate.\n\nSo I suggest that when all buffers which correspond to a part of a file\nthat we want to read are uptodate, use this pagecache and copy data from\nthis pagecache to user buffer even if a page is not uptodate.  This can\nreduce read IO and improve system throughput.\n\nI wrote a benchmark program and got result number with this program.\n\nThis benchmark do:\n\n  1: mount and open a test file.\n\n  2: create a 512MB file.\n\n  3: close a file and umount.\n\n  4: mount and again open a test file.\n\n  5: pwrite randomly 300000 times on a test file.  offset is aligned\n     by IO size(1024bytes).\n\n  6: measure time of preading randomly 100000 times on a test file.\n\nThe result was:\n\t2.6.26\n        330 sec\n\n\t2.6.26-patched\n        226 sec\n\nArch:i386\nFilesystem:ext3\nBlocksize:1024 bytes\nMemory: 1GB\n\nOn ext3/4, a file is written through buffer/block.  So random read/write\nmixed workloads or random read after random write workloads are optimized\nwith this patch under pagesize !\u003d blocksize environment.  This test result\nshowed this.\n\nThe benchmark program is as follows:\n\n#include \u003cstdio.h\u003e\n#include \u003csys/types.h\u003e\n#include \u003csys/stat.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003ctime.h\u003e\n#include \u003cstdlib.h\u003e\n#include \u003cstring.h\u003e\n#include \u003csys/mount.h\u003e\n\n#define LEN 1024\n#define LOOP 1024*512 /* 512MB */\n\nmain(void)\n{\n\tunsigned long i, offset, filesize;\n\tint fd;\n\tchar buf[LEN];\n\ttime_t t1, t2;\n\n\tif (mount(\"/dev/sda1\", \"/root/test1/\", \"ext3\", 0, 0) \u003c 0) {\n\t\tperror(\"cannot mount\\n\");\n\t\texit(1);\n\t}\n\tmemset(buf, 0, LEN);\n\tfd \u003d open(\"/root/test1/testfile\", O_CREAT|O_RDWR|O_TRUNC);\n\tif (fd \u003c 0) {\n\t\tperror(\"cannot open file\\n\");\n\t\texit(1);\n\t}\n\tfor (i \u003d 0; i \u003c LOOP; i++)\n\t\twrite(fd, buf, LEN);\n\tclose(fd);\n\tif (umount(\"/root/test1/\") \u003c 0) {\n\t\tperror(\"cannot umount\\n\");\n\t\texit(1);\n\t}\n\tif (mount(\"/dev/sda1\", \"/root/test1/\", \"ext3\", 0, 0) \u003c 0) {\n\t\tperror(\"cannot mount\\n\");\n\t\texit(1);\n\t}\n\tfd \u003d open(\"/root/test1/testfile\", O_RDWR);\n\tif (fd \u003c 0) {\n\t\tperror(\"cannot open file\\n\");\n\t\texit(1);\n\t}\n\n\tfilesize \u003d LEN * LOOP;\n\tfor (i \u003d 0; i \u003c 300000; i++){\n\t\toffset \u003d (random() % filesize) \u0026 (~(LEN - 1));\n\t\tpwrite(fd, buf, LEN, offset);\n\t}\n\tprintf(\"start test\\n\");\n\ttime(\u0026t1);\n\tfor (i \u003d 0; i \u003c 100000; i++){\n\t\toffset \u003d (random() % filesize) \u0026 (~(LEN - 1));\n\t\tpread(fd, buf, LEN, offset);\n\t}\n\ttime(\u0026t2);\n\tprintf(\"%ld sec\\n\", t2-t1);\n\tclose(fd);\n\tif (umount(\"/root/test1/\") \u003c 0) {\n\t\tperror(\"cannot umount\\n\");\n\t\texit(1);\n\t}\n}\n\nSigned-off-by: Hisashi Hifumi \u003chifumi.hisashi@oss.ntt.co.jp\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6305c43eda10ebfd2ad9e35d6e172ccc7bb3695",
      "tree": "8a95bd0e27fb3ce895cca9ef91af2e1605e4cdab",
      "parents": [
        "1bd5191d9f5d1928c4efdf604c4164b04bb88dbe"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 15 21:03:57 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:14 2008 -0400"
      },
      "message": "[PATCH] sanitize -\u003epermission() prototype\n\n* kill nameidata * argument; map the 3 bits in -\u003eflags anybody cares\n  about to new MAY_... ones and pass with the mask.\n* kill redundant gfs2_iop_permission()\n* sanitize ecryptfs_permission()\n* fix remaining places where -\u003epermission() instances might barf on new\n  MAY_... found in mask.\n\nThe obvious next target in that direction is permission(9)\n\nfolded fix for nfs_permission() breakage from Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\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": "275c0a8f1253a7542ad9726956c918d8a1f694c4",
      "tree": "775834cb708749217f56523b9517aba700978409",
      "parents": [
        "cbe5f466f6995e10a10c7ae66d6dc8608f08a6b8"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:33 2008 -0700"
      },
      "message": "ext3: validate directory entry data before use\n\next3_dx_find_entry uses ext3_next_entry without verifying that the entry\nis valid.  If its rec_len \u003d\u003d 0 this causes an infinite loop.  Refactor the\nloop to check the validity of entries before checking whether they match\nand moving onto the next one.\n\nThere are other uses of ext3_next_entry in this file which also look\nproblematic.  They should be reviewed and fixed if/when we have a\ntest-case that triggers them.\n\nThis patch fixes the first case (image hdb.25.softlockup.gz) reported in\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10882.\n\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ef2720397bb813d4985405a5ae7b8ad6474188b",
      "tree": "d96e7aeeff719a658324661301a7c026f11a3263",
      "parents": [
        "fc80c44277b3c92d808b73e9d40e120229aa4b6a"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: kill 2 useless magic numbers\n\ndx_root_limit() will never return 20, and I can\u0027t figure out what 20\nstands for.  This function has never changed since htree directory\nindexing was merged.\n\nSimilar for dx_node_limit() and the magic 22.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ccc3167b0e5d46ab3bf03e22fbdb7616ce038cd",
      "tree": "2dcd2ebb5ffa7271541d23e721101fca57a0eb33",
      "parents": [
        "95450f5a7e53d5752ce1a0d0b8282e10fe745ae0"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: handle deleting corrupted indirect blocks\n\nWhile freeing indirect blocks we attach a journal head to the parent\nbuffer head, free the blocks, then journal the parent.  If the indirect\nblock list is corrupted and points to the parent the journal head will be\ndetached when the block is cleared, causing an OOPS.\n\nCheck for that explicitly and handle it gracefully.\n\nThis patch fixes the third case (image hdb.20000057.nullderef.gz)\nreported in http://bugzilla.kernel.org/show_bug.cgi?id\u003d10882.\n\nImmediately above the change, in the ext3_free_data function, we call\next3_clear_blocks to clear the indirect blocks in this parent block.  If\none of those blocks happens to actually be the parent block it will clear\nb_private / BH_JBD.\n\nI did the check at the end rather than earlier as it seemed more elegant.\nI don\u0027t think there should be much practical difference, although it is\npossible the FS may not be quite so badly corrupted if we did it the other\nway (and didn\u0027t clear the block at all).  To be honest, I\u0027m not convinced\nthere aren\u0027t other similar failure modes lurking in this code, although I\ncouldn\u0027t find any with a quick review.\n\n[akpm@linux-foundation.org: fix printk warning]\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95450f5a7e53d5752ce1a0d0b8282e10fe745ae0",
      "tree": "acd55d917280641fd3487b73e67298caeac9ee80",
      "parents": [
        "ae76dd9a6b5bbe5315fb7028e03f68f75b8538f3"
      ],
      "author": {
        "name": "Hidehiro Kawai",
        "email": "hidehiro.kawai.ez@hitachi.com",
        "time": "Fri Jul 25 01:46:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: don\u0027t read inode block if the buffer has a write error\n\nA transient I/O error can corrupt inode data.  Here is the scenario:\n\n(1) update inode_A at the block_B\n(2) pdflush writes out new inode_A to the filesystem, but it results\n    in write I/O error, at this point, BH_Uptodate flag of the buffer\n    for block_B is cleared and BH_Write_EIO is set\n(3) create new inode_C which located at block_B, and\n    __ext3_get_inode_loc() tries to read on-disk block_B because the\n    buffer is not uptodate\n(4) if it can read on-disk block_B successfully, inode_A is\n    overwritten by old data\n\nThis patch makes __ext3_get_inode_loc() not read the inode block if the\nbuffer has BH_Write_EIO flag.  In this case, the buffer should have the\nlatest information, so setting the uptodate flag to the buffer (this\navoids WARN_ON_ONCE() in mark_buffer_dirty().)\n\nAccording to this change, we would need to test BH_Write_EIO flag for the\nerror checking.  Currently nobody checks write I/O errors on metadata\nbuffers, but it will be done in other patches I\u0027m working on.\n\nSigned-off-by: Hidehiro Kawai \u003chidehiro.kawai.ez@hitachi.com\u003e\nCc: sugita \u003cyumiko.sugita.yf@hitachi.com\u003e\nCc: Satoshi OSHIMA \u003csatoshi.oshima.fk@hitachi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae76dd9a6b5bbe5315fb7028e03f68f75b8538f3",
      "tree": "3b877057e84fda45782dd25a3c8be91173324922",
      "parents": [
        "ef1afd39519b74fbe1f63c9ab5a14490effec0e3"
      ],
      "author": {
        "name": "Duane Griffin",
        "email": "duaneg@dghda.com",
        "time": "Fri Jul 25 01:46:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: handle corrupted orphan list at mount\n\nIf the orphan node list includes valid, untruncatable nodes with nlink \u003e 0\nthe ext3_orphan_cleanup loop which attempts to delete them will not do so,\ncausing it to loop forever. Fix by checking for such nodes in the\next3_orphan_get function.\n\nThis patch fixes the second case (image hdb.20000009.softlockup.gz)\nreported in http://bugzilla.kernel.org/show_bug.cgi?id\u003d10882.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: printk warning fix]\nSigned-off-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef1afd39519b74fbe1f63c9ab5a14490effec0e3",
      "tree": "161247cae3a51ee42dc10d95db79705871dc0eb7",
      "parents": [
        "3f31fddfa26b7594b44ff2b34f9a04ba409e0f91"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: remove double definitions of xattr macros\n\nremove the definitions of macros:\nXATTR_TRUSTED_PREFIX\nXATTR_USER_PREFIX\nsince they are defined in linux/xattr.h\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ebfbe9f926553eabc21b4400918d1216b27ed0c",
      "tree": "fb49beb7726579f0d798cf4d72aab646f52e2e1c",
      "parents": [
        "1984bb763c2e50d0ebfb0cf56d1b319bd7afe63a"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Fri Jul 25 01:46:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: improve some code in rb tree part of dir.c\n\n- remove unnecessary code in free_rb_tree_fname\n - rename free_rb_tree_fname to ext3_htree_create_dir_info\n   since it and ext3_htree_free_dir_info are a pair\n - replace kmalloc with kzalloc in ext3_htree_free_dir_info\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d06bf1d252fe16f5f0d13e04da7a9913420aa1cf",
      "tree": "2b552d620b0a114d3085ddee3f9a1929040d8bf0",
      "parents": [
        "99aeaf639f61ab6be1967e5f92e2e28dafad8383"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:32 2008 -0700"
      },
      "message": "ext3: 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 just\nsuspended.  I would make mount options and internal quota state inconsistent.\nAlso we should not allow user to change quota format when quota is turned on.\nOn the other hand we can just silently ignore when some option is set to the\nvalue it already has (mount does this on remount).\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: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99aeaf639f61ab6be1967e5f92e2e28dafad8383",
      "tree": "0110d1098d20717424a44ea8bf1e8227708d1557",
      "parents": [
        "9cfe7b9010aa66da5f3b2bc33d9e30a4d53bd274"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:31 2008 -0700"
      },
      "message": "ext3: 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: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cfe7b9010aa66da5f3b2bc33d9e30a4d53bd274",
      "tree": "7cbafe89d4101f3bb0ca2132154e414dec4aecf7",
      "parents": [
        "50c33a84db4aa5082e3af8d873b22344ae2ebea8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:31 2008 -0700"
      },
      "message": "ext3: 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 needed for\nquota_read to work correctly).  Calling journal_flush() does its job.\n\nReported-by: Nick \u003cgentuu@gmail.com\u003e\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: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5c8f7dae75e1e6bb3200fc61302e4d5e2df3dc2",
      "tree": "9405a0124ccfafa29fbc09c538466ed81a6b75ca",
      "parents": [
        "450c622e9ff19888818d4e2c4d31adb97a5242b2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 04 09:59:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 04 10:40:05 2008 -0700"
      },
      "message": "ext3: add missing unlock to error path in ext3_quota_write()\n\nWhen write in ext3_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": "9bb91784de6618c955994b2d5be332fb68c87ef1",
      "tree": "d066724a0f33afad2716743f33d89e7df8c1c81d",
      "parents": [
        "d100d148aa48df3b6ad526a48624f906695efe60"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Thu Jun 05 22:46:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:13 2008 -0700"
      },
      "message": "ext3: fix online resize bug\n\nThere is a bug when we are trying to verify that the reserve inode\u0027s\ndouble indirect blocks point back to the primary gdt blocks.  The fix is\nobvious, we need to mod the gdb count by the addr\u0027s per block.  You can\nverify this with the following test case\n\ndd if\u003d/dev/zero of\u003ddisk1 seek\u003d1024 count\u003d1 bs\u003d100M\nlosetup /dev/loop1 disk1\npvcreate /dev/loop1\nvgcreate loopvg1 /dev/loop1\nlvcreate -l 100%VG loopvg1 -n looplv1\nmkfs.ext3 -J size\u003d64 -b 1024 /dev/loopvg1/looplv1\nmount /dev/loopvg1/looplv1 /mnt/loop\ndd if\u003d/dev/zero of\u003ddisk2 seek\u003d1024 count\u003d1 bs\u003d50M\nlosetup /dev/loop2 disk2\npvcreate /dev/loop2\nvgextend loopvg1 /dev/loop2\nlvextend -l 100%VG /dev/loopvg1/looplv1\nresize2fs /dev/loopvg1/looplv1\n\nwithout this patch the resize2fs fails, with it the resize2fs succeeds.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7e01c8e5420b6c7f9d85d34c15d8c7a15c9fc720",
      "tree": "9208cb180253bd98208ae3be34ffc10526d4f949",
      "parents": [
        "0c70814c311581a6c86198db4f982aa683c68fb8"
      ],
      "author": {
        "name": "Tiger Yang",
        "email": "tiger.yang@oracle.com",
        "time": "Wed May 14 16:05:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:11:14 2008 -0700"
      },
      "message": "ext3/4: fix uninitialized bs in ext3/4_xattr_set_handle()\n\nThis fix the uninitialized bs when we try to replace a xattr entry in\nibody with the new value which require more than free space.\n\nThis situation only happens we format ext3/4 with inode size more than 128 and\nwe have put xattr entries both in ibody and block.  The consequences about\nthis bug is we will lost the xattr block which pointed by i_file_acl with all\nxattr entires in it.  We will alloc a new xattr block and put that large value\nentry in it.  The old xattr block will become orphan block.\n\nSigned-off-by: Tiger Yang \u003ctiger.yang@oracle.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Andreas Dilger \u003cadilger@sun.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c2f3d6f89aab04c5c66a0a757888d3a77a5e899",
      "tree": "bf88a76e882892657b032bd131d9ab43592a055f",
      "parents": [
        "8f6e39a7ade8a5329c5651a2bc07010b3011da6a"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "12o3l@tiscali.nl",
        "time": "Tue Apr 29 22:01:27 2008 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Apr 29 22:01:27 2008 -0400"
      },
      "message": "ext3: fix test ext_generic_write_end() copied return value\n\n\u0027copied\u0027 is unsigned, whereas \u0027ret2\u0027 is not. The test (copied \u003c 0) fails\n\nSigned-off-by: Roel Kluin \u003c12o3l@tiscali.nl\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n"
    },
    {
      "commit": "e05b6b524bd5c5c2bae1b64a7cbe08d46d57a6fe",
      "tree": "e5b5a7dbc57ccf8f6e425b7cb77249fdc534baca",
      "parents": [
        "fa1ff1e02fee908dfdc3f92902d39acc38041e4c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Mon Apr 28 02:16:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:45 2008 -0700"
      },
      "message": "ext3: 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: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa1ff1e02fee908dfdc3f92902d39acc38041e4c",
      "tree": "9bca635970c38cd7804d9ae02f1a69c3193b431c",
      "parents": [
        "2588ef83f7933d8ae42868d7bf68fc8a3001186b"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Apr 28 02:16:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:45 2008 -0700"
      },
      "message": "ext3: fix mount messages when quota disabled\n\nWhen quota is disabled, we should not print \u0027journaled quota not supported\u0027\nwhen user tried to mount non-journaled quota.  Also fix typo in the message.\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": "2588ef83f7933d8ae42868d7bf68fc8a3001186b",
      "tree": "45b1ff7b854bdb99a91e49f4753aaa9a389ffa17",
      "parents": [
        "07c9938a4e2c92b796b163dc70e99d3d1870aaee"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Apr 28 02:16:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:45 2008 -0700"
      },
      "message": "ext3: retry block allocation if new blocks are allocated from system zone\n\nIf the block allocator gets blocks out of system zone ext3 calls ext3_error.\nBut if the file system is mounted with errors\u003dcontinue retry block allocation.\n We need to mark the system zone blocks as in use to make sure retry don\u0027t\npick them again\n\nSystem zone is the block range mapping block bitmap, inode bitmap and inode\ntable.\n\n[akpm@linux-foundation.org: fix typo in comment]\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "07c9938a4e2c92b796b163dc70e99d3d1870aaee",
      "tree": "efdde08f88994f0c966781be5574adf8ea83d952",
      "parents": [
        "0b23076988b44b2c165e060248345de6f2337387"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Apr 28 02:16:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:45 2008 -0700"
      },
      "message": "ext3: fix hang on umount with quotas when journal is aborted\n\nCall dquot_drop() from ext3_dquot_drop() even if we fail to start a\ntransaction.  Otherwise we never get to dropping references to quota\nstructures from the inode and umount will hang indefinitely.  Thanks to\nPayphone LIOU for spotting the problem.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Payphone LIOU \u003clioupayphone@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b23076988b44b2c165e060248345de6f2337387",
      "tree": "f707484c03bf148eac8c51b92b3c1eaa44996792",
      "parents": [
        "5b9a499d77e9dd39c9e6611ea10c56a31604f274"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Apr 28 02:16:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "ext3: fix update of mtime and ctime on rename\n\nMake ext3 update mtime and ctime of the directory into which we move file even\nif the directory entry already exists.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "269b26191650be46ce6c91dec24cf20f59650529",
      "tree": "9ff8863d02d709dcb75deef345b3a6eb8c0d30c0",
      "parents": [
        "33575f8ffe99bf9e381161ccd76b39079c0aa92f"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Apr 28 02:16:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "fs/ext3: use BUG_ON\n\nif (...) BUG(); should be replaced with BUG_ON(...) when the test has no\nside-effects to allow a definition of BUG_ON that drops the code completely.\n\nThe semantic patch that makes this change is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@ disable unlikely @ expression E,f; @@\n\n(\n  if (\u003c... f(...) ...\u003e) { BUG(); }\n|\n- if (unlikely(E)) { BUG(); }\n+ BUG_ON(E);\n)\n\n@@ expression E,f; @@\n\n(\n  if (\u003c... f(...) ...\u003e) { BUG(); }\n|\n- if (E) { BUG(); }\n+ BUG_ON(E);\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33575f8ffe99bf9e381161ccd76b39079c0aa92f",
      "tree": "d5a60b89243bf1964a2feaf80e0ea576b3a14762",
      "parents": [
        "e0e369a7dd39894465b6501a9492173e8104a19b"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Apr 28 02:16:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "ext3: check ext3_journal_get_write_access() errors\n\nCheck ext3_journal_get_write_access() errors.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0e369a7dd39894465b6501a9492173e8104a19b",
      "tree": "e0cd041af90cf2262a6ca0f4b14dcbd7520ae025",
      "parents": [
        "22a5daf5375a900e1a4efe8ffe2daef9be01e873"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Apr 28 02:16:08 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "ext3: use ext3_get_group_desc()\n\nUse ext3_get_group_desc()\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22a5daf5375a900e1a4efe8ffe2daef9be01e873",
      "tree": "3f6e70719fe17305ebaa72cef6af8228533525ab",
      "parents": [
        "1eaafeae4b6f87eabdbabe3277826696f4ca196f"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Apr 28 02:16:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "ext3: add missing ext3_journal_stop()\n\nAdd missing ext3_journal_stop() in error handling.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1eaafeae4b6f87eabdbabe3277826696f4ca196f",
      "tree": "f7fae185d2bb847f2fccdf50ee57a44a52675a34",
      "parents": [
        "15633005e07883b57c6c7ca539c32148c3a7f588"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Apr 28 02:16:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "ext3: use ext3_group_first_block_no()\n\nUse ext3_group_first_block_no()\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15633005e07883b57c6c7ca539c32148c3a7f588",
      "tree": "f5869b9f5378c2eeefa3453da3eb2832013794f8",
      "parents": [
        "e7f23ebdef879226817ce94ae6e298afc8cd093d"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Apr 28 02:16:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "make ext3_xattr_list() static\n\nMake the needlessly global ext3_xattr_list() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e7f23ebdef879226817ce94ae6e298afc8cd093d",
      "tree": "d6bb2a40aa0da3f5868556cf9de4b3665458e687",
      "parents": [
        "3d61f75eefedf75914ab4453c67aaa2ee64bcf93"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Mon Apr 28 02:16:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:44 2008 -0700"
      },
      "message": "ext3: 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: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3d61f75eefedf75914ab4453c67aaa2ee64bcf93",
      "tree": "7a6c2c461a05f36694466dac40f386b11d15dac2",
      "parents": [
        "8b91582500ae750db22bd515379616e5e9ad06ab"
      ],
      "author": {
        "name": "Hisashi Hifumi",
        "email": "hifumi.hisashi@oss.ntt.co.jp",
        "time": "Mon Apr 28 02:16:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:43 2008 -0700"
      },
      "message": "ext3: fdatasync should skip metadata writeout when overwriting\n\nCurrently fdatasync is identical to fsync in ext3.\n\nI think fdatasync should skip journal flush in data\u003dordered and\ndata\u003dwriteback mode when it overwrites to already-instantiated blocks on\nHDD.  When I_DIRTY_DATASYNC flag is not set, fdatasync should skip journal\nwriteout because this indicates only atime or/and mtime updates.\n\nFollowing patch is the same approach of ext2\u0027s fsync code(ext2_sync_file).\n\nI did a performance test using the sysbench.\n\n#sysbench --num-threads\u003d128 --max-requests\u003d50000 --test\u003dfileio --file-total-size\u003d128G\n--file-test-mode\u003drndwr --file-fsync-mode\u003dfdatasync run\n\nThe result on ext3 was:\n\n\t-2.6.24\n\tOperations performed:  0 Read, 50080 Write, 59600 Other \u003d 109680 Total\n\tRead 0b  Written 782.5Mb  Total transferred 782.5Mb  (12.116Mb/sec)\n\t  775.45 Requests/sec executed\n\n\tTest execution summary:\n\t    total time:                          64.5814s\n\t    total number of events:              50080\n\t    total time taken by event execution: 3713.9836\n\t    per-request statistics:\n\t         min:                            0.0000s\n\t         avg:                            0.0742s\n\t         max:                            0.9375s\n\t         approx.  95 percentile:         0.2901s\n\n\tThreads fairness:\n\t    events (avg/stddev):           391.2500/23.26\n\t    execution time (avg/stddev):   29.0155/1.99\n\n\t-2.6.24-patched\n\tOperations performed:  0 Read, 50009 Write, 61596 Other \u003d 111605 Total\n\tRead 0b  Written 781.39Mb  Total transferred 781.39Mb  (16.419Mb/sec)\n\t1050.83 Requests/sec executed\n\n\tTest execution summary:\n\t    total time:                          47.5900s\n\t    total number of events:              50009\n\t    total time taken by event execution: 2934.5768\n\t    per-request statistics:\n \t         min:                            0.0000s\n\t         avg:                            0.0587s\n \t         max:                            0.8938s\n\t         approx.  95 percentile:         0.1993s\n\n\tThreads fairness:\n\t    events (avg/stddev):           390.6953/22.64\n\t    execution time (avg/stddev):   22.9264/1.17\n\nFilesystem I/O throughput was improved.\n\nSigned-off-by :Hisashi Hifumi \u003chifumi.hisashi@oss.ntt.co.jp\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2fd83a4f3cd5a725168e3a269746dfce2adfa56a",
      "tree": "8dd1ea97556d28ff90bacc559bbe3d042ad1b185",
      "parents": [
        "0ff5af8340aa6be44220d7237ef4a654314cf795"
      ],
      "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: ext3: make ext3 handle quotaon on remount\n\nUpdate ext3 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"
    },
    {
      "commit": "e9b62693ae0a1e13ccc97a6792d9a7770c8d1b5b",
      "tree": "c676609730533fc1b7c5e01992e46b6eaf75f99b",
      "parents": [
        "548453fd107f789f5f1bc2dc13cc432ceb3b5efd",
        "838cb6aba4cebcf4fcd06b90e2adf890bef884ac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 16:36:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 21 16:36:46 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/juhl/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/juhl/trivial: (24 commits)\n  DOC:  A couple corrections and clarifications in USB doc.\n  Generate a slightly more informative error msg for bad HZ\n  fix typo \"is\" -\u003e \"if\" in Makefile\n  ext*: spelling fix prefered -\u003e preferred\n  DOCUMENTATION:  Use newer DEFINE_SPINLOCK macro in docs.\n  KEYS:  Fix the comment to match the file name in rxrpc-type.h.\n  RAID: remove trailing space from printk line\n  DMA engine: typo fixes\n  Remove unused MAX_NODES_SHIFT\n  MAINTAINERS: Clarify access to OCFS2 development mailing list.\n  V4L: Storage class should be before const qualifier (sn9c102)\n  V4L: Storage class should be before const qualifier\n  sonypi: Storage class should be before const qualifier\n  intel_menlow: Storage class should be before const qualifier\n  DVB: Storage class should be before const qualifier\n  arm: Storage class should be before const qualifier\n  ALSA: Storage class should be before const qualifier\n  acpi: Storage class should be before const qualifier\n  firmware_sample_driver.c: fix coding style\n  MAINTAINERS: Add ati_remote2 driver\n  ...\n\nFixed up trivial conflicts in firmware_sample_driver.c\n"
    },
    {
      "commit": "1cc8dcf569a3fcefb7ae32652225f2bd3e85257e",
      "tree": "23e065de096ab6cf044458967bea5baa6a98cff0",
      "parents": [
        "c0d1f29534f2bd6c5992831eb0f648522e9b0204"
      ],
      "author": {
        "name": "Benoit Boissinot",
        "email": "benoit.boissinot@ens-lyon.org",
        "time": "Mon Apr 21 22:45:55 2008 +0000"
      },
      "committer": {
        "name": "Jesper Juhl",
        "email": "juhl@hera.kernel.org",
        "time": "Mon Apr 21 22:45:55 2008 +0000"
      },
      "message": "ext*: spelling fix prefered -\u003e preferred\n\nSpelling fix: prefered -\u003e preferred\n\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\n"
    },
    {
      "commit": "42a74f206b914db13ee1f5ae932dcd91a77c8579",
      "tree": "24e3dbe55edaacc750067ab9e01778255a6bff08",
      "parents": [
        "20ddee2c75339cc095f6191c3115f81da8955e96"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Fri Feb 15 14:37:46 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Apr 19 00:29:24 2008 -0400"
      },
      "message": "[PATCH] r/o bind mounts: elevate write count for ioctls()\n\nSome ioctl()s can cause writes to the filesystem.  Take these, and make them\nuse mnt_want/drop_write() instead.\n\n[AV: updated]\n\nAcked-by: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "335e92e8a515420bd47a6b0f01cb9a206c0ed6e4",
      "tree": "1518f9afa7ac7047be2c86481b3dbc12f8cc9282",
      "parents": [
        "423bec43079a2942a3004034df7aad76469758d8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Apr 15 14:34:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 15 19:35:41 2008 -0700"
      },
      "message": "vfs: fix possible deadlock in ext2, ext3, ext4 when using xattrs\n\nmb_cache_entry_alloc() was allocating cache entries with GFP_KERNEL.  But\nfilesystems are calling this function while holding xattr_sem so possible\nrecursion into the fs violates locking ordering of xattr_sem and transaction\nstart / i_mutex for ext2-4.  Change mb_cache_entry_alloc() so that filesystems\ncan specify desired gfp mask and use GFP_NOFS from all of them.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c587f0c0a69227587baaa12e75815b6644457c0a",
      "tree": "5ef93bd6d73fdab6084de20988b8934dbc10ae08",
      "parents": [
        "ffda6857c87fbe3ab144ff3f34b89421eed048cf"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Wed Mar 19 17:00:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 19 18:53:36 2008 -0700"
      },
      "message": "ext3: fix wrong gfp type under transaction\n\nThere are several places where we make allocations with GFP_KERNEL while under\na transaction, which could lead to an assertion panic or lockup if under\nmemory pressure.  This patch switches these problem areas to use GFP_NOFS to\nkeep these problems from happening.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92587216f8bdf74432ada8a9a1a7caf4c135cf42",
      "tree": "71f122be9098a33e4018d0ad0ae98cbef368cabd",
      "parents": [
        "348e1e04b5229a481891699ce86da009b793f29e"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "jbacik@redhat.com",
        "time": "Tue Mar 04 14:29:43 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:18 2008 -0800"
      },
      "message": "ext3: fix mount option parsing\n\nThe \"resize\" option won\u0027t be noticed as it comes after the NULL option, so if\nyou try to mount (or in this case remount) with that option it won\u0027t be\nrecognized.\n\nSigned-off-by: Josef Bacik \u003cjbacik@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d957f9bf87da74f420424d16ece005202bbebd3",
      "tree": "363d4770c0c74a536524c99ccd2762ce96ee9bbe",
      "parents": [
        "4ac9137858e08a19f29feac4e1f4df7c268b0ba5"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Introduce path_put()\n\n* Add path_put() functions for releasing a reference to the dentry and\n  vfsmount of a struct path in the right order\n\n* Switch from path_release(nd) to path_put(\u0026nd-\u003epath)\n\n* Rename dput_path() to path_put_conditional()\n\n[akpm@linux-foundation.org: fix cifs]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-fsdevel@vger.kernel.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ac9137858e08a19f29feac4e1f4df7c268b0ba5",
      "tree": "f5b5d84fd12fcc2b0ba0e7ce1a79ff381ad8f5dd",
      "parents": [
        "c5e725f33b733a77de622e91b6ba5645fcf070be"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:32 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Embed a struct path into struct nameidata instead of nd-\u003e{dentry,mnt}\n\nThis is the central patch of a cleanup series. In most cases there is no good\nreason why someone would want to use a dentry for itself. This series reflects\nthat fact and embeds a struct path into nameidata.\n\nTogether with the other patches of this series\n- it enforced the correct order of getting/releasing the reference count on\n  \u003cdentry,vfsmount\u003e pairs\n- it prepares the VFS for stacking support since it is essential to have a\n  struct path in every place where the stack can be traversed\n- it reduces the overall code size:\n\nwithout patch series:\n   text    data     bss     dec     hex filename\n5321639  858418  715768 6895825  6938d1 vmlinux\n\nwith patch series:\n   text    data     bss     dec     hex filename\n5320026  858418  715768 6894212  693284 vmlinux\n\nThis patch:\n\nSwitch from nd-\u003e{dentry,mnt} to nd-\u003epath.{dentry,mnt} everywhere.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix cifs]\n[akpm@linux-foundation.org: fix smack]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "50e8a2890ed0eeb7a11ae0c39144fcdd1cad1cf8",
      "tree": "b02bee4f8cf2bc16b63596e9c6a316bb91dfb58a",
      "parents": [
        "8b5f6883683c91ad7e1af32b7ceeb604d68e2865"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Fri Feb 08 04:20:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:32 2008 -0800"
      },
      "message": "ext3: replace all adds to little endians variables with le*_add_cpu\n\nreplace all:\n\tlittle_endian_variable \u003d cpu_to_leX(leX_to_cpu(little_endian_variable) +\n\t\t\t\texpression_in_cpu_byteorder);\nwith:\n\tleX_add_cpu(\u0026little_endian_variable, expression_in_cpu_byteorder);\nsparse didn\u0027t generate any new warning with this patch\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "473043dcee1874aab99f66b0362b344618eb3790",
      "tree": "bc329501ec6cd0d31dfe11d4587347093dca4ccf",
      "parents": [
        "52fcf7032935b33158e3998ed399cac97447ab8d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Feb 07 00:15:36 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 07 08:42:27 2008 -0800"
      },
      "message": "iget: stop EXT3 from using iget() and read_inode()\n\nStop the EXT3 filesystem from using iget() and read_inode().  Replace\next3_read_inode() with ext3_iget(), and call that instead of iget().\next3_iget() then uses iget_locked() directly and returns a proper error code\ninstead of an inode in the event of an error.\n\next3_fill_super() returns any error incurred when getting the root inode\ninstead of EINVAL.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bd1939de9061dbc5cac44ffb4425aaf4c9b894f1",
      "tree": "99cc44f2b92db9dba1391c81638f7755603c0199",
      "parents": [
        "d8fd66aaea7fe3e4f1ea044a563f129e3b9f05ff"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Feb 06 01:40:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:21 2008 -0800"
      },
      "message": "ext3: fix lock inversion in direct IO\n\nWe cannot start transaction in ext3_direct_IO() and just let it last during\nthe whole write because dio_get_page() acquires mmap_sem which ranks above\ntransaction start (e.g.  because we have dependency chain\nmmap_sem-\u003ePageLock-\u003ejournal_start, or because we update atime while holding\nmmap_sem) and thus deadlocks could happen.  We solve the problem by\nstarting a transaction separately for each ext3_get_block() call.\n\nWe *could* have a problem that we allocate a block and before its data are\nwritten out the machine crashes and thus we expose stale data.  But that\ndoes not happen because for hole-filling generic code falls back to\nbuffered writes and for file extension, we add inode to orphan list and\nthus in case of crash, journal replay will truncate inode back to the\noriginal size.\n\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e1d7ae24a23f1f366d6c5408f1ad11db69a748c6",
      "tree": "07da7753933ca5fac3c9af4eddb8973eff9675cd",
      "parents": [
        "859cb93679929edb88642414bf37789ea263bc47"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Wed Feb 06 01:40:18 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:21 2008 -0800"
      },
      "message": "ext3: remove unused code from ext3_find_entry()\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "859cb93679929edb88642414bf37789ea263bc47",
      "tree": "3dcc640e2d1fcd7b661336efcd22ef4d3104bb03",
      "parents": [
        "fb01bfdac733f1925561eea52c60072f2fbcdc97"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Feb 06 01:40:17 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:21 2008 -0800"
      },
      "message": "ext[234]: cleanup ext[234]_bg_num_gdb()\n\nUse ext[234]_bg_has_super() to remove duplicate code.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb01bfdac733f1925561eea52c60072f2fbcdc97",
      "tree": "92e95b0dd90b99f447d14f0598b398cc2eee9d42",
      "parents": [
        "197cd65accc6a274dabcd81f4811ba5d9a4856df"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Feb 06 01:40:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:21 2008 -0800"
      },
      "message": "ext[234]: remove unused argument for ext[234]_find_goal()\n\nThe argument chain for ext[234]_find_goal() is not used.  This patch removes\nit and fixes comment as well.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "197cd65accc6a274dabcd81f4811ba5d9a4856df",
      "tree": "a41f7b375887c505f8c6a374ad643bb4c1222ed5",
      "parents": [
        "144704e5227362cbd694b0b3c3aa4ac99a0115c9"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Feb 06 01:40:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:21 2008 -0800"
      },
      "message": "ext[234]: use ext[234]_get_group_desc()\n\nUse ext[234]_get_group_desc() to get group descriptor from group number.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "144704e5227362cbd694b0b3c3aa4ac99a0115c9",
      "tree": "d87b081741724d742514e9b91714ee0aa510ed1e",
      "parents": [
        "1eca93f9cafdec4a332ace9b0fc0d3886d430c28"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Feb 06 01:40:15 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:21 2008 -0800"
      },
      "message": "ext[234]: fix comment for nonexistent variable\n\nThe comment in ext[234]_new_blocks() describes about \"i\".  But there is no\nlocal variable called \"i\" in that scope.  I guess it has been renamed to\ngroup_no.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1eca93f9cafdec4a332ace9b0fc0d3886d430c28",
      "tree": "18eb1ea370ef6464c18a218c81cf65327535aa57",
      "parents": [
        "feda58d37ae0efe22e711a74e26fb541d4eb1baa"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Wed Feb 06 01:40:14 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:20 2008 -0800"
      },
      "message": "ext3: change the default behaviour on error\n\next3 file system was by default ignoring errors and continuing.  This is\nnot a good default as continuing on error could lead to file system\ncorruption.  Change the default to mark the file system readonly.  Debian\nand ubuntu already does this as the default in their fstab.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Chuck Ebbert \u003ccebbert@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "feda58d37ae0efe22e711a74e26fb541d4eb1baa",
      "tree": "5e902a8ddaf70a1cd39d3649178beb874eb10424",
      "parents": [
        "533083836fd55ca67ce35ab3d914b74ec1a5b9a8"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Wed Feb 06 01:40:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:20 2008 -0800"
      },
      "message": "ext3: return after ext3_error in case of failures\n\nThis fixes some instances where we were continuing after calling\next3_error.  ext3_error calls panic only if errors\u003dpanic mount option is\nset.  So we need to make sure we return correctly after ext3_error call\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f762e9054ff84aa90f037a49747ac61b36609d81",
      "tree": "7f39358385964c8fb101096b23c451ae82f6e58a",
      "parents": [
        "01584fa6456dafbaf5a94ad7fb2aa3e3ecd7a7ba"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Wed Feb 06 01:40:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:20 2008 -0800"
      },
      "message": "ext3: add block bitmap validation\n\nWhen a new block bitmap is read from disk in read_block_bitmap() there are a\nfew bits that should ALWAYS be set.  In particular, the blocks given\ncorresponding to block bitmap, inode bitmap and inode tables.  Validate the\nblock bitmap against these blocks.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eebd2aa355692afaf9906f62118620f1a1c19dbb",
      "tree": "207eead3a736963c3e50942038c463f2f611ccce",
      "parents": [
        "b98348bdd08dc4ec11828aa98a78edde15c53cfa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:28:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:13 2008 -0800"
      },
      "message": "Pagecache zeroing: zero_user_segment, zero_user_segments and zero_user\n\nSimplify page cache zeroing of segments of pages through 3 functions\n\nzero_user_segments(page, start1, end1, start2, end2)\n\n        Zeros two segments of the page. It takes the position where to\n        start and end the zeroing which avoids length calculations and\n\tmakes code clearer.\n\nzero_user_segment(page, start, end)\n\n        Same for a single segment.\n\nzero_user(page, start, length)\n\n        Length variant for the case where we know the length.\n\nWe remove the zero_user_page macro. Issues:\n\n1. Its a macro. Inline functions are preferable.\n\n2. The KM_USER0 macro is only defined for HIGHMEM.\n\n   Having to treat this special case everywhere makes the\n   code needlessly complex. The parameter for zeroing is always\n   KM_USER0 except in one single case that we open code.\n\nAvoiding KM_USER0 makes a lot of code not having to be dealing\nwith the special casing for HIGHMEM anymore. Dealing with\nkmap is only necessary for HIGHMEM configurations. In those\nconfigurations we use KM_USER0 like we do for a series of other\nfunctions defined in highmem.h.\n\nSince KM_USER0 is depends on HIGHMEM the existing zero_user_page\nfunction could not be a macro. zero_user_* functions introduced\nhere can be be inline because that constant is not used when these\nfunctions are called.\n\nAlso extract the flushing of the caches to be outside of the kmap.\n\n[akpm@linux-foundation.org: fix nfs and ntfs build]\n[akpm@linux-foundation.org: fix ntfs build some more]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Michael Halcrow \u003cmhalcrow@us.ibm.com\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe7fdc37b5404afb068f928ceba7c3e591b501ca",
      "tree": "96caeff3129a0c866d9a8c15822913ba1ef8366e",
      "parents": [
        "902be4c5efe0289594c3acf43da40fe7ff0a138b"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Mon Jan 28 23:58:26 2008 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Jan 28 23:58:26 2008 -0500"
      },
      "message": "ext3: Fix the max file size for ext3 file system.\n\nThe max file size for ext3 file system is now calculated\nwith hardcoded 4K block size. The patch fixes it to be\ncalculated with the right block size.\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "b47b6f38e5202c924bfe7632dce5dda4e3d40731",
      "tree": "b9dfeb426adc7125ac7828d5b646d893163314c6",
      "parents": [
        "9e2de407bec98fb07040f658f55fb71ba1b594f5"
      ],
      "author": {
        "name": "Andries E. Brouwer",
        "email": "Andries.Brouwer@cwi.nl",
        "time": "Mon Dec 17 16:19:55 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Dec 17 19:28:16 2007 -0800"
      },
      "message": "ext3, ext4: avoid divide by zero\n\nAs it turns out, the kernel divides by EXT3_INODES_PER_GROUP(s) when\nmounting an ext3 filesystem.  If that number is zero, a crash follows.\nBelow a patch.\n\nThis crash was reported by Joeri de Ruiter, Carst Tankink and Pim Vullers.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c06a8dc64a2d1884bd19b4c6353d9267ae4e3e1",
      "tree": "67afad25e4de3139d3b993e22327096c3e015013",
      "parents": [
        "dbaf4c024a657175f43b5091c4fab8b9f0e17078"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Nov 14 17:00:19 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:43 2007 -0800"
      },
      "message": "Fix 64KB blocksize in ext3 directories\n\nWith 64KB blocksize, a directory entry can have size 64KB which does not\nfit into 16 bits we have for entry lenght.  So we store 0xffff instead and\nconvert value when read from / written to disk.  The patch also converts\nsome places to use ext3_next_entry() when we are changing them anyway.\n\n[akpm@linux-foundation.org: coding-style cleanups]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e47776a0a41a14a5634633c96e590827f552c4b5",
      "tree": "44d5168b83fb1d8d72668728c690116d34f6711f",
      "parents": [
        "28822f22e18fc3c422f64b5bf0bb1e6c306af634"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Nov 14 16:58:56 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:38 2007 -0800"
      },
      "message": "Forbid user to change file flags on quota files\n\nForbid user from changing file flags on quota files.  User has no bussiness\nin playing with these flags when quota is on.  Furthermore there is a\nremote possibility of deadlock due to a lock inversion between quota file\u0027s\ni_mutex and transaction\u0027s start (i_mutex for quota file is locked only when\ntrasaction is started in quota operations) in ext3 and ext4.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: LIOU Payphone \u003clioupayphone@gmail.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nAcked-by: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: \u003creiserfs-dev@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b832a4b93932103d73c0c3f35ef1153e288327b",
      "tree": "77ca1ff445287685dbebf448fdf172d3f951ed89",
      "parents": [
        "325d22df7b19e0116aff3391d3a03f73d0634ded"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Nov 13 08:07:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Nov 13 08:09:11 2007 -0800"
      },
      "message": "Revert \"ext2/ext3/ext4: add block bitmap validation\"\n\nThis reverts commit 7c9e69faa28027913ee059c285a5ea8382e24b5d, fixing up\nconflicts in fs/ext4/balloc.c manually.\n\nThe cost of doing the bitmap validation on each lookup - even when the\nbitmap is cached - is absolutely prohibitive.  We could, and probably\nshould, do it only when adding the bitmap to the buffer cache.  However,\nright now we are better off just reverting it.\n\nPeter Zijlstra measured the cost of this extra validation as a 85%\ndecrease in cached iozone, and while I had a patch that took it down to\njust 17% by not being _quite_ so stupid in the validation, it was still\na big slowdown that could have been avoided by just doing it right.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Aneesh Kumar \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Andreas Dilger \u003cadilger@clusterfs.com\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39655164405940d4818224a085e35420e2f97aed",
      "tree": "6b019b3bc77eecac1731fe64e5c031790c2b5223",
      "parents": [
        "cfaea787c05822acbb4d8963baee5edd1cc0258f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 21 16:42:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 22 08:13:21 2007 -0700"
      },
      "message": "exportfs: make struct export_operations const\n\nNow that nfsd has stopped writing to the find_exported_dentry member we an\nmark the export_operations const\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Anton Altaparmakov \u003caia21@cantab.net\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: Timothy Shimmin \u003ctes@sgi.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Chris Mason \u003cmason@suse.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \"Vladimir V. Saveliev\" \u003cvs@namesys.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74af0baad4fd44cc4412cc210d6d9b6fdf7be8da",
      "tree": "8f32eb3face12fa06b6a50886020dac3d42b8ff9",
      "parents": [
        "2e4c68e30352bc0018999c3e631e4363ce428424"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 21 16:42:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Oct 22 08:13:19 2007 -0700"
      },
      "message": "ext3: new export ops\n\nTrivial switch over to the new generic helpers.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ad163ae0df8a3adab6d521475142392e3efb7a6",
      "tree": "71b72c8d565e5325183cd03ddce070295fd9b01d",
      "parents": [
        "7a266e75cf5a1efd20d084408a1b7f1a185496dd"
      ],
      "author": {
        "name": "Jose R. Santos",
        "email": "jrs@us.ibm.com",
        "time": "Thu Oct 18 23:39:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:35 2007 -0700"
      },
      "message": "JBD: Fix JBD warnings when compiling with CONFIG_JBD_DEBUG\n\nNote from Mingming\u0027s JBD2 fix:\n\nNoticed all warnings are occurs when the debug level is 0.  Then found the\n\"jbd2: Move jbd2-debug file to debugfs\" patch\nhttp://git.kernel.org/?p\u003dlinux/kernel/git/torvalds/linux-2.6.git;a\u003dcommit;h\u003d0f49d5d019afa4e94253bfc92f0daca3badb990b\n\nchanged the jbd2_journal_enable_debug from int type to u8, makes the\njbd_debug comparision is always true when the debugging level is 0.  Thus\nthe compile warning occurs.\n\nThought about changing the jbd2_journal_enable_debug data type back to int,\nbut can\u0027t, because the jbd2-debug is moved to debug fs, where calling\ndebugfs_create_u8() to create the debugfs entry needs the value to be u8\ntype.\n\nEven if we changed the data type back to int, the code is still buggy,\nkernel should not print jbd2 debug message if the jbd2_journal_enable_debug\nis set to 0.  But this is not the case.\n\nThe fix is change the level of debugging to 1.  The same should fixed in\next3/JBD, but currently ext3 jbd-debug via /proc fs is broken, so we\nprobably should fix it all together.\n\nSigned-off-by: Jose R. Santos \u003cjrs@us.ibm.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c3478a523a48470eb11a23f01249250684677d9",
      "tree": "5818d64427bcc1128fc74cc99e8f1fd1c9a54766",
      "parents": [
        "345225c8e4a4adad9eb261db26aebcd3b87055ad"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Thu Oct 18 23:39:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:34 2007 -0700"
      },
      "message": "JBD/ext3 cleanups: convert to kzalloc\n\nConvert kmalloc to kzalloc() and get rid of the memset().\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c80544dc0b87bb65038355e7aafdc30be16b26ab",
      "tree": "176349304bec88a9de16e650c9919462e0dd453c",
      "parents": [
        "0e9663ee452ffce0d429656ebbcfe69417a30e92"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Thu Oct 18 03:07:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "sparse pointer use of zero as null\n\nGet rid of sparse related warnings from places that use integer as NULL\npointer.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ian Kent \u003craven@themaw.net\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42a2b6ad71b011144d21d88a124140bb2bf1023f",
      "tree": "2b88c3aef205707f6efb8b953db7014cdf27afc6",
      "parents": [
        "0f0a89ebe1ccf7c280534f69577cdd182941eb6a"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Oct 18 03:06:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:29 2007 -0700"
      },
      "message": "ext3: fix setup_new_group_blocks locking\n\nsetup_new_group_blocks() manipulates the group descriptor block bh under\nthe block_bitmap bh\u0027s lock.  It shouldn\u0027t matter since nobody but resize\nshould be touching these blocks, but it\u0027s worth fixing up.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nC: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "0f0a89ebe1ccf7c280534f69577cdd182941eb6a"
}
