)]}'
{
  "log": [
    {
      "commit": "816724e65c72a90a44fbad0ef0b59b186c85fa90",
      "tree": "421fa29aedff988e392f92780637553e275d37a0",
      "parents": [
        "70ac4385a13f78bc478f26d317511893741b05bd",
        "d384ea691fe4ea8c2dd5b9b8d9042eb181776f18"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 24 08:41:41 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jun 24 13:07:53 2006 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of /home/trondmy/kernel/linux-2.6/\n\nConflicts:\n\n\tfs/nfs/inode.c\n\tfs/super.c\n\nFix conflicts between patch \u0027NFS: Split fs/nfs/inode.c\u0027 and patch\n\u0027VFS: Permit filesystem to override root dentry on mount\u0027\n"
    },
    {
      "commit": "726c334223180e3c0197cc980a432681370d4baf",
      "tree": "8327b354bb3dc959a6606051ae6f8d4d035e38a2",
      "parents": [
        "454e2398be9b9fa30433fccc548db34d19aa9958"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jun 23 02:02:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:45 2006 -0700"
      },
      "message": "[PATCH] VFS: Permit filesystem to perform statfs with a known root dentry\n\nGive the statfs superblock operation a dentry pointer rather than a superblock\npointer.\n\nThis complements the get_sb() patch.  That reduced the significance of\nsb-\u003es_root, allowing NFS to place a fake root there.  However, NFS does\nrequire a dentry to use as a target for the statfs operation.  This permits\nthe root in the vfsmount to be used instead.\n\nlinux/mount.h has been added where necessary to make allyesconfig build\nsuccessfully.\n\nInterest has also been expressed for use with the FUSE and XFS filesystems.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Nathan Scott \u003cnathans@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5528f911b4c43a5de5da34bcbd7e3f2a62503617",
      "tree": "2c888b1dc0b3743855d795a1a02730637d6ba0aa",
      "parents": [
        "1f5ce9e93aa96a867f195ed45f6f77935175f12e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:34:17 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:34:17 2006 -0400"
      },
      "message": "VFS: Add shrink_submounts()\n\nAllow a submount to be marked as being \u0027shrinkable\u0027 by means of the\nvfsmount-\u003emnt_flags, and then add a function \u0027shrink_submounts()\u0027 which\nattempts to recursively unmount these submounts.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bb4a58bf46473e3e83d84054bbc110db3a0f85e4",
      "tree": "41ee38709c36f86d565c1a3f311b8fa9546b3c8e",
      "parents": [
        "da6d503aa0a75ec44f17d985a2b500077e7f6a74"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:34:15 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:34:15 2006 -0400"
      },
      "message": "VFS: Add GPL_EXPORTED function vfs_kern_mount()\n\ndo_kern_mount() does not allow the kernel to use private mount interfaces\nwithout exposing the same interfaces to userland. The problem is that the\nfilesystem is referenced by name, thus meaning that it and its mount\ninterface must be registered in the global filesystem list.\n\nvfs_kern_mount() passes the struct file_system_type as an explicit\nparameter in order to overcome this limitation.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fc33a7bb9c6dd8f6e4a014976200f8fdabb3a45c",
      "tree": "26f4d676de476075545e58057aa5d8c57618741d",
      "parents": [
        "0d456fa4261f43433287a10fe3ec04a9818fac64"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jan 09 20:52:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:34 2006 -0800"
      },
      "message": "[PATCH] per-mountpoint noatime/nodiratime\n\nTurn noatime and nodiratime into per-mount instead of per-sb flags.\n\nAfter all the preparations this is a rather trivial patch.  The mount code\nneeds to treat the two options as per-mount instead of per-superblock, and\ntouch_atime needs to be changed to check the new MNT_ flags in addition to\nthe MS_ flags that are kept for filesystems that are always\nnoatime/nodiratime but not user settable anymore.  Besides that core code\nonly nfs needed an update because it\u0027s leaving atime updates to the server\nand thus sets the S_NOATIME flag on every inode, but needs to know whether\nit\u0027s a real noatime mount for an getattr optimization.\n\nWhile we\u0027re at it I\u0027ve killed the IS_NOATIME/IS_NODIRATIME macros that were\nonly used by touch_atime.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bf066c7db775a04bd761f8ea206f5522d0cf40ff",
      "tree": "e4bfe3bdd8d98a137eaf163a26eb1153af970dfd",
      "parents": [
        "4a0d11fae57989e24fe2ee3eff6d62d72db9716c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Sun Jan 08 01:03:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:56 2006 -0800"
      },
      "message": "[PATCH] shared mounts: cleanup\n\nSmall cleanups in shared mounts code.\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: Ram Pai \u003clinuxram@us.ibm.com\u003e\nCc: \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9676f0c6389b62bd6b24d77d4b3abdbcfa32d0f2",
      "tree": "fd7d965c6d646cf7e4cfd35e866723927f6cfe8b",
      "parents": [
        "5afe00221389998a25d611dc7941c06580c29eb6"
      ],
      "author": {
        "name": "Ram Pai",
        "email": "linuxram@us.ibm.com",
        "time": "Mon Nov 07 17:21:20 2005 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 18:18:11 2005 -0800"
      },
      "message": "[PATCH] unbindable mounts\n\nAn unbindable mount does not forward or receive propagation.  Also\nunbindable mount disallows bind mounts.  The semantics is as follows.\n\nBind semantics:\n  It is invalid to bind mount an unbindable mount.\n\nMove semantics:\n  It is invalid to move an unbindable mount under shared mount.\n\nClone-namespace semantics:\n  If a mount is unbindable in the parent namespace, the corresponding\n  cloned mount in the child namespace becomes unbindable too.  Note:\n  there is subtle difference, unbindable mounts cannot be bind mounted\n  but can be cloned during clone-namespace.\n\nSigned-off-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a58b0eb8e64b78d9315a5491955e78b1391d42e5",
      "tree": "546f77cb0338c817ef1e34d8ebbc6eaf0e5d6be9",
      "parents": [
        "a05964f3917c7c55368c229d7985f8e7c9977e97"
      ],
      "author": {
        "name": "Ram Pai",
        "email": "linuxram@us.ibm.com",
        "time": "Mon Nov 07 17:20:48 2005 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 18:18:11 2005 -0800"
      },
      "message": "[PATCH] introduce slave mounts\n\nA slave mount always has a master mount from which it receives\nmount/umount events.  Unlike shared mount the event propagation does not\nflow from the slave mount to the master.\n\nSigned-off-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "03e06e68ff76294e53ffa898cb844d2a997b043e",
      "tree": "df17444b2c9b89e1eed75e09d46ea36c40ebd1df",
      "parents": [
        "07b20889e3052c7e77d6a6a54e7e83446eb1ba84"
      ],
      "author": {
        "name": "Ram Pai",
        "email": "linuxram@us.ibm.com",
        "time": "Mon Nov 07 17:19:33 2005 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 18:18:10 2005 -0800"
      },
      "message": "[PATCH] introduce shared mounts\n\nThis creates shared mounts.  A shared mount when bind-mounted to some\nmountpoint, propagates mount/umount events to each other.  All the\nshared mounts that propagate events to each other belong to the same\npeer-group.\n\nSigned-off-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "07b20889e3052c7e77d6a6a54e7e83446eb1ba84",
      "tree": "616ac5b7eef3092e105d3b41e7bd2052558b064b",
      "parents": [
        "390c684367de37e1c2f9005cf92f7a746c69fdd3"
      ],
      "author": {
        "name": "Ram Pai",
        "email": "linuxram@us.ibm.com",
        "time": "Mon Nov 07 17:19:07 2005 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 18:18:10 2005 -0800"
      },
      "message": "[PATCH] beginning of the shared-subtree proper\n\nA private mount does not forward or receive propagation.  This patch\nprovides user the ability to convert any mount to private.\n\nSigned-off-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b7b1ace2d9d06d76bce7481a045c22ed75e35dd",
      "tree": "458f9f16b855ed0347013048c13d3a29031f00ee",
      "parents": [
        "254ce8dc882f8d69e5d49ed4807c94a61976fb15"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 07 17:13:39 2005 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 18:18:09 2005 -0800"
      },
      "message": "[PATCH] saner handling of auto_acct_off() and DQUOT_OFF() in umount\n\nThe way we currently deal with quota and process accounting that might\nkeep vfsmount busy at umount time is inherently broken; we try to turn\nthem off just in case (not quite correctly, at that) and\n\n  a) pray umount doesn\u0027t fail (otherwise they\u0027ll stay turned off)\n  b) pray nobody doesn anything funny just as we turn quota off\n\nMoreover, LSM provides hooks for doing the same sort of broken logics.\n\nThe proper way to deal with that is to introduce the second kind of\nreference to vfsmount.  Semantics:\n\n - when the last normal reference is dropped, all special ones are\n   converted to normal ones and if there had been any, cleanup is done.\n - normal reference can be cloned into a special one\n - special reference can be converted to normal one; that\u0027s a no-op if\n   we\u0027d already passed the point of no return (i.e.  mntput() had\n   converted special references to normal and started cleanup).\n\nThe way it works: e.g. starting process accounting converts the vfsmount\nreference pinned by the opened file into special one and turns it back\nto normal when it gets shut down; acct_auto_close() is done when no\nnormal references are left.  That way it does *not* obstruct umount(2)\nand it silently gets turned off when the last normal reference to\nvfsmount is gone.  Which is exactly what we want...\n\nThe same should be done by LSM module that holds some internal\nreferences to vfsmount and wants to shut them down on umount - it should\nmake them special and security_sb_umount_close() will be called exactly\nwhen the last normal reference to vfsmount is gone.\n\nquota handling is even simpler - we don\u0027t use normal file IO anymore, so\nthere\u0027s no need to hold vfsmounts at all.  DQUOT_OFF() is done from\ndeactivate_super(), where it really belongs.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d53d9f16ea95a91ad4aa114809dcde486ca4000d",
      "tree": "f9cacb8d23e209653c6af2d30791ee93593ceda3",
      "parents": [
        "22a4427972af371fddb49c0184a93851ad51070d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Tue Jul 12 13:58:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 16:00:58 2005 -0700"
      },
      "message": "[PATCH] name_to_dev_t warning fix\n\nkernel/power/disk.c needs a declaration of name_to_dev_t() in scope.  mount.h\nseems like an appropriate choice.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "751c404b8f63e8199d5f2f8f2bcfd69b41d11caa",
      "tree": "d69c76ceadbaa6f5ca3fd7be881201e87ef93377",
      "parents": [
        "55e700b924f9e0ba24e3a071d1097d050b05abe6"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu Jul 07 17:57:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:52 2005 -0700"
      },
      "message": "[PATCH] namespace: rename _mntput to mntput_no_expire\n\nThis patch renames _mntput() to something a little more descriptive:\nmntput_no_expire().\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "55e700b924f9e0ba24e3a071d1097d050b05abe6",
      "tree": "36a5d2401211c8fe27f6210c6fddb6db699b8015",
      "parents": [
        "732dbef606f22a23cb3e1029d613977ec645e8ae"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu Jul 07 17:57:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:52 2005 -0700"
      },
      "message": "[PATCH] namespace: rename mnt_fslink to mnt_expire\n\nThis patch renames vfsmount-\u003emnt_fslink to something a little more\ndescriptive: vfsmount-\u003emnt_expire.\n\nSigned-off-by: Mike Waychison \u003cmichael.waychison@sun.com\u003e\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
