)]}'
{
  "log": [
    {
      "commit": "d895cb1af15c04c522a25c79cc429076987c089b",
      "tree": "895dc9157e28f603d937a58be664e4e440d5530c",
      "parents": [
        "9626357371b519f2b955fef399647181034a77fe",
        "d3d009cb965eae7e002ea5badf603ea8f4c34915"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 26 20:16:07 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 26 20:16:07 2013 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs pile (part one) from Al Viro:\n \"Assorted stuff - cleaning namei.c up a bit, fixing -\u003ed_name/-\u003ed_parent\n  locking violations, etc.\n\n  The most visible changes here are death of FS_REVAL_DOT (replaced with\n  \"has -\u003ed_weak_revalidate()\") and a new helper getting from struct file\n  to inode.  Some bits of preparation to xattr method interface changes.\n\n  Misc patches by various people sent this cycle *and* ocfs2 fixes from\n  several cycles ago that should\u0027ve been upstream right then.\n\n  PS: the next vfs pile will be xattr stuff.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (46 commits)\n  saner proc_get_inode() calling conventions\n  proc: avoid extra pde_put() in proc_fill_super()\n  fs: change return values from -EACCES to -EPERM\n  fs/exec.c: make bprm_mm_init() static\n  ocfs2/dlm: use GFP_ATOMIC inside a spin_lock\n  ocfs2: fix possible use-after-free with AIO\n  ocfs2: Fix oops in ocfs2_fast_symlink_readpage() code path\n  get_empty_filp()/alloc_file() leave both -\u003ef_pos and -\u003ef_version zero\n  target: writev() on single-element vector is pointless\n  export kernel_write(), convert open-coded instances\n  fs: encode_fh: return FILEID_INVALID if invalid fid_type\n  kill f_vfsmnt\n  vfs: kill FS_REVAL_DOT by adding a d_weak_revalidate dentry op\n  nfsd: handle vfs_getattr errors in acl protocol\n  switch vfs_getattr() to struct path\n  default SET_PERSONALITY() in linux/elf.h\n  ceph: prepopulate inodes only when request is aborted\n  d_hash_and_lookup(): export, switch open-coded instances\n  9p: switch v9fs_set_create_acl() to inode+fid, do it before d_instantiate()\n  9p: split dropping the acls from v9fs_set_create_acl()\n  ...\n"
    },
    {
      "commit": "ecf3d1f1aa74da0d632b651a2e05a911f60e92c0",
      "tree": "62a2e0a46bfd993a24a1154ec1331c57bbd50482",
      "parents": [
        "4f4a4faddea0fe45bf508e723c3a810c5190ed62"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 20 11:19:05 2013 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Feb 26 02:46:09 2013 -0500"
      },
      "message": "vfs: kill FS_REVAL_DOT by adding a d_weak_revalidate dentry op\n\nThe following set of operations on a NFS client and server will cause\n\n    server# mkdir a\n    client# cd a\n    server# mv a a.bak\n    client# sleep 30  # (or whatever the dir attrcache timeout is)\n    client# stat .\n    stat: cannot stat `.\u0027: Stale NFS file handle\n\nObviously, we should not be getting an ESTALE error back there since the\ninode still exists on the server. The problem is that the lookup code\nwill call d_revalidate on the dentry that \".\" refers to, because NFS has\nFS_REVAL_DOT set.\n\nnfs_lookup_revalidate will see that the parent directory has changed and\nwill try to reverify the dentry by redoing a LOOKUP. That of course\nfails, so the lookup code returns ESTALE.\n\nThe problem here is that d_revalidate is really a bad fit for this case.\nWhat we really want to know at this point is whether the inode is still\ngood or not, but we don\u0027t really care what name it goes by or whether\nthe dcache is still valid.\n\nAdd a new d_op-\u003ed_weak_revalidate operation and have complete_walk call\nthat instead of d_revalidate. The intent there is to allow for a\n\"weaker\" d_revalidate that just checks to see whether the inode is still\ngood. This is also gives us an opportunity to kill off the FS_REVAL_DOT\nspecial casing.\n\n[AV: changed method name, added note in porting, fixed confusion re\nhaving it possibly called from RCU mode (it won\u0027t be)]\n\nCc: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9268cc3523c120eed04a6ad980753d6e7b82d071",
      "tree": "d833984384d1ffc5451054f48b8350a8cbfa40af",
      "parents": [
        "24c366a9ea256b86426b42e75f764495a2558861"
      ],
      "author": {
        "name": "Huajun Li",
        "email": "huajun.li.lee@gmail.com",
        "time": "Mon Dec 31 13:59:04 2012 +0800"
      },
      "committer": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Fri Jan 04 09:42:59 2013 +0900"
      },
      "message": "f2fs: update f2fs document to reflect SIT/NAT layout correctly\n\ndocument to reflect the layout generated by mkfs.f2fs .\n\nSigned-off-by: Huajun Li \u003chuajun.li.lee@gmail.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "1f0377ff088ed2971c57debc9b0c3b846ec431fd",
      "tree": "cd53c8981269e57e38e4285abd71cc990e1cfc67",
      "parents": [
        "54d46ea993744c5408e39ce0cb4851e13cbea716",
        "b729d75d19777a5dd34672020516eada43ff026f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 18:14:31 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 18:14:31 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull VFS update from Al Viro:\n \"fscache fixes, ESTALE patchset, vmtruncate removal series, assorted\n  misc stuff.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (79 commits)\n  vfs: make lremovexattr retry once on ESTALE error\n  vfs: make removexattr retry once on ESTALE\n  vfs: make llistxattr retry once on ESTALE error\n  vfs: make listxattr retry once on ESTALE error\n  vfs: make lgetxattr retry once on ESTALE\n  vfs: make getxattr retry once on an ESTALE error\n  vfs: allow lsetxattr() to retry once on ESTALE errors\n  vfs: allow setxattr to retry once on ESTALE errors\n  vfs: allow utimensat() calls to retry once on an ESTALE error\n  vfs: fix user_statfs to retry once on ESTALE errors\n  vfs: make fchownat retry once on ESTALE errors\n  vfs: make fchmodat retry once on ESTALE errors\n  vfs: have chroot retry once on ESTALE error\n  vfs: have chdir retry lookup and call once on ESTALE error\n  vfs: have faccessat retry once on an ESTALE error\n  vfs: have do_sys_truncate retry once on an ESTALE error\n  vfs: fix renameat to retry on ESTALE errors\n  vfs: make do_unlinkat retry once on ESTALE errors\n  vfs: make do_rmdir retry once on ESTALE errors\n  vfs: add a flags argument to user_path_parent\n  ...\n"
    },
    {
      "commit": "21e89c0c48bb799beb09181740796fc80c9676e2",
      "tree": "bd5aef34a980f189ad41c75e881d225bc854bf44",
      "parents": [
        "b911a6bdeef5848c468597d040e3407e0aee04ce",
        "91c7fbbf63f33c77d8d28de624834a21888842bb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 20 18:49:14 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 20 18:49:14 2012 -0500"
      },
      "message": "Merge branch \u0027fscache\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs into for-linus\n"
    },
    {
      "commit": "b9f61c3c0c8daed9844870bc9358e6d9fdb7eb61",
      "tree": "7c5be784012a40186316c78ee85dacea354d3c87",
      "parents": [
        "7898575fc81bd707ce0844cb06874d48e39bbe09"
      ],
      "author": {
        "name": "Marco Stornelli",
        "email": "marco.stornelli@gmail.com",
        "time": "Sat Dec 15 12:00:38 2012 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 20 18:47:08 2012 -0500"
      },
      "message": "documentation: drop vmtruncate\n\nRemoved vmtruncate\n\nSigned-off-by: Marco Stornelli \u003cmarco.stornelli@gmail.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "982197277c85018cc6eb77f1d3bef17933b0c5fd",
      "tree": "805fcef9ec7c1e83867b89332fd37f751594fae3",
      "parents": [
        "40889e8d9fc6355980cf2bc94ef4356c10dec4ec",
        "24ffb93872f7363a01ad639e3c8a9889b46c3f0a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 14:04:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 14:04:11 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.8\u0027 of git://linux-nfs.org/~bfields/linux\n\nPull nfsd update from Bruce Fields:\n \"Included this time:\n\n   - more nfsd containerization work from Stanislav Kinsbursky: we\u0027re\n     not quite there yet, but should be by 3.9.\n\n   - NFSv4.1 progress: implementation of basic backchannel security\n     negotiation and the mandatory BACKCHANNEL_CTL operation.  See\n\n       http://wiki.linux-nfs.org/wiki/index.php/Server_4.0_and_4.1_issues\n\n     for remaining TODO\u0027s\n\n   - Fixes for some bugs that could be triggered by unusual compounds.\n     Our xdr code wasn\u0027t designed with v4 compounds in mind, and it\n     shows.  A more thorough rewrite is still a todo.\n\n   - If you\u0027ve ever seen \"RPC: multiple fragments per record not\n     supported\" logged while using some sort of odd userland NFS client,\n     that should now be fixed.\n\n   - Further work from Jeff Layton on our mechanism for storing\n     information about NFSv4 clients across reboots.\n\n   - Further work from Bryan Schumaker on his fault-injection mechanism\n     (which allows us to discard selective NFSv4 state, to excercise\n     rarely-taken recovery code paths in the client.)\n\n   - The usual mix of miscellaneous bugs and cleanup.\n\n  Thanks to everyone who tested or contributed this cycle.\"\n\n* \u0027for-3.8\u0027 of git://linux-nfs.org/~bfields/linux: (111 commits)\n  nfsd4: don\u0027t leave freed stateid hashed\n  nfsd4: free_stateid can use the current stateid\n  nfsd4: cleanup: replace rq_resused count by rq_next_page pointer\n  nfsd: warn on odd reply state in nfsd_vfs_read\n  nfsd4: fix oops on unusual readlike compound\n  nfsd4: disable zero-copy on non-final read ops\n  svcrpc: fix some printks\n  NFSD: Correct the size calculation in fault_inject_write\n  NFSD: Pass correct buffer size to rpc_ntop\n  nfsd: pass proper net to nfsd_destroy() from NFSd kthreads\n  nfsd: simplify service shutdown\n  nfsd: replace boolean nfsd_up flag by users counter\n  nfsd: simplify NFSv4 state init and shutdown\n  nfsd: introduce helpers for generic resources init and shutdown\n  nfsd: make NFSd service structure allocated per net\n  nfsd: make NFSd service boot time per-net\n  nfsd: per-net NFSd up flag introduced\n  nfsd: move per-net startup code to separated function\n  nfsd: pass net to __write_ports() and down\n  nfsd: pass net to nfsd_set_nrthreads()\n  ...\n"
    },
    {
      "commit": "ef778e7ae67cd426c30cad43378b908f5eb0bad5",
      "tree": "4893f19487cb99e8ec0eb835ec4391d952641a9c",
      "parents": [
        "9f10523f891928330b7529da54c1a3cc65180b1a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Dec 20 21:52:36 2012 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Dec 20 22:04:07 2012 +0000"
      },
      "message": "FS-Cache: Provide proper invalidation\n\nProvide a proper invalidation method rather than relying on the netfs retiring\nthe cookie it has and getting a new one.  The problem with this is that isn\u0027t\neasy for the netfs to make sure that it has completed/cancelled all its\noutstanding storage and retrieval operations on the cookie it is retiring.\n\nInstead, have the cache provide an invalidation method that will cancel or wait\nfor all currently outstanding operations before invalidating the cache, and\nwill cause new operations to queue up behind that.  Whilst invalidation is in\nprogress, some requests will be rejected until the cache can stack a barrier on\nthe operation queue to cause new operations to be deferred behind it.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "9f10523f891928330b7529da54c1a3cc65180b1a",
      "tree": "014731e89d44d1ca86cc665f4d39d8d2c25c69bf",
      "parents": [
        "ef46ed888efb1e8da33be5d33c9b54476289a43b"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Dec 20 21:52:35 2012 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Dec 20 21:58:26 2012 +0000"
      },
      "message": "FS-Cache: Fix operation state management and accounting\n\nFix the state management of internal fscache operations and the accounting of\nwhat operations are in what states.\n\nThis is done by:\n\n (1) Give struct fscache_operation a enum variable that directly represents the\n     state it\u0027s currently in, rather than spreading this knowledge over a bunch\n     of flags, who\u0027s processing the operation at the moment and whether it is\n     queued or not.\n\n     This makes it easier to write assertions to check the state at various\n     points and to prevent invalid state transitions.\n\n (2) Add an \u0027operation complete\u0027 state and supply a function to indicate the\n     completion of an operation (fscache_op_complete()) and make things call\n     it.  The final call to fscache_put_operation() can then check that an op\n     in the appropriate state (complete or cancelled).\n\n (3) Adjust the use of object-\u003en_ops, -\u003en_in_progress, -\u003en_exclusive to better\n     govern the state of an object:\n\n\t(a) The -\u003en_ops is now the number of extant operations on the object\n\t    and is now decremented by fscache_put_operation() only.\n\n\t(b) The -\u003en_in_progress is simply the number of objects that have been\n\t    taken off of the object\u0027s pending queue for the purposes of being\n\t    run.  This is decremented by fscache_op_complete() only.\n\n\t(c) The -\u003en_exclusive is the number of exclusive ops that have been\n\t    submitted and queued or are in progress.  It is decremented by\n\t    fscache_op_complete() and by fscache_cancel_op().\n\n     fscache_put_operation() and fscache_operation_gc() now no longer try to\n     clean up -\u003en_exclusive and -\u003en_in_progress.  That was leading to double\n     decrements against fscache_cancel_op().\n\n     fscache_cancel_op() now no longer decrements -\u003en_ops.  That was leading to\n     double decrements against fscache_put_operation().\n\n     fscache_submit_exclusive_op() now decides whether it has to queue an op\n     based on -\u003en_in_progress being \u003e 0 rather than -\u003en_ops \u003e 0 as the latter\n     will persist in being true even after all preceding operations have been\n     cancelled or completed.  Furthermore, if an object is active and there are\n     runnable ops against it, there must be at least one op running.\n\n (4) Add a remaining-pages counter (n_pages) to struct fscache_retrieval and\n     provide a function to record completion of the pages as they complete.\n\n     When n_pages reaches 0, the operation is deemed to be complete and\n     fscache_op_complete() is called.\n\n     Add calls to fscache_retrieval_complete() anywhere we\u0027ve finished with a\n     page we\u0027ve been given to read or allocate for.  This includes places where\n     we just return pages to the netfs for reading from the server and where\n     accessing the cache fails and we discard the proposed netfs page.\n\nThe bugs in the unfixed state management manifest themselves as oopses like the\nfollowing where the operation completion gets out of sync with return of the\ncookie by the netfs.  This is possible because the cache unlocks and returns\nall the netfs pages before recording its completion - which means that there\u0027s\nnothing to stop the netfs discarding them and returning the cookie.\n\n\nFS-Cache: Cookie \u0027NFS.fh\u0027 still has outstanding reads\n------------[ cut here ]------------\nkernel BUG at fs/fscache/cookie.c:519!\ninvalid opcode: 0000 [#1] SMP\nCPU 1\nModules linked in: cachefiles nfs fscache auth_rpcgss nfs_acl lockd sunrpc\n\nPid: 400, comm: kswapd0 Not tainted 3.1.0-rc7-fsdevel+ #1090                  /DG965RY\nRIP: 0010:[\u003cffffffffa007050a\u003e]  [\u003cffffffffa007050a\u003e] __fscache_relinquish_cookie+0x170/0x343 [fscache]\nRSP: 0018:ffff8800368cfb00  EFLAGS: 00010282\nRAX: 000000000000003c RBX: ffff880023cc8790 RCX: 0000000000000000\nRDX: 0000000000002f2e RSI: 0000000000000001 RDI: ffffffff813ab86c\nRBP: ffff8800368cfb50 R08: 0000000000000002 R09: 0000000000000000\nR10: ffff88003a1b7890 R11: ffff88001df6e488 R12: ffff880023d8ed98\nR13: ffff880023cc8798 R14: 0000000000000004 R15: ffff88003b8bf370\nFS:  0000000000000000(0000) GS:ffff88003bd00000(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b\nCR2: 00000000008ba008 CR3: 0000000023d93000 CR4: 00000000000006e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess kswapd0 (pid: 400, threadinfo ffff8800368ce000, task ffff88003b8bf040)\nStack:\n ffff88003b8bf040 ffff88001df6e528 ffff88001df6e528 ffffffffa00b46b0\n ffff88003b8bf040 ffff88001df6e488 ffff88001df6e620 ffffffffa00b46b0\n ffff88001ebd04c8 0000000000000004 ffff8800368cfb70 ffffffffa00b2c91\nCall Trace:\n [\u003cffffffffa00b2c91\u003e] nfs_fscache_release_inode_cookie+0x3b/0x47 [nfs]\n [\u003cffffffffa008f25f\u003e] nfs_clear_inode+0x3c/0x41 [nfs]\n [\u003cffffffffa0090df1\u003e] nfs4_evict_inode+0x2f/0x33 [nfs]\n [\u003cffffffff810d8d47\u003e] evict+0xa1/0x15c\n [\u003cffffffff810d8e2e\u003e] dispose_list+0x2c/0x38\n [\u003cffffffff810d9ebd\u003e] prune_icache_sb+0x28c/0x29b\n [\u003cffffffff810c56b7\u003e] prune_super+0xd5/0x140\n [\u003cffffffff8109b615\u003e] shrink_slab+0x102/0x1ab\n [\u003cffffffff8109d690\u003e] balance_pgdat+0x2f2/0x595\n [\u003cffffffff8103e009\u003e] ? process_timeout+0xb/0xb\n [\u003cffffffff8109dba3\u003e] kswapd+0x270/0x289\n [\u003cffffffff8104c5ea\u003e] ? __init_waitqueue_head+0x46/0x46\n [\u003cffffffff8109d933\u003e] ? balance_pgdat+0x595/0x595\n [\u003cffffffff8104bf7a\u003e] kthread+0x7f/0x87\n [\u003cffffffff813ad6b4\u003e] kernel_thread_helper+0x4/0x10\n [\u003cffffffff81026b98\u003e] ? finish_task_switch+0x45/0xc0\n [\u003cffffffff813abcdd\u003e] ? retint_restore_args+0xe/0xe\n [\u003cffffffff8104befb\u003e] ? __init_kthread_worker+0x53/0x53\n [\u003cffffffff813ad6b0\u003e] ? gs_change+0xb/0xb\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "a13eea6bd9ee62ceacfc5243d54c84396bc86cb4",
      "tree": "46192468880c144f2b367deb5188267866ee1fac",
      "parents": [
        "fcc16882ac4532aaa644bff444f0c5d6228ba71e",
        "6666e6aa9f36b2bfd6b30072c07b34f2a24becf1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 13:54:51 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 13:54:52 2012 -0800"
      },
      "message": "Merge tag \u0027for-3.8-merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull new F2FS filesystem from Jaegeuk Kim:\n \"Introduce a new file system, Flash-Friendly File System (F2FS), to\n  Linux 3.8.\n\n  Highlights:\n   - Add initial f2fs source codes\n   - Fix an endian conversion bug\n   - Fix build failures on random configs\n   - Fix the power-off-recovery routine\n   - Minor cleanup, coding style, and typos patches\"\n\nFrom the Kconfig help text:\n\n  F2FS is based on Log-structured File System (LFS), which supports\n  versatile \"flash-friendly\" features. The design has been focused on\n  addressing the fundamental issues in LFS, which are snowball effect\n  of wandering tree and high cleaning overhead.\n\n  Since flash-based storages show different characteristics according to\n  the internal geometry or flash memory management schemes aka FTL, F2FS\n  and tools support various parameters not only for configuring on-disk\n  layout, but also for selecting allocation and cleaning algorithms.\n\nand there\u0027s an article by Neil Brown about it on lwn.net:\n\n  http://lwn.net/Articles/518988/\n\n* tag \u0027for-3.8-merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (36 commits)\n  f2fs: fix tracking parent inode number\n  f2fs: cleanup the f2fs_bio_alloc routine\n  f2fs: introduce accessor to retrieve number of dentry slots\n  f2fs: remove redundant call to f2fs_put_page in delete entry\n  f2fs: make use of GFP_F2FS_ZERO for setting gfp_mask\n  f2fs: rewrite f2fs_bio_alloc to make it simpler\n  f2fs: fix a typo in f2fs documentation\n  f2fs: remove unused variable\n  f2fs: move error condition for mkdir at proper place\n  f2fs: remove unneeded initialization\n  f2fs: check read only condition before beginning write out\n  f2fs: remove unneeded memset from init_once\n  f2fs: show error in case of invalid mount arguments\n  f2fs: fix the compiler warning for uninitialized use of variable\n  f2fs: resolve build failures\n  f2fs: adjust kernel coding style\n  f2fs: fix endian conversion bugs reported by sparse\n  f2fs: remove unneeded version.h header file from f2fs.h\n  f2fs: update the f2fs document\n  f2fs: update Kconfig and Makefile\n  ...\n"
    },
    {
      "commit": "e71ec593201e1b367b5f22955e3db49e3c562e67",
      "tree": "ed5b17a12905e5cf16141f49d263e9862b01458c",
      "parents": [
        "e6dbcafb744ab94a94142a6e721e16330397fad8"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Dec 17 16:05:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:28 2012 -0800"
      },
      "message": "docs: update documentation about /proc/\u003cpid\u003e/fdinfo/\u003cfd\u003e fanotify output\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: James Bottomley \u003cjbottomley@parallels.com\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Matthew Helsley \u003cmatt.helsley@gmail.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Tvrtko Ursulin \u003ctvrtko.ursulin@onelan.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1d8c16298d317dbdeb166a135e85dadd1782858",
      "tree": "b7b5fd4fc10dfa153e796a7bd69d4edcd8a695b1",
      "parents": [
        "be77196b809cdce8603a5aadd5e3cfabd3cbef96"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Dec 17 16:05:14 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:28 2012 -0800"
      },
      "message": "docs: add documentation about /proc/\u003cpid\u003e/fdinfo/\u003cfd\u003e output\n\n[akpm@linux-foundation.org: tweak documentation]\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: James Bottomley \u003cjbottomley@parallels.com\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Matthew Helsley \u003cmatt.helsley@gmail.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Tvrtko Ursulin \u003ctvrtko.ursulin@onelan.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f4b3bf6b2318cfaa177ec5a802f4d8d6afbd816",
      "tree": "d4db7dc0ff5972232e2edbf08004e4ee838823c2",
      "parents": [
        "834f82e2aa9a8ede94b17b656329f850c1471514"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Dec 17 16:03:14 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:22 2012 -0800"
      },
      "message": "/proc/pid/status: add \"Seccomp\" field\n\nIt is currently impossible to examine the state of seccomp for a given\nprocess.  While attaching with gdb and attempting \"call\nprctl(PR_GET_SECCOMP,...)\" will work with some situations, it is not\nreliable.  If the process is in seccomp mode 1, this query will kill the\nprocess (prctl not allowed), if the process is in mode 2 with prctl not\nallowed, it will similarly be killed, and in weird cases, if prctl is\nfiltered to return errno 0, it can look like seccomp is disabled.\n\nWhen reviewing the state of running processes, there should be a way to\nexternally examine the seccomp mode.  (\"Did this build of Chrome end up\nusing seccomp?\" \"Did my distro ship ssh with seccomp enabled?\")\n\nThis adds the \"Seccomp\" line to /proc/$pid/status.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nReviewed-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge E. Hallyn \u003cserge.hallyn@ubuntu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "834f82e2aa9a8ede94b17b656329f850c1471514",
      "tree": "dbd2a721c3b6b4c7d3cd5826a9ceb867158a1941",
      "parents": [
        "7b9a7ec565505699f503b4fcf61500dceb36e744"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Dec 17 16:03:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:22 2012 -0800"
      },
      "message": "procfs: add VmFlags field in smaps output\n\nDuring c/r sessions we\u0027ve found that there is no way at the moment to\nfetch some VMA associated flags, such as mlock() and madvise().\n\nThis leads us to a problem -- we don\u0027t know if we should call for mlock()\nand/or madvise() after restore on the vma area we\u0027re bringing back to\nlife.\n\nThis patch intorduces a new field into \"smaps\" output called VmFlags,\nwhere all set flags associated with the particular VMA is shown as two\nletter mnemonics.\n\n[ Strictly speaking for c/r we only need mlock/madvise bits but it has been\n  said that providing just a few flags looks somehow inconsistent.  So all\n  flags are here now. ]\n\nThis feature is made available on CONFIG_CHECKPOINT_RESTORE\u003dn kernels, as\nother applications may start to use these fields.\n\nThe data is encoded in a somewhat awkward two letters mnemonic form, to\nencourage userspace to be prepared for fields being added or removed in\nthe future.\n\n[a.p.zijlstra@chello.nl: props to use for_each_set_bit]\n[sfr@canb.auug.org.au: props to use array instead of struct]\n[akpm@linux-foundation.org: overall redesign and simplification]\n[akpm@linux-foundation.org: remove unneeded braces per sfr, avoid using bloaty for_each_set_bit()]\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "58156c8fbf43e71dd091848d4dbfd780d04016e6",
      "tree": "ffe31e639221d1f2434f873f93d3ee654cbfb9da",
      "parents": [
        "f562146a3daf6aa0bbf2a1bc4b6b7da031ed5dcd"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Dec 17 16:02:58 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:22 2012 -0800"
      },
      "message": "fat: provide option for setting timezone offset\n\nSo far FAT either offsets time stamps by sys_tz.minuteswest or leaves them\nas they are (when tz\u003dUTC mount option is used).  However in some cases it\nis useful if one can specify time stamp offset on his own (e.g.  when time\nzone of the camera connected is different from time zone of the computer,\nor when HW clock is in UTC and thus sys_tz.minuteswest \u003d\u003d 0).\n\nSo provide a mount option time_offset\u003d which allows user to specify offset\nin minutes that should be applied to time stamps on the filesystem.\n\nakpm: this code would work incorrectly when used via `mount -o remount\u0027,\nbecause cached inodes would not be updated.  But fatfs\u0027s fat_remount() is\nbasically a no-op anyway.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "36cd5c19c3fe8291fac45a262c44c00bd14b531a",
      "tree": "77813e551c82546c9f6cddc8a3216ba5d02807ed",
      "parents": [
        "2a74dbb9a86e8102dcd07d284135b4530a84826e",
        "bd9926e80330d43f15b710c2935fa41b792d56fd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 17:33:01 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 17:33:01 2012 -0800"
      },
      "message": "Merge tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\nPull ext4 update from Ted Ts\u0027o:\n \"There are two major features for this merge window.  The first is\n  inline data, which allows small files or directories to be stored in\n  the in-inode extended attribute area.  (This requires that the file\n  system use inodes which are at least 256 bytes or larger; 128 byte\n  inodes do not have any room for in-inode xattrs.)\n\n  The second new feature is SEEK_HOLE/SEEK_DATA support.  This is\n  enabled by the extent status tree patches, and this infrastructure\n  will be used to further optimize ext4 in the future.\n\n  Beyond that, we have the usual collection of code cleanups and bug\n  fixes.\"\n\n* tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (63 commits)\n  ext4: zero out inline data using memset() instead of empty_zero_page\n  ext4: ensure Inode flags consistency are checked at build time\n  ext4: Remove CONFIG_EXT4_FS_XATTR\n  ext4: remove unused variable from ext4_ext_in_cache()\n  ext4: remove redundant initialization in ext4_fill_super()\n  ext4: remove redundant code in ext4_alloc_inode()\n  ext4: use sync_inode_metadata() when syncing inode metadata\n  ext4: enable ext4 inline support\n  ext4: let fallocate handle inline data correctly\n  ext4: let ext4_truncate handle inline data correctly\n  ext4: evict inline data out if we need to strore xattr in inode\n  ext4: let fiemap work with inline data\n  ext4: let ext4_rename handle inline dir\n  ext4: let empty_dir handle inline dir\n  ext4: let ext4_delete_entry() handle inline data\n  ext4: make ext4_delete_entry generic\n  ext4: let ext4_find_entry handle inline data\n  ext4: create a new function search_dir\n  ext4: let ext4_readdir handle inline data\n  ext4: let add_dir_entry handle inline data properly\n  ...\n"
    },
    {
      "commit": "d42b3a2906a10b732ea7d7f849d49be79d242ef0",
      "tree": "1f4f2387bf53f8015aa87eb9c05ba8316cb5ed50",
      "parents": [
        "18dd0bf22b6f0c1bd5e4e813a42245ed86ec57b6",
        "e83af1f18c78c7b6aa720beecc927ecc8afd3647"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:08:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:08:40 2012 -0800"
      },
      "message": "Merge branch \u0027core-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 EFI update from Peter Anvin:\n \"EFI tree, from Matt Fleming.  Most of the patches are the new efivarfs\n  filesystem by Matt Garrett \u0026 co.  The balance are support for EFI\n  wallclock in the absence of a hardware-specific driver, and various\n  fixes and cleanups.\"\n\n* \u0027core-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)\n  efivarfs: Make efivarfs_fill_super() static\n  x86, efi: Check table header length in efi_bgrt_init()\n  efivarfs: Use query_variable_info() to limit kmalloc()\n  efivarfs: Fix return value of efivarfs_file_write()\n  efivarfs: Return a consistent error when efivarfs_get_inode() fails\n  efivarfs: Make \u0027datasize\u0027 unsigned long\n  efivarfs: Add unique magic number\n  efivarfs: Replace magic number with sizeof(attributes)\n  efivarfs: Return an error if we fail to read a variable\n  efi: Clarify GUID length calculations\n  efivarfs: Implement exclusive access for {get,set}_variable\n  efivarfs: efivarfs_fill_super() ensure we clean up correctly on error\n  efivarfs: efivarfs_fill_super() ensure we free our temporary name\n  efivarfs: efivarfs_fill_super() fix inode reference counts\n  efivarfs: efivarfs_create() ensure we drop our reference on inode on error\n  efivarfs: efivarfs_file_read ensure we free data in error paths\n  x86-64/efi: Use EFI to deal with platform wall clock (again)\n  x86/kernel: remove tboot 1:1 page table creation code\n  x86, efi: 1:1 pagetable mapping for virtual EFI calls\n  x86, mm: Include the entire kernel memory map in trampoline_pgd\n  ...\n"
    },
    {
      "commit": "3f1c64f410e4394ecefadd7a597a7c20368a65fc",
      "tree": "10f15d6a222b15a34831f2d7d1e3ac26f1436638",
      "parents": [
        "22a40fd9a60388aec8106b0baffc8f59f83bb1b4",
        "f9668a09e32ac6d2aa22f44cc310e430a8f4a40f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 12 09:19:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 12 09:19:45 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus-v3.8-rc1\u0027 of git://oss.sgi.com/xfs/xfs\n\nPull xfs update from Ben Myers:\n \"There is plenty going on, including the cleanup of xfssyncd, metadata\n  verifiers, CRC infrastructure for the log, tracking of inodes with\n  speculative allocation, a cleanup of xfs_fs_subr.c, fixes for\n  XFS_IOC_ZERO_RANGE, and important fix related to log replay (only\n  update the last_sync_lsn when a transaction completes), a fix for\n  deadlock on AGF buffers, documentation and comment updates, and a few\n  more cleanups and fixes.\n\n  Details:\n   - remove the xfssyncd mess\n   - only update the last_sync_lsn when a transaction completes\n   - zero allocation_args on the kernel stack\n   - fix AGF/alloc workqueue deadlock\n   - silence uninitialised f.file warning\n   - Update inode alloc comments\n   - Update mount options documentation\n   - report projid32bit feature in geometry call\n   - speculative preallocation inode tracking\n   - fix attr tree double split corruption\n   - fix broken error handling in xfs_vm_writepage\n   - drop buffer io reference when a bad bio is built\n   - add more attribute tree trace points\n   - growfs infrastructure changes for 3.8\n   - fs/xfs/xfs_fs_subr.c die die die\n   - add CRC infrastructure\n   - add CRC checks to the log\n   - Remove description of nodelaylog mount option from xfs.txt\n   - inode allocation should use unmapped buffers\n   - byte range granularity for XFS_IOC_ZERO_RANGE\n   - fix direct IO nested transaction deadlock\n   - fix stray dquot unlock when reclaiming dquots\n   - fix sparse reported log CRC endian issue\"\n\nFix up trivial conflict in fs/xfs/xfs_fsops.c due to the same patch\nhaving been applied twice (commits eaef854335ce and 1375cb65e87b: \"xfs:\ngrowfs: don\u0027t read garbage for new secondary superblocks\") with later\nupdates to the affected code in the XFS tree.\n\n* tag \u0027for-linus-v3.8-rc1\u0027 of git://oss.sgi.com/xfs/xfs: (78 commits)\n  xfs: fix sparse reported log CRC endian issue\n  xfs: fix stray dquot unlock when reclaiming dquots\n  xfs: fix direct IO nested transaction deadlock.\n  xfs: byte range granularity for XFS_IOC_ZERO_RANGE\n  xfs: inode allocation should use unmapped buffers.\n  xfs: Remove the description of nodelaylog mount option from xfs.txt\n  xfs: add CRC checks to the log\n  xfs: add CRC infrastructure\n  xfs: convert buffer verifiers to an ops structure.\n  xfs: connect up write verifiers to new buffers\n  xfs: add pre-write metadata buffer verifier callbacks\n  xfs: add buffer pre-write callback\n  xfs: Add verifiers to dir2 data readahead.\n  xfs: add xfs_da_node verification\n  xfs: factor and verify attr leaf reads\n  xfs: factor dir2 leaf read\n  xfs: factor out dir2 data block reading\n  xfs: factor dir2 free block reading\n  xfs: verify dir2 block format buffers\n  xfs: factor dir2 block read operations\n  ...\n"
    },
    {
      "commit": "d08ab08d140de247eb812ce2c3c4b323620e4609",
      "tree": "4bc473b6ab7157964e79ef8a4aa8dd79a1fe08b5",
      "parents": [
        "705f814e34e08f6169439014a2916fd5afbdf232"
      ],
      "author": {
        "name": "Huajun Li",
        "email": "huajun.li.lee@gmail.com",
        "time": "Wed Dec 05 16:45:32 2012 +0800"
      },
      "committer": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Tue Dec 11 13:43:44 2012 +0900"
      },
      "message": "f2fs: fix a typo in f2fs documentation\n\nIn f2fs_fs.h, one f2fs inode contains 923 data block pointers, while\nf2fs documentation says it is 929. Fix this inconsistence.\n\nSigned-off-by: Huajun Li \u003chuajun.li.lee@gmail.com\u003e\n"
    },
    {
      "commit": "5bb446a2890f4dfd62ce4d9fcc982f8ea3c20010",
      "tree": "13bce8726006ea9df81fa47f186ee6faa5200f2c",
      "parents": [
        "a14d53937cc850d5631e0f809986751770ef65ac"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Tue Nov 27 14:36:14 2012 +0900"
      },
      "committer": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Tue Dec 11 13:43:42 2012 +0900"
      },
      "message": "f2fs: update the f2fs document\n\nI moved the f2fs-tools.git into kernel.org.\nAnd I added a new mailing list, linux-f2fs-devel@lists.sourceforge.net.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "98e4da8ca301e062d79ae168c67e56f3c3de3ce4",
      "tree": "5bcbd6fc641b8f15e0af5642f94c55aca941035e",
      "parents": [
        "29594404d7fe73cd80eaa4ee8c43dcc53970c60e"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Fri Nov 02 17:05:42 2012 +0900"
      },
      "committer": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Tue Dec 11 13:43:39 2012 +0900"
      },
      "message": "f2fs: add document\n\nThis adds a document describing the mount options, proc entries, usage, and\ndesign of Flash-Friendly File System, namely F2FS.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "939da1084458246d2e29dd921c2012c177000e96",
      "tree": "d1f49c9ff1f99769a75fdc382b0c2e8a047c5475",
      "parents": [
        "187fd030d801b02b0daeb010dbf7c0113be3156d"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "boyu.mt@taobao.com",
        "time": "Mon Dec 10 16:30:43 2012 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Dec 10 16:30:43 2012 -0500"
      },
      "message": "ext4: Remove CONFIG_EXT4_FS_XATTR\n\nTed has sent out a RFC about removing this feature. Eric and Jan\nconfirmed that both RedHat and SUSE enable this feature in all their\nproduct.  David also said that \"As far as I know, it\u0027s enabled in all\nAndroid kernels that use ext4.\"  So it seems OK for us.\n\nAnd what\u0027s more, as inline data depends its implementation on xattr,\nand to be frank, I don\u0027t run any test again inline data enabled while\nxattr disabled.  So I think we should add inline data and remove this\nconfig option in the same release.\n\n[ The savings if you disable CONFIG_EXT4_FS_XATTR is only 27k, which\n  isn\u0027t much in the grand scheme of things.  Since no one seems to be\n  testing this configuration except for some automated compile farms, on\n  balance we are better removing this config option, and so that it is\n  effectively always enabled. -- tytso ]\n\nCc: David Brown \u003cdavidb@codeaurora.org\u003e\nCc: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Tao Ma \u003cboyu.mt@taobao.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "0acba3cd018c51e529a6f008c092629ad2e9e0a4",
      "tree": "07e41b1fbd5609c58ec07d450c40f15188f7304c",
      "parents": [
        "0e446be44806240c779666591bb9e8cb0e86a50d"
      ],
      "author": {
        "name": "Satoru Takeuchi",
        "email": "takeuchi_satoru@jp.fujitsu.com",
        "time": "Mon Nov 26 15:25:05 2012 +0900"
      },
      "committer": {
        "name": "Ben Myers",
        "email": "bpm@sgi.com",
        "time": "Mon Nov 26 16:00:51 2012 -0600"
      },
      "message": "xfs: Remove the description of nodelaylog mount option from xfs.txt\n\nnodelaylog mount option is removed by commit 93b8a585. But there still be\nthe description about it in the xfs document. This patch removes it.\n\nSigned-off-by: Satoru Takeuchi \u003ctakeuchi_satoru@jp.fujitsu.com\u003e\nReviewed-by: Ben Myers \u003cbpm@sgi.com\u003e\nSigned-off-by: Ben Myers \u003cbpm@sgi.com\u003e\n\n"
    },
    {
      "commit": "ffe1137ba743cdf1c2414d5a89690aec1daa6bba",
      "tree": "b774cb101e03779db6dd569a28b3e5d7d4bf06b1",
      "parents": [
        "70cc7f75b1ee4161dfdea1012223db25712ab1a5"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Nov 15 14:52:19 2012 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Nov 26 09:08:15 2012 -0500"
      },
      "message": "nfsd4: delay filling in write iovec array till after xdr decoding\n\nOur server rejects compounds containing more than one write operation.\nIt\u0027s unclear whether this is really permitted by the spec; with 4.0,\nit\u0027s possibly OK, with 4.1 (which has clearer limits on compound\nparameters), it\u0027s probably not OK.  No client that we\u0027re aware of has\never done this, but in theory it could be useful.\n\nThe source of the limitation: we need an array of iovecs to pass to the\nwrite operation.  In the worst case that array of iovecs could have\nhundreds of elements (the maximum rwsize divided by the page size), so\nit\u0027s too big to put on the stack, or in each compound op.  So we instead\nkeep a single such array in the compound argument.\n\nWe fill in that array at the time we decode the xdr operation.\n\nBut we decode every op in the compound before executing any of them.  So\nonce we\u0027ve used that array we can\u0027t decode another write.\n\nIf we instead delay filling in that array till the time we actually\nperform the write, we can reuse it.\n\nAnother option might be to switch to decoding compound ops one at a\ntime.  I considered doing that, but it has a number of other side\neffects, and I\u0027d rather fix just this one problem for now.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "fa0cbbf145aabbf29c6f28f8a11935c0b0fd86fc",
      "tree": "fd2626b68b0f78afa128d7772c49f066e339bd3a",
      "parents": [
        "f4bcd79c88d25508643084e6fed25920485db0eb"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Nov 12 17:53:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 16 10:15:35 2012 -0800"
      },
      "message": "mm, oom: reintroduce /proc/pid/oom_adj\n\nThis is mostly a revert of 01dc52ebdf47 (\"oom: remove deprecated oom_adj\")\nfrom Davidlohr Bueso.\n\nIt reintroduces /proc/pid/oom_adj for backwards compatibility with earlier\nkernels.  It simply scales the value linearly when /proc/pid/oom_score_adj\nis written.\n\nThe major difference is that its scheduled removal is no longer included\nin Documentation/feature-removal-schedule.txt.  We do warn users with a\nsingle printk, though, to suggest the more powerful and supported\n/proc/pid/oom_score_adj interface.\n\nReported-by: Artem S. Tashkinov \u003ct.artem@lycos.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "292a41716a4ad3e93c57155f99786abe8a8d386a",
      "tree": "4bbca7203bc31e6dd389e7f64a3c87c4d296ebf5",
      "parents": [
        "12fc3e92d4b18b4e99af624586e1696479ff36ce"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Wed Nov 07 19:41:51 2012 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Sat Nov 10 14:52:03 2012 -0500"
      },
      "message": "nfsd4: update documentation on 4.1 progress\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "cb73a9f4649bf63c0397e565a15abf8a91ecf56f",
      "tree": "96fb7200465a50047c92089ee4b504a3ebcfe9bb",
      "parents": [
        "c6bb3ca27d78b902baa143b931a8d9ef53298afa"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Nov 01 18:09:48 2012 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Wed Nov 07 19:39:58 2012 -0500"
      },
      "message": "nfsd4: implement backchannel_ctl operation\n\nThis operation is mandatory for servers to implement.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "c99abb8f560798625323c7b21d5636259017825d",
      "tree": "a85b672a062910927af084e56fa2ab6b48b650fc",
      "parents": [
        "cd856db69c88db438215244571957d812bdc6813"
      ],
      "author": {
        "name": "Carlos Maiolino",
        "email": "cmaiolino@redhat.com",
        "time": "Thu Oct 18 12:28:58 2012 -0300"
      },
      "committer": {
        "name": "Ben Myers",
        "email": "bpm@sgi.com",
        "time": "Fri Nov 02 17:21:13 2012 -0500"
      },
      "message": "xfs: Update mount options documentation\n\nOnce inode64 is the default allocation mode now, kernel documentation should be\nupdated to match this behaviour.\n\nSigned-off-by: Carlos Maiolino \u003ccmaiolino@redhat.com\u003e\nReviewed-by: Mark Tinguely \u003ctinguely@sgi.com\u003e\nSigned-off-by: Ben Myers \u003cbpm@sgi.com\u003e\n\n"
    },
    {
      "commit": "e913ca7d16d70b75367ff56a3b201980501d542c",
      "tree": "96f0cd6b1672ed329861945e4aa2291b2d399f08",
      "parents": [
        "605e70c7aa1b7b0d554baf945630c1d606bbfbc3"
      ],
      "author": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Thu Oct 04 09:57:31 2012 +0100"
      },
      "committer": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Tue Oct 30 10:39:18 2012 +0000"
      },
      "message": "efivarfs: Add documentation for the EFI variable filesystem\n\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\n"
    },
    {
      "commit": "bd81ccea8558daab570d70d2c23746413f26cecf",
      "tree": "a3a75dde2dc3cf26c74353b21792da30d65d7c13",
      "parents": [
        "98260daa184c4a171834463cf85ab3a2c509d983",
        "a9ca4043d074509b9d15003fbcb068d3cdae85a4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:53:54 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:53:54 2012 +0900"
      },
      "message": "Merge branch \u0027for-3.7\u0027 of git://linux-nfs.org/~bfields/linux\n\nPull nfsd update from J Bruce Fields:\n \"Another relatively quiet cycle.  There was some progress on my\n  remaining 4.1 todo\u0027s, but a couple of them were just of the form\n  \"check that we do X correctly\", so didn\u0027t have much affect on the\n  code.\n\n  Other than that, a bunch of cleanup and some bugfixes (including an\n  annoying NFSv4.0 state leak and a busy-loop in the server that could\n  cause it to peg the CPU without making progress).\"\n\n* \u0027for-3.7\u0027 of git://linux-nfs.org/~bfields/linux: (46 commits)\n  UAPI: (Scripted) Disintegrate include/linux/sunrpc\n  UAPI: (Scripted) Disintegrate include/linux/nfsd\n  nfsd4: don\u0027t allow reclaims of expired clients\n  nfsd4: remove redundant callback probe\n  nfsd4: expire old client earlier\n  nfsd4: separate session allocation and initialization\n  nfsd4: clean up session allocation\n  nfsd4: minor free_session cleanup\n  nfsd4: new_conn_from_crses should only allocate\n  nfsd4: separate connection allocation and initialization\n  nfsd4: reject bad forechannel attrs earlier\n  nfsd4: enforce per-client sessions/no-sessions distinction\n  nfsd4: set cl_minorversion at create time\n  nfsd4: don\u0027t pin clientids to pseudoflavors\n  nfsd4: fix bind_conn_to_session xdr comment\n  nfsd4: cast readlink() bug argument\n  NFSD: pass null terminated buf to kstrtouint()\n  nfsd: remove duplicate init in nfsd4_cb_recall\n  nfsd4: eliminate redundant nfs4_free_stateid\n  fs/nfsd/nfs4idmap.c: adjust inconsistent IS_ERR and PTR_ERR\n  ...\n"
    },
    {
      "commit": "df632d3ce7eacf92ad9b642301c7b53a1d95b8d8",
      "tree": "848c39ed4f7cfdb582bf2e0a0a03147efaa5198d",
      "parents": [
        "2474542f64432398f503373f53bdf620491bcfa8",
        "af283885b70248268617955a5ea5476647bd556b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 10 23:52:35 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 10 23:52:35 2012 +0900"
      },
      "message": "Merge tag \u0027nfs-for-3.7-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client updates from Trond Myklebust:\n \"Features include:\n\n   - Remove CONFIG_EXPERIMENTAL dependency from NFSv4.1\n     Aside from the issues discussed at the LKS, distros are shipping\n     NFSv4.1 with all the trimmings.\n   - Fix fdatasync()/fsync() for the corner case of a server reboot.\n   - NFSv4 OPEN access fix: finally distinguish correctly between\n     open-for-read and open-for-execute permissions in all situations.\n   - Ensure that the TCP socket is closed when we\u0027re in CLOSE_WAIT\n   - More idmapper bugfixes\n   - Lots of pNFS bugfixes and cleanups to remove unnecessary state and\n     make the code easier to read.\n   - In cases where a pNFS read or write fails, allow the client to\n     resume trying layoutgets after two minutes of read/write-\n     through-mds.\n   - More net namespace fixes to the NFSv4 callback code.\n   - More net namespace fixes to the NFSv3 locking code.\n   - More NFSv4 migration preparatory patches.\n     Including patches to detect network trunking in both NFSv4 and\n     NFSv4.1\n   - pNFS block updates to optimise LAYOUTGET calls.\"\n\n* tag \u0027nfs-for-3.7-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (113 commits)\n  pnfsblock: cleanup nfs4_blkdev_get\n  NFS41: send real read size in layoutget\n  NFS41: send real write size in layoutget\n  NFS: track direct IO left bytes\n  NFSv4.1: Cleanup ugliness in pnfs_layoutgets_blocked()\n  NFSv4.1: Ensure that the layout sequence id stays \u0027close\u0027 to the current\n  NFSv4.1: Deal with seqid wraparound in the pNFS return-on-close code\n  NFSv4 set open access operation call flag in nfs4_init_opendata_res\n  NFSv4.1: Remove the dependency on CONFIG_EXPERIMENTAL\n  NFSv4 reduce attribute requests for open reclaim\n  NFSv4: nfs4_open_done first must check that GETATTR decoded a file type\n  NFSv4.1: Deal with wraparound when updating the layout \"barrier\" seqid\n  NFSv4.1: Deal with wraparound issues when updating the layout stateid\n  NFSv4.1: Always set the layout stateid if this is the first layoutget\n  NFSv4.1: Fix another refcount issue in pnfs_find_alloc_layout\n  NFSv4: don\u0027t put ACCESS in OPEN compound if O_EXCL\n  NFSv4: don\u0027t check MAY_WRITE access bit in OPEN\n  NFS: Set key construction data for the legacy upcall\n  NFSv4.1: don\u0027t do two EXCHANGE_IDs on mount\n  NFS: nfs41_walk_client_list(): re-lock before iterating\n  ...\n"
    },
    {
      "commit": "f474af7051212b4efc8267583fad9c4ebf33ccff",
      "tree": "1aa46ebc8065a341f247c2a2d9af2f624ad1d4f8",
      "parents": [
        "0d22f68f02c10d5d10ec5712917e5828b001a822",
        "e3dd9a52cb5552c46c2a4ca7ccdfb4dab5c72457"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Tue Oct 09 18:35:22 2012 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Tue Oct 09 18:35:22 2012 -0400"
      },
      "message": "nfs: disintegrate UAPI for nfs\n\nThis is to complete part of the Userspace API (UAPI) disintegration for which\nthe preparatory patches were pulled recently.  After these patches, userspace\nheaders will be segregated into:\n\n        include/uapi/linux/.../foo.h\n\nfor the userspace interface stuff, and:\n\n        include/linux/.../foo.h\n\nfor the strictly kernel internal stuff.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "01dc52ebdf472f77cca623ca693ca24cfc0f1bbe",
      "tree": "2d0f35f2aff418d52a84fb50974ad3bacf68d4bd",
      "parents": [
        "d5dc0ad928fb9e972001e552597fd0b794863f34"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave@gnu.org",
        "time": "Mon Oct 08 16:29:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:24 2012 +0900"
      },
      "message": "oom: remove deprecated oom_adj\n\nThe deprecated /proc/\u003cpid\u003e/oom_adj is scheduled for removal this month.\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6432f2128414edbea5fd4f6c4fa4c28d0e1c6151",
      "tree": "d3c63c5f2f043ce52d98d8dfd3c9c0a7bc76ed95",
      "parents": [
        "1b033447bf847ba49c3816c564c9191c97456b36",
        "c278531d39f3158bfee93dc67da0b77e09776de2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 08 06:36:39 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 08 06:36:39 2012 +0900"
      },
      "message": "Merge tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\nPull ext4 updates from Ted Ts\u0027o:\n \"The big new feature added this time is supporting online resizing\n  using the meta_bg feature.  This allows us to resize file systems\n  which are greater than 16TB.  In addition, the speed of online\n  resizing has been improved in general.\n\n  We also fix a number of races, some of which could lead to deadlocks,\n  in ext4\u0027s Asynchronous I/O and online defrag support, thanks to good\n  work by Dmitry Monakhov.\n\n  There are also a large number of more minor bug fixes and cleanups\n  from a number of other ext4 contributors, quite of few of which have\n  submitted fixes for the first time.\"\n\n* tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (69 commits)\n  ext4: fix ext4_flush_completed_IO wait semantics\n  ext4: fix mtime update in nodelalloc mode\n  ext4: fix ext_remove_space for punch_hole case\n  ext4: punch_hole should wait for DIO writers\n  ext4: serialize truncate with owerwrite DIO workers\n  ext4: endless truncate due to nonlocked dio readers\n  ext4: serialize unlocked dio reads with truncate\n  ext4: serialize dio nonlocked reads with defrag workers\n  ext4: completed_io locking cleanup\n  ext4: fix unwritten counter leakage\n  ext4: give i_aiodio_unwritten a more appropriate name\n  ext4: ext4_inode_info diet\n  ext4: convert to use leXX_add_cpu()\n  ext4: ext4_bread usage audit\n  fs: reserve fallocate flag codepoint\n  ext4: remove redundant offset check in mext_check_arguments()\n  ext4: don\u0027t clear orphan list on ro mount with errors\n  jbd2: fix assertion failure in commit code due to lacking transaction credits\n  ext4: release donor reference when EXT4_IOC_MOVE_EXT ioctl fails\n  ext4: enable FITRIM ioctl on bigalloc file system\n  ...\n"
    },
    {
      "commit": "eb0ad9c06d51edb5d18a7007fd4d77a8805b2ba7",
      "tree": "987595aa0cfa6e9fdf367a1ec3f5e8b04849c777",
      "parents": [
        "1f7df953d687860690cc0e388d0efec215c09e9c",
        "84f4141ee3ea11035f741d4298cb6bbad1850fcf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 03 08:48:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 03 08:48:21 2012 -0700"
      },
      "message": "Merge tag \u0027jfs-3.7\u0027 of git://github.com/kleikamp/linux-shaggy\n\nPull JFS update from Dave Kleikamp:\n \"JFS TRIM support and some minor fixes\"\n\n* tag \u0027jfs-3.7\u0027 of git://github.com/kleikamp/linux-shaggy:\n  jfs: Fix do_div precision in commit b40c2e66\n  JFS: use list_move instead of list_del/list_add\n  jfs: Remove obsolete email address\n  fs/jfs: TRIM support for JFS Filesystem\n"
    },
    {
      "commit": "aecdc33e111b2c447b622e287c6003726daa1426",
      "tree": "3e7657eae4b785e1a1fb5dfb225dbae0b2f0cfc6",
      "parents": [
        "a20acf99f75e49271381d65db097c9763060a1e8",
        "a3a6cab5ea10cca64d036851fe0d932448f2fe4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 13:38:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 13:38:27 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking changes from David Miller:\n\n 1) GRE now works over ipv6, from Dmitry Kozlov.\n\n 2) Make SCTP more network namespace aware, from Eric Biederman.\n\n 3) TEAM driver now works with non-ethernet devices, from Jiri Pirko.\n\n 4) Make openvswitch network namespace aware, from Pravin B Shelar.\n\n 5) IPV6 NAT implementation, from Patrick McHardy.\n\n 6) Server side support for TCP Fast Open, from Jerry Chu and others.\n\n 7) Packet BPF filter supports MOD and XOR, from Eric Dumazet and Daniel\n    Borkmann.\n\n 8) Increate the loopback default MTU to 64K, from Eric Dumazet.\n\n 9) Use a per-task rather than per-socket page fragment allocator for\n    outgoing networking traffic.  This benefits processes that have very\n    many mostly idle sockets, which is quite common.\n\n    From Eric Dumazet.\n\n10) Use up to 32K for page fragment allocations, with fallbacks to\n    smaller sizes when higher order page allocations fail.  Benefits are\n    a) less segments for driver to process b) less calls to page\n    allocator c) less waste of space.\n\n    From Eric Dumazet.\n\n11) Allow GRO to be used on GRE tunnels, from Eric Dumazet.\n\n12) VXLAN device driver, one way to handle VLAN issues such as the\n    limitation of 4096 VLAN IDs yet still have some level of isolation.\n    From Stephen Hemminger.\n\n13) As usual there is a large boatload of driver changes, with the scale\n    perhaps tilted towards the wireless side this time around.\n\nFix up various fairly trivial conflicts, mostly caused by the user\nnamespace changes.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1012 commits)\n  hyperv: Add buffer for extended info after the RNDIS response message.\n  hyperv: Report actual status in receive completion packet\n  hyperv: Remove extra allocated space for recv_pkt_list elements\n  hyperv: Fix page buffer handling in rndis_filter_send_request()\n  hyperv: Fix the missing return value in rndis_filter_set_packet_filter()\n  hyperv: Fix the max_xfer_size in RNDIS initialization\n  vxlan: put UDP socket in correct namespace\n  vxlan: Depend on CONFIG_INET\n  sfc: Fix the reported priorities of different filter types\n  sfc: Remove EFX_FILTER_FLAG_RX_OVERRIDE_IP\n  sfc: Fix loopback self-test with separate_tx_channels\u003d1\n  sfc: Fix MCDI structure field lookup\n  sfc: Add parentheses around use of bitfield macro arguments\n  sfc: Fix null function pointer in efx_sriov_channel_type\n  vxlan: virtual extensible lan\n  igmp: export symbol ip_mc_leave_group\n  netlink: add attributes to fdb interface\n  tg3: unconditionally select HWMON support when tg3 is enabled.\n  Revert \"net: ti cpsw ethernet: allow reading phy interface mode from DT\"\n  gre: fix sparse warning\n  ...\n"
    },
    {
      "commit": "6f2ea7f2a3ff3cd342bface43f8b4bf5e431cf36",
      "tree": "c20a5610aa8f934cb46bbb38c901e16d43ea602a",
      "parents": [
        "05f4c350ee02e9461c6ae3a880ea326a06835e37"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Sep 14 17:24:41 2012 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Oct 01 15:33:33 2012 -0700"
      },
      "message": "NFS: Add nfs4_unique_id boot parameter\n\nAn optional boot parameter is introduced to allow client\nadministrators to specify a string that the Linux NFS client can\ninsert into its nfs_client_id4 id string, to make it both more\nglobally unique, and to ensure that it doesn\u0027t change even if the\nclient\u0027s nodename changes.\n\nIf this boot parameter is not specified, the client\u0027s nodename is\nused, as before.\n\nClient installation procedures can create a unique string (typically,\na UUID) which remains unchanged during the lifetime of that client\ninstance.  This works just like creating a UUID for the label of the\nsystem\u0027s root and boot volumes.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5e953778a2aab04929a5e7b69f53dc26e39b079e",
      "tree": "7649e876436e4d2cc136bef282edb6554b8508aa",
      "parents": [
        "42d94dcb68b939c72fded1b3974cd240723afa0c"
      ],
      "author": {
        "name": "Christoph Fritz",
        "email": "chf.fritz@googlemail.com",
        "time": "Fri Sep 21 08:31:19 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 21 14:51:21 2012 -0400"
      },
      "message": "ipconfig: add nameserver IPs to kernel-parameter ip\u003d\n\nOn small systems (e.g. embedded ones) IP addresses are often configured\nby bootloaders and get assigned to kernel via parameter \"ip\u003d\".  If set to\n\"ip\u003ddhcp\", even nameserver entries from DHCP daemons are handled. These\nentries exported in /proc/net/pnp are commonly linked by /etc/resolv.conf.\n\nTo configure nameservers for networks without DHCP, this patch adds option\n\u003cdns0-ip\u003e and \u003cdns1-ip\u003e to kernel-parameter \u0027ip\u003d\u0027.\n\nSigned-off-by: Christoph Fritz \u003cchf.fritz@googlemail.com\u003e\nTested-by: Jan Weitzel \u003cj.weitzel@phytec.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16221d9071d48841b23256a2ad643a845d5aaf80",
      "tree": "ae3a962a686b5565743fb2e6825d02a8edab1868",
      "parents": [
        "b40c2e665cd552eae5fbdbb878bc29a34357668e"
      ],
      "author": {
        "name": "Dave Kleikamp",
        "email": "dave.kleikamp@oracle.com",
        "time": "Fri Sep 14 15:48:35 2012 -0500"
      },
      "committer": {
        "name": "Dave Kleikamp",
        "email": "dave.kleikamp@oracle.com",
        "time": "Mon Sep 17 12:00:01 2012 -0500"
      },
      "message": "jfs: Remove obsolete email address\n\nThe MAINTAINERS file suffices.\n\nSigned-off-by: Dave Kleikamp \u003cdave.kleikamp@oracle.com\u003e\n"
    },
    {
      "commit": "b40c2e665cd552eae5fbdbb878bc29a34357668e",
      "tree": "23714e5773a77abf1daf71ca7958dcd8dfa688ea",
      "parents": [
        "fbcbe2b3c92ee1c930dcfcf8bb764074c100fd63"
      ],
      "author": {
        "name": "Tino Reichardt",
        "email": "milky-kernel@mcmilk.de",
        "time": "Mon Sep 17 11:58:19 2012 -0500"
      },
      "committer": {
        "name": "Dave Kleikamp",
        "email": "dave.kleikamp@oracle.com",
        "time": "Mon Sep 17 11:58:19 2012 -0500"
      },
      "message": "fs/jfs: TRIM support for JFS Filesystem\n\nThis patch adds support for the two linux interfaces of the discard/TRIM\ncommand for SSD devices and sparse/thinly-provisioned LUNs.\n\nJFS will support batched discard via FITRIM ioctl and online discard\nwith the discard mount option.\n\nSigned-off-by: Tino Reichardt \u003clist-jfs@mcmilk.de\u003e\nSigned-off-by: Dave Kleikamp \u003cdave.kleikamp@oracle.com\u003e\n"
    },
    {
      "commit": "82aceae4f0d42f03d9ad7d1e90389e731153898f",
      "tree": "9e39183cb3d2a971ac794da1b94d4dd7f07faa5d",
      "parents": [
        "9db48aaf18d675ac41f550c9384154e0c00de2ef"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Aug 27 13:32:15 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Aug 27 13:42:02 2012 -0700"
      },
      "message": "debugfs: more tightly restrict default mount mode\n\nSince the debugfs is mostly only used by root, make the default mount\nmode 0700. Most system owners do not need a more permissive value,\nbut they can choose to weaken the restrictions via their fstab.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "d65226e2bfe9dd96f193d61892e20fcda9524d22",
      "tree": "16b2abd523c93afc27142ff839215cebebfb6bf9",
      "parents": [
        "f9aed62a2b12a8e04077737c9942111e14ed738e"
      ],
      "author": {
        "name": "Namjae Jeon",
        "email": "linkinjeon@gmail.com",
        "time": "Tue Aug 21 16:15:46 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 21 16:45:02 2012 -0700"
      },
      "message": "Documentation: update mount option in filesystem/vfat.txt\n\nUpdate two mount options(discard, nfs) in vfat.txt.\n\nSigned-off-by: Namjae Jeon \u003clinkinjeon@gmail.com\u003e\nAcked-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a4c6e19cfed5e650045312affed7e6056383278",
      "tree": "339a910e1a4f18911ad6173bd2c304e8a0e699f9",
      "parents": [
        "65b2e6656bda2ad983727fcc725ac66b6d5035a7"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Wed Aug 15 17:43:30 2012 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Tue Aug 21 17:42:03 2012 -0400"
      },
      "message": "nfsd: document kernel interfaces for nfsd configuration\n\nThese are only needed by nfs-utils.  But I needed to remind myself how\nthey worked recently and thought this might be helpful.  It\u0027s short and\nincomplete for now as I was only interested in startup, shutdown, and\nconfiguration of listening sockets.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "df981d03eeff7971ac7e6ff37000bfa702327ef1",
      "tree": "4e944139b9e45c4af910c517b57f2d9bc7c81a1a",
      "parents": [
        "01fc48e8929e45e67527200017cff4e74e4ba054"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Aug 17 09:48:17 2012 -0400"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Fri Aug 17 09:48:17 2012 -0400"
      },
      "message": "ext4: add max_dir_size_kb mount option\n\nVery large directories can cause significant performance problems, or\nperhaps even invoke the OOM killer, if the process is running in a\nhighly constrained memory environment (whether it is VM\u0027s with a small\namount of memory or in a small memory cgroup).\n\nSo it is useful, in cloud server/data center environments, to be able\nto set a filesystem-wide cap on the maximum size of a directory, to\nensure that directories never get larger than a sane size.  We do this\nvia a new mount option, max_dir_size_kb.  If there is an attempt to\ngrow the directory larger than max_dir_size_kb, the system call will\nreturn ENOSPC instead.\n\nGoogle-Bug-Id: 6863013\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n\n\n\n\n"
    },
    {
      "commit": "34e5053fbe88800f5c2c6cbc849abb5a9f390974",
      "tree": "07a5c1a26a2d3d59123115744ee169fb31a5edb9",
      "parents": [
        "f0cd2dbb6cf387c11f87265462e370bb5469299e"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Jul 25 18:12:00 2012 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Aug 04 01:25:20 2012 +0400"
      },
      "message": "Documentation: get rid of write_super\n\nThe \u0027-\u003ewrite_super\u0027 superblock method is gone, and this patch removes all the\nreferences to \u0027write_super\u0027 from various pieces of the kernel documentation.\n\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a0e881b7c189fa2bd76c024dbff91e79511c971d",
      "tree": "0c801918565b08921d21aceee5b326f64d998f5f",
      "parents": [
        "eff0d13f3823f35d70228cd151d2a2c89288ff32",
        "dbc6e0222d79e78925fe20733844a796a4b72cf9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 01 10:26:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 01 10:26:23 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull second vfs pile from Al Viro:\n \"The stuff in there: fsfreeze deadlock fixes by Jan (essentially, the\n  deadlock reproduced by xfstests 068), symlink and hardlink restriction\n  patches, plus assorted cleanups and fixes.\n\n  Note that another fsfreeze deadlock (emergency thaw one) is *not*\n  dealt with - the series by Fernando conflicts a lot with Jan\u0027s, breaks\n  userland ABI (FIFREEZE semantics gets changed) and trades the deadlock\n  for massive vfsmount leak; this is going to be handled next cycle.\n  There probably will be another pull request, but that stuff won\u0027t be\n  in it.\"\n\nFix up trivial conflicts due to unrelated changes next to each other in\ndrivers/{staging/gdm72xx/usb_boot.c, usb/gadget/storage_common.c}\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (54 commits)\n  delousing target_core_file a bit\n  Documentation: Correct s_umount state for freeze_fs/unfreeze_fs\n  fs: Remove old freezing mechanism\n  ext2: Implement freezing\n  btrfs: Convert to new freezing mechanism\n  nilfs2: Convert to new freezing mechanism\n  ntfs: Convert to new freezing mechanism\n  fuse: Convert to new freezing mechanism\n  gfs2: Convert to new freezing mechanism\n  ocfs2: Convert to new freezing mechanism\n  xfs: Convert to new freezing code\n  ext4: Convert to new freezing mechanism\n  fs: Protect write paths by sb_start_write - sb_end_write\n  fs: Skip atime update on frozen filesystem\n  fs: Add freezing handling to mnt_want_write() / mnt_drop_write()\n  fs: Improve filesystem freezing handling\n  switch the protection of percpu_counter list to spinlock\n  nfsd: Push mnt_want_write() outside of i_mutex\n  btrfs: Push mnt_want_write() outside of i_mutex\n  fat: Push mnt_want_write() outside of i_mutex\n  ...\n"
    },
    {
      "commit": "068535f1fef4c90aee23eb7b9b9a71c5b72d7cd0",
      "tree": "ca71858417d881bc8f72f4a2a7b035d041f7a43c",
      "parents": [
        "2d534926205db9ffce4bbbde67cb9b2cee4b835c"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Wed Aug 01 07:56:16 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 01 09:01:46 2012 -0700"
      },
      "message": "locks: remove unused lm_release_private\n\nIn commit 3b6e2723f32d (\"locks: prevent side-effects of\nlocks_release_private before file_lock is initialized\") we removed the\nlast user of lm_release_private without removing the field itself.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "62c230bc1790923a1b35da03596a68a6c9b5b100",
      "tree": "46b300a00929087627e029b0f4d53e486a97ba7f",
      "parents": [
        "18022c5d8627a7a9ba8097a0f238b513fae6f5b8"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Tue Jul 31 16:44:55 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:47 2012 -0700"
      },
      "message": "mm: add support for a filesystem to activate swap files and use direct_IO for writing swap pages\n\nCurrently swapfiles are managed entirely by the core VM by using -\u003ebmap to\nallocate space and write to the blocks directly.  This effectively ensures\nthat the underlying blocks are allocated and avoids the need for the swap\nsubsystem to locate what physical blocks store offsets within a file.\n\nIf the swap subsystem is to use the filesystem information to locate the\nblocks, it is critical that information such as block groups, block\nbitmaps and the block descriptor table that map the swap file were\nresident in memory.  This patch adds address_space_operations that the VM\ncan call when activating or deactivating swap backed by a file.\n\n  int swap_activate(struct file *);\n  int swap_deactivate(struct file *);\n\nThe -\u003eswap_activate() method is used to communicate to the file that the\nVM relies on it, and the address_space should take adequate measures such\nas reserving space in the underlying device, reserving memory for mempools\nand pinning information such as the block descriptor table in memory.  The\n-\u003eswap_deactivate() method is called on sys_swapoff() if -\u003eswap_activate()\nreturned success.\n\nAfter a successful swapfile -\u003eswap_activate, the swapfile is marked\nSWP_FILE and swapper_space.a_ops will proxy to\nsis-\u003eswap_file-\u003ef_mappings-\u003ea_ops using -\u003edirect_io to write swapcache\npages and -\u003ereadpage to read.\n\nIt is perfectly possible that direct_IO be used to read the swap pages but\nit is an unnecessary complication.  Similarly, it is possible that\n-\u003ewritepage be used instead of direct_io to write the pages but filesystem\ndevelopers have stated that calling writepage from the VM is undesirable\nfor a variety of reasons and using direct_IO opens up the possibility of\nwriting back batches of swap pages in the future.\n\n[a.p.zijlstra@chello.nl: Original patch]\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Eric B Munson \u003cemunson@mgebm.net\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nCc: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06fd516c1a504828780fcd81dfe21f94dec4c868",
      "tree": "bc1dba71d3c38c8630af5c60de7ac00a8a6bac4d",
      "parents": [
        "d9c95bdd53a8d9116d269c91ce3d151472e6bcd6"
      ],
      "author": {
        "name": "Valerie Aurora",
        "email": "val@vaaconsulting.com",
        "time": "Tue Jun 12 16:20:48 2012 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jul 31 09:45:55 2012 +0400"
      },
      "message": "Documentation: Correct s_umount state for freeze_fs/unfreeze_fs\n\nfreeze_fs/unfreeze_fs ops are called with s_umount held for write, not read.\n\nSigned-off-by: Valerie Aurora \u003cval@vaaconsulting.com\u003e\nSigned-off-by: Kamal Mostafa \u003ckamal@canonical.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ebfc3b49a7ac25920cb5be5445f602e51d2ea559",
      "tree": "c3241f875dd04ab9f63b4e7ded7ed206e4df1b9f",
      "parents": [
        "72bd866a01fc62ccbc466f3eb7599b14c937e96b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 10 18:05:36 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:34:47 2012 +0400"
      },
      "message": "don\u0027t pass nameidata to -\u003ecreate()\n\nboolean \"does it have to be exclusive?\" flag is passed instead;\nLocal filesystem should just ignore it - the object is guaranteed\nnot to be there yet.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "00cd8dd3bf95f2cc8435b4cac01d9995635c6d0b",
      "tree": "d44be476ced0317ae79f28853734ebe2210ad38e",
      "parents": [
        "201f956e43d4542723514e024d948011dd766d43"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 10 17:13:09 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:34:32 2012 +0400"
      },
      "message": "stop passing nameidata to -\u003elookup()\n\nJust the flags; only NFS cares even about that, but there are\nlegitimate uses for such argument.  And getting rid of that\ncompletely would require splitting -\u003elookup() into a couple\nof methods (at least), so let\u0027s leave that alone for now...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0b728e1911cbe6e24020727c3870628b9653f32a",
      "tree": "cd975921b28300d62f3aca2fc37eef28af89b959",
      "parents": [
        "fa3c56bbda6c2ac2a57d96ba501dbe85cccd312b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 10 16:03:43 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:34:14 2012 +0400"
      },
      "message": "stop passing nameidata * to -\u003ed_revalidate()\n\nJust the lookup flags.  Die, bastard, die...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "30d904947459cca2beb69e0110716f5248b31f2a",
      "tree": "024e2a913266377d234147b14b7eb37017546173",
      "parents": [
        "a4a3bdd778715999ddfeefdc52ab76254580fa76"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 22 12:40:19 2012 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:33:39 2012 +0400"
      },
      "message": "kill struct opendata\n\nJust pass struct file *.  Methods are happier that way...\nThere\u0027s no need to return struct file * from finish_open() now,\nso let it return int.  Next: saner prototypes for parts in\nnamei.c\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d95852777bc8ba6b3ad3397d495c5f9dd8ca8383",
      "tree": "96e9d8b1d33c4f6f7b5ba5be0fa4fd8f77c7a67f",
      "parents": [
        "3d8a00d2099ebc6d5a6e95fadaf861709d9919a8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 22 12:39:14 2012 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:33:35 2012 +0400"
      },
      "message": "make -\u003eatomic_open() return int\n\nChange of calling conventions:\nold\t\tnew\nNULL\t\t1\nfile\t\t0\nERR_PTR(-ve)\t-ve\n\nCaller *knows* that struct file *; no need to return it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "47237687d73cbeae1dd7a133c3fc3d7239094568",
      "tree": "1d267d03246f0a16cbff3c8221ee69dd1521f835",
      "parents": [
        "a8277b9baa6268de386529a33061775bc716198b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jun 10 05:01:45 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:33:31 2012 +0400"
      },
      "message": "-\u003eatomic_open() prototype change - pass int * instead of bool *\n\n... and let finish_open() report having opened the file via that sucker.\nNext step: don\u0027t modify od-\u003efilp at all.\n\n[AV: FILE_CREATE was already used by cifs; Miklos\u0027 fix folded]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d18e9008c377dc6a6d2166a6840bf3a23a5867fd",
      "tree": "6bbb29aea7e931b603bd4cea3cc74a0eda7b6379",
      "parents": [
        "54ef487241e863a6046536ac5b1fcd5d7cde86e5"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Jun 05 15:10:17 2012 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:33:04 2012 +0400"
      },
      "message": "vfs: add i_op-\u003eatomic_open()\n\nAdd a new inode operation which is called on the last component of an open.\nUsing this the filesystem can look up, possibly create and open the file in one\natomic operation.  If it cannot perform this (e.g. the file type turned out to\nbe wrong) it may signal this by returning NULL instead of an open struct file\npointer.\n\ni_op-\u003eatomic_open() is only called if the last component is negative or needs\nlookup.  Handling cached positive dentries here doesn\u0027t add much value: these\ncan be opened using f_op-\u003eopen().  If the cached file turns out to be invalid,\nthe open can be retried, this time using -\u003eatomic_open() with a fresh dentry.\n\nFor now leave the old way of using open intents in lookup and revalidate in\nplace.  This will be removed once all the users are converted.\n\nDavid Howells noticed that if -\u003eatomic_open() opens the file but does not create\nit, handle_truncate() will be called on it even if it is not a regular file.\nFix this by checking the file type in this case too.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "049b3c10eecd0a5f3605fa3cd13f638593213ccb",
      "tree": "853abc0f6cf725ae9b5c340476b7e0fb34e9ae22",
      "parents": [
        "7968ce12e9645c5eb5bb3f4320e43c2e402d580c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jun 09 11:55:20 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 14 16:32:51 2012 +0400"
      },
      "message": "vfs: update documentation on -\u003ei_dentry handling\n\nwe used to need to clean it in RCU callback freeing an inode;\nin 3.2 that requirement went away.  Unfortunately, it hadn\u0027t\nbeen reflected in Documentation/filesystems/porting.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1193755ac6328ad240ba987e6ec41d5e8baf0680",
      "tree": "40bf847d7e3ebaa57b107151d14e6cd1d280cc6d",
      "parents": [
        "4edebed86690eb8db9af3ab85baf4a34e73266cc",
        "0ef97dcfce4179a2eba046b855ee2f91d6f1b414"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 01 10:34:35 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 01 10:34:35 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs changes from Al Viro.\n \"A lot of misc stuff.  The obvious groups:\n   * Miklos\u0027 atomic_open series; kills the damn abuse of\n     -\u003ed_revalidate() by NFS, which was the major stumbling block for\n     all work in that area.\n   * ripping security_file_mmap() and dealing with deadlocks in the\n     area; sanitizing the neighborhood of vm_mmap()/vm_munmap() in\n     general.\n   * -\u003eencode_fh() switched to saner API; insane fake dentry in\n     mm/cleancache.c gone.\n   * assorted annotations in fs (endianness, __user)\n   * parts of Artem\u0027s -\u003es_dirty work (jff2 and reiserfs parts)\n   * -\u003eupdate_time() work from Josef.\n   * other bits and pieces all over the place.\n\n  Normally it would\u0027ve been in two or three pull requests, but\n  signal.git stuff had eaten a lot of time during this cycle ;-/\"\n\nFix up trivial conflicts in Documentation/filesystems/vfs.txt (the\n\u0027truncate_range\u0027 inode method was removed by the VM changes, the VFS\nupdate adds an \u0027update_time()\u0027 method), and in fs/btrfs/ulist.[ch] (due\nto sparse fix added twice, with other changes nearby).\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (95 commits)\n  nfs: don\u0027t open in -\u003ed_revalidate\n  vfs: retry last component if opening stale dentry\n  vfs: nameidata_to_filp(): don\u0027t throw away file on error\n  vfs: nameidata_to_filp(): inline __dentry_open()\n  vfs: do_dentry_open(): don\u0027t put filp\n  vfs: split __dentry_open()\n  vfs: do_last() common post lookup\n  vfs: do_last(): add audit_inode before open\n  vfs: do_last(): only return EISDIR for O_CREAT\n  vfs: do_last(): check LOOKUP_DIRECTORY\n  vfs: do_last(): make ENOENT exit RCU safe\n  vfs: make follow_link check RCU safe\n  vfs: do_last(): use inode variable\n  vfs: do_last(): inline walk_component()\n  vfs: do_last(): make exit RCU safe\n  vfs: split do_lookup()\n  Btrfs: move over to use -\u003eupdate_time\n  fs: introduce inode operation -\u003eupdate_time\n  reiserfs: get rid of resierfs_sync_super\n  reiserfs: mark the superblock as dirty a bit later\n  ...\n"
    },
    {
      "commit": "c3b2da314834499f34cba94f7053e55f6d6f92d8",
      "tree": "7012b569ee9e0781761a8eb388190979441583c7",
      "parents": [
        "033369d1af1264abc23bea2e174aa47cdd212f6f"
      ],
      "author": {
        "name": "Josef Bacik",
        "email": "josef@redhat.com",
        "time": "Mon Mar 26 09:59:21 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jun 01 12:07:25 2012 -0400"
      },
      "message": "fs: introduce inode operation -\u003eupdate_time\n\nBtrfs has to make sure we have space to allocate new blocks in order to modify\nthe inode, so updating time can fail.  We\u0027ve gotten around this by having our\nown file_update_time but this is kind of a pain, and Christoph has indicated he\nwould like to make xfs do something different with atime updates.  So introduce\n-\u003eupdate_time, where we will deal with i_version an a/m/c time updates and\nindicate which changes need to be made.  The normal version just does what it\nhas always done, updates the time and marks the inode dirty, and then\nfilesystems can choose to do something different.\n\nI\u0027ve gone through all of the users of file_update_time and made them check for\nerrors with the exception of the fault code since it\u0027s complicated and I wasn\u0027t\nquite sure what to do there, also Jan is going to be pushing the file time\nupdates into page_mkwrite for those who have it so that should satisfy btrfs and\nmake it not a big deal to check the file_update_time() return code in the\ngeneric fault path. Thanks,\n\nSigned-off-by: Josef Bacik \u003cjosef@redhat.com\u003e\n"
    },
    {
      "commit": "5b172087f99189416d5f47fd7ab5e6fb762a9ba3",
      "tree": "2619444e8ceee40df80814a1004687ac3d7f1eda",
      "parents": [
        "d97b46a64674a267bc41c9e16132ee2a98c3347d"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu May 31 16:26:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:32 2012 -0700"
      },
      "message": "c/r: procfs: add arg_start/end, env_start/end and exit_code members to /proc/$pid/stat\n\nWe would like to have an ability to restore command line arguments and\nprogram environment pointers but first we need to obtain them somehow.\nThus we put these values into /proc/$pid/stat.  The exit_code is needed to\nrestore zombie tasks.\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "818411616baf46ceba0cff6f05af3a9b294734f7",
      "tree": "b6e338e20d4a45b6a05ffa37e6af33e0cc1b50c0",
      "parents": [
        "98ed57eef9f67dfe541be0bca34660ffc88365b2"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu May 31 16:26:43 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:32 2012 -0700"
      },
      "message": "fs, proc: introduce /proc/\u003cpid\u003e/task/\u003ctid\u003e/children entry\n\nWhen we do checkpoint of a task we need to know the list of children the\ntask, has but there is no easy and fast way to generate reverse\nparent-\u003echildren chain from arbitrary \u003cpid\u003e (while a parent pid is\nprovided in \"PPid\" field of /proc/\u003cpid\u003e/status).\n\nSo instead of walking over all pids in the system (creating one big\nprocess tree in memory, just to figure out which children a task has) --\nwe add explicit /proc/\u003cpid\u003e/task/\u003ctid\u003e/children entry, because the kernel\nalready has this kind of information but it is not yet exported.\n\nThis is a first level children, not the whole process tree.\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nReviewed-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "692569946fbf56fbb75d85c57679541f9a3550b4",
      "tree": "74e8dbcec28756ef92a9782b7e17311c47b72597",
      "parents": [
        "51300cef41c9355a7d428fe0714888d3c72a6f2f"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Tue May 29 15:06:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 29 16:22:23 2012 -0700"
      },
      "message": "mm: document the meminfo and vmstat fields of relevance to transparent hugepages\n\nUpdate Documentation/vm/transhuge.txt and\nDocumentation/filesystems/proc.txt with some information on monitoring\ntransparent huge page usage and the associated overhead.\n\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "17cf28afea2a1112f240a3a2da8af883be024811",
      "tree": "ed9e3eb9b1d44118a12e4ecdf369e3b9b3208be1",
      "parents": [
        "3f31d07571eeea18a7d34db9af21d2285b807a17"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Tue May 29 15:06:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 29 16:22:23 2012 -0700"
      },
      "message": "mm/fs: remove truncate_range\n\nRemove vmtruncate_range(), and remove the truncate_range method from\nstruct inode_operations: only tmpfs ever supported it, and tmpfs has now\nconverted over to using the fallocate method of file_operations.\n\nUpdate Documentation accordingly, adding (setlease and) fallocate lines.\nAnd while we\u0027re in mm.h, remove duplicate declarations of shmem_lock() and\nshmem_file_setup(): everyone is now using the ones in shmem_fs.h.\n\nBased-on-patch-by: Cong Wang \u003camwang@redhat.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Cong Wang \u003camwang@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "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": "ece78b7df734726e790dcab207f463401ff80440",
      "tree": "4a0b23c28c6a727d5eebc8a88a22fe3720c425fd",
      "parents": [
        "07acfc2a9349a8ce45b236c2624dad452001966b",
        "0324876628a9c7faf8127e20af29373dc6dec876"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 25 08:14:59 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 25 08:14:59 2012 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs\n\nPull ext2, ext3 and quota fixes from Jan Kara:\n \"Interesting bits are:\n   - removal of a special i_mutex locking subclass (I_MUTEX_QUOTA) since\n     quota code does not need i_mutex anymore in any unusual way.\n   - backport (from ext4) of a fix of a checkpointing bug (missing cache\n     flush) that could lead to fs corruption on power failure\n\n  The rest are just random small fixes \u0026 cleanups.\"\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:\n  ext2: trivial fix to comment for ext2_free_blocks\n  ext2: remove the redundant comment for ext2_export_ops\n  ext3: return 32/64-bit dir name hash according to usage type\n  quota: Get rid of nested I_MUTEX_QUOTA locking subclass\n  quota: Use precomputed value of sb_dqopt in dquot_quota_sync\n  ext2: Remove i_mutex use from ext2_quota_write()\n  reiserfs: Remove i_mutex use from reiserfs_quota_write()\n  ext4: Remove i_mutex use from ext4_quota_write()\n  ext3: Remove i_mutex use from ext3_quota_write()\n  quota: Fix double lock in add_dquot_ref() with CONFIG_QUOTA_DEBUG\n  jbd: Write journal superblock with WRITE_FUA after checkpointing\n  jbd: protect all log tail updates with j_checkpoint_mutex\n  jbd: Split updating of journal superblock and marking journal empty\n  ext2: do not register write_super within VFS\n  ext2: Remove s_dirt handling\n  ext2: write superblock only once on unmount\n  ext3: update documentation with barrier\u003d1 default\n  ext3: remove max_debt in find_group_orlov()\n  jbd: Refine commit writeout logic\n"
    },
    {
      "commit": "e8650a08232e75274304b812ff04cfce9af9671c",
      "tree": "0609c942e6ca99016e788ff2ee2bbed1bb9215a4",
      "parents": [
        "3c2c4b73aa79e4a1b601710b59e092441175f4bb",
        "f70d4a95edc7da87f39cd8b603ba131df2c198ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 19:22:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 22 19:22:50 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\nPull trivial updates from Jiri Kosina:\n \"As usual, it\u0027s mostly typo fixes, redundant code elimination and some\n  documentation updates.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (57 commits)\n  edac, mips: don\u0027t change code that has been removed in edac/mips tree\n  xtensa: Change mail addresses of Hannes Weiner and Oskar Schirmer\n  lib: Change mail address of Oskar Schirmer\n  net: Change mail address of Oskar Schirmer\n  arm/m68k: Change mail address of Sebastian Hess\n  i2c: Change mail address of Oskar Schirmer\n  net: Fix tcp_build_and_update_options comment in struct tcp_sock\n  atomic64_32.h: fix parameter naming mismatch\n  Kconfig: replace \"--- help ---\" with \"---help---\"\n  c2port: fix bogus Kconfig \"default no\"\n  edac: Fix spelling errors.\n  qla1280: Remove redundant NULL check before release_firmware() call\n  remoteproc: remove redundant NULL check before release_firmware()\n  qla2xxx: Remove redundant NULL check before release_firmware() call.\n  aic94xx: Get rid of redundant NULL check before release_firmware() call\n  tehuti: delete redundant NULL check before release_firmware()\n  qlogic: get rid of a redundant test for NULL before call to release_firmware()\n  bna: remove redundant NULL test before release_firmware()\n  tg3: remove redundant NULL test before release_firmware() call\n  typhoon: get rid of redundant conditional before all to release_firmware()\n  ...\n"
    },
    {
      "commit": "62c8d922783a0fa41a9b4ca004f0467d6ca9be48",
      "tree": "f9090aa5e65edab8528a0b2bb5d29a629a6e439d",
      "parents": [
        "06930b94d19a8641f8a2dc9d6ec27e2a5a39d17c",
        "500242ac6152b8f20903f043a86e6fdd51478845"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:21:20 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 21 19:21:20 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw\n\nPull GFS2 changes from Steven Whitehouse.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw: (24 commits)\n  GFS2: Fix quota adjustment return code\n  GFS2: Add rgrp information to block_alloc trace point\n  GFS2: Eliminate unused \"new\" parameter to gfs2_meta_indirect_buffer\n  GFS2: Update glock doc to add new stats info\n  GFS2: Update main gfs2 doc\n  GFS2: Remove redundant metadata block type check\n  GFS2: Fix sgid propagation when using ACLs\n  GFS2: eliminate log elements and simplify\n  GFS2: Eliminate vestigial sd_log_le_rg\n  GFS2: Eliminate needless parameter from function gfs2_setbit\n  GFS2: Log code fixes\n  GFS2: Remove unused argument from gfs2_internal_read\n  GFS2: Remove bd_list_tr\n  GFS2: Remove duplicate log code\n  GFS2: Clean up log write code path\n  GFS2: Use variable rather than qa to determine if unstuff necessary\n  GFS2: Change variable blk to biblk\n  GFS2: Fix function parameter comments in rgrp.c\n  GFS2: Eliminate offset parameter to gfs2_setbit\n  GFS2: Use slab for block reservation memory\n  ...\n"
    },
    {
      "commit": "ee446fd5e6dafee4a16fd1bd345d2571dcfd6f5d",
      "tree": "6c2400cff6bd26c8bfb06bd523b227a0e3aa232e",
      "parents": [
        "211ed865108e24697b44bee5daac502ee6bdd4a4"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed May 09 22:41:59 2012 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue May 15 20:23:16 2012 -0400"
      },
      "message": "tokenring: delete all remaining driver support\n\nThis represents the mass deletion of the of the tokenring support.\n\nIt gets rid of:\n  - the net/tr.c which the drivers depended on\n  - the drivers/net component\n  - the Kbuild infrastructure around it\n  - any tokenring related CONFIG_ settings in any defconfigs\n  - the tokenring headers in the include/linux dir\n  - the firmware associated with the tokenring drivers.\n  - any associated token ring documentation.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "2ebc3f8b3ecf66ddf31285aad1b5db4245c2c04a",
      "tree": "3f5acd6ad60678de1c7bb3a6e7f34b2b804a4f7c",
      "parents": [
        "49f30789fc33c4516fbe123f05ea4313866381d3"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 10 12:41:40 2012 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 10 12:41:40 2012 +0100"
      },
      "message": "GFS2: Update glock doc to add new stats info\n\nWe recently added some glock statistics to GFS2, so this is\na docs update to explain what they all mean. It is based\nupon the checkin comment of the patch in question.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "49f30789fc33c4516fbe123f05ea4313866381d3",
      "tree": "27d1c522d26ee703c5ecded175129be19153e7a2",
      "parents": [
        "6de1e2f34a7864883da7b4a68756836d80952fb9"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 10 11:45:31 2012 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu May 10 11:45:31 2012 +0100"
      },
      "message": "GFS2: Update main gfs2 doc\n\nVarious items were a bit out of date, so this is a refresh to the\nlatest info.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\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": "c94bed8e1960587d3d93664b11ebf22677c1a541",
      "tree": "e63acbfb5c6950c137f1b9d89ddc147c82188f23",
      "parents": [
        "3b729f7647875624dc498b65f3244b2edc9f4a07"
      ],
      "author": {
        "name": "Masanari Iida",
        "email": "standby24x7@gmail.com",
        "time": "Tue Apr 10 00:22:13 2012 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Apr 16 14:37:13 2012 +0200"
      },
      "message": "Documentation: Fix typo in multiple files in Documentation\n\nCorrect multiple spelling typo in Documentation.\n\nSigned-off-by: Masanari Iida \u003cstandby24x7@gmail.com\u003e\nAcked-by: Rob Landley \u003crob@landley.net\u003e\nReported-by: Anders Larsen \u003cal@alarsen.net\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "ee65244b210e00060c2d4d8eff4ad9b18400f588",
      "tree": "9b6cd7f93c2b6d199c1a5ee5770446ecc4e3cbb7",
      "parents": [
        "ac0dd2474822fbd7d8e8cca12495e6b4760556cd"
      ],
      "author": {
        "name": "Stefan Hajnoczi",
        "email": "stefanha@linux.vnet.ibm.com",
        "time": "Wed Mar 28 09:32:32 2012 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Apr 11 11:12:45 2012 +0200"
      },
      "message": "ext3: update documentation with barrier\u003d1 default\n\nCommit 00eacd6 (\"ext3: make ext3 mount default to barrier\u003d1\") changed\nthe default barrier mount option for ext3.  The documentation needs to\nbe updated, so this patch does that.\n\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Stefan Hajnoczi \u003cstefanha@linux.vnet.ibm.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "b1349f2536efcb592927ab6f8687c36c3c124f6b",
      "tree": "8ebbd66a9dd159bb5e039f88efce65d98ea03fc3",
      "parents": [
        "640946f20390e492694f9d7470656f2262385951"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Apr 02 19:02:48 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Apr 09 01:39:24 2012 -0400"
      },
      "message": "typo fix in Documentation/filesystems/vfs.txt\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a591afc01d9e48affbacb365558a31e53c85af45",
      "tree": "9bb91f4eb94ec69fc4706c4944788ec5f3586063",
      "parents": [
        "820d41cf0cd0e94a5661e093821e2e5c6b36a9d8",
        "31796ac4e8f0e88f5c10f1ad6dab8f19bebe44a4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 18:12:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 18:12:23 2012 -0700"
      },
      "message": "Merge branch \u0027x86-x32-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x32 support for x86-64 from Ingo Molnar:\n \"This tree introduces the X32 binary format and execution mode for x86:\n  32-bit data space binaries using 64-bit instructions and 64-bit kernel\n  syscalls.\n\n  This allows applications whose working set fits into a 32 bits address\n  space to make use of 64-bit instructions while using a 32-bit address\n  space with shorter pointers, more compressed data structures, etc.\"\n\nFix up trivial context conflicts in arch/x86/{Kconfig,vdso/vma.c}\n\n* \u0027x86-x32-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (71 commits)\n  x32: Fix alignment fail in struct compat_siginfo\n  x32: Fix stupid ia32/x32 inversion in the siginfo format\n  x32: Add ptrace for x32\n  x32: Switch to a 64-bit clock_t\n  x32: Provide separate is_ia32_task() and is_x32_task() predicates\n  x86, mtrr: Use explicit sizing and padding for the 64-bit ioctls\n  x86/x32: Fix the binutils auto-detect\n  x32: Warn and disable rather than error if binutils too old\n  x32: Only clear TIF_X32 flag once\n  x32: Make sure TS_COMPAT is cleared for x32 tasks\n  fs: Remove missed -\u003efds_bits from cessation use of fd_set structs internally\n  fs: Fix close_on_exec pointer in alloc_fdtable\n  x32: Drop non-__vdso weak symbols from the x32 VDSO\n  x32: Fix coding style violations in the x32 VDSO code\n  x32: Add x32 VDSO support\n  x32: Allow x32 to be configured\n  x32: If configured, add x32 system calls to system call tables\n  x32: Handle process creation\n  x32: Signal-related system calls\n  x86: Add #ifdef CONFIG_COMPAT to \u003casm/sys_ia32.h\u003e\n  ...\n"
    },
    {
      "commit": "69e1aaddd63104f37021d0b0f6abfd9623c9134c",
      "tree": "14ad49741b428d270b681694bb2df349465455b9",
      "parents": [
        "56b59b429b4c26e5e730bc8c3d837de9f7d0a966",
        "9d547c35799a4ddd235f1565cec2fff6c9263504"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 10:02:55 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 28 10:02:55 2012 -0700"
      },
      "message": "Merge tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\nPull ext4 updates for 3.4 from Ted Ts\u0027o:\n \"Ext4 commits for 3.3 merge window; mostly cleanups and bug fixes\n\n  The changes to export dirty_writeback_interval are from Artem\u0027s s_dirt\n  cleanup patch series.  The same is true of the change to remove the\n  s_dirt helper functions which never got used by anyone in-tree.  I\u0027ve\n  run these changes by Al Viro, and am carrying them so that Artem can\n  more easily fix up the rest of the file systems during the next merge\n  window.  (Originally we had hopped to remove the use of s_dirt from\n  ext4 during this merge window, but his patches had some bugs, so I\n  ultimately ended dropping them from the ext4 tree.)\"\n\n* tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (66 commits)\n  vfs: remove unused superblock helpers\n  mm: export dirty_writeback_interval\n  ext4: remove useless s_dirt assignment\n  ext4: write superblock only once on unmount\n  ext4: do not mark superblock as dirty unnecessarily\n  ext4: correct ext4_punch_hole return codes\n  ext4: remove restrictive checks for EOFBLOCKS_FL\n  ext4: always set then trimmed blocks count into len\n  ext4: fix trimmed block count accunting\n  ext4: fix start and len arguments handling in ext4_trim_fs()\n  ext4: update s_free_{inodes,blocks}_count during online resize\n  ext4: change some printk() calls to use ext4_msg() instead\n  ext4: avoid output message interleaving in ext4_error_\u003cfoo\u003e()\n  ext4: remove trailing newlines from ext4_msg() and ext4_error() messages\n  ext4: add no_printk argument validation, fix fallout\n  ext4: remove redundant \"EXT4-fs: \" from uses of ext4_msg\n  ext4: give more helpful error message in ext4_ext_rm_leaf()\n  ext4: remove unused code from ext4_ext_map_blocks()\n  ext4: rewrite punch hole to use ext4_ext_remove_space()\n  jbd2: cleanup journal tail after transaction commit\n  ...\n"
    },
    {
      "commit": "f63d395d47f37a4fe771e6d4b1db9d2cdae5ffc5",
      "tree": "3448a14ae965802adb963762cadeb9989ce4caa2",
      "parents": [
        "643ac9fc5429e85b8b7f534544b80bcc4f34c367",
        "5a7c9eec9fde1da0e3adf0a4ddb64ff2a324a492"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:53:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:53:47 2012 -0700"
      },
      "message": "Merge tag \u0027nfs-for-3.4-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client updates for Linux 3.4 from Trond Myklebust:\n \"New features include:\n   - Add NFS client support for containers.\n\n     This should enable most of the necessary functionality, including\n     lockd support, and support for rpc.statd, NFSv4 idmapper and\n     RPCSEC_GSS upcalls into the correct network namespace from which\n     the mount system call was issued.\n\n   - NFSv4 idmapper scalability improvements\n\n     Base the idmapper cache on the keyring interface to allow\n     concurrent access to idmapper entries.  Start the process of\n     migrating users from the single-threaded daemon-based approach to\n     the multi-threaded request-key based approach.\n\n   - NFSv4.1 implementation id.\n\n     Allows the NFSv4.1 client and server to mutually identify each\n     other for logging and debugging purposes.\n\n   - Support the \u0027vers\u003d4.1\u0027 mount option for mounting NFSv4.1 instead of\n     having to use the more counterintuitive \u0027vers\u003d4,minorversion\u003d1\u0027.\n\n   - SUNRPC tracepoints.\n\n     Start the process of adding tracepoints in order to improve\n     debugging of the RPC layer.\n\n   - pNFS object layout support for autologin.\n\n  Important bugfixes include:\n\n   - Fix a bug in rpc_wake_up/rpc_wake_up_status that caused them to\n     fail to wake up all tasks when applied to priority waitqueues.\n\n   - Ensure that we handle read delegations correctly, when we try to\n     truncate a file.\n\n   - A number of fixes for NFSv4 state manager loops (mostly to do with\n     delegation recovery).\"\n\n* tag \u0027nfs-for-3.4-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (224 commits)\n  NFS: fix sb-\u003es_id in nfs debug prints\n  xprtrdma: Remove assumption that each segment is \u003c\u003d PAGE_SIZE\n  xprtrdma: The transport should not bug-check when a dup reply is received\n  pnfs-obj: autologin: Add support for protocol autologin\n  NFS: Remove nfs4_setup_sequence from generic rename code\n  NFS: Remove nfs4_setup_sequence from generic unlink code\n  NFS: Remove nfs4_setup_sequence from generic read code\n  NFS: Remove nfs4_setup_sequence from generic write code\n  NFS: Fix more NFS debug related build warnings\n  SUNRPC/LOCKD: Fix build warnings when CONFIG_SUNRPC_DEBUG is undefined\n  nfs: non void functions must return a value\n  SUNRPC: Kill compiler warning when RPC_DEBUG is unset\n  SUNRPC/NFS: Add Kbuild dependencies for NFS_DEBUG/RPC_DEBUG\n  NFS: Use cond_resched_lock() to reduce latencies in the commit scans\n  NFSv4: It is not safe to dereference lsp-\u003els_state in release_lockowner\n  NFS: ncommit count is being double decremented\n  SUNRPC: We must not use list_for_each_entry_safe() in rpc_wake_up()\n  Try using machine credentials for RENEW calls\n  NFSv4.1: Fix a few issues in filelayout_commit_pagelist\n  NFSv4.1: Clean ups and bugfixes for the pNFS read/writeback/commit code\n  ...\n"
    },
    {
      "commit": "95211279c5ad00a317c98221d7e4365e02f20836",
      "tree": "2ddc8625378d2915b8c96392f3cf6663b705ed55",
      "parents": [
        "5375871d432ae9fc581014ac117b96aaee3cd0c7",
        "12724850e8064f64b6223d26d78c0597c742c65a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:04:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:04:48 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge first batch of patches from Andrew Morton:\n \"A few misc things and all the MM queue\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (92 commits)\n  memcg: avoid THP split in task migration\n  thp: add HPAGE_PMD_* definitions for !CONFIG_TRANSPARENT_HUGEPAGE\n  memcg: clean up existing move charge code\n  mm/memcontrol.c: remove unnecessary \u0027break\u0027 in mem_cgroup_read()\n  mm/memcontrol.c: remove redundant BUG_ON() in mem_cgroup_usage_unregister_event()\n  mm/memcontrol.c: s/stealed/stolen/\n  memcg: fix performance of mem_cgroup_begin_update_page_stat()\n  memcg: remove PCG_FILE_MAPPED\n  memcg: use new logic for page stat accounting\n  memcg: remove PCG_MOVE_LOCK flag from page_cgroup\n  memcg: simplify move_account() check\n  memcg: remove EXPORT_SYMBOL(mem_cgroup_update_page_stat)\n  memcg: kill dead prev_priority stubs\n  memcg: remove PCG_CACHE page_cgroup flag\n  memcg: let css_get_next() rely upon rcu_read_lock()\n  cgroup: revert ss_id_lock to spinlock\n  idr: make idr_get_next() good for rcu_read_lock()\n  memcg: remove unnecessary thp check in page stat accounting\n  memcg: remove redundant returns\n  memcg: enum lru_list lru\n  ...\n"
    },
    {
      "commit": "b76437579d1344b612cf1851ae610c636cec7db0",
      "tree": "37c31c957f1159635258168e27e49b90347e37aa",
      "parents": [
        "9e81130b7ce23050335b1197bb51743517b5b9d0"
      ],
      "author": {
        "name": "Siddhesh Poyarekar",
        "email": "siddhesh.poyarekar@gmail.com",
        "time": "Wed Mar 21 16:34:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:54:58 2012 -0700"
      },
      "message": "procfs: mark thread stack correctly in proc/\u003cpid\u003e/maps\n\nStack for a new thread is mapped by userspace code and passed via\nsys_clone.  This memory is currently seen as anonymous in\n/proc/\u003cpid\u003e/maps, which makes it difficult to ascertain which mappings\nare being used for thread stacks.  This patch uses the individual task\nstack pointers to determine which vmas are actually thread stacks.\n\nFor a multithreaded program like the following:\n\n\t#include \u003cpthread.h\u003e\n\n\tvoid *thread_main(void *foo)\n\t{\n\t\twhile(1);\n\t}\n\n\tint main()\n\t{\n\t\tpthread_t t;\n\t\tpthread_create(\u0026t, NULL, thread_main, NULL);\n\t\tpthread_join(t, NULL);\n\t}\n\nproc/PID/maps looks like the following:\n\n    00400000-00401000 r-xp 00000000 fd:0a 3671804                            /home/siddhesh/a.out\n    00600000-00601000 rw-p 00000000 fd:0a 3671804                            /home/siddhesh/a.out\n    019ef000-01a10000 rw-p 00000000 00:00 0                                  [heap]\n    7f8a44491000-7f8a44492000 ---p 00000000 00:00 0\n    7f8a44492000-7f8a44c92000 rw-p 00000000 00:00 0\n    7f8a44c92000-7f8a44e3d000 r-xp 00000000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a44e3d000-7f8a4503d000 ---p 001ab000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a4503d000-7f8a45041000 r--p 001ab000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a45041000-7f8a45043000 rw-p 001af000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a45043000-7f8a45048000 rw-p 00000000 00:00 0\n    7f8a45048000-7f8a4505f000 r-xp 00000000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4505f000-7f8a4525e000 ---p 00017000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4525e000-7f8a4525f000 r--p 00016000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4525f000-7f8a45260000 rw-p 00017000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a45260000-7f8a45264000 rw-p 00000000 00:00 0\n    7f8a45264000-7f8a45286000 r-xp 00000000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45457000-7f8a4545a000 rw-p 00000000 00:00 0\n    7f8a45484000-7f8a45485000 rw-p 00000000 00:00 0\n    7f8a45485000-7f8a45486000 r--p 00021000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45486000-7f8a45487000 rw-p 00022000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45487000-7f8a45488000 rw-p 00000000 00:00 0\n    7fff6273b000-7fff6275c000 rw-p 00000000 00:00 0                          [stack]\n    7fff627ff000-7fff62800000 r-xp 00000000 00:00 0                          [vdso]\n    ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]\n\nHere, one could guess that 7f8a44492000-7f8a44c92000 is a stack since\nthe earlier vma that has no permissions (7f8a44e3d000-7f8a4503d000) but\nthat is not always a reliable way to find out which vma is a thread\nstack.  Also, /proc/PID/maps and /proc/PID/task/TID/maps has the same\ncontent.\n\nWith this patch in place, /proc/PID/task/TID/maps are treated as \u0027maps\nas the task would see it\u0027 and hence, only the vma that that task uses as\nstack is marked as [stack].  All other \u0027stack\u0027 vmas are marked as\nanonymous memory.  /proc/PID/maps acts as a thread group level view,\nwhere all thread stack vmas are marked as [stack:TID] where TID is the\nprocess ID of the task that uses that vma as stack, while the process\nstack is marked as [stack].\n\nSo /proc/PID/maps will look like this:\n\n    00400000-00401000 r-xp 00000000 fd:0a 3671804                            /home/siddhesh/a.out\n    00600000-00601000 rw-p 00000000 fd:0a 3671804                            /home/siddhesh/a.out\n    019ef000-01a10000 rw-p 00000000 00:00 0                                  [heap]\n    7f8a44491000-7f8a44492000 ---p 00000000 00:00 0\n    7f8a44492000-7f8a44c92000 rw-p 00000000 00:00 0                          [stack:1442]\n    7f8a44c92000-7f8a44e3d000 r-xp 00000000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a44e3d000-7f8a4503d000 ---p 001ab000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a4503d000-7f8a45041000 r--p 001ab000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a45041000-7f8a45043000 rw-p 001af000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a45043000-7f8a45048000 rw-p 00000000 00:00 0\n    7f8a45048000-7f8a4505f000 r-xp 00000000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4505f000-7f8a4525e000 ---p 00017000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4525e000-7f8a4525f000 r--p 00016000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4525f000-7f8a45260000 rw-p 00017000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a45260000-7f8a45264000 rw-p 00000000 00:00 0\n    7f8a45264000-7f8a45286000 r-xp 00000000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45457000-7f8a4545a000 rw-p 00000000 00:00 0\n    7f8a45484000-7f8a45485000 rw-p 00000000 00:00 0\n    7f8a45485000-7f8a45486000 r--p 00021000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45486000-7f8a45487000 rw-p 00022000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45487000-7f8a45488000 rw-p 00000000 00:00 0\n    7fff6273b000-7fff6275c000 rw-p 00000000 00:00 0                          [stack]\n    7fff627ff000-7fff62800000 r-xp 00000000 00:00 0                          [vdso]\n    ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]\n\nThus marking all vmas that are used as stacks by the threads in the\nthread group along with the process stack.  The task level maps will\nhowever like this:\n\n    00400000-00401000 r-xp 00000000 fd:0a 3671804                            /home/siddhesh/a.out\n    00600000-00601000 rw-p 00000000 fd:0a 3671804                            /home/siddhesh/a.out\n    019ef000-01a10000 rw-p 00000000 00:00 0                                  [heap]\n    7f8a44491000-7f8a44492000 ---p 00000000 00:00 0\n    7f8a44492000-7f8a44c92000 rw-p 00000000 00:00 0                          [stack]\n    7f8a44c92000-7f8a44e3d000 r-xp 00000000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a44e3d000-7f8a4503d000 ---p 001ab000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a4503d000-7f8a45041000 r--p 001ab000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a45041000-7f8a45043000 rw-p 001af000 fd:00 2097482                    /lib64/libc-2.14.90.so\n    7f8a45043000-7f8a45048000 rw-p 00000000 00:00 0\n    7f8a45048000-7f8a4505f000 r-xp 00000000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4505f000-7f8a4525e000 ---p 00017000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4525e000-7f8a4525f000 r--p 00016000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a4525f000-7f8a45260000 rw-p 00017000 fd:00 2099938                    /lib64/libpthread-2.14.90.so\n    7f8a45260000-7f8a45264000 rw-p 00000000 00:00 0\n    7f8a45264000-7f8a45286000 r-xp 00000000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45457000-7f8a4545a000 rw-p 00000000 00:00 0\n    7f8a45484000-7f8a45485000 rw-p 00000000 00:00 0\n    7f8a45485000-7f8a45486000 r--p 00021000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45486000-7f8a45487000 rw-p 00022000 fd:00 2097348                    /lib64/ld-2.14.90.so\n    7f8a45487000-7f8a45488000 rw-p 00000000 00:00 0\n    7fff6273b000-7fff6275c000 rw-p 00000000 00:00 0\n    7fff627ff000-7fff62800000 r-xp 00000000 00:00 0                          [vdso]\n    ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]\n\nwhere only the vma that is being used as a stack by *that* task is\nmarked as [stack].\n\nAnalogous changes have been made to /proc/PID/smaps,\n/proc/PID/numa_maps, /proc/PID/task/TID/smaps and\n/proc/PID/task/TID/numa_maps. Relevant snippets from smaps and\nnuma_maps:\n\n    [siddhesh@localhost ~ ]$ pgrep a.out\n    1441\n    [siddhesh@localhost ~ ]$ cat /proc/1441/smaps | grep \"\\[stack\"\n    7f8a44492000-7f8a44c92000 rw-p 00000000 00:00 0                          [stack:1442]\n    7fff6273b000-7fff6275c000 rw-p 00000000 00:00 0                          [stack]\n    [siddhesh@localhost ~ ]$ cat /proc/1441/task/1442/smaps | grep \"\\[stack\"\n    7f8a44492000-7f8a44c92000 rw-p 00000000 00:00 0                          [stack]\n    [siddhesh@localhost ~ ]$ cat /proc/1441/task/1441/smaps | grep \"\\[stack\"\n    7fff6273b000-7fff6275c000 rw-p 00000000 00:00 0                          [stack]\n    [siddhesh@localhost ~ ]$ cat /proc/1441/numa_maps | grep \"stack\"\n    7f8a44492000 default stack:1442 anon\u003d2 dirty\u003d2 N0\u003d2\n    7fff6273a000 default stack anon\u003d3 dirty\u003d3 N0\u003d3\n    [siddhesh@localhost ~ ]$ cat /proc/1441/task/1442/numa_maps | grep \"stack\"\n    7f8a44492000 default stack anon\u003d2 dirty\u003d2 N0\u003d2\n    [siddhesh@localhost ~ ]$ cat /proc/1441/task/1441/numa_maps | grep \"stack\"\n    7fff6273a000 default stack anon\u003d3 dirty\u003d3 N0\u003d3\n\n[akpm@linux-foundation.org: checkpatch fixes]\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: Siddhesh Poyarekar \u003csiddhesh.poyarekar@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@gmail.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Jamie Lokier \u003cjamie@shareable.org\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "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": "18d98f6c04991dd3c12acf6f39cea40e9510640a",
      "tree": "2057833de8c2c6bb4e3530eed44249b3941b99d8",
      "parents": [
        "c6bfa1a16377b42496ecc0490a33516c0e414e7b"
      ],
      "author": {
        "name": "Sachin Bhamare",
        "email": "sbhamare@panasas.com",
        "time": "Mon Mar 19 20:47:58 2012 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 21 09:31:47 2012 -0400"
      },
      "message": "pnfs-obj: autologin: Add support for protocol autologin\n\nThe pnfs-objects protocol mandates that we autologin into devices not\npresent in the system, according to information specified in the\nget_device_info returned from the server.\n\nThe Protocol specifies two login hints.\n1. An IP address:port combination\n2. A string URI which is constructed as a URL with a protocol prefix\n   followed by :// and a string as address. For each  protocol prefix\n   the string-address format might be different.\n\nWe only support the second option. The first option is just redundant\nto the second one.\nNOTE: The Kernel part of autologin does not parse the URI string. It\njust channels it to a user-mode script. So any new login protocols should\nonly update the user-mode script which is a part of the nfs-utils package,\nbut the Kernel need not change.\n\nWe implement the autologin by using the call_usermodehelper() API.\n(Thanks to Steve Dickson \u003csteved@redhat.com\u003e for pointing it out)\nSo there is no running daemon needed, and/or special setup.\n\nWe Add the osd_login_prog Kernel module parameters which defaults to:\n\t/sbin/osd_login\n\nKernel try\u0027s to upcall the program specified in osd_login_prog. If the file is\nnot found or the execution fails Kernel will disable any farther upcalls, by\nzeroing out  osd_login_prog, Until Admin re-enables it by setting the\nosd_login_prog parameter to a proper program.\n\nAlso add text about the osd_login program command line API to:\n\tDocumentation/filesystems/nfs/pnfs.txt\nand documentation of the new  osd_login_prog  module parameter to:\n\tDocumentation/kernel-parameters.txt\n\nTODO: Add timeout option in the case osd_login program gets\n              stuck\n\nSigned-off-by: Sachin Bhamare \u003csbhamare@panasas.com\u003e\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "69a7aebcf019ab3ff5764525ad6858fbe23bb86d",
      "tree": "7211df5704b743a7667159748c670a9744164482",
      "parents": [
        "d464c92b5234227c1698862a1906827e2e398ae0",
        "f1f996b66cc3908a8f5ffccc2ff41840e92f3b10"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:12:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:12:50 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\nPull trivial tree from Jiri Kosina:\n \"It\u0027s indeed trivial -- mostly documentation updates and a bunch of\n  typo fixes from Masanari.\n\n  There are also several linux/version.h include removals from Jesper.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (101 commits)\n  kcore: fix spelling in read_kcore() comment\n  constify struct pci_dev * in obvious cases\n  Revert \"char: Fix typo in viotape.c\"\n  init: fix wording error in mm_init comment\n  usb: gadget: Kconfig: fix typo for \u0027different\u0027\n  Revert \"power, max8998: Include linux/module.h just once in drivers/power/max8998_charger.c\"\n  writeback: fix fn name in writeback_inodes_sb_nr_if_idle() comment header\n  writeback: fix typo in the writeback_control comment\n  Documentation: Fix multiple typo in Documentation\n  tpm_tis: fix tis_lock with respect to RCU\n  Revert \"media: Fix typo in mixer_drv.c and hdmi_drv.c\"\n  Doc: Update numastat.txt\n  qla4xxx: Add missing spaces to error messages\n  compiler.h: Fix typo\n  security: struct security_operations kerneldoc fix\n  Documentation: broken URL in libata.tmpl\n  Documentation: broken URL in filesystems.tmpl\n  mtd: simplify return logic in do_map_probe()\n  mm: fix comment typo of truncate_inode_pages_range\n  power: bq27x00: Fix typos in comment\n  ...\n"
    },
    {
      "commit": "88187398cc5fa6650f38b9dcd5464667f468888f",
      "tree": "eb9d45cdbe4506340b1131951bc7f2dba2f2a796",
      "parents": [
        "a051f71ce97c53cde3ac64de64eb02d658d9308e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 06:00:24 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:53 2012 -0400"
      },
      "message": "debugfs-related mode_t whack-a-mole\n\nall of those should be umode_t...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5d026c7242201e7c9d0e12fcb2bcaffead9d59fd",
      "tree": "3a3663fd35e3077574e30cf705a614ede69925eb",
      "parents": [
        "516cdb68e5b44ca1bef31619f5da8d5e9e298f88"
      ],
      "author": {
        "name": "Kai Bankett",
        "email": "chaosman@ontika.net",
        "time": "Fri Feb 17 05:59:20 2012 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:38 2012 -0400"
      },
      "message": "fs: initial qnx6fs addition\n\nAdds support for qnx6fs readonly support to the linux kernel.\n\n* Mount option\n  The option mmi_fs can be used to mount Harman Becker/Audi MMI 3G\n  HDD qnx6fs filesystems.\n\n* Documentation\n  A high level filesystem stucture description can be found in the\n  Documentation/filesystems directory. (qnx6.txt)\n\n* Additional features\n  - Active (stable) superblock selection\n  - Superblock checksum check (enforced)\n  - Supports mount of qnx6 filesystems with to host different endianess\n  - Automatic endianess detection\n  - Longfilename support (with non-enfocing crc check)\n  - All blocksizes (512, 1024, 2048 and 4096 supported)\n\nSigned-off-by: Kai Bankett \u003cchaosman@ontika.net\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "32991ab305ace7017c62f8eecbe5eb36dc32e13b",
      "tree": "7a802091fa9f152f38577a4eeaa24937c4b4b2c9",
      "parents": [
        "318ceed088497d1ca839b1172518ac4cc7096b82"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Feb 12 22:15:47 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:37 2012 -0400"
      },
      "message": "vfs: d_alloc_root() gone\n\nall callers converted to d_make_root() by now\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "40e47125e6c5110383b0176d7b9d530f2936b1ae",
      "tree": "9653ac1f586cbfe36286c2d987c9330078eb37ad",
      "parents": [
        "4e70daaf05a181b6968e29e72e9f1c16a183e92c"
      ],
      "author": {
        "name": "Masanari Iida",
        "email": "standby24x7@gmail.com",
        "time": "Sun Mar 04 23:16:11 2012 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Mar 07 16:08:24 2012 +0100"
      },
      "message": "Documentation: Fix multiple typo in Documentation\n\nSigned-off-by: Masanari Iida \u003cstandby24x7@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "1f8ee46b40efb13f8ce0d69ec6360badc7a39663",
      "tree": "2f23a90b0d16e4c36fdd6926648e785d89b8f761",
      "parents": [
        "c8fd0dd3dd683d00a7bf23bef53f8b694e7952d8"
      ],
      "author": {
        "name": "Masanari Iida",
        "email": "standby24x7@gmail.com",
        "time": "Mon Feb 13 22:42:58 2012 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 21 11:43:45 2012 +0100"
      },
      "message": "Documentation: Fix Broken URL \"freshmeat\"\n\nFix broken URL in documents \"freshmeat\" to \"freecode\" in\nDocumentation/filesystems/ramfs-rootfs-initramfs.txt,\nDocumentation/scsi/scsi-generic.txt\nDocumentation/usb/mtouchusb.txt\n\nSigned-off-by: Masanari Iida \u003cstandby24x7@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "661aa520577046192e50467b28c9c5726a8a9fb1",
      "tree": "865c7a6da7d31fa50314c0faf02034997c4f40cd",
      "parents": [
        "43e625d84fa7daca0ad46f1dbc965b04fd204afe"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 20 17:53:04 2012 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Feb 20 17:53:04 2012 -0500"
      },
      "message": "ext4: remove the resize mount option\n\nThe resize mount option seems to be of limited value,\nespecially in the age of online resize2fs.  Nuke it.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "43e625d84fa7daca0ad46f1dbc965b04fd204afe",
      "tree": "5a42f4efec45c59edb2967b439135a5a603d9525",
      "parents": [
        "1592d2c5574edadb0871cc4ac84265bdd18b2d68"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 20 17:53:04 2012 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Mon Feb 20 17:53:04 2012 -0500"
      },
      "message": "ext4: remove the journal\u003dupdate mount option\n\nThe V2 journal format was introduced around ten years ago,\nfor ext3. It seems highly unlikely that anyone will need this\nmigration option for ext4.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "1dce27c5aa6770e9d195f2bb7db1db3d4dde5591",
      "tree": "4ad3ffeee95cb5b10e047b7cb9bdbb48cfc734e0",
      "parents": [
        "8b3d1cda4f5ff0d7c2ae910ea8fd03493996912f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Feb 16 17:49:42 2012 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sun Feb 19 10:30:52 2012 -0800"
      },
      "message": "Wrap accesses to the fd_sets in struct fdtable\n\nWrap accesses to the fd_sets in struct fdtable (for recording open files and\nclose-on-exec flags) so that we can move away from using fd_sets since we\nabuse the fd_set structs by not allocating the full-sized structure under\nnormal circumstances and by non-core code looking at the internals of the\nfd_sets.\n\nThe first abuse means that use of FD_ZERO() on these fd_sets is not permitted,\nsince that cannot be told about their abnormal lengths.\n\nThis introduces six wrapper functions for setting, clearing and testing\nclose-on-exec flags and fd-is-open flags:\n\n\tvoid __set_close_on_exec(int fd, struct fdtable *fdt);\n\tvoid __clear_close_on_exec(int fd, struct fdtable *fdt);\n\tbool close_on_exec(int fd, const struct fdtable *fdt);\n\tvoid __set_open_fd(int fd, struct fdtable *fdt);\n\tvoid __clear_open_fd(int fd, struct fdtable *fdt);\n\tbool fd_is_open(int fd, const struct fdtable *fdt);\n\nNote that I\u0027ve prepended \u0027__\u0027 to the names of the set/clear functions because\nthey require the caller to hold a lock to use them.\n\nNote also that I haven\u0027t added wrappers for looking behind the scenes at the\nthe array.  Possibly that should exist too.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120216174942.23314.1364.stgit@warthog.procyon.org.uk\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a602bea3e7ccc5ce3da61d2c18245c4058983926",
      "tree": "8a8ff57d6c86111df6713fe2c567c6888efd35aa",
      "parents": [
        "3cd0f37a2cc9e4d6188df10041a2441eaa41d991"
      ],
      "author": {
        "name": "Bryan Schumaker",
        "email": "bjschuma@netapp.com",
        "time": "Thu Jan 26 16:54:25 2012 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Feb 06 18:48:01 2012 -0500"
      },
      "message": "NFS: Update idmapper documentation\n\nSigned-off-by: Bryan Schumaker \u003cbjschuma@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d6e486868cde585842d55ba3b6ec57af090fc343",
      "tree": "37ec47c6e7a28ed21807899eae3e24dd38a3cc93",
      "parents": [
        "9875bb480cc89d9b690f7028aadf7e58454f0dae"
      ],
      "author": {
        "name": "Ludwig Nussel",
        "email": "ludwig.nussel@suse.de",
        "time": "Wed Jan 25 11:52:28 2012 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 26 11:28:49 2012 -0800"
      },
      "message": "debugfs: add mode, uid and gid options\n\nCautious admins may want to restrict access to debugfs. Currently a\nmanual chown/chmod e.g. in an init script is needed to achieve that.\nDistributions that want to make the mount options configurable need\nto add extra config files. By allowing to set the root inode\u0027s uid,\ngid and mode via mount options no such hacks are needed anymore.\nInstead configuration becomes straight forward via fstab.\n\nSigned-off-by: Ludwig Nussel \u003cludwig.nussel@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0b48d42235caf627121f440b57d376f48a9af8b6",
      "tree": "400967c5fcb1cd08bbc0e1739e229f9717590f19",
      "parents": [
        "8e63dd6e1c589ba99a18df9cbaa41c3178607641",
        "7a6ef8c72314f254c107c6a9ed7cb201961ee05a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 12:26:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 12:26:41 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.3\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-3.3\u0027 of git://linux-nfs.org/~bfields/linux: (31 commits)\n  nfsd4: nfsd4_create_clid_dir return value is unused\n  NFSD: Change name of extended attribute containing junction\n  svcrpc: don\u0027t revert to SVC_POOL_DEFAULT on nfsd shutdown\n  svcrpc: fix double-free on shutdown of nfsd after changing pool mode\n  nfsd4: be forgiving in the absence of the recovery directory\n  nfsd4: fix spurious 4.1 post-reboot failures\n  NFSD: forget_delegations should use list_for_each_entry_safe\n  NFSD: Only reinitilize the recall_lru list under the recall lock\n  nfsd4: initialize special stateid\u0027s at compile time\n  NFSd: use network-namespace-aware cache registering routines\n  SUNRPC: create svc_xprt in proper network namespace\n  svcrpc: update outdated BKL comment\n  nfsd41: allow non-reclaim open-by-fh\u0027s in 4.1\n  svcrpc: avoid memory-corruption on pool shutdown\n  svcrpc: destroy server sockets all at once\n  svcrpc: make svc_delete_xprt static\n  nfsd: Fix oops when parsing a 0 length export\n  nfsd4: Use kmemdup rather than duplicating its implementation\n  nfsd4: add a separate (lockowner, inode) lookup\n  nfsd4: fix CONFIG_NFSD_FAULT_INJECTION compile error\n  ...\n"
    },
    {
      "commit": "96e80a7851b44f3decaac0625665cd64e550b71d",
      "tree": "a24d9f46c43b5fcf824c49b93d37982ab668aade",
      "parents": [
        "57e6a7dde8cfca9ac1d6702cf9104d22bc11ba90",
        "3d4a1c80c4eb97187b3a61b3bfa8c804327f7a45"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 13 10:34:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 13 10:34:57 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next:\n  Squashfs: fix i_blocks calculation with extended regular files\n  Squashfs: fix mount time sanity check for corrupted superblock\n  Squashfs: optimise squashfs_cache_get entry search\n  Squashfs: Update documentation to include xattrs\n  Squashfs: add missing block release on error condition\n"
    },
    {
      "commit": "1a52bb0b686844021597d190e562ab55d1210104",
      "tree": "7edf13509869a6a7f1f488a679f15ff6c3057c54",
      "parents": [
        "8638094e956a47dbb9a25166705a91e9a0981d52",
        "83eb26af0db71f2dfe551405c55d982288fa6178"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 13 10:29:21 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 13 10:29:21 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:\n  ceph: ensure prealloc_blob is in place when removing xattr\n  rbd: initialize snap_rwsem in rbd_add()\n  ceph: enable/disable dentry complete flags via mount option\n  vfs: export symbol d_find_any_alias()\n  ceph: always initialize the dentry in open_root_dentry()\n  libceph: remove useless return value for osd_client __send_request()\n  ceph: avoid iput() while holding spinlock in ceph_dir_fsync\n  ceph: avoid useless dget/dput in encode_fh\n  ceph: dereference pointer after checking for NULL\n  crush: fix force for non-root TAKE\n  ceph: remove unnecessary d_fsdata conditional checks\n  ceph: Use kmemdup rather than duplicating its implementation\n\nFix up conflicts in fs/ceph/super.c (d_alloc_root() failure handling vs\nalways initialize the dentry in open_root_dentry)\n"
    },
    {
      "commit": "b3f7f573a20081910e34e99cbc91831f4f02f1ff",
      "tree": "2c0aea64b3be4c24f84be6a5275f7202e0dde594",
      "parents": [
        "067bce1a06c1f84146f873a598cd7c3a28eee1d5"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu Jan 12 17:20:53 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:13 2012 -0800"
      },
      "message": "c/r: procfs: add start_data, end_data, start_brk members to /proc/$pid/stat v4\n\nThe mm-\u003estart_code/end_code, mm-\u003estart_data/end_data, mm-\u003estart_brk are\ninvolved into calculation of program text/data segment sizes (which might\nbe seen in /proc/\u003cpid\u003e/statm) and into brk() call final address.\n\nFor restore we need to know all these values.  While\nmm-\u003estart_code/end_code already present in /proc/$pid/stat, the rest\nmembers are not, so this patch brings them in.\n\nThe restore procedure of these members is addressed in another patch using\nprctl().\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nReviewed-by: Kees Cook \u003ckeescook@chromium.org\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a40dc6cc2e121abcbd1b22583ef5447763df510c",
      "tree": "1c747cfabf33c6c9ad56811fabd22285816fc27a",
      "parents": [
        "46f72b349290d2bd7aecea38f02609d814332df6"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Tue Jan 10 09:12:55 2012 -0800"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Thu Jan 12 11:00:40 2012 -0800"
      },
      "message": "ceph: enable/disable dentry complete flags via mount option\n\nEnable/disable use of the dentry dir \u0027complete\u0027 flag via a mount option.\nThis lets the admin control whether ceph uses the dcache to satisfy\nnegative lookups or readdir when it has the entire directory contents in\nits cache.\n\nThis is purely a performance optimization; correctness is guaranteed\nwhether it is enabled or not.\n\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "40ba587923ae67090d9f141c1d3c951be5c1420e",
      "tree": "342a72fc0ee13a0d2496ef970b64dfeadf1355d2",
      "parents": [
        "54c2c5761febcca46c8037d3a81612991e6c209a",
        "6b550f9495947fc279d12c38feaf98500e8d0646"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:42:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:42:48 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (aka \"Andrew\u0027s patch-bomb\")\n\nAndrew elucidates:\n - First installmeant of MM.  We have a HUGE number of MM patches this\n   time.  It\u0027s crazy.\n - MAINTAINERS updates\n - backlight updates\n - leds\n - checkpatch updates\n - misc ELF stuff\n - rtc updates\n - reiserfs\n - procfs\n - some misc other bits\n\n* akpm: (124 commits)\n  user namespace: make signal.c respect user namespaces\n  workqueue: make alloc_workqueue() take printf fmt and args for name\n  procfs: add hidepid\u003d and gid\u003d mount options\n  procfs: parse mount options\n  procfs: introduce the /proc/\u003cpid\u003e/map_files/ directory\n  procfs: make proc_get_link to use dentry instead of inode\n  signal: add block_sigmask() for adding sigmask to current-\u003eblocked\n  sparc: make SA_NOMASK a synonym of SA_NODEFER\n  reiserfs: don\u0027t lock root inode searching\n  reiserfs: don\u0027t lock journal_init()\n  reiserfs: delay reiserfs lock until journal initialization\n  reiserfs: delete comments referring to the BKL\n  drivers/rtc/interface.c: fix alarm rollover when day or month is out-of-range\n  drivers/rtc/rtc-twl.c: add DT support for RTC inside twl4030/twl6030\n  drivers/rtc/: remove redundant spi driver bus initialization\n  drivers/rtc/rtc-jz4740.c: make jz4740_rtc_driver static\n  drivers/rtc/rtc-mc13xxx.c: make mc13xxx_rtc_idtable static\n  rtc: convert drivers/rtc/* to use module_platform_driver()\n  drivers/rtc/rtc-wm831x.c: convert to devm_kzalloc()\n  drivers/rtc/rtc-wm831x.c: remove unused period IRQ handler\n  ...\n"
    },
    {
      "commit": "0499680a42141d86417a8fbaa8c8db806bea1201",
      "tree": "eb2aeb559bf5418476319aa81fa4f6ed3659bbc0",
      "parents": [
        "97412950b10e64f347aec4a9b759395c2465adf6"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segooon@gmail.com",
        "time": "Tue Jan 10 15:11:31 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 10 16:30:54 2012 -0800"
      },
      "message": "procfs: add hidepid\u003d and gid\u003d mount options\n\nAdd support for mount options to restrict access to /proc/PID/\ndirectories.  The default backward-compatible \"relaxed\" behaviour is left\nuntouched.\n\nThe first mount option is called \"hidepid\" and its value defines how much\ninfo about processes we want to be available for non-owners:\n\nhidepid\u003d0 (default) means the old behavior - anybody may read all\nworld-readable /proc/PID/* files.\n\nhidepid\u003d1 means users may not access any /proc/\u003cpid\u003e/ directories, but\ntheir own.  Sensitive files like cmdline, sched*, status are now protected\nagainst other users.  As permission checking done in proc_pid_permission()\nand files\u0027 permissions are left untouched, programs expecting specific\nfiles\u0027 modes are not confused.\n\nhidepid\u003d2 means hidepid\u003d1 plus all /proc/PID/ will be invisible to other\nusers.  It doesn\u0027t mean that it hides whether a process exists (it can be\nlearned by other means, e.g.  by kill -0 $PID), but it hides process\u0027 euid\nand egid.  It compicates intruder\u0027s task of gathering info about running\nprocesses, whether some daemon runs with elevated privileges, whether\nanother user runs some sensitive program, whether other users run any\nprogram at all, etc.\n\ngid\u003dXXX defines a group that will be able to gather all processes\u0027 info\n(as in hidepid\u003d0 mode).  This group should be used instead of putting\nnonroot user in sudoers file or something.  However, untrusted users (like\ndaemons, etc.) which are not supposed to monitor the tasks in the whole\nsystem should not be added to the group.\n\nhidepid\u003d1 or higher is designed to restrict access to procfs files, which\nmight reveal some sensitive private information like precise keystrokes\ntimings:\n\nhttp://www.openwall.com/lists/oss-security/2011/11/05/3\n\nhidepid\u003d1/2 doesn\u0027t break monitoring userspace tools.  ps, top, pgrep, and\nconky gracefully handle EPERM/ENOENT and behave as if the current user is\nthe only user running processes.  pstree shows the process subtree which\ncontains \"pstree\" process.\n\nNote: the patch doesn\u0027t deal with setuid/setgid issues of keeping\npreopened descriptors of procfs files (like\nhttps://lkml.org/lkml/2011/2/7/368).  We rely on that the leaked\ninformation like the scheduling counters of setuid apps doesn\u0027t threaten\nanybody\u0027s privacy - only the user started the setuid program may read the\ncounters.\n\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Theodore Tso \u003ctytso@MIT.EDU\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ff9cb1c4eead5e4c292e75cd3170a82d66944101",
      "tree": "cdb132a39e550a9b7b28ea67544cb86cd6ebdb6e",
      "parents": [
        "e4e11180dfa545233e5145919b75b7fac88638df",
        "d50f2ab6f050311dbf7b8f5501b25f0bf64a439b"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 10 11:54:07 2012 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Tue Jan 10 11:54:07 2012 -0500"
      },
      "message": "Merge branch \u0027for_linus\u0027 into for_linus_merged\n\nConflicts:\n\tfs/ext4/ioctl.c\n"
    }
  ],
  "next": "972b2c719990f91eb3b2310d44ef8a2d38955a14"
}
