)]}'
{
  "log": [
    {
      "commit": "587228be4a43c28c402c1cc8a5f185252d8e2231",
      "tree": "c0708154e24c91b57581e8b596214f5254485f7b",
      "parents": [
        "8e0718924e7d7eaf6104e54aeaeda477570e1e06"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 24 22:58:10 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:55:01 2012 -0500"
      },
      "message": "omfs: propagate umode_t\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4acdaf27ebe2034c342f3be57ef49aed1ad885ef",
      "tree": "d89a876ee19cd88609a587f8aa6c464a52ee6d98",
      "parents": [
        "18bb1db3e7607e4a997d50991a6f9fa5b0f8722c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 01:42:34 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:53 2012 -0500"
      },
      "message": "switch -\u003ecreate() to umode_t\n\nvfs_create() ignores everything outside of 16bit subset of its\nmode argument; switching it to umode_t is obviously equivalent\nand it\u0027s the only caller of the method\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "18bb1db3e7607e4a997d50991a6f9fa5b0f8722c",
      "tree": "4ee4e584bc9a67f3ec14ce159d2d7d4a27e68d4a",
      "parents": [
        "8208a22bb8bd3c52ef634b4ff194f14892ab1713"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 01:41:39 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:53 2012 -0500"
      },
      "message": "switch vfs_mkdir() and -\u003emkdir() to umode_t\n\nvfs_mkdir() gets int, but immediately drops everything that might not\nfit into umode_t and that\u0027s the only caller of -\u003emkdir()...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "41c96486f238e6a545f52215f95fe69748abf603",
      "tree": "580a8706552a41a0e154b440bd7afd80a9e688da",
      "parents": [
        "569254b0cc4e125ffde48780b215ecaf5f72bbf4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 02:34:33 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 13:05:28 2011 -0400"
      },
      "message": "omfs: fix (mode \u0026 S_IFDIR) abuse\n\ngranted, on a filesystem that has only regular files and directories\nit happens to work, but really should be S_ISDIR(mode)...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "46e4edbf7ea9cf26665eb9f90c0fc7688d1a51ed",
      "tree": "edc47b971abd93024a730661890e833b2e99c499",
      "parents": [
        "1b19ca9f0bdab7d5035821e1ec8f39df9a6e3ee0"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Thu Jun 23 23:59:32 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 24 08:34:22 2011 -0700"
      },
      "message": "Remove unneeded version.h includes from fs/\n\nIt was pointed out by \u0027make versioncheck\u0027 that some includes of\nlinux/version.h were not needed in fs/ (fs/btrfs/ctree.h and\nfs/omfs/file.c).\n\nThis patch removes them.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nAcked-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8aaa0f5431d8d1181b3d1a1bcd8f3330c0ce275f",
      "tree": "653c2e48f12f2f263a333ba7121679df372d9730",
      "parents": [
        "7020739df2fa0e2126fc9739987e016860f14323"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Fri May 27 13:42:04 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 28 01:02:52 2011 -0400"
      },
      "message": "omfs: remove unnecessary dentry_unhash on rmdir, dir rneame\n\nomfs does not have problems with references to unlinked directories.\n\nCC: Bob Copeland \u003cme@bobcopeland.com\u003e\nCC: linux-karma-devel@lists.sourceforge.net\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e4eaac06bcccb2a70bca6a2de9871882dce2aa14",
      "tree": "ca6736d96294cd6e65a1c3055718bfd5adc7336e",
      "parents": [
        "79bf7c732b5ff75b96022ed9d29181afd3d2509c"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 24 13:06:07 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 26 07:26:48 2011 -0400"
      },
      "message": "vfs: push dentry_unhash on rename_dir into file systems\n\nOnly a few file systems need this.  Start by pushing it down into each\nrename method (except gfs2 and xfs) so that it can be dealt with on a\nper-fs basis.\n\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "79bf7c732b5ff75b96022ed9d29181afd3d2509c",
      "tree": "74b8cc690f9a37fff02d0685464e1c695a25ef94",
      "parents": [
        "64252c75a2196a0cf1e0d3777143ecfe0e3ae650"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 24 13:06:06 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 26 07:26:47 2011 -0400"
      },
      "message": "vfs: push dentry_unhash on rmdir into file systems\n\nOnly a few file systems need this.  Start by pushing it down into each\nfs rmdir method (except gfs2 and xfs) so it can be dealt with on a per-fs\nbasis.\n\nThis does not change behavior for any in-tree file systems.\n\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6c5103890057b1bb781b26b7aae38d33e4c517d8",
      "tree": "e6e57961dcddcb5841acb34956e70b9dc696a880",
      "parents": [
        "3dab04e6978e358ad2307bca563fabd6c5d2c58b",
        "9d2e157d970a73b3f270b631828e03eb452d525e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 24 10:16:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 24 10:16:26 2011 -0700"
      },
      "message": "Merge branch \u0027for-2.6.39/core\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.39/core\u0027 of git://git.kernel.dk/linux-2.6-block: (65 commits)\n  Documentation/iostats.txt: bit-size reference etc.\n  cfq-iosched: removing unnecessary think time checking\n  cfq-iosched: Don\u0027t clear queue stats when preempt.\n  blk-throttle: Reset group slice when limits are changed\n  blk-cgroup: Only give unaccounted_time under debug\n  cfq-iosched: Don\u0027t set active queue in preempt\n  block: fix non-atomic access to genhd inflight structures\n  block: attempt to merge with existing requests on plug flush\n  block: NULL dereference on error path in __blkdev_get()\n  cfq-iosched: Don\u0027t update group weights when on service tree\n  fs: assign sb-\u003es_bdi to default_backing_dev_info if the bdi is going away\n  block: Require subsystems to explicitly allocate bio_set integrity mempool\n  jbd2: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging\n  jbd: finish conversion from WRITE_SYNC_PLUG to WRITE_SYNC and explicit plugging\n  fs: make fsync_buffers_list() plug\n  mm: make generic_writepages() use plugging\n  blk-cgroup: Add unaccounted time to timeslice_used.\n  block: fixup plugging stubs for !CONFIG_BLOCK\n  block: remove obsolete comments for blkdev_issue_zeroout.\n  blktrace: Use rq-\u003ecmd_flags directly in blk_add_trace_rq.\n  ...\n\nFix up conflicts in fs/{aio.c,super.c}\n"
    },
    {
      "commit": "7eaceaccab5f40bbfda044629a6298616aeaed50",
      "tree": "33954d12f63e25a47eb6d86ef3d3d0a5e62bf752",
      "parents": [
        "73c101011926c5832e6e141682180c4debe2cf45"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Mar 10 08:52:07 2011 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Mar 10 08:52:07 2011 +0100"
      },
      "message": "block: remove per-queue plugging\n\nCode has been converted over to the new explicit on-stack plugging,\nand delay users have been converted to use the new API for that.\nSo lets kill off the old plugging along with aops-\u003esync_page().\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "31be83aeaee22fa165862ad449c7131ceaf1cf91",
      "tree": "c63e3f3956c63aacfb438e0edb13402cdc16d8f3",
      "parents": [
        "d932805b3dc8c6d80d8948f7d7d0d8336d53b2ed"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 04 01:43:36 2011 -0500"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Mar 05 16:24:12 2011 -0500"
      },
      "message": "omfs: make readdir stop when filldir says so\n\nfilldir returning an error does *not* mean \"skip this entry, try the\nnext one\"...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "d932805b3dc8c6d80d8948f7d7d0d8336d53b2ed",
      "tree": "5024d697f1b3b6c8fcfe627718ece4020102df1b",
      "parents": [
        "cdb26496dba00d5c4375261be6518b3e94260444"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 04 01:31:03 2011 -0500"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Mar 05 16:24:01 2011 -0500"
      },
      "message": "omfs: merge unlink() and rmdir(), close leak in rename()\n\nIn case of directory-overwriting rename(), omfs forgot to mark the\nvictim doomed, so omfs_evict_inode() didn\u0027t free it.\n\nWe could fix that by calling omfs_rmdir() for directory victims\ninstead of doing omfs_unlink(), but it\u0027s easier to merge omfs_unlink()\nand omfs_rmdir() instead.  Note that we have no hardlinks here.\n\nIt also makes the checks in omfs_rename() go away - they fold into\nwhat omfs_remove() does when it runs into a directory.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "cdb26496dba00d5c4375261be6518b3e94260444",
      "tree": "e712f23460c1632abbc02dab237eaebe924c60e1",
      "parents": [
        "013e4f4a285d8c7d952d8d7be9f10783a85b5d3c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 04 01:18:19 2011 -0500"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Mar 05 16:23:39 2011 -0500"
      },
      "message": "omfs: stop playing silly buggers with omfs_unlink() in -\u003erename()\n\nSince omfs directories are hashes of inodes and name is part of\ninode, we have to remove inode from old directory before we can\nput it into new one / under new name.  So instead of\n\tbump i_nlink\n\tcall omfs_unlink, which does\n\t\tomfs_delete_entry()\n\t\tdecrement i_nlink and mark parent dirty in case of success\n\tdecrement i_nlink if omfs_unlink failed and hadn\u0027t done it itself\nlet\u0027s just call omfs_delete_entry() and dirty the parent ourselves...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "013e4f4a285d8c7d952d8d7be9f10783a85b5d3c",
      "tree": "50f72ff88035306d4054bdfad5f2202db875d080",
      "parents": [
        "85e2efbb1db9a18d218006706d6e4fbeb0216213"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 04 01:14:55 2011 -0500"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Mar 05 16:20:30 2011 -0500"
      },
      "message": "omfs: rename() needs to mark old_inode dirty after ctime update\n\nwe *do* mark it dirty before, but it doesn\u0027t guarantee that we\ndon\u0027t get preempted just before assignment to -\u003ei_ctime, with\ninode getting written out before we get CPU back...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "152a08366671080f27b32e0c411ad620c5f88b57",
      "tree": "d13d16028f74839c678bce355ba8aac75d939fa8",
      "parents": [
        "c96e41e92b4aaf11e1f9775ecf0d1c8cbff829ed"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 25 00:46:55 2010 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 29 04:16:13 2010 -0400"
      },
      "message": "new helper: mount_bdev()\n\n... and switch of the obvious get_sb_bdev() users to -\u003emount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8196867c74890ccdf40a2b5e3e173597fbc4f9ac",
      "tree": "3bb2df18233327ed9fd3bdd3da2f84cefe7d5611",
      "parents": [
        "8c8946f509a494769a8c602b5ed189df01917d39",
        "ffc18879903e55487bc5ac3c774b99a07de06029"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:47:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:47:36 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bcopeland/omfs\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bcopeland/omfs:\n  omfs: fix uninitialized variable warning\n  omfs: sanity check cluster size\n  omfs: refuse to mount if bitmap pointer is obviously wrong\n  omfs: check bounds on block numbers before passing to sb_bread\n  omfs: fix memory leak\n"
    },
    {
      "commit": "69c9e750176b409559b2361fbb28fa7bbf3c5461",
      "tree": "021b31a5b132d0b86ddc1c10891d0739a542e63f",
      "parents": [
        "9df2f85128def59185f8a1c584f8af41df17405a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 06 10:12:01 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:48:05 2010 -0400"
      },
      "message": "switch omfs to -\u003eevict_inode()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1025774ce411f2bd4b059ad7b53f0003569b74fa",
      "tree": "2be221c205cb5579652a6063e8ee27d1c72d1bbd",
      "parents": [
        "eef2380c187890816b73b1a4cb89a09203759469"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:30:02 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:37 2010 -0400"
      },
      "message": "remove inode_setattr\n\nReplace inode_setattr with opencoded variants of it in all callers.  This\nmoves the remaining call to vmtruncate into the filesystem methods where it\ncan be replaced with the proper truncate sequence.\n\nIn a few cases it was obvious that we would never end up calling vmtruncate\nso it was left out in the opencoded variant:\n\n spufs: explicitly checks for ATTR_SIZE earlier\n btrfs,hugetlbfs,logfs,dlmfs: explicitly clears ATTR_SIZE earlier\n ufs: contains an opencoded simple_seattr + truncate that sets the filesize just above\n\nIn addition to that ncpfs called inode_setattr with handcrafted iattrs,\nwhich allowed to trim down the opencoded variant.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d39aae9ec447dda84d9a2850743a78a535a71c90",
      "tree": "e362c3367f093b79482f3034e82b18cd2dc8931a",
      "parents": [
        "155130a4f7848b1aac439cab6bda1a175507c71c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:29:59 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:34 2010 -0400"
      },
      "message": "add missing setattr methods\n\nFor the new truncate sequence every filesystem that wants to truncate on-disk\nstate needs a seattr method.  Convert the remaining filesystems that implement\nthe truncate inode operation to have its own setattr method.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "155130a4f7848b1aac439cab6bda1a175507c71c",
      "tree": "5019b14b0a9221b08959196e01e3f9326957d678",
      "parents": [
        "6e1db88d536adcbbfe562b2d4b7d6425784fff12"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:29:58 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:33 2010 -0400"
      },
      "message": "get rid of block_write_begin_newtrunc\n\nMove the call to vmtruncate to get rid of accessive blocks to the callers\nin preparation of the new truncate sequence and rename the non-truncating\nversion to block_write_begin.\n\nWhile we\u0027re at it also remove several unused arguments to block_write_begin.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ffc18879903e55487bc5ac3c774b99a07de06029",
      "tree": "71a46da8e8aa19cce1646d380c09fa6e32c50756",
      "parents": [
        "8800a044c71a128633cf3febaf4780531a991334"
      ],
      "author": {
        "name": "Bill Pemberton",
        "email": "wfp5p@virginia.edu",
        "time": "Tue Aug 03 15:19:30 2010 -0400"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sun Aug 08 12:02:05 2010 -0400"
      },
      "message": "omfs: fix uninitialized variable warning\n\nquiet the warning:\nfs/omfs/file.c: In function \u0027omfs_get_block\u0027:\nfs/omfs/file.c:225: warning: \u0027new_block\u0027 may be used uninitialized in\nthis function\n\nnew_block is used properly by the call to omfs_grow_extent()\n\nSigned-off-by: Bill Pemberton \u003cwfp5p@virginia.edu\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "8800a044c71a128633cf3febaf4780531a991334",
      "tree": "b736cdc086d86f27e1b52efa96f2a3f15fe1d443",
      "parents": [
        "9442e54f433eff9b6fbd0836611df4c1919df370"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Tue Jul 06 11:16:46 2010 -0400"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Jul 10 14:38:11 2010 -0400"
      },
      "message": "omfs: sanity check cluster size\n\nA corrupt filesystem could have a bad cluster size; this could result in\nthe filesystem allocating too much space for files if too large, or\ngetting stuck in omfs_allocate_block if too small.  The proper range is\n1-8 blocks.\n\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "9442e54f433eff9b6fbd0836611df4c1919df370",
      "tree": "5740987b7a7fcb1511263435fbbf48cf15ff0814",
      "parents": [
        "f068272cb2f134a194b93e94a8e0672bfce48cd8"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Thu Aug 14 18:43:59 2008 -0400"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Jul 10 14:37:39 2010 -0400"
      },
      "message": "omfs: refuse to mount if bitmap pointer is obviously wrong\n\nIf the free space bitmap pointer is corrupted such that it lies outside\nof the number of blocks in the filesystem, print a message and fail the\nmount so the user can fix it offline.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "f068272cb2f134a194b93e94a8e0672bfce48cd8",
      "tree": "c6a2a67951646eee3d040b732b384fa5c98fe78c",
      "parents": [
        "70d9e384aa7df681cfffd65947af72b22e86690e"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Sep 06 17:51:53 2008 -0400"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Sat Jul 10 14:37:06 2010 -0400"
      },
      "message": "omfs: check bounds on block numbers before passing to sb_bread\n\nIn case of filesystem corruption, passing unchecked block numbers into\nsb_bread can result in an infinite loop in __getblk().  Introduce a wrapper\nfunction omfs_sbread() to check the block numbers and to also perform the\nclus_to_blk() scaling.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "70d9e384aa7df681cfffd65947af72b22e86690e",
      "tree": "71c84c9ceaad9c4dd961c759e12ac765932735fc",
      "parents": [
        "815c4163b6c8ebf8152f42b0a5fd015cfdcedc78"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave.bueso@gmail.com",
        "time": "Tue Jul 06 00:50:58 2010 -0400"
      },
      "committer": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Tue Jul 06 11:05:31 2010 -0400"
      },
      "message": "omfs: fix memory leak\n\nIn the error path of omfs_fill_super(), the FS super block info\n(sbi) is not being freed.  Correct this.\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\n"
    },
    {
      "commit": "1b061d9247f71cd15edc4c4c4600191a903642c0",
      "tree": "30d92ca82d8286e7a45fba108230ecd23e61673b",
      "parents": [
        "7ea8085910ef3dd4f3cad6845aaa2b580d39b115"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed May 26 17:53:41 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 27 22:06:06 2010 -0400"
      },
      "message": "rename the generic fsync implementations\n\nWe don\u0027t name our generic fsync implementations very well currently.\nThe no-op implementation for in-memory filesystems currently is called\nsimple_sync_file which doesn\u0027t make too much sense to start with,\nthe the generic one for simple filesystems is called simple_fsync\nwhich can lead to some confusion.\n\nThis patch renames the generic file fsync method to generic_file_fsync\nto match the other generic_file_* routines it is supposed to be used\nwith, and the no-op implementation to noop_fsync to make it obvious\nwhat to expect.  In addition add some documentation for both methods.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6a9e652c88fad648ea088ac07dbc671a9813f75e",
      "tree": "d3462e1e4c24eb12a20dbc65b3d3cda3ce713611",
      "parents": [
        "e6ecdc70fb76490719bf5aa20c35d23c0a392ead"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Thu Mar 04 17:32:17 2010 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 21 18:31:25 2010 -0400"
      },
      "message": "omfs: replace inode uid,gid,mode initialization with helper function\n\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6c9468e9eb1252eaefd94ce7f06e1be9b0b641b1",
      "tree": "797676a336b050bfa1ef879377c07e541b9075d6",
      "parents": [
        "4cb3ca7cd7e2cae8d1daf5345ec99a1e8502cf3f",
        "c81eddb0e3728661d1585fbc564449c94165cc36"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Apr 23 02:08:44 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Apr 23 02:08:44 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "108afd0491e5bc2abda08645685da69d36688cb6",
      "tree": "b011cdf1ae84f6468a889ce365de9190c017cc41",
      "parents": [
        "30c96ce56a195963764de9521087202ba73e9bff"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Mon Mar 15 15:34:03 2010 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 15 15:34:09 2010 +0100"
      },
      "message": "omfs: remove unused version.h include\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a9185b41a4f84971b930c519f0c63bd450c4810d",
      "tree": "268cf4e206cca12fb9e1dd68984e7c190e465b46",
      "parents": [
        "26821ed40b4230259e770c9911180f38fcaa6f59"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Mar 05 09:21:37 2010 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 05 13:25:52 2010 -0500"
      },
      "message": "pass writeback_control to -\u003ewrite_inode\n\nThis gives the filesystem more information about the writeback that\nis happening.  Trond requested this for the NFS unstable write handling,\nand other filesystems might benefit from this too by beeing able to\ndistinguish between the different callers in more detail.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "828c09509b9695271bcbdc53e9fc9a6a737148d2",
      "tree": "072ffad6f02db7bf4095e07e2b90247cfa042998",
      "parents": [
        "1c4115e595dec42aa0e81ba47ef46e35b34ed428"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Oct 01 15:43:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 01 16:11:11 2009 -0700"
      },
      "message": "const: constify remaining file_operations\n\n[akpm@linux-foundation.org: fix KVM]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e1d5dcc2bbbe71dbf010c747e15739bef6b7218",
      "tree": "2edb0f6cc65acbae95e42df1bc763ec048e6c2e0",
      "parents": [
        "7f09410bbc4306f592cfb43812389ea1c7905a20"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining inode_operations as const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "7f09410bbc4306f592cfb43812389ea1c7905a20",
      "tree": "18f179435f70c4ec9231883501062d5ea0357af5",
      "parents": [
        "ac4cfdd6d141c319a7af8655f750ed504c187a74"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining address_space_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "b87221de6a4934eda856475a0065688d12973a04",
      "tree": "6bcf0628e106c4833538f4c23d710fbbe3d7609a",
      "parents": [
        "0d54b217a247f39605361f867fefbb9e099a5432"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining super_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "bea6b64c277f0824cdaea6190209b26a164419d6",
      "tree": "0eebdf31c3faf13d5ed7cc81f9e5e253dd4afe54",
      "parents": [
        "90de066443a8632bb42fed0a8216313d7da07aba"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 07 15:44:50 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:13 2009 -0400"
      },
      "message": "switch omfs to simple_fsync()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8fe74cf053de7ad2124a894996f84fa890a81093",
      "tree": "77dcd8fbf33ce53a3821942233962fb28c6f2848",
      "parents": [
        "c2eb2fa6d2b6fe122d3479ec5b28d978418b2698",
        "ced117c73edc917e96dea7cca98c91383f0792f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 21:09:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 21:09:10 2009 -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:\n  Remove two unneeded exports and make two symbols static in fs/mpage.c\n  Cleanup after commit 585d3bc06f4ca57f975a5a1f698f65a45ea66225\n  Trim includes of fdtable.h\n  Don\u0027t crap into descriptor table in binfmt_som\n  Trim includes in binfmt_elf\n  Don\u0027t mess with descriptor table in load_elf_binary()\n  Get rid of indirect include of fs_struct.h\n  New helper - current_umask()\n  check_unsafe_exec() doesn\u0027t care about signal handlers sharing\n  New locking/refcounting for fs_struct\n  Take fs_struct handling to new file (fs/fs_struct.c)\n  Get rid of bumping fs_struct refcount in pivot_root(2)\n  Kill unsharing fs_struct in __set_personality()\n"
    },
    {
      "commit": "197e671ee1d674b194b943467364fdfbefe7ce5a",
      "tree": "a72e2cd4139f7e7b1647b199c8fa88b350cc0d4e",
      "parents": [
        "054475d2af2640a6d6cb83b528512c7b49eef9ca"
      ],
      "author": {
        "name": "Coly Li",
        "email": "coly.li@suse.de",
        "time": "Thu Apr 02 16:59:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:05:10 2009 -0700"
      },
      "message": "fs/omfs: return f_fsid for statfs(2)\n\nMake omfs return f_fsid info for statfs(2).\n\nSigned-off-by: Coly Li \u003ccoly.li@suse.de\u003e\nAcked-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce3b0f8d5c2203301fc87f3aaaed73e5819e2a48",
      "tree": "ab952affafe18e604f6aaf6b13315b9435588e60",
      "parents": [
        "f1191b50ec11c8e2ca766d6d99eb5bb9d2c084a3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 29 19:08:22 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 31 23:00:26 2009 -0400"
      },
      "message": "New helper - current_umask()\n\ncurrent-\u003efs-\u003eumask is what most of fs_struct users are doing.\nPut that into a helper function.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "da55e6f92830df9bba7c87438344479c60d44fdb",
      "tree": "128b27d85c044de0e66671c49ea1cb9e1cc50a64",
      "parents": [
        "8b1cd7d3c5daaed6c4dec3697c1fc113eb817df0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Jan 22 11:00:41 2009 +0300"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Jan 22 13:15:58 2009 +0300"
      },
      "message": "fs/Kconfig: move omfs out\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "56ff5efad96182f4d3cb3dc6b07396762c658f16",
      "tree": "cb91f93aa2324573527165d56d230b606a3111ed",
      "parents": [
        "acfa4380efe77e290d3a96b11cd4c9f24f4fbb18"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 09 09:34:39 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "zero i_uid/i_gid on inode allocation\n\n... and don\u0027t bother in callers.  Don\u0027t bother with zeroing i_blocks,\nwhile we are at it - it\u0027s already been zeroed.\n\ni_mode is not worth the effort; it has no common default value.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c222d53eb32ea0c9516261268a24c6f162423acd",
      "tree": "b4aa9b8ad77eb50652d79a0c3b3a034f5326e61c",
      "parents": [
        "b19c2a3b839b9dfb3f258e8943dc3784ae20c7b0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Nov 14 10:38:59 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Nov 14 10:38:59 2008 +1100"
      },
      "message": "CRED: Wrap task credential accesses in the OMFS 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: Bob Copeland \u003cme@bobcopeland.com\u003e\nCc: linux-karma-devel@lists.sourceforge.net\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "3222a3e55f4025acb2a5a4379cf2f2b7df1f1243",
      "tree": "d12740cd5dc00ae17f7beb63584dd00d7c1fb4cb",
      "parents": [
        "4e9ed2f85af7adfa7c3f0efa839a53186254fdcb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Sep 03 21:53:01 2008 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:21 2008 -0400"
      },
      "message": "[PATCH] fix -\u003ellseek for more directories\n\nWith this patch all directory fops instances that have a readdir\nthat doesn\u0027t take the BKL are switched to generic_file_llseek.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\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": "9419fc1c957d600093baaea247fef23cca3b4e93",
      "tree": "532606ac97d86d8952ffcdd8f8513b1499c10bf8",
      "parents": [
        "c963343a1150106819773e828c9b237ed977615b"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Aug 15 00:40:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:44 2008 -0700"
      },
      "message": "omfs: fix oops when file metadata is corrupted\n\nA fuzzed fileystem image failed with OMFS when the extent count was\nused in a loop without being checked against the max number of extents.\nIt also provoked a signed division for an array index that was checked\nas if unsigned, leading to index by -1.\n\nomfsck will be updated to fix these cases, in the meantime bail out\ngracefully.\n\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c963343a1150106819773e828c9b237ed977615b",
      "tree": "abfcd2e27cb436315f835cd746c45e56c5397080",
      "parents": [
        "be4de35263f59ca1f4740edfffbfb02cc3f2189e"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Aug 15 00:40:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:44 2008 -0700"
      },
      "message": "omfs: fix potential oops when directory size is corrupted\n\nTesting with a modified fsfuzzer reveals a couple of locations in omfs\nwhere filesystem variables are ultimately used as loop counters with\ninsufficient sanity checking.  In this case, dir-\u003ei_size is used to\ncompute the number of buckets in the directory hash.  If too large,\nreaddir will overrun a buffer.\n\nSince it\u0027s an invariant that dir-\u003ei_size is equal to the sysblock\nsize, and we already sanity check that, just use that value instead.\nThis fixes the following oops:\n\nBUG: unable to handle kernel paging request at c978e004\nIP: [\u003cc032298e\u003e] omfs_readdir+0x18e/0x32f\nOops: 0000 [#1] PREEMPT DEBUG_PAGEALLOC\nModules linked in:\n\nPid: 4796, comm: ls Not tainted (2.6.27-rc2 #12)\nEIP: 0060:[\u003cc032298e\u003e] EFLAGS: 00010287 CPU: 0\nEIP is at omfs_readdir+0x18e/0x32f\nEAX: c978d000 EBX: 00000000 ECX: cbfcfaf8 EDX: cb2cf100\nESI: 00001000 EDI: 00000800 EBP: cb2d3f68 ESP: cb2d3f0c\n DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068\nProcess ls (pid: 4796, ti\u003dcb2d3000 task\u003dcb175f40 task.ti\u003dcb2d3000)\nStack: 00000002 00000000 00000000 c018a820 cb2d3f94 cb2cf100 cbfb0000 ffffff10\n       cbfb3b80 cbfcfaf8 000001c9 00000a09 00000000 00000000 00000000 cbfcfbc8\n       c9697000 cbfb3b80 22222222 00001000 c08e6cd0 cb2cf100 cbfb3b80 cb2d3f88\nCall Trace:\n [\u003cc018a820\u003e] ? filldir64+0x0/0xcd\n [\u003cc018a9f2\u003e] ? vfs_readdir+0x56/0x82\n [\u003cc018a820\u003e] ? filldir64+0x0/0xcd\n [\u003cc018aa7c\u003e] ? sys_getdents64+0x5e/0xa0\n [\u003cc01038bd\u003e] ? sysenter_do_call+0x12/0x31\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nCode: 00 89 f0 89 f3 0f ac f8 14 81 e3 ff ff 0f 00 48 8d\n14 c5 b8 01 00 00 89 45 cc 89 55 f0 e9 8c 01 00 00 8b 4d c8 8b 75 f0 8b\n41 18 \u003c8b\u003e 54 30 04 8b 04 30 31 f6 89 5d dc 89 d1 8b 55 b8 0f c8 0f c9\n\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc60bf1d8328076c27fe07c1849a5c8399bafc39",
      "tree": "8247fe27eb8af9a61ab537fcd0b45b93498bd91f",
      "parents": [
        "32ab8f97dd95592b17e684f7722caa0556087b99"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Tue Aug 05 13:01:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 14:33:49 2008 -0700"
      },
      "message": "omfs: fix warning\n\nfs/omfs/inode.c:495: warning: format \u0027%llx\u0027 expects type \u0027long long\n\tunsigned int\u0027, but argument 2 has type \u0027u64\u0027\nfs/omfs/inode.c:495: warning: format \u0027%llx\u0027 expects type \u0027long\n\tlong unsigned int\u0027, but argument 3 has type \u0027__be64\u0027\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nAcked-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d406f66ddb0d7491ddd53e4600c425d76a8a245f",
      "tree": "3f3a038ac10d0b5fa7a08acf0a5cd6e805d18e91",
      "parents": [
        "32be1d22327743134974c7b2ec1e2a143b6b6f86"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Tue Jul 29 22:33:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:46 2008 -0700"
      },
      "message": "omfs: sparse annotations\n\nMissing cpu_to_be64 on some constant assignments.\nfs/omfs/dir.c:107:16: warning: incorrect type in assignment (different base types)\nfs/omfs/dir.c:107:16:    expected restricted __be64 [usertype] i_sibling\nfs/omfs/dir.c:107:16:    got unsigned long long\nfs/omfs/file.c:33:13: warning: incorrect type in assignment (different base types)\nfs/omfs/file.c:33:13:    expected restricted __be64 [usertype] e_next\nfs/omfs/file.c:33:13:    got unsigned long long\nfs/omfs/file.c:36:24: warning: incorrect type in assignment (different base types)\nfs/omfs/file.c:36:24:    expected restricted __be64 [usertype] e_cluster\nfs/omfs/file.c:36:24:    got unsigned long long\nfs/omfs/file.c:37:23: warning: incorrect type in assignment (different base types)\nfs/omfs/file.c:37:23:    expected restricted __be64 [usertype] e_blocks\nfs/omfs/file.c:37:23:    got unsigned long long\n\nfs/omfs/bitmap.c:74:18: warning: incorrect type in argument 2 (different signedness)\nfs/omfs/bitmap.c:74:18:    expected unsigned long volatile *addr\nfs/omfs/bitmap.c:74:18:    got long *\u003cnoident\u003e\nfs/omfs/bitmap.c:77:20: warning: incorrect type in argument 2 (different signedness)\nfs/omfs/bitmap.c:77:20:    expected unsigned long volatile *addr\nfs/omfs/bitmap.c:77:20:    got long *\u003cnoident\u003e\nfs/omfs/bitmap.c:112:17: warning: incorrect type in argument 2 (different signedness)\nfs/omfs/bitmap.c:112:17:    expected unsigned long volatile *addr\nfs/omfs/bitmap.c:112:17:    got long *\u003cnoident\u003e\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "63ca8ce2a2641f9cb5f0add33ced4591681d1cd7",
      "tree": "a7dbade60bc7176868a0fd19c3907d3605061be5",
      "parents": [
        "36cc410a6799a205bfc6ccc38abd9d52f2afba64"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: update kbuild to include OMFS\n\nAdds OMFS to the fs Kconfig and Makefile\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "36cc410a6799a205bfc6ccc38abd9d52f2afba64",
      "tree": "3fb78b30e6421f9d668a48f65acfec4016bb9161",
      "parents": [
        "8f09e98768c17287df076580c4cc72ac358312c6"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add bitmap routines\n\nAdd block allocation and block bitmap management routines for OMFS.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f09e98768c17287df076580c4cc72ac358312c6",
      "tree": "4e1a593887e9c8092c541269d242b429baf051d4",
      "parents": [
        "a3ab7155ea21aadc8a4d5687e91b3d876973185e"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add file routines\n\nAdd functions for reading and manipulating the storage of file data in\nthe extent-based OMFS.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a3ab7155ea21aadc8a4d5687e91b3d876973185e",
      "tree": "40f74b9c4e38d12bbbbc269232fb8a5b7ad9448c",
      "parents": [
        "555e3775ced1d05203934fc6529bbf0560dd8733"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add directory routines\n\nAdd lookup and directory management routines for OMFS.  The filesystem uses\nhashing based on the filename and stores collisions, unordered, in siblings\nof files\u0027 inode structures.  To support telldir, the current position in\nthe hash table is encoded in fpos.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "555e3775ced1d05203934fc6529bbf0560dd8733",
      "tree": "7b34c07aa62f1ffa418baf943276ebdd2a8aeba3",
      "parents": [
        "1b002d7b173ae7cc15ed90d3c07f6d106babc510"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: add inode routines\n\nAdd basic superblock and inode handling routines for OMFS\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b002d7b173ae7cc15ed90d3c07f6d106babc510",
      "tree": "ec6c72320e8709547734c89cce1348c6f31208c9",
      "parents": [
        "a14e4b572b0ee5c6dbe4aceb83d00b2c969324e9"
      ],
      "author": {
        "name": "Bob Copeland",
        "email": "me@bobcopeland.com",
        "time": "Fri Jul 25 19:45:15 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:05 2008 -0700"
      },
      "message": "omfs: define filesystem structures\n\nAdd header files containing OMFS on-disk and memory structures.\n\nSigned-off-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ]
}
