)]}'
{
  "log": [
    {
      "commit": "033369d1af1264abc23bea2e174aa47cdd212f6f",
      "tree": "b00e709d1e9270b1708488da7a596a8dff72541d",
      "parents": [
        "5c5fd81962271d4ee2984837fef4ec37e689aa41"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Jun 01 17:18:08 2012 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 10:37:36 2012 -0400"
      },
      "message": "reiserfs: get rid of resierfs_sync_super\n\nThis patch stops reiserfs using the VFS \u0027write_super()\u0027 method along with the\ns_dirt flag, because they are on their way out.\n\nThe whole \"superblock write-out\" VFS infrastructure is served by the\n\u0027sync_supers()\u0027 kernel thread, which wakes up every 5 (by default) seconds and\nwrites out all dirty superblock using the \u0027-\u003ewrite_super()\u0027 call-back.  But the\nproblem with this thread is that it wastes power by waking up the system every\n5 seconds, even if there are no diry superblocks, or there are no client\nfile-systems which would need this (e.g., btrfs does not use\n\u0027-\u003ewrite_super()\u0027). So we want to kill it completely and thus, we need to make\nfile-systems to stop using the \u0027-\u003ewrite_super()\u0027 VFS service, and then remove\nit together with the kernel thread.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5c5fd81962271d4ee2984837fef4ec37e689aa41",
      "tree": "bf426f26c8265c3572e37e3a0908624da0cf0a58",
      "parents": [
        "717f03c4d71677d2afb68d54628def3aae5d46ab"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Jun 01 17:18:07 2012 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 10:37:36 2012 -0400"
      },
      "message": "reiserfs: mark the superblock as dirty a bit later\n\nThe \u0027journal_mark_dirty()\u0027 function currently first marks the superblock as\ndirty by setting \u0027s_dirt\u0027 to 1, then does various sanity checks and returns,\nthen actuall does all the magic with the journal.\n\nThis is not an ideal order, though. It makes more sense to first do all the\nchecks, then do all the internal stuff, and at the end notify the VFS that the\nsuperblock is now dirty.\n\nThis patch moves the \u0027s_dirt \u003d 1\u0027 assignment from the very beginning of this\nfunction to the very end.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "717f03c4d71677d2afb68d54628def3aae5d46ab",
      "tree": "ad6eb4ff48e307920716a22586bbf322002d19bb",
      "parents": [
        "25729b0e94c2103a8d726eda843136a3775366cf"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Jun 01 17:18:06 2012 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 10:37:36 2012 -0400"
      },
      "message": "reiserfs: remove useless superblock dirtying\n\nThe \u0027reiserfs_resize()\u0027 function marks the superblock as dirty by assigning 1\nto \u0027s_dirt\u0027 and then calls \u0027journal_mark_dirty()\u0027 which does the same. Thus,\nwe can remove the assignment from \u0027reiserfs_resize()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "25729b0e94c2103a8d726eda843136a3775366cf",
      "tree": "b5858042ffb91144103a38b6be197cd54afa4d67",
      "parents": [
        "efaa33eb1309d65528d5a54d87d69bdcbdae8c10"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Jun 01 17:18:05 2012 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 10:37:36 2012 -0400"
      },
      "message": "reiserfs: clean-up function return type\n\nTurn \u0027reiserfs_flush_old_commits()\u0027 into a void function because the callers\ndo not cares about what it returns anyway.\n\nWe are going to remove the \u0027sb-\u003es_dirt\u0027 field completely and this patch is a\nsmall step towards this direction.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "efaa33eb1309d65528d5a54d87d69bdcbdae8c10",
      "tree": "31da93df726e53fa56447226605d4870b37f7754",
      "parents": [
        "d58367515f47371f7202d8b258ee0614a8955a6a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Jun 01 17:18:04 2012 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 10:37:36 2012 -0400"
      },
      "message": "reiserfs: cleanup reiserfs_fill_super a bit\n\nWe have the reiserfs superblock pointer in the \u0027sbi\u0027 variable in this\nfunction, no need to use the \u0027REISERFS_SB(s)\u0027 macro which is the same.\nThis is jut a small clean-up.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b0b0382bb4904965a9e9fca77ad87514dfda0d1c",
      "tree": "dc46873fa74e0d194e4a2571b16f0767e1919ae8",
      "parents": [
        "6d42e7e9f6d86ed4dfacde75a6cf515068f9749c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Apr 02 14:34:06 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue May 29 23:28:33 2012 -0400"
      },
      "message": "-\u003eencode_fh() API change\n\npass inode + parent\u0027s inode or NULL instead of dentry + bool saying\nwhether we want the parent or not.\n\nNOTE: that needs ceph fix folded in.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "90324cc1b11a211e37eabd8cb863e1a1561d6b1d",
      "tree": "c8b79c6850420a114ca6660c1b44fc486b1ba86d",
      "parents": [
        "fb8b00675eb6462aacab56bca31ed6107bda5314",
        "169ebd90131b2ffca74bb2dbe7eeacd39fb83714"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 28 09:54:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 28 09:54:45 2012 -0700"
      },
      "message": "Merge tag \u0027writeback\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux\n\nPull writeback tree from Wu Fengguang:\n \"Mainly from Jan Kara to avoid iput() in the flusher threads.\"\n\n* tag \u0027writeback\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux:\n  writeback: Avoid iput() from flusher thread\n  vfs: Rename end_writeback() to clear_inode()\n  vfs: Move waiting for inode writeback from end_writeback() to evict_inode()\n  writeback: Refactor writeback_single_inode()\n  writeback: Remove wb-\u003elist_lock from writeback_single_inode()\n  writeback: Separate inode requeueing after writeback\n  writeback: Move I_DIRTY_PAGES handling\n  writeback: Move requeueing when I_SYNC set to writeback_sb_inodes()\n  writeback: Move clearing of I_SYNC into inode_sync_complete()\n  writeback: initialize global_dirty_limit\n  fs: remove 8 bytes of padding from struct writeback_control on 64 bit builds\n  mm: page-writeback.c: local functions should not be exposed globally\n"
    },
    {
      "commit": "67f1648d217c3b8165ca114c7838164f31e15790",
      "tree": "9c9fcd9dce9d7c3a1ad7863a4cdcbcf5ec235924",
      "parents": [
        "0b7f7cefaea96ef25dbe54b8e16d2d61560d8b9d"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Apr 25 21:28:12 2012 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue May 15 23:34:38 2012 +0200"
      },
      "message": "reiserfs: Remove i_mutex use from reiserfs_quota_write()\n\nWe don\u0027t need i_mutex in reiserfs_quota_write() because writes to quota file\nare serialized by dqio_mutex anyway. Changes to quota files outside of quota\ncode are forbidded and enforced by NOATIME and IMMUTABLE bits.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "dbd5768f87ff6fb0a4fe09c4d7b6c4a24de99430",
      "tree": "42ea94ea733538f797aa745945fc43c4d1b89217",
      "parents": [
        "7994e6f7254354e03028a11f98a27bd67dace9f1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu May 03 14:48:02 2012 +0200"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sun May 06 13:43:41 2012 +0800"
      },
      "message": "vfs: Rename end_writeback() to clear_inode()\n\nAfter we moved inode_sync_wait() from end_writeback() it doesn\u0027t make sense\nto call the function end_writeback() anymore. Rename it to clear_inode()\nwhich well says what the function really does - set I_CLEAR flag.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "0195c00244dc2e9f522475868fa278c473ba7339",
      "tree": "f97ca98ae64ede2c33ad3de05ed7bbfa4f4495ed",
      "parents": [
        "f21ce8f8447c8be8847dadcfdbcc76b0d7365fa5",
        "141124c02059eee9dbc5c86ea797b1ca888e77f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:58:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 15:58:21 2012 -0700"
      },
      "message": "Merge tag \u0027split-asm_system_h-for-linus-20120328\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system\n\nPull \"Disintegrate and delete asm/system.h\" from David Howells:\n \"Here are a bunch of patches to disintegrate asm/system.h into a set of\n  separate bits to relieve the problem of circular inclusion\n  dependencies.\n\n  I\u0027ve built all the working defconfigs from all the arches that I can\n  and made sure that they don\u0027t break.\n\n  The reason for these patches is that I recently encountered a circular\n  dependency problem that came about when I produced some patches to\n  optimise get_order() by rewriting it to use ilog2().\n\n  This uses bitops - and on the SH arch asm/bitops.h drags in\n  asm-generic/get_order.h by a circuituous route involving asm/system.h.\n\n  The main difficulty seems to be asm/system.h.  It holds a number of\n  low level bits with no/few dependencies that are commonly used (eg.\n  memory barriers) and a number of bits with more dependencies that\n  aren\u0027t used in many places (eg.  switch_to()).\n\n  These patches break asm/system.h up into the following core pieces:\n\n    (1) asm/barrier.h\n\n        Move memory barriers here.  This already done for MIPS and Alpha.\n\n    (2) asm/switch_to.h\n\n        Move switch_to() and related stuff here.\n\n    (3) asm/exec.h\n\n        Move arch_align_stack() here.  Other process execution related bits\n        could perhaps go here from asm/processor.h.\n\n    (4) asm/cmpxchg.h\n\n        Move xchg() and cmpxchg() here as they\u0027re full word atomic ops and\n        frequently used by atomic_xchg() and atomic_cmpxchg().\n\n    (5) asm/bug.h\n\n        Move die() and related bits.\n\n    (6) asm/auxvec.h\n\n        Move AT_VECTOR_SIZE_ARCH here.\n\n  Other arch headers are created as needed on a per-arch basis.\"\n\nFixed up some conflicts from other header file cleanups and moving code\naround that has happened in the meantime, so David\u0027s testing is somewhat\nweakened by that.  We\u0027ll find out anything that got broken and fix it..\n\n* tag \u0027split-asm_system_h-for-linus-20120328\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system: (38 commits)\n  Delete all instances of asm/system.h\n  Remove all #inclusions of asm/system.h\n  Add #includes needed to permit the removal of asm/system.h\n  Move all declarations of free_initmem() to linux/mm.h\n  Disintegrate asm/system.h for OpenRISC\n  Split arch_align_stack() out from asm-generic/system.h\n  Split the switch_to() wrapper out of asm-generic/system.h\n  Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h\n  Create asm-generic/barrier.h\n  Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h\n  Disintegrate asm/system.h for Xtensa\n  Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]\n  Disintegrate asm/system.h for Tile\n  Disintegrate asm/system.h for Sparc\n  Disintegrate asm/system.h for SH\n  Disintegrate asm/system.h for Score\n  Disintegrate asm/system.h for S390\n  Disintegrate asm/system.h for PowerPC\n  Disintegrate asm/system.h for PA-RISC\n  Disintegrate asm/system.h for MN10300\n  ...\n"
    },
    {
      "commit": "9ffc93f203c18a70623f21950f1dd473c9ec48cd",
      "tree": "1eb3536ae183b0bfbf7f5152a6fe4f430ae881c2",
      "parents": [
        "96f951edb1f1bdbbc99b0cd458f9808bb83d58ae"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Mar 28 18:30:03 2012 +0100"
      },
      "message": "Remove all #inclusions of asm/system.h\n\nRemove all #inclusions of asm/system.h preparatory to splitting and killing\nit.  Performed with the following command:\n\nperl -p -i -e \u0027s!^#\\s*include\\s*\u003casm/system[.]h\u003e.*\\n!!\u0027 `grep -Irl \u0027^#\\s*include\\s*\u003casm/system[.]h\u003e\u0027 *`\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "ed2d265d1266736bd294332d7f649003943ae36e",
      "tree": "860e5b7bb72933e4a9abacdc2f2d75a0e6254e32",
      "parents": [
        "f1d38e423a697b7aa06e12d3ca4753bcc1aa3531",
        "6c03438edeb5c359af35f060ea016ca65671c269"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:08:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:08:39 2012 -0700"
      },
      "message": "Merge tag \u0027bug-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull \u003clinux/bug.h\u003e cleanup from Paul Gortmaker:\n \"The changes shown here are to unify linux\u0027s BUG support under the one\n  \u003clinux/bug.h\u003e file.  Due to historical reasons, we have some BUG code\n  in bug.h and some in kernel.h -- i.e.  the support for BUILD_BUG in\n  linux/kernel.h predates the addition of linux/bug.h, but old code in\n  kernel.h wasn\u0027t moved to bug.h at that time.  As a band-aid, kernel.h\n  was including \u003casm/bug.h\u003e to pseudo link them.\n\n  This has caused confusion[1] and general yuck/WTF[2] reactions.  Here\n  is an example that violates the principle of least surprise:\n\n      CC      lib/string.o\n      lib/string.c: In function \u0027strlcat\u0027:\n      lib/string.c:225:2: error: implicit declaration of function \u0027BUILD_BUG_ON\u0027\n      make[2]: *** [lib/string.o] Error 1\n      $\n      $ grep linux/bug.h lib/string.c\n      #include \u003clinux/bug.h\u003e\n      $\n\n  We\u0027ve included \u003clinux/bug.h\u003e for the BUG infrastructure and yet we\n  still get a compile fail! [We\u0027ve not kernel.h for BUILD_BUG_ON.] Ugh -\n  very confusing for someone who is new to kernel development.\n\n  With the above in mind, the goals of this changeset are:\n\n  1) find and fix any include/*.h files that were relying on the\n     implicit presence of BUG code.\n  2) find and fix any C files that were consuming kernel.h and hence\n     relying on implicitly getting some/all BUG code.\n  3) Move the BUG related code living in kernel.h to \u003clinux/bug.h\u003e\n  4) remove the asm/bug.h from kernel.h to finally break the chain.\n\n  During development, the order was more like 3-4, build-test, 1-2.  But\n  to ensure that git history for bisect doesn\u0027t get needless build\n  failures introduced, the commits have been reorderd to fix the problem\n  areas in advance.\n\n\t[1]  https://lkml.org/lkml/2012/1/3/90\n\t[2]  https://lkml.org/lkml/2012/1/17/414\"\n\nFix up conflicts (new radeon file, reiserfs header cleanups) as per Paul\nand linux-next.\n\n* tag \u0027bug-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  kernel.h: doesn\u0027t explicitly use bug.h, so don\u0027t include it.\n  bug: consolidate BUILD_BUG_ON with other bug code\n  BUG: headers with BUG/BUG_ON etc. need linux/bug.h\n  bug.h: add include of it to various implicit C users\n  lib: fix implicit users of kernel.h for TAINT_WARN\n  spinlock: macroize assert_spin_locked to avoid bug.h dependency\n  x86: relocate get/set debugreg fcns to include/asm/debugreg.\n"
    },
    {
      "commit": "e2a0883e4071237d09b604a342c28b96b44a04b3",
      "tree": "aa56f4d376b5eb1c32358c19c2669c2a94e0e1fd",
      "parents": [
        "3a990a52f9f25f45469e272017a31e7a3fda60ed",
        "07c0c5d8b8c122b2f2df9ee574ac3083daefc981"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs pile 1 from Al Viro:\n \"This is _not_ all; in particular, Miklos\u0027 and Jan\u0027s stuff is not there\n  yet.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)\n  ext4: initialization of ext4_li_mtx needs to be done earlier\n  debugfs-related mode_t whack-a-mole\n  hfsplus: add an ioctl to bless files\n  hfsplus: change finder_info to u32\n  hfsplus: initialise userflags\n  qnx4: new helper - try_extent()\n  qnx4: get rid of qnx4_bread/qnx4_getblk\n  take removal of PF_FORKNOEXEC to flush_old_exec()\n  trim includes in inode.c\n  um: uml_dup_mmap() relies on -\u003emmap_sem being held, but activate_mm() doesn\u0027t hold it\n  um: embed -\u003estub_pages[] into mmu_context\n  gadgetfs: list_for_each_safe() misuse\n  ocfs2: fix leaks on failure exits in module_init\n  ecryptfs: make register_filesystem() the last potential failure exit\n  ntfs: forgets to unregister sysctls on register_filesystem() failure\n  logfs: missing cleanup on register_filesystem() failure\n  jfs: mising cleanup on register_filesystem() failure\n  make configfs_pin_fs() return root dentry on success\n  configfs: configfs_create_dir() has parent dentry in dentry-\u003ed_parent\n  configfs: sanitize configfs_create()\n  ...\n"
    },
    {
      "commit": "9f3938346a5c1fa504647670edb5fea5756cfb00",
      "tree": "7cf6d24d6b076c8db8571494984924cac03703a2",
      "parents": [
        "69a7aebcf019ab3ff5764525ad6858fbe23bb86d",
        "317b6e128247f75976b0fc2b9fd8d2c20ef13b3a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 09:40:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 09:40:26 2012 -0700"
      },
      "message": "Merge branch \u0027kmap_atomic\u0027 of git://github.com/congwang/linux\n\nPull kmap_atomic cleanup from Cong Wang.\n\nIt\u0027s been in -next for a long time, and it gets rid of the (no longer\nused) second argument to k[un]map_atomic().\n\nFix up a few trivial conflicts in various drivers, and do an \"evil\nmerge\" to catch some new uses that have come in since Cong\u0027s tree.\n\n* \u0027kmap_atomic\u0027 of git://github.com/congwang/linux: (59 commits)\n  feature-removal-schedule.txt: schedule the deprecated form of kmap_atomic() for removal\n  highmem: kill all __kmap_atomic() [swarren@nvidia.com: highmem: Fix ARM build break due to __kmap_atomic rename]\n  drbd: remove the second argument of k[un]map_atomic()\n  zcache: remove the second argument of k[un]map_atomic()\n  gma500: remove the second argument of k[un]map_atomic()\n  dm: remove the second argument of k[un]map_atomic()\n  tomoyo: remove the second argument of k[un]map_atomic()\n  sunrpc: remove the second argument of k[un]map_atomic()\n  rds: remove the second argument of k[un]map_atomic()\n  net: remove the second argument of k[un]map_atomic()\n  mm: remove the second argument of k[un]map_atomic()\n  lib: remove the second argument of k[un]map_atomic()\n  power: remove the second argument of k[un]map_atomic()\n  kdb: remove the second argument of k[un]map_atomic()\n  udf: remove the second argument of k[un]map_atomic()\n  ubifs: remove the second argument of k[un]map_atomic()\n  squashfs: remove the second argument of k[un]map_atomic()\n  reiserfs: remove the second argument of k[un]map_atomic()\n  ocfs2: remove the second argument of k[un]map_atomic()\n  ntfs: remove the second argument of k[un]map_atomic()\n  ...\n"
    },
    {
      "commit": "765fd6b23d8b1130bd9e2c995040b137faa0992d",
      "tree": "6157a1716ce74ddb77657e08bc13c208dafd671f",
      "parents": [
        "f466c6fdb3b1f043ff1977a8d2a1d0cd4dc164fa"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 17 01:19:24 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:43 2012 -0400"
      },
      "message": "kill reiserfs_fs_{i,sb}.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f466c6fdb3b1f043ff1977a8d2a1d0cd4dc164fa",
      "tree": "4ebd1b27da5be1a77c6d095b2d0066ab8fb2c5e0",
      "parents": [
        "a8a4b79b53fc7cbb023afedf58b04dd4e9bbb114"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 17 01:16:43 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:43 2012 -0400"
      },
      "message": "move private bits of reiserfs_fs.h to fs/reiserfs/reiserfs.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a8a4b79b53fc7cbb023afedf58b04dd4e9bbb114",
      "tree": "1cc5ccdd1df89a6b166c9b93316e624f917a65e3",
      "parents": [
        "a3063ab88fcbe5249f841cb95dfd626b8bf2674f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 17 01:06:11 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:43 2012 -0400"
      },
      "message": "kill pointless includes of reiserfs_fs_{i,sb}.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a3063ab88fcbe5249f841cb95dfd626b8bf2674f",
      "tree": "bb3304f3317a4075cee2926b39867336cae708b0",
      "parents": [
        "c45ac8887e778c4fa2b572c51a94a681a0955d4d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 17 01:03:10 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:42 2012 -0400"
      },
      "message": "move reiserfs_acl.h to fs/reiserfs/acl.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c45ac8887e778c4fa2b572c51a94a681a0955d4d",
      "tree": "913d8c72376def5c3c29838273b2ddde49887c81",
      "parents": [
        "82234e61a8fc75599f29026c0805fc0cfe2a6c87"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 17 00:59:06 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:42 2012 -0400"
      },
      "message": "take private bits of reiserfs_xattr.h to fs/reiserfs/xattr.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "48fde701aff662559b38d9a609574068f22d00fe",
      "tree": "aa6b203dc671b51d58575b65eb08310ff8309b60",
      "parents": [
        "6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 08 22:15:13 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:35 2012 -0400"
      },
      "message": "switch open-coded instances of d_make_root() to new helper\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "883da600b00eb6fa9f8db5687759732b3c6dd357",
      "tree": "ed044e2192aa10add56cb4b0c2ce7007f5bba8ce",
      "parents": [
        "c4bc8dcbbe7a7876d76e3f3e129a2ccec46d7cdb"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "amwang@redhat.com",
        "time": "Fri Nov 25 23:14:35 2011 +0800"
      },
      "committer": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 20 21:48:25 2012 +0800"
      },
      "message": "reiserfs: remove the second argument of k[un]map_atomic()\n\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\n"
    },
    {
      "commit": "972c5ae961d6e5103e2b33d935cfa4145fd47140",
      "tree": "350b2a76b979ba8766c09838617df67ff330eca0",
      "parents": [
        "5196d20305d5e30d871111d3a876cf067dd94255",
        "7c7ed8ec337bf5f62cc5287a6eb6b2f1b7504c2f"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Feb 03 23:12:42 2012 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Feb 03 23:13:05 2012 +0100"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nSync with Linus\u0027 tree to be able to apply patch to a newer\ncode (namely drivers/gpu/drm/gma500/psb_intel_lvds.c)\n"
    },
    {
      "commit": "8112b9830a056c3f42423e4e8e914ac9f7162dce",
      "tree": "dd64fe5d4b3bf92913edbd2bd526212a23633610",
      "parents": [
        "19f2da3505ba99de3512dad34a0f1ed0609144c6"
      ],
      "author": {
        "name": "Masanari Iida",
        "email": "standby24x7@gmail.com",
        "time": "Sun Jan 22 23:27:00 2012 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Feb 03 22:47:38 2012 +0100"
      },
      "message": "reiserfs: fix printk typo in lbalance.c\n\nCorrect spelling \"entry_cout\" to \"entry_count\" in\nfs/reiserfs/lbalance.c\n\nSigned-off-by: Masanari Iida \u003cstandby24x7@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "9b467e6ebebbe75288aeb7e816ffbb5d35d6eaa3",
      "tree": "c4ef186bd143aaa47b5745235452e9e2345d8f20",
      "parents": [
        "37c69b98d0dca54d9eb72226bbf2e211aaaf126e"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jan 10 15:11:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:30:54 2012 -0800"
      },
      "message": "reiserfs: don\u0027t lock root inode searching\n\nNothing requires that we lock the filesystem until the root inode is\nprovided.\n\nAlso iget5_locked() triggers a warning because we are holding the\nfilesystem lock while allocating the inode, which result in a lockdep\nsuspicion that we have a lock inversion against the reclaim path:\n\n[ 1986.896979] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ 1986.896990] [ INFO: inconsistent lock state ]\n[ 1986.896997] 3.1.1-main #8\n[ 1986.897001] ---------------------------------\n[ 1986.897007] inconsistent {RECLAIM_FS-ON-W} -\u003e {IN-RECLAIM_FS-W} usage.\n[ 1986.897016] kswapd0/16 [HC0[0]:SC0[0]:HE1:SE1] takes:\n[ 1986.897023]  (\u0026REISERFS_SB(s)-\u003elock){+.+.?.}, at: [\u003cc01f8bd4\u003e] reiserfs_write_lock+0x20/0x2a\n[ 1986.897044] {RECLAIM_FS-ON-W} state was registered at:\n[ 1986.897050]   [\u003cc014a5b9\u003e] mark_held_locks+0xae/0xd0\n[ 1986.897060]   [\u003cc014aab3\u003e] lockdep_trace_alloc+0x7d/0x91\n[ 1986.897068]   [\u003cc0190ee0\u003e] kmem_cache_alloc+0x1a/0x93\n[ 1986.897078]   [\u003cc01e7728\u003e] reiserfs_alloc_inode+0x13/0x3d\n[ 1986.897088]   [\u003cc01a5b06\u003e] alloc_inode+0x14/0x5f\n[ 1986.897097]   [\u003cc01a5cb9\u003e] iget5_locked+0x62/0x13a\n[ 1986.897106]   [\u003cc01e99e0\u003e] reiserfs_fill_super+0x410/0x8b9\n[ 1986.897114]   [\u003cc01953da\u003e] mount_bdev+0x10b/0x159\n[ 1986.897123]   [\u003cc01e764d\u003e] get_super_block+0x10/0x12\n[ 1986.897131]   [\u003cc0195b38\u003e] mount_fs+0x59/0x12d\n[ 1986.897138]   [\u003cc01a80d1\u003e] vfs_kern_mount+0x45/0x7a\n[ 1986.897147]   [\u003cc01a83e3\u003e] do_kern_mount+0x2f/0xb0\n[ 1986.897155]   [\u003cc01a987a\u003e] do_mount+0x5c2/0x612\n[ 1986.897163]   [\u003cc01a9a72\u003e] sys_mount+0x61/0x8f\n[ 1986.897170]   [\u003cc044060c\u003e] sysenter_do_call+0x12/0x32\n[ 1986.897181] irq event stamp: 7509691\n[ 1986.897186] hardirqs last  enabled at (7509691): [\u003cc0190f34\u003e] kmem_cache_alloc+0x6e/0x93\n[ 1986.897197] hardirqs last disabled at (7509690): [\u003cc0190eea\u003e] kmem_cache_alloc+0x24/0x93\n[ 1986.897209] softirqs last  enabled at (7508896): [\u003cc01294bd\u003e] __do_softirq+0xee/0xfd\n[ 1986.897222] softirqs last disabled at (7508859): [\u003cc01030ed\u003e] do_softirq+0x50/0x9d\n[ 1986.897234]\n[ 1986.897235] other info that might help us debug this:\n[ 1986.897242]  Possible unsafe locking scenario:\n[ 1986.897244]\n[ 1986.897250]        CPU0\n[ 1986.897254]        ----\n[ 1986.897257]   lock(\u0026REISERFS_SB(s)-\u003elock);\n[ 1986.897265] \u003cInterrupt\u003e\n[ 1986.897269]     lock(\u0026REISERFS_SB(s)-\u003elock);\n[ 1986.897276]\n[ 1986.897277]  *** DEADLOCK ***\n[ 1986.897278]\n[ 1986.897286] no locks held by kswapd0/16.\n[ 1986.897291]\n[ 1986.897292] stack backtrace:\n[ 1986.897299] Pid: 16, comm: kswapd0 Not tainted 3.1.1-main #8\n[ 1986.897306] Call Trace:\n[ 1986.897314]  [\u003cc0439e76\u003e] ? printk+0xf/0x11\n[ 1986.897324]  [\u003cc01482d1\u003e] print_usage_bug+0x20e/0x21a\n[ 1986.897332]  [\u003cc01479b8\u003e] ? print_irq_inversion_bug+0x172/0x172\n[ 1986.897341]  [\u003cc014855c\u003e] mark_lock+0x27f/0x483\n[ 1986.897349]  [\u003cc0148d88\u003e] __lock_acquire+0x628/0x1472\n[ 1986.897358]  [\u003cc0149fae\u003e] lock_acquire+0x47/0x5e\n[ 1986.897366]  [\u003cc01f8bd4\u003e] ? reiserfs_write_lock+0x20/0x2a\n[ 1986.897384]  [\u003cc01f8bd4\u003e] ? reiserfs_write_lock+0x20/0x2a\n[ 1986.897397]  [\u003cc043b5ef\u003e] mutex_lock_nested+0x35/0x26f\n[ 1986.897409]  [\u003cc01f8bd4\u003e] ? reiserfs_write_lock+0x20/0x2a\n[ 1986.897421]  [\u003cc01f8bd4\u003e] reiserfs_write_lock+0x20/0x2a\n[ 1986.897433]  [\u003cc01e2edd\u003e] map_block_for_writepage+0xc9/0x590\n[ 1986.897448]  [\u003cc01b1706\u003e] ? create_empty_buffers+0x33/0x8f\n[ 1986.897461]  [\u003cc0121124\u003e] ? get_parent_ip+0xb/0x31\n[ 1986.897472]  [\u003cc043ef7f\u003e] ? sub_preempt_count+0x81/0x8e\n[ 1986.897485]  [\u003cc043cae0\u003e] ? _raw_spin_unlock+0x27/0x3d\n[ 1986.897496]  [\u003cc0121124\u003e] ? get_parent_ip+0xb/0x31\n[ 1986.897508]  [\u003cc01e355d\u003e] reiserfs_writepage+0x1b9/0x3e7\n[ 1986.897521]  [\u003cc0173b40\u003e] ? clear_page_dirty_for_io+0xcb/0xde\n[ 1986.897533]  [\u003cc014a6e3\u003e] ? trace_hardirqs_on_caller+0x108/0x138\n[ 1986.897546]  [\u003cc014a71e\u003e] ? trace_hardirqs_on+0xb/0xd\n[ 1986.897559]  [\u003cc0177b38\u003e] shrink_page_list+0x34f/0x5e2\n[ 1986.897572]  [\u003cc01780a7\u003e] shrink_inactive_list+0x172/0x22c\n[ 1986.897585]  [\u003cc0178464\u003e] shrink_zone+0x303/0x3b1\n[ 1986.897597]  [\u003cc043cae0\u003e] ? _raw_spin_unlock+0x27/0x3d\n[ 1986.897611]  [\u003cc01788c9\u003e] kswapd+0x3b7/0x5f2\n\nThe deadlock shouldn\u0027t happen since we are doing that allocation in the\nmount path, the filesystem is not available for any reclaim.  Still the\nwarning is annoying.\n\nTo solve this, acquire the lock later only where we need it, right before\ncalling reiserfs_read_locked_inode() that wants to lock to walk the tree.\n\nReported-by: Knut Petersen \u003cKnut_Petersen@t-online.de\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: 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": "37c69b98d0dca54d9eb72226bbf2e211aaaf126e",
      "tree": "249277ba7072933b760164bfac713140c0438745",
      "parents": [
        "f32485be8397ad811312bc055d2e2a5906bc7576"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jan 10 15:11:09 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:30:53 2012 -0800"
      },
      "message": "reiserfs: don\u0027t lock journal_init()\n\njournal_init() doesn\u0027t need the lock since no operation on the filesystem\nis involved there.  journal_read() and get_list_bitmap() have yet to be\nreviewed carefully though before removing the lock there.  Just keep the\nit around these two calls for safety.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: 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": "f32485be8397ad811312bc055d2e2a5906bc7576",
      "tree": "3f3ca7a7d8395253189def7742fbd43698dce996",
      "parents": [
        "b18c1c6e0c90cbcd38ba879bd63a44c94e4f7301"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jan 10 15:11:07 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:30:53 2012 -0800"
      },
      "message": "reiserfs: delay reiserfs lock until journal initialization\n\nIn the mount path, transactions that are made before journal\ninitialization don\u0027t involve the filesystem.  We can delay the reiserfs\nlock until we play with the journal.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: 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": "b18c1c6e0c90cbcd38ba879bd63a44c94e4f7301",
      "tree": "125638b5d0654dab6063a8171d9be821b03688d2",
      "parents": [
        "e74a8f2edb92cb690b467cea0ab652c509e9f624"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave@gnu.org",
        "time": "Tue Jan 10 15:11:05 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:30:53 2012 -0800"
      },
      "message": "reiserfs: delete comments referring to the BKL\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nCc: 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": "ac69e0928054ff29a5049902fb477f9c7605c773",
      "tree": "05be6b9285186823452e0adeffe40e1dfee6e354",
      "parents": [
        "9e203936eac786f9268d6a13e6442d2accef1829",
        "302bf2f3259948c93361d501b04a5ed69c3bd4f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 09 12:51:21 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 09 12:51:21 2012 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:\n  ext2/3/4: delete unneeded includes of module.h\n  ext{3,4}: Fix potential race when setversion ioctl updates inode\n  udf: Mark LVID buffer as uptodate before marking it dirty\n  ext3: Don\u0027t warn from writepage when readonly inode is spotted after error\n  jbd: Remove j_barrier mutex\n  reiserfs: Force inode evictions before umount to avoid crash\n  reiserfs: Fix quota mount option parsing\n  udf: Treat symlink component of type 2 as /\n  udf: Fix deadlock when converting file from in-ICB one to normal one\n  udf: Cleanup calling convention of inode_getblk()\n  ext2: Fix error handling on inode bitmap corruption\n  ext3: Fix error handling on inode bitmap corruption\n  ext3: replace ll_rw_block with other functions\n  ext3: NULL dereference in ext3_evict_inode()\n  jbd: clear revoked flag on buffers before a new transaction started\n  ext3: call ext3_mark_recovery_complete() when recovery is really needed\n"
    },
    {
      "commit": "a9e36da655e54545c3289b2a0700b5c443de0edd",
      "tree": "14143a3c873177b70b8b66d6f8085378a2c92908",
      "parents": [
        "a06d789b424190e9f59da391681f908486db2554"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Wed Dec 21 21:18:43 2011 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jan 09 13:52:09 2012 +0100"
      },
      "message": "reiserfs: Force inode evictions before umount to avoid crash\n\nThis patch fixes a crash in reiserfs_delete_xattrs during umount.\n\nWhen shrink_dcache_for_umount clears the dcache from\ngeneric_shutdown_super, delayed evictions are forced to disk. If an\nevicted inode has extended attributes associated with it, it will\nneed to walk the xattr tree to locate and remove them.\n\nBut since shrink_dcache_for_umount will BUG if it encounters active\ndentries, the xattr tree must be released before it\u0027s called or it will\ncrash during every umount.\n\nThis patch forces the evictions to occur before generic_shutdown_super\nby calling shrink_dcache_sb first. The additional evictions caused\nby the removal of each associated xattr file and dir will be automatically\nhandled as they\u0027re added to the LRU list.\n\nCC: reiserfs-devel@vger.kernel.org\nCC: stable@kernel.org\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "a06d789b424190e9f59da391681f908486db2554",
      "tree": "540274351d80680a8fab0325c440dab52170aaae",
      "parents": [
        "fef2e9f3301934773e4f1b3cc5c7bffb119346b8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Dec 21 17:35:34 2011 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jan 09 13:52:09 2012 +0100"
      },
      "message": "reiserfs: Fix quota mount option parsing\n\nWhen jqfmt mount option is not specified on remount, we mistakenly clear\ns_jquota_fmt value stored in superblock. Fix the problem.\n\nCC: stable@kernel.org\nCC: reiserfs-devel@vger.kernel.org\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "c3aa077648e147783a7a53b409578234647db853",
      "tree": "6ad21f0a005080a1a89bcd736454bc32f0cffab4",
      "parents": [
        "8e8b87964bc8dc5c14b6543fc933b7725f07d3ac"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Dec 21 20:17:10 2011 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 06 23:20:13 2012 -0500"
      },
      "message": "reiserfs: Properly display mount options in /proc/mounts\n\nMake reiserfs properly display mount options in /proc/mounts.\n\nCC: reiserfs-devel@vger.kernel.org\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d8c9584ea2a92879f471fd3a2be3af6c534fb035",
      "tree": "3541b9c6228f820bdc65e4875156eb27b1c91cb1",
      "parents": [
        "ece2ccb668046610189d88d6aaf05aeb09c988a1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 07 18:16:57 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 06 23:16:53 2012 -0500"
      },
      "message": "vfs: prefer -\u003edentry-\u003ed_sb to -\u003emnt-\u003emnt_sb\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8e0718924e7d7eaf6104e54aeaeda477570e1e06",
      "tree": "d3ba947bb403112679a0d0a58c7648b9be5ba715",
      "parents": [
        "576b1d67ce949e7542ff765b00eb5357e706768b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 02:50:53 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:55:00 2012 -0500"
      },
      "message": "reiserfs: propagate umode_t\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1a67aafb5f72a436ca044293309fa7e6351d6a35",
      "tree": "d9e58600148de9d41b478cf815773b746647d15b",
      "parents": [
        "4acdaf27ebe2034c342f3be57ef49aed1ad885ef"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 26 01:52:52 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:54:54 2012 -0500"
      },
      "message": "switch -\u003emknod() to 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": "6b520e0565422966cdf1c3759bd73df77b0f248c",
      "tree": "f63a26afa7342eb59b125271b16e30a219b59094",
      "parents": [
        "2a79f17e4a641a2f463cb512cb0ec349844a147b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 12 15:51:45 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:52:40 2012 -0500"
      },
      "message": "vfs: fix the stupidity with i_dentry in inode destructors\n\nSeeing that just about every destructor got that INIT_LIST_HEAD() copied into\nit, there is no point whatsoever keeping this INIT_LIST_HEAD in inode_init_once();\nthe cost of taking it into inode_init_always() will be negligible for pipes\nand sockets and negative for everything else.  Not to mention the removal of\nboilerplate code from -\u003edestroy_inode() instances...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2a79f17e4a641a2f463cb512cb0ec349844a147b",
      "tree": "8801127310d0a3492941bb284e83393844a19685",
      "parents": [
        "8c9379e972e984d11c2b99121847ba9fa7a0c56c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 09 08:06:57 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:52:40 2012 -0500"
      },
      "message": "vfs: mnt_drop_write_file()\n\nnew helper (wrapper around mnt_drop_write()) to be used in pair with\nmnt_want_write_file().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a561be7100cd610bd2e082f3211c1dfb45835817",
      "tree": "a1016a11df967be6f289a4e8ae29597ba39df17e",
      "parents": [
        "f47ec3f28354795f000c14bf18ed967ec81a3ec3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 23 11:57:51 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 03 22:52:35 2012 -0500"
      },
      "message": "switch a bunch of places to mnt_want_write_file()\n\nit\u0027s both faster (in case when file has been opened for write) and cleaner.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bfe8684869601dacfcb2cd69ef8cfd9045f62170",
      "tree": "4e213aaa766b26f43f0f9ec7998a7745239d9377",
      "parents": [
        "6d6b77f163c7eabedbba00ed2abb7d4a570bff76"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Oct 28 14:13:29 2011 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@serles.lst.de",
        "time": "Wed Nov 02 12:53:43 2011 +0100"
      },
      "message": "filesystems: add set_nlink()\n\nReplace remaining direct i_nlink updates with a new set_nlink()\nupdater function.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nTested-by: Toshiyuki Okajima \u003ctoshi.okajima@jp.fujitsu.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "6d6b77f163c7eabedbba00ed2abb7d4a570bff76",
      "tree": "6ce074a7dd5a25fae28ef9de6f59ddee08ea4e61",
      "parents": [
        "dd2a981f46a0903a8770a784f213d4d40bbb6f19"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Oct 28 14:13:28 2011 +0200"
      },
      "committer": {
        "name": "Christoph Hellwig",
        "email": "hch@serles.lst.de",
        "time": "Wed Nov 02 12:53:43 2011 +0100"
      },
      "message": "filesystems: add missing nlink wrappers\n\nReplace direct i_nlink updates with the respective updater function\n(inc_nlink, drop_nlink, clear_nlink, inode_dec_link_count).\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "59e52534172d845ebffb0d7e85fc56fb7b857051",
      "tree": "49552e03f1bdb413cd8b5f7542e91770688d7047",
      "parents": [
        "73692d9bb58ecc2fa73f4b2bfcf6eadaa6d49a26",
        "0d89e54c8249645404283436d952afc261a04e1e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 12:11:02 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 12:11:02 2011 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (59 commits)\n  MAINTAINERS: linux-m32r is moderated for non-subscribers\n  linux@lists.openrisc.net is moderated for non-subscribers\n  Drop default from \"DM365 codec select\" choice\n  parisc: Kconfig: cleanup Kernel page size default\n  Kconfig: remove redundant CONFIG_ prefix on two symbols\n  cris: remove arch/cris/arch-v32/lib/nand_init.S\n  microblaze: add missing CONFIG_ prefixes\n  h8300: drop puzzling Kconfig dependencies\n  MAINTAINERS: microblaze-uclinux@itee.uq.edu.au is moderated for non-subscribers\n  tty: drop superfluous dependency in Kconfig\n  ARM: mxc: fix Kconfig typo \u0027i.MX51\u0027\n  Fix file references in Kconfig files\n  aic7xxx: fix Kconfig references to READMEs\n  Fix file references in drivers/ide/\n  thinkpad_acpi: Fix printk typo \u0027bluestooth\u0027\n  bcmring: drop commented out line in Kconfig\n  btmrvl_sdio: fix typo \u0027btmrvl_sdio_sd6888\u0027\n  doc: raw1394: Trivial typo fix\n  CIFS: Don\u0027t free volume_info-\u003eUNC until we are entirely done with it.\n  treewide: Correct spelling of successfully in comments\n  ...\n"
    },
    {
      "commit": "e060c38434b2caa78efe7cedaff4191040b65a15",
      "tree": "407361230bf6733f63d8e788e4b5e6566ee04818",
      "parents": [
        "10e4ac572eeffe5317019bd7330b6058a400dfc2",
        "cc39c6a9bbdebfcf1a7dee64d83bf302bc38d941"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Sep 15 15:08:05 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Sep 15 15:08:18 2011 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nFast-forward merge with Linus to be able to merge patches\nbased on more recent version of the tree.\n"
    },
    {
      "commit": "558feb0818374d657fbc1ea03776ee20f204b3a6",
      "tree": "9c063b50ef953405850422ca740dda3093ef6387",
      "parents": [
        "1ac4594d88f63ba1557cc1a30ec1f915ca55b7cb"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sat May 28 10:36:33 2011 -0700"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Sep 15 13:56:28 2011 +0200"
      },
      "message": "fs: Convert vmalloc/memset to vzalloc\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Alex Elder \u003caelder@sgi.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "5a2f3a02aea164f4f59c0c3497772090a411b462",
      "tree": "d3ebe03d4f97575290087843960baa01de3acd0a",
      "parents": [
        "1d568ab068c021672d6cd7f50f92a3695a921ffb",
        "817b54aa45db03437c6d09a7693fc6926eb8e822"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Aug 09 10:31:03 2011 +1000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Aug 09 10:31:03 2011 +1000"
      },
      "message": "Merge branch \u0027next-evm\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/ima-2.6 into next\n\nConflicts:\n\tfs/attr.c\n\nResolve conflict manually.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "d6952123b53cc8b334df69bba2cd0063b0d88f68",
      "tree": "b1ccaa7e3d65dbf4af093202044da65bc4deb34e",
      "parents": [
        "d3fb612076eebec6f67257db0c7a9666ac7e5892"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 18:56:36 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 01 02:10:06 2011 -0400"
      },
      "message": "switch posix_acl_equiv_mode() to umode_t *\n\n... so that \u0026inode-\u003ei_mode could be passed to it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d3fb612076eebec6f67257db0c7a9666ac7e5892",
      "tree": "5265fca258a74ffa75b845998492abb9446db72c",
      "parents": [
        "782b94cdf577b4df1feb376f372dccc28e66a771"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 18:37:50 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 01 02:09:42 2011 -0400"
      },
      "message": "switch posix_acl_create() to umode_t *\n\nso we can pass \u0026inode-\u003ei_mode to it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "45b583b10a8b438b970e95a7d1d4db22c9e35004",
      "tree": "14fa481598289df0459580c582b48a9d95db51f6",
      "parents": [
        "154dd78d30b56ffb8b447f629bfcceb14150e5c4",
        "f19da2ce8ef5e49b8b8ea199c3601dd45d71b262"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 21:00:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 21:00:19 2011 -0700"
      },
      "message": "Merge \u0027akpm\u0027 patch series\n\n* Merge akpm patch series: (122 commits)\n  drivers/connector/cn_proc.c: remove unused local\n  Documentation/SubmitChecklist: add RCU debug config options\n  reiserfs: use hweight_long()\n  reiserfs: use proper little-endian bitops\n  pnpacpi: register disabled resources\n  drivers/rtc/rtc-tegra.c: properly initialize spinlock\n  drivers/rtc/rtc-twl.c: check return value of twl_rtc_write_u8() in twl_rtc_set_time()\n  drivers/rtc: add support for Qualcomm PMIC8xxx RTC\n  drivers/rtc/rtc-s3c.c: support clock gating\n  drivers/rtc/rtc-mpc5121.c: add support for RTC on MPC5200\n  init: skip calibration delay if previously done\n  misc/eeprom: add eeprom access driver for digsy_mtc board\n  misc/eeprom: add driver for microwire 93xx46 EEPROMs\n  checkpatch.pl: update $logFunctions\n  checkpatch: make utf-8 test --strict\n  checkpatch.pl: add ability to ignore various messages\n  checkpatch: add a \"prefer __aligned\" check\n  checkpatch: validate signature styles and To: and Cc: lines\n  checkpatch: add __rcu as a sparse modifier\n  checkpatch: suggest using min_t or max_t\n  ...\n\nDid this as a merge because of (trivial) conflicts in\n - Documentation/feature-removal-schedule.txt\n - arch/xtensa/include/asm/uaccess.h\nthat were just easier to fix up in the merge than in the patch series.\n"
    },
    {
      "commit": "9d6bf5aa177ee7ffdcee2a590ef8a1bf9e8ade87",
      "tree": "563a7b08688ba07ebdbdfc5e1d13ab89e2ed8062",
      "parents": [
        "0c2fd1bfb155947a821fdaeb3c46aa1cfa20ad64"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 25 17:13:38 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "reiserfs: use hweight_long()\n\nUse hweight_long() to count free bits in the bitmap.\n\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": "0c2fd1bfb155947a821fdaeb3c46aa1cfa20ad64",
      "tree": "2826372d34e387dad42dffefb96658ed2d9e28f9",
      "parents": [
        "29df8d8f8702f0f53c1375015f09f04bc8d023c1"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 25 17:13:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "reiserfs: use proper little-endian bitops\n\nUsing __test_and_{set,clear}_bit_le() with ignoring its return value can\nbe replaced with __{set,clear}_bit_le().\n\nThis introduces reiserfs_{set,clear}_le_bit for __{set,clear}_bit_le and\ndoes the above change with them.\n\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": "0003230e8200699860f0b10af524dc47bf8aecad",
      "tree": "8addb0c889b32111d6973c46cd3d0a5b5c17606c",
      "parents": [
        "4b478cedcdc1b2d131170f22bd3f916e53472f52",
        "4e34e719e457f2e031297175410fc0bd4016a085"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 12:53:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 12:53:15 2011 -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  fs: take the ACL checks to common code\n  bury posix_acl_..._masq() variants\n  kill boilerplates around posix_acl_create_masq()\n  generic_acl: no need to clone acl just to push it to set_cached_acl()\n  kill boilerplate around posix_acl_chmod_masq()\n  reiserfs: cache negative ACLs for v1 stat format\n  xfs: cache negative ACLs if there is no attribute fork\n  9p: do no return 0 from -\u003echeck_acl without actually checking\n  vfs: move ACL cache lookup into generic code\n  CIFS: Fix oops while mounting with prefixpath\n  xfs: Fix wrong return value of xfs_file_aio_write\n  fix devtmpfs race\n  caam: don\u0027t pass bogus S_IFCHR to debugfs_create_...()\n  get rid of create_proc_entry() abuses - proc_mkdir() is there for purpose\n  asus-wmi: -\u003eis_visible() can\u0027t return negative\n  fix jffs2 ACLs on big-endian with 16bit mode_t\n  9p: close ACL leaks\n  ocfs2_init_acl(): fix a leak\n  VFS : mount lock scalability for internal mounts\n"
    },
    {
      "commit": "4e34e719e457f2e031297175410fc0bd4016a085",
      "tree": "ab969a371e0d2efc6bfbf503ca6cdfce3af3bf6c",
      "parents": [
        "edde854e8bb34a7f32fa993d721f1da0faf64165"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Jul 23 17:37:31 2011 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:30:23 2011 -0400"
      },
      "message": "fs: take the ACL checks to common code\n\nReplace the -\u003echeck_acl method with a -\u003eget_acl method that simply reads an\nACL from disk after having a cache miss.  This means we can replace the ACL\nchecking boilerplate code with a single implementation in namei.c.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "826cae2f2b4d726b925f43bc208a571639da4761",
      "tree": "b7f83eecf3bde8c4e455d89c7c535988b3e8bd59",
      "parents": [
        "95203befa8887997f14077d8557e67d78457ee02"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 03:10:32 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:27:32 2011 -0400"
      },
      "message": "kill boilerplates around posix_acl_create_masq()\n\nnew helper: posix_acl_create(\u0026acl, gfp, mode_p).  Replaces acl with\nmodified clone, on failure releases acl and replaces with NULL.\nReturns 0 or -ve on error.  All callers of posix_acl_create_masq()\nswitched.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bc26ab5f65ae41b71df86ea46df3c3833d1d8d83",
      "tree": "85bbc4e0da4fac99ccf31b3609c61e2b148a8498",
      "parents": [
        "4482a087d4c5a6ffbc385c56b4a4e2f694d9fd5d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 23 00:18:02 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:27:30 2011 -0400"
      },
      "message": "kill boilerplate around posix_acl_chmod_masq()\n\nnew helper: posix_acl_chmod(\u0026acl, gfp, mode).  Replaces acl with modified\nclone or with NULL if that has failed; returns 0 or -ve on error.  All\ncallers of posix_acl_chmod_masq() switched to that - they\u0027d been doing\nexactly the same thing.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4482a087d4c5a6ffbc385c56b4a4e2f694d9fd5d",
      "tree": "10ca7beda590618be3c695720e04582c63a03822",
      "parents": [
        "6311b10800a4bdc3f2c85d01fb113cf49bb83770"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Jul 23 17:37:03 2011 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jul 25 14:25:38 2011 -0400"
      },
      "message": "reiserfs: cache negative ACLs for v1 stat format\n\nAlways set up a negative ACL cache entry if the inode can\u0027t have ACLs.\nThat behaves much better than doing this check inside -\u003echeck_acl.\n\nAlso remove the left over MAY_NOT_BLOCK check.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "096a705bbc080a4041636d07514560da8d78acbe",
      "tree": "38c3c01225709ffa53419083ea6332f8a72610de",
      "parents": [
        "fea80311a939a746533a6d7e7c3183729d6a3faf",
        "5757a6d76cdf6dda2a492c09b985c015e86779b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 10:33:36 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 10:33:36 2011 -0700"
      },
      "message": "Merge branch \u0027for-3.1/core\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-3.1/core\u0027 of git://git.kernel.dk/linux-block: (24 commits)\n  block: strict rq_affinity\n  backing-dev: use synchronize_rcu_expedited instead of synchronize_rcu\n  block: fix patch import error in max_discard_sectors check\n  block: reorder request_queue to remove 64 bit alignment padding\n  CFQ: add think time check for group\n  CFQ: add think time check for service tree\n  CFQ: move think time check variables to a separate struct\n  fixlet: Remove fs_excl from struct task.\n  cfq: Remove special treatment for metadata rqs.\n  block: document blk_plug list access\n  block: avoid building too big plug list\n  compat_ioctl: fix make headers_check regression\n  block: eliminate potential for infinite loop in blkdev_issue_discard\n  compat_ioctl: fix warning caused by qemu\n  block: flush MEDIA_CHANGE from drivers on close(2)\n  blk-throttle: Make total_nr_queued unsigned\n  block: Add __attribute__((format(printf...) and fix fallout\n  fs/partitions/check.c: make local symbols static\n  block:remove some spare spaces in genhd.c\n  block:fix the comment error in blkdev.h\n  ...\n"
    },
    {
      "commit": "02c24a82187d5a628c68edfe71ae60dc135cd178",
      "tree": "c8dbaba4d82e2b20ed4335910a564a1f7d90fcf6",
      "parents": [
        "22735068d53c7115e384bc88dea95b17e76a6839"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Sat Jul 16 20:44:56 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 20:47:59 2011 -0400"
      },
      "message": "fs: push i_mutex and filemap_write_and_wait down into -\u003efsync() handlers\n\nBtrfs needs to be able to control how filemap_write_and_wait_range() is called\nin fsync to make it less of a painful operation, so push down taking i_mutex and\nthe calling of filemap_write_and_wait() down into the -\u003efsync() handlers.  Some\nfile systems can drop taking the i_mutex altogether it seems, like ext3 and\nocfs2.  For correctness sake I just pushed everything down in all cases to make\nsure that we keep the current behavior the same for everybody, and then each\nindividual fs maintainer can make up their mind about what to do from there.\nThanks,\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b4d5b10fb2e3a4327838c07d8ebd9e350fcc133d",
      "tree": "e267e9e3fe8d56718ff43ef1fb50b24d8fea9f21",
      "parents": [
        "00eacd66cd8ab5fff9df49aa3f261ad43d495434"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sat Jul 16 16:47:00 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 20:47:55 2011 -0400"
      },
      "message": "reiserfs: make reiserfs default to barrier\u003dflush\n\nChange the default reiserfs mount option to barrier\u003dflush.  Based on a patch\nfrom Jeff Mahoney in the SuSE tree.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "aacfc19c626ebd3daa675652457d71019a1f583f",
      "tree": "9c1cfb5945e939f1ba56b4c0101c211e84e544c0",
      "parents": [
        "df2d6f26586f12a24f3ae5df4e236dc5c08d6eb4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jun 24 14:29:47 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 20:47:49 2011 -0400"
      },
      "message": "fs: simplify the blockdev_direct_IO prototype\n\nSimple filesystems always pass inode-\u003ei_sb_bdev as the block device\nargument, and never need a end_io handler.  Let\u0027s simply things for\nthem and for my grepping activity by dropping these arguments.  The\nonly thing not falling into that scheme is ext4, which passes and\nend_io handler without needing special flags (yet), but given how\nmessy the direct I/O code there is use of __blockdev_direct_IO\nin one instead of two out of three cases isn\u0027t going to make a large\ndifference anyway.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "562c72aa57c36b178eacc3500a0215651eca9429",
      "tree": "2c522c53ab26fc72e85e08747a08e3dca1207c87",
      "parents": [
        "11b80f459adaf91a712f95e7734a17655a36bf30"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jun 24 14:29:45 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 20:47:47 2011 -0400"
      },
      "message": "fs: move inode_dio_wait calls into -\u003esetattr\n\nLet filesystems handle waiting for direct I/O requests themselves instead\nof doing it beforehand.  This means filesystem-specific locks to prevent\nnew dio referenes from appearing can be held.  This is important to allow\ngeneralizing i_dio_count to non-DIO_LOCKING filesystems.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bd5fe6c5eb9c548d7f07fe8f89a150bb6705e8e3",
      "tree": "ef5341c7747f809aec7ae233f6e3ef90af39be5f",
      "parents": [
        "f9b5570d7fdedff32a2e78102bfb54cd1b12b289"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri Jun 24 14:29:43 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 20:47:46 2011 -0400"
      },
      "message": "fs: kill i_alloc_sem\n\ni_alloc_sem is a rather special rw_semaphore.  It\u0027s the last one that may\nbe released by a non-owner, and it\u0027s write side is always mirrored by\nreal exclusion.  It\u0027s intended use it to wait for all pending direct I/O\nrequests to finish before starting a truncate.\n\nReplace it with a hand-grown construct:\n\n - exclusion for truncates is already guaranteed by i_mutex, so it can\n   simply fall way\n - the reader side is replaced by an i_dio_count member in struct inode\n   that counts the number of pending direct I/O requests.  Truncate can\u0027t\n   proceed as long as it\u0027s non-zero\n - when i_dio_count reaches non-zero we wake up a pending truncate using\n   wake_up_bit on a new bit in i_flags\n - new references to i_dio_count can\u0027t appear while we are waiting for\n   it to read zero because the direct I/O count always needs i_mutex\n   (or an equivalent like XFS\u0027s i_iolock) for starting a new operation.\n\nThis scheme is much simpler, and saves the space of a spinlock_t and a\nstruct list_head in struct inode (typically 160 bits on a non-debug 64-bit\nsystem).\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "10556cb21a0d0b24d95f00ea6df16f599a3345b2",
      "tree": "3d7d8dfba807805a55c154f1850717bf3b49f343",
      "parents": [
        "2830ba7f34ebb27c4e5b8b6ef408cd6d74860890"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 19:28:19 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:24 2011 -0400"
      },
      "message": "-\u003epermission() sanitizing: don\u0027t pass flags to -\u003epermission()\n\nnot used by the instances anymore.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2830ba7f34ebb27c4e5b8b6ef408cd6d74860890",
      "tree": "bbcebc14bffd000f1dfcbf37e64f56d2f49581ac",
      "parents": [
        "7e40145eb111a5192e6d819f764db9d6828d1abb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 19:16:29 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:22 2011 -0400"
      },
      "message": "-\u003epermission() sanitizing: don\u0027t pass flags to generic_permission()\n\nredundant; all callers get it duplicated in mask \u0026 MAY_NOT_BLOCK and none of\nthem removes that bit.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7e40145eb111a5192e6d819f764db9d6828d1abb",
      "tree": "3249952a751de12465e8d66c63328445e9242f3a",
      "parents": [
        "9c2c703929e4c41210cfa6e3f599514421bab8dc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 19:12:17 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:21 2011 -0400"
      },
      "message": "-\u003epermission() sanitizing: don\u0027t pass flags to -\u003echeck_acl()\n\nnot used in the instances anymore.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9c2c703929e4c41210cfa6e3f599514421bab8dc",
      "tree": "2086738f22755ad18ba18ab2ee0f2b23d651da60",
      "parents": [
        "1fc0f78ca9f311c6277e2f1b7655bb4d43ceb311"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 19:06:22 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:19 2011 -0400"
      },
      "message": "-\u003epermission() sanitizing: pass MAY_NOT_BLOCK to -\u003echeck_acl()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "178ea73521d64ba41d7aa5488fb9f549c6d4507d",
      "tree": "7fb6bfb6483577752e307a5bb2e3905658d44294",
      "parents": [
        "07b8ce1ee87d291ff564c02cf878fae973317a52"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 11:31:30 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 20 01:43:16 2011 -0400"
      },
      "message": "kill check_acl callback of generic_permission()\n\nits value depends only on inode and does not change; we might as\nwell store it in -\u003ei_op-\u003echeck_acl and be done with that.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9d8f13ba3f4833219e50767b022b82cd0da930eb",
      "tree": "3ba2367380d009111ea17696162a62320c88d144",
      "parents": [
        "0f2a55d5bb2372058275b0b343d90dd5d640d045"
      ],
      "author": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Mon Jun 06 15:29:25 2011 -0400"
      },
      "committer": {
        "name": "Mimi Zohar",
        "email": "zohar@linux.vnet.ibm.com",
        "time": "Mon Jul 18 12:29:38 2011 -0400"
      },
      "message": "security: new security_inode_init_security API adds function callback\n\nThis patch changes the security_inode_init_security API by adding a\nfilesystem specific callback to write security extended attributes.\nThis change is in preparation for supporting the initialization of\nmultiple LSM xattrs and the EVM xattr.  Initially the callback function\nwalks an array of xattrs, writing each xattr separately, but could be\noptimized to write multiple xattrs at once.\n\nFor existing security_inode_init_security() calls, which have not yet\nbeen converted to use the new callback function, such as those in\nreiserfs and ocfs2, this patch defines security_old_inode_init_security().\n\nSigned-off-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\n"
    },
    {
      "commit": "4aede84b33d6beb401136a3deca0651ae07c5e99",
      "tree": "831266dbb15227584da5011ae4bb1e5038a69677",
      "parents": [
        "a07405b7802691d29ab3b23bdc76ee6d006aad0b"
      ],
      "author": {
        "name": "Justin TerAvest",
        "email": "teravest@google.com",
        "time": "Tue Jul 12 08:31:45 2011 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Jul 12 08:35:10 2011 +0200"
      },
      "message": "fixlet: Remove fs_excl from struct task.\n\nfs_excl is a poor man\u0027s priority inheritance for filesystems to hint to\nthe block layer that an operation is important. It was never clearly\nspecified, not widely adopted, and will not prevent starvation in many\ncases (like across cgroups).\n\nfs_excl was introduced with the time sliced CFQ IO scheduler, to\nindicate when a process held FS exclusive resources and thus needed\na boost.\n\nIt doesn\u0027t cover all file systems, and it was never fully complete.\nLets kill it.\n\nSigned-off-by: Justin TerAvest \u003cteravest@google.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "1d29b5a2ed7eb8862c9b66daf475f3e4c1a40299",
      "tree": "3829dfe2e49732bd3db1b6232ff71d8e7a32c5ea",
      "parents": [
        "cf1279111686d9742cbc4145bc9d526c83f59fea"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jun 18 20:37:33 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 20 10:45:21 2011 -0400"
      },
      "message": "reiserfs_permission() doesn\u0027t need to bail out in RCU mode\n\nnothing blocking other than generic_permission() (and\ncheck_acl callback does bail out in RCU mode).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "cc350c2764a657ee012efd5bd260a6cd5be2f877",
      "tree": "1360aeab2ec2fbb71e80804df2f11f57b6bfb025",
      "parents": [
        "87161faae26503a8ebe1be5ba72073ae860dbfc7"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Fri May 27 13:42:02 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 28 01:02:51 2011 -0400"
      },
      "message": "reiserfs: remove unnecessary dentry_unhash from rmdir, dir rename\n\nReiserfs does not have problems with references to unlinked directories.\n\nCC: reiserfs-devel@vger.kernel.org\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "aa38572954ade525817fe88c54faebf85e5a61c0",
      "tree": "ef398ec06c97134592f62a49c99f3f80041b427c",
      "parents": [
        "d6e9bd256c88ce5f4b668249e363a74f51393daa"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Fri May 27 06:53:02 2011 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 27 07:04:40 2011 -0400"
      },
      "message": "fs: pass exact type of data dirties to -\u003edirty_inode\n\nTell the filesystem if we just updated timestamp (I_DIRTY_SYNC) or\nanything else, so that the filesystem can track internally if it\nneeds to push out a transaction for fdatasync or not.\n\nThis is just the prototype change with no user for it yet.  I plan\nto push large XFS changes for the next merge window, and getting\nthis trivial infrastructure in this window would help a lot to avoid\ntree interdependencies.\n\nAlso remove incorrect comments that -\u003edirty_inode can\u0027t block.  That\nhas been changed a long time ago, and many implementations rely on it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\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": "64252c75a2196a0cf1e0d3777143ecfe0e3ae650",
      "tree": "8534f12a507ef5aee91e302f3e54cf8a4440fc82",
      "parents": [
        "48293699a09324d2e3c66bd53d10eed6d67937a0"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue May 24 13:06:05 2011 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 26 07:26:46 2011 -0400"
      },
      "message": "vfs: remove dget() from dentry_unhash()\n\nThis serves no useful purpose that I can discern.  All callers (rename,\nrmdir) hold their own reference to the dentry.\n\nA quick audit of all file systems showed no relevant checks on the value\nof d_count in vfs_rmdir/vfs_rename_dir paths.\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\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": "2e1496707560ecf98e9b0604622c0990f94861d3",
      "tree": "d1473b70fad31a903fedc87221680678a6c6c5f6",
      "parents": [
        "e795b71799ff0b27365020c9ddaa25d0d83f99c8"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serge@hallyn.com",
        "time": "Wed Mar 23 16:43:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:47:13 2011 -0700"
      },
      "message": "userns: rename is_owner_or_cap to inode_owner_or_capable\n\nAnd give it a kernel-doc comment.\n\n[akpm@linux-foundation.org: btrfs changed in linux-next]\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a44f99c7efdb88fa41128065c9a9445c19894e34",
      "tree": "9d9dc6026b2c0409eca05e360c98b8a688ccdb1e",
      "parents": [
        "b87a2d3e3147bd140da2eae584772c353d11421b",
        "22942c00a6ad6e9e93b53811a6de72c821c15d22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 20 18:14:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 20 18:14:55 2011 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (25 commits)\n  video: change to new flag variable\n  scsi: change to new flag variable\n  rtc: change to new flag variable\n  rapidio: change to new flag variable\n  pps: change to new flag variable\n  net: change to new flag variable\n  misc: change to new flag variable\n  message: change to new flag variable\n  memstick: change to new flag variable\n  isdn: change to new flag variable\n  ieee802154: change to new flag variable\n  ide: change to new flag variable\n  hwmon: change to new flag variable\n  dma: change to new flag variable\n  char: change to new flag variable\n  fs: change to new flag variable\n  xtensa: change to new flag variable\n  um: change to new flag variables\n  s390: change to new flag variable\n  mips: change to new flag variable\n  ...\n\nFix up trivial conflict in drivers/hwmon/Makefile\n"
    },
    {
      "commit": "0ccd234ca04b09a156f8771af316ac9de2fa7312",
      "tree": "b4b990acd2bca0c755b630e7ffe4a7bf08cd4882",
      "parents": [
        "3996eabbab5597d27d5140e1d8f9e3f1145f8b40"
      ],
      "author": {
        "name": "matt mooney",
        "email": "mfm@muteddisk.com",
        "time": "Fri Jan 14 06:12:35 2011 -0800"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Thu Mar 17 14:02:57 2011 +0100"
      },
      "message": "fs: change to new flag variable\n\nReplace EXTRA_CFLAGS with ccflags-y. And change ntfs-objs to ntfs-y\nfor cleaner conditional inclusion.\n\nSigned-off-by: matt mooney \u003cmfm@muteddisk.com\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "0f6e0e8448a16d8d22119ce91d8dd24b44865b51",
      "tree": "7c295c02db035fc6a0b867465911a2bc9dc6b1ef",
      "parents": [
        "0d2ecee2bdb2a19d04bc5cefac0f86e790f1aad4",
        "a002951c97ff8da49938c982a4c236bf2fafdc9f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 09:15:43 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 09:15:43 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (33 commits)\n  AppArmor: kill unused macros in lsm.c\n  AppArmor: cleanup generated files correctly\n  KEYS: Add an iovec version of KEYCTL_INSTANTIATE\n  KEYS: Add a new keyctl op to reject a key with a specified error code\n  KEYS: Add a key type op to permit the key description to be vetted\n  KEYS: Add an RCU payload dereference macro\n  AppArmor: Cleanup make file to remove cruft and make it easier to read\n  SELinux: implement the new sb_remount LSM hook\n  LSM: Pass -o remount options to the LSM\n  SELinux: Compute SID for the newly created socket\n  SELinux: Socket retains creator role and MLS attribute\n  SELinux: Auto-generate security_is_socket_class\n  TOMOYO: Fix memory leak upon file open.\n  Revert \"selinux: simplify ioctl checking\"\n  selinux: drop unused packet flow permissions\n  selinux: Fix packet forwarding checks on postrouting\n  selinux: Fix wrong checks for selinux_policycap_netpeer\n  selinux: Fix check for xfrm selinux context algorithm\n  ima: remove unnecessary call to ima_must_measure\n  IMA: remove IMA imbalance checking\n  ...\n"
    },
    {
      "commit": "bd2895eeade5f11f3e5906283c630bbdb4b57454",
      "tree": "4d98f4fcd80c7d062afce28823d08aee53e66f82",
      "parents": [
        "016aa2ed1cc9cf704cf76d8df07751b6daa9750f",
        "24d51add7438f9696a7205927bf9de3c5c787a58"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 08:20:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 08:20:19 2011 -0700"
      },
      "message": "Merge branch \u0027for-2.6.39\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-2.6.39\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: fix build failure introduced by s/freezeable/freezable/\n  workqueue: add system_freezeable_wq\n  rds/ib: use system_wq instead of rds_ib_fmr_wq\n  net/9p: replace p9_poll_task with a work\n  net/9p: use system_wq instead of p9_mux_wq\n  xfs: convert to alloc_workqueue()\n  reiserfs: make commit_wq use the default concurrency level\n  ocfs2: use system_wq instead of ocfs2_quota_wq\n  ext4: convert to alloc_workqueue()\n  scsi/scsi_tgt_lib: scsi_tgtd isn\u0027t used in memory reclaim path\n  scsi/be2iscsi,qla2xxx: convert to alloc_workqueue()\n  misc/iwmc3200top: use system_wq instead of dedicated workqueues\n  i2o: use alloc_workqueue() instead of create_workqueue()\n  acpi: kacpi*_wq don\u0027t need WQ_MEM_RECLAIM\n  fs/aio: aio_wq isn\u0027t used in memory reclaim path\n  input/tps6507x-ts: use system_wq instead of dedicated workqueue\n  cpufreq: use system_wq instead of dedicated workqueues\n  wireless/ipw2x00: use system_wq instead of dedicated workqueues\n  arm/omap: use system_wq in mailbox\n  workqueue: use WQ_MEM_RECLAIM instead of WQ_RESCUER\n"
    },
    {
      "commit": "a002951c97ff8da49938c982a4c236bf2fafdc9f",
      "tree": "d43e7885ea7376df0a47a0fc8ceca66dc5bfa357",
      "parents": [
        "521cb40b0c44418a4fd36dc633f575813d59a43d",
        "c151694b2c48d956ac8c8c59c6927f89cc29ef70"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 16 09:41:17 2011 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Mar 16 09:41:17 2011 +1100"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "f17b6042073e7000a90063f7edbca59a5bd1caa2",
      "tree": "e893485df882c770da602030c6c1098b11ea3d56",
      "parents": [
        "aae8a97d3ec30788790d1720b71d76fd8eb44b73"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Jan 29 18:43:30 2011 +0530"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 15 02:21:44 2011 -0400"
      },
      "message": "fs: Remove i_nlink check from file system link callback\n\nNow that VFS check for inode-\u003ei_nlink \u003d\u003d 0 and returns proper\nerror, remove similar check from file system\n\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5fe0c2378884e68beb532f5890cc0e3539ac747b",
      "tree": "be25414052184e146049ea6466854366559d5528",
      "parents": [
        "c8b91accfa1059d5565443193d89572eca2f5dd6"
      ],
      "author": {
        "name": "Aneesh Kumar K.V",
        "email": "aneesh.kumar@linux.vnet.ibm.com",
        "time": "Sat Jan 29 18:43:25 2011 +0530"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Mar 14 09:15:28 2011 -0400"
      },
      "message": "exportfs: Return the minimum required handle size\n\nThe exportfs encode handle function should return the minimum required\nhandle size. This helps user to find out the handle size by passing 0\nhandle size in the first step and then redoing to the call again with\nthe returned handle size value.\n\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c78f4cc5e7d642c7009089817c12d8984e7ba872",
      "tree": "15fec47edc3e047865e98b5f8c233b1d8d2e063a",
      "parents": [
        "ae50adcb0ac4cde67a7aec8ae67249d1b2be2948"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Feb 16 10:14:56 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Mar 10 03:42:01 2011 -0500"
      },
      "message": "reiserfs xattr -\u003ed_revalidate() shouldn\u0027t care about RCU\n\n... it returns an error unconditionally\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\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": "fe3fa43039d47ee4e22caf460b79b62a14937f79",
      "tree": "9eab8d00f1227b9fe0959f32a62d892ed35803ba",
      "parents": [
        "ee009e4a0d4555ed522a631bae9896399674f064",
        "026eb167ae77244458fa4b4b9fc171209c079ba7"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 08 11:38:10 2011 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 08 11:38:10 2011 +1100"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.infradead.org/users/eparis/selinux into next\n"
    },
    {
      "commit": "99890a3be1ee67346300f1e0a873006588760f2a",
      "tree": "a2d704543672fd5c36c95aee728cddaf2f2c26d5",
      "parents": [
        "babfe56046885749b6a90a3c4409219a1f16cf48"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 02 09:35:13 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Mar 03 01:28:40 2011 -0500"
      },
      "message": "fix reiserfs mkdir() breakage\n\nif directory has so many subdirectories that its link count is set\nto 1 (i.e. \"can\u0027t tell accurately\") and reiserfs_new_inode() fails,\nwe shouldn\u0027t decrement the parent\u0027s link count in cleanup path;\nthat\u0027s what DEC_DIR_INODE_NLINK() is for.  As it is, we end up\nwith parent suddenly getting zero i_nlink, with very unpleasant\neffects.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2a7dba391e5628ad665ce84ef9a6648da541ebab",
      "tree": "ba0722bd74d2c883dbda7ff721850bab411cac04",
      "parents": [
        "821404434f3324bf23f545050ff64055a149766e"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Feb 01 11:05:39 2011 -0500"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Feb 01 11:12:29 2011 -0500"
      },
      "message": "fs/vfs/security: pass last path component to LSM on inode creation\n\nSELinux would like to implement a new labeling behavior of newly created\ninodes.  We currently label new inodes based on the parent and the creating\nprocess.  This new behavior would also take into account the name of the\nnew object when deciding the new label.  This is not the (supposed) full path,\njust the last component of the path.\n\nThis is very useful because creating /etc/shadow is different than creating\n/etc/passwd but the kernel hooks are unable to differentiate these\noperations.  We currently require that userspace realize it is doing some\ndifficult operation like that and than userspace jumps through SELinux hoops\nto get things set up correctly.  This patch does not implement new\nbehavior, that is obviously contained in a seperate SELinux patch, but it\ndoes pass the needed name down to the correct LSM hook.  If no such name\nexists it is fine to pass NULL.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "28aadf51693f56c41326ebbc795318a49011b12d",
      "tree": "18fe5ba43f28495407d6a46d61203efb99b978f9",
      "parents": [
        "316873c958eee302952edcadb8dc72d6d3d19d3c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Feb 01 11:42:42 2011 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Feb 01 11:42:42 2011 +0100"
      },
      "message": "reiserfs: make commit_wq use the default concurrency level\n\nThe maximum number of concurrent work items queued on commit_wq is\nbound by the number of active journals.  Convert to alloc_workqueue()\nand use the default concurrency level so that they can be processed in\nparallel.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: reiserfs-devel@vger.kernel.org\n"
    },
    {
      "commit": "4843456c5c341eb57f80f9224362a22665d14107",
      "tree": "5656b405a8b1d2596e8eb748b953ee677a261e3c",
      "parents": [
        "2b1caf6ed7b888c95a1909d343799672731651a5",
        "f00c9e44ad1a9660fe8cd3ca15b6cd9497172eab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 07:33:37 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 21 07:33:37 2011 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6:\n  quota: Fix deadlock during path resolution\n"
    },
    {
      "commit": "275220f0fcff1adf28a717076e00f575edf05fda",
      "tree": "d249bccc80c64443dab211639050c4fb14332648",
      "parents": [
        "fe3c560b8a22cb28e54fe8950abef38e88d75831",
        "81c5e2ae33c4b19e53966b427e33646bf6811830"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 10:45:01 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 10:45:01 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38/core\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.38/core\u0027 of git://git.kernel.dk/linux-2.6-block: (43 commits)\n  block: ensure that completion error gets properly traced\n  blktrace: add missing probe argument to block_bio_complete\n  block cfq: don\u0027t use atomic_t for cfq_group\n  block cfq: don\u0027t use atomic_t for cfq_queue\n  block: trace event block fix unassigned field\n  block: add internal hd part table references\n  block: fix accounting bug on cross partition merges\n  kref: add kref_test_and_get\n  bio-integrity: mark kintegrityd_wq highpri and CPU intensive\n  block: make kblockd_workqueue smarter\n  Revert \"sd: implement sd_check_events()\"\n  block: Clean up exit_io_context() source code.\n  Fix compile warnings due to missing removal of a \u0027ret\u0027 variable\n  fs/block: type signature of major_to_index(int) to major_to_index(unsigned)\n  block: convert !IS_ERR(p) \u0026\u0026 p to !IS_ERR_NOR_NULL(p)\n  cfq-iosched: don\u0027t check cfqg in choose_service_tree()\n  fs/splice: Pull buf-\u003eops-\u003econfirm() from splice_from_pipe actors\n  cdrom: export cdrom_check_events()\n  sd: implement sd_check_events()\n  sr: implement sr_check_events()\n  ...\n"
    },
    {
      "commit": "566538a6cf5bec260324dc37b6820dacd8631452",
      "tree": "5f8e0a5821626ce340ed614498a1b8945716848b",
      "parents": [
        "e0e3d32bb40d28cf57a6a24e1e1d87ef03b913bd"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Wed Jan 12 17:00:27 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:15 2011 -0800"
      },
      "message": "reiserfs: make sure va_end() is always called after va_start().\n\nA call to va_start() must always be followed by a call to va_end() in the\nsame function.  In fs/reiserfs/prints.c::print_block() this is not always\nthe case.  If \u0027bh\u0027 is NULL we\u0027ll return without calling va_end().\n\nOne could add a call to va_end() before the \u0027return\u0027 statement, but it\u0027s\nnicer to just move the call to va_start() after the test for \u0027bh\u0027 being\nNULL.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nAcked-by: Edward Shishkin \u003cedward.shishkin@gmail.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f00c9e44ad1a9660fe8cd3ca15b6cd9497172eab",
      "tree": "cbb47ae0d8aba9d8b3c44714b000156715cdf969",
      "parents": [
        "4162cf64973df51fc885825bc9ca4d055891c49f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Sep 15 17:38:58 2010 +0200"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jan 12 19:14:55 2011 +0100"
      },
      "message": "quota: Fix deadlock during path resolution\n\nAs Al Viro pointed out path resolution during Q_QUOTAON calls to quotactl\nis prone to deadlocks. We hold s_umount semaphore for reading during the\npath resolution and resolution itself may need to acquire the semaphore\nfor writing when e. g. autofs mountpoint is passed.\n\nSolve the problem by performing the resolution before we get hold of the\nsuperblock (and thus s_umount semaphore). The whole thing is complicated\nby the fact that some filesystems (OCFS2) ignore the path argument. So to\ndistinguish between filesystem which want the path and which do not we\nintroduce new .quota_on_meta callback which does not get the path. OCFS2\nthen uses this callback instead of old .quota_on.\n\nCC: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCC: Christoph Hellwig \u003chch@lst.de\u003e\nCC: Ted Ts\u0027o \u003ctytso@mit.edu\u003e\nCC: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "b74c79e99389cd79b31fcc08f82c24e492e63c7e",
      "tree": "763c6b412517306670bc625e90035f2d16bb739f",
      "parents": [
        "34286d6662308d82aed891852d04c7c3a2649b16"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:58 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:29 2011 +1100"
      },
      "message": "fs: provide rcu-walk aware permission i_ops\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "34286d6662308d82aed891852d04c7c3a2649b16",
      "tree": "c4b7311404d302e7cb94df7a4690298e1059910a",
      "parents": [
        "44a7d7a878c9cbb74f236ea755b25b6b2e26a9a9"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:57 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:29 2011 +1100"
      },
      "message": "fs: rcu-walk aware d_revalidate method\n\nRequire filesystems be aware of .d_revalidate being called in rcu-walk\nmode (nd-\u003eflags \u0026 LOOKUP_RCU). For now do a simple push down, returning\n-ECHILD from all implementations.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "fb045adb99d9b7c562dc7fef834857f78249daa1",
      "tree": "1fd6a4024fffeec568abe100d730589bfdb81c38",
      "parents": [
        "5f57cbcc02cf18f6b22ef4066bb10afeb8f930ff"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:55 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:28 2011 +1100"
      },
      "message": "fs: dcache reduce branches in lookup path\n\nReduce some branches and memory accesses in dcache lookup by adding dentry\nflags to indicate common d_ops are set, rather than having to check them.\nThis saves a pointer memory access (dentry-\u003ed_op) in common path lookup\nsituations, and saves another pointer load and branch in cases where we\nhave d_op but not the particular operation.\n\nPatched with:\n\ngit grep -E \u0027[.\u003e]([[:space:]])*d_op([[:space:]])*\u003d\u0027 | xargs sed -e \u0027s/\\([^\\t ]*\\)-\u003ed_op \u003d \\(.*\\);/d_set_d_op(\\1, \\2);/\u0027 -e \u0027s/\\([^\\t ]*\\)\\.d_op \u003d \\(.*\\);/d_set_d_op(\\\u0026\\1, \\2);/\u0027 -i\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "fa0d7e3de6d6fc5004ad9dea0dd6b286af8f03e9",
      "tree": "203e0f73883e4c26b5597e36042386a1237dab35",
      "parents": [
        "77812a1ef139d84270d27faacc0630c887411013"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:49:49 2011 +1100"
      },
      "committer": {
        "name": "Nick Piggin",
        "email": "npiggin@kernel.dk",
        "time": "Fri Jan 07 17:50:26 2011 +1100"
      },
      "message": "fs: icache RCU free inodes\n\nRCU free the struct inode. This will allow:\n\n- Subsequent store-free path walking patch. The inode must be consulted for\n  permissions when walking, so an RCU inode reference is a must.\n- sb_inode_list_lock to be moved inside i_lock because sb list walkers who want\n  to take i_lock no longer need to take sb_inode_list_lock to walk the list in\n  the first place. This will simplify and optimize locking.\n- Could remove some nested trylock loops in dcache code\n- Could potentially simplify things a bit in VM land. Do not need to take the\n  page lock to follow page-\u003emapping.\n\nThe downsides of this is the performance cost of using RCU. In a simple\ncreat/unlink microbenchmark, performance drops by about 10% due to inability to\nreuse cache-hot slab objects. As iterations increase and RCU freeing starts\nkicking over, this increases to about 20%.\n\nIn cases where inode lifetimes are longer (ie. many inodes may be allocated\nduring the average life span of a single inode), a lot of this cache reuse is\nnot applicable, so the regression caused by this patch is smaller.\n\nThe cache-hot regression could largely be avoided by using SLAB_DESTROY_BY_RCU,\nhowever this adds some complexity to list walking and store-free path walking,\nso I prefer to implement this at a later date, if it is shown to be a win in\nreal situations. I haven\u0027t found a regression in any non-micro benchmark so I\ndoubt it will be a problem.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\n"
    },
    {
      "commit": "238af8751f64a75f8b638193353b1c31ea32e738",
      "tree": "8b314e79791f07596640d45053f0486b45f737d9",
      "parents": [
        "0bae35e14b68f5e7075bc96e5ea608b42bdf8f59"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Dec 02 14:31:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 02 14:51:15 2010 -0800"
      },
      "message": "reiserfs: don\u0027t acquire lock recursively in reiserfs_acl_chmod\n\nreiserfs_acl_chmod() can be called by reiserfs_set_attr() and then take\nthe reiserfs lock a second time.  Thereafter it may call journal_begin()\nthat definitely requires the lock not to be nested in order to release\nit before taking the journal mutex because the reiserfs lock depends on\nthe journal mutex already.\n\nSo, aviod nesting the lock in reiserfs_acl_chmod().\n\nReported-by: Pawel Zawora \u003cpzawora@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nTested-by: Pawel Zawora \u003cpzawora@gmail.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.32.x+]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "da905873effecd1c0166e578bc4b5006f041b18b",
      "tree": "ba6e699a028ce1e0625a01a3e6f82d83dad04aca",
      "parents": [
        "d1d73578e053b981c3611e5a211534290d24a5eb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Nov 24 12:57:15 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 06:50:48 2010 +0900"
      },
      "message": "reiserfs: fix inode mutex - reiserfs lock misordering\n\nreiserfs_unpack() locks the inode mutex with reiserfs_mutex_lock_safe()\nto protect against reiserfs lock dependency.  However this protection\nrequires to have the reiserfs lock to be locked.\n\nThis is the case if reiserfs_unpack() is called by reiserfs_ioctl but\nnot from reiserfs_quota_on() when it tries to unpack tails of quota\nfiles.\n\nFix the ordering of the two locks in reiserfs_unpack() to fix this\nissue.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReported-by: Markus Gapp \u003cmarkus.gapp@gmx.net\u003e\nReported-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.36.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "451a3c24b0135bce54542009b5fde43846c7cf67"
}
