)]}'
{
  "log": [
    {
      "commit": "d240e06713007bba309b074a386b7072b73c31a6",
      "tree": "3c9133ae5b349aeec8c0a93338b9dd13b9c9dac1",
      "parents": [
        "cdce214e39814fd46d47e0e660ca3ddf3fdce8a6"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 09 21:51:53 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:34 2010 +0900"
      },
      "message": "nilfs2: disallow remount of snapshot from/to a regular mount\n\nSnapshots and regular ro/rw mounts are essentially-different within\nthe meaning whether the checkpoint is static or not and is marked with\na snapshot flag or not.\n\nThe current implemenation, however, allows to remount a snapshot to a\nregular rw-mount if the checkpoint number equals the latest one.\n\nThis transition is actually impossible since changing a checkpoint to\na snapshot makes another checkpoint, thus the condition is never\nsatisfied.\n\nThis fixes the weird state of affairs, and specifically separates\nsnapshots and regular rw/ro-mounts.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "b87ca91948843472c05ae49e4c5e1714001d24c9",
      "tree": "d7609414530230fb5f1c9b8910b83915fa8c7251",
      "parents": [
        "e2d1591a13118b2bccb41af06830a2904478a514"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 09 10:05:21 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:34 2010 +0900"
      },
      "message": "nilfs2: update comment on deactivate_super at nilfs_get_sb\n\ndeactivate_super was replaced with deactivate_locked_super, but the\ncomment of nilfs_get_sb remain unchanged.  This renews the comment.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "e2d1591a13118b2bccb41af06830a2904478a514",
      "tree": "5ac3c5bddc08acdfe75c2b8ea970f057b4190f75",
      "parents": [
        "4571b82cdcd076a3b8ecaddcf9846cb52f9979e5"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 09 09:48:31 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:34 2010 +0900"
      },
      "message": "nilfs2: replace MS_VERBOSE with MS_SILENT\n\nMS_VERBOSE is deprecated.  This replaces it with MS_SILENT in\nreference to get_sb_bdev function.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "4571b82cdcd076a3b8ecaddcf9846cb52f9979e5",
      "tree": "f7a69603d07fbfd14da3e0abaa13dd493d4c2f19",
      "parents": [
        "13e905592b3daacb6ec27a5a4169afe725c3b668"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 09 03:01:32 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:33 2010 +0900"
      },
      "message": "nilfs2: add missing initialization of s_mode\n\nAn fmode_t argument is passed to kill_block_super() through s_mode\nmember of the super_block structure.  This is used to release the\nblock device with the same mode, however, nilfs does not set s_mode\nanywhere.\n\nThis modifies nilfs_get_sb function to properly initialize the s_mode\nmember.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "13e905592b3daacb6ec27a5a4169afe725c3b668",
      "tree": "1eb7a70bf662d1efcea73e4e06239dee333dbdf8",
      "parents": [
        "400ade845cb9930552e791bbd658a0953f68499d"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 09 02:57:57 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:33 2010 +0900"
      },
      "message": "nilfs2: fix misuse of open_bdev_exclusive/close_bdev_exclusive\n\nThe second argument of open_bdev_exclusive/close_bdev_exclusive takes\nfmode_t flags instead of mount flags.  This fixes the misuse.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "34cb9b5c973ac06449b96884be932da9a9b99819",
      "tree": "5009abb0edc749f78d60f7f1e8c098b1ab5fb509",
      "parents": [
        "4e819509cba664e7cbfba5c4d1517df4dfda86f5"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat May 01 10:07:07 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:32 2010 +0900"
      },
      "message": "nilfs2: add missing endian conversion on super block magic number\n\nThis adds missing endian conversions in comparision of the magic\nnumber of super blocks.  It was coincidence that prior versions didn\u0027t\nincur problems; the upper byte of the magic number happened to be\nequal to the lower byte.  But, semantically it\u0027s wrong to depend on\nthis.\n\nThis won\u0027t change anything else nor suffer any compatibility issues.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "9f130263f30233a44a3175db3218dd89af143d64",
      "tree": "66e48783682bdffaf56eb1c06823b39bc25d0836",
      "parents": [
        "41c88bd74d372db5102996a4ea6167a725c24b5e"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Fri Apr 09 23:09:53 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:30 2010 +0900"
      },
      "message": "nilfs2: add a print message after loading nilfs2\n\nPrinting a message after loading a file system is a practice. Add this to\nprovide a better user-friendly experience.\n\nSigned-off-by: Li Hong \u003clihong.hi@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "41c88bd74d372db5102996a4ea6167a725c24b5e",
      "tree": "98b8e208d41f7760458e82569e297843415bbe7d",
      "parents": [
        "aaed1d5bfac459ead9aaad324e7fe3326250f50a"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Tue Apr 06 00:54:11 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:30 2010 +0900"
      },
      "message": "nilfs2: cleanup multi kmem_cache_{create,destroy} code\n\nThis cleanup patch gives several improvements:\n\n - Moving all kmem_cache_{create_destroy} calls into one place, which removes\n some small function calls, cleans up error check code and clarify the logic.\n\n - Mark all initial code in __init section.\n\n - Remove some very obvious comments.\n\n - Adjust some declarations.\n\n - Fix some space-tab issues.\n\nSigned-off-by: Li Hong \u003clihong.hi@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "277a6a34175dcb0ee98dceee619e0e3190347a25",
      "tree": "bda68b681972c608b78de87f5e856a649f2a04e7",
      "parents": [
        "73bb48869b14fd5094b9ec173a2bf86bc0e464d4"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Apr 02 18:02:33 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:30 2010 +0900"
      },
      "message": "nilfs2: change default of \u0027errors\u0027 mount option to \u0027remount-ro\u0027 mode\n\nLike ext3, nilfs has \u0027errors\u0027 mount option to allow specifying desired\nbehavior on severe errors.\n\nCurrently, the default action is \u0027errors\u003dcontinue\u0027 and has potential\nto advance filesystem corruption for severe errors.\n\nThis will change the action to \u0027errors\u003dremount-ro\u0027 to avoid the issue.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "973bec34bfc1bc2465646181653d67f767d418c8",
      "tree": "05c84524a1c1fb273e399a9eb99c099e84499182",
      "parents": [
        "54413b825ca502b9384edabf972c512c29d64010"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 03 21:00:48 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 03 07:36:01 2010 -0700"
      },
      "message": "nilfs2: fix sync silent failure\n\nAs of 32a88aa1, __sync_filesystem() will return 0 if s_bdi is not set.\nAnd nilfs does not set s_bdi anywhere.  I noticed this problem by the\nwarning introduced by the recent commit 5129a469 (\"Catch filesystem\nlacking s_bdi\").\n\n WARNING: at fs/super.c:959 vfs_kern_mount+0xc5/0x14e()\n Hardware name: PowerEdge 2850\n Modules linked in: nilfs2 loop tpm_tis tpm tpm_bios video shpchp pci_hotplug output dcdbas\n Pid: 3773, comm: mount.nilfs2 Not tainted 2.6.34-rc6-debug #38\n Call Trace:\n  [\u003cc1028422\u003e] warn_slowpath_common+0x60/0x90\n  [\u003cc102845f\u003e] warn_slowpath_null+0xd/0x10\n  [\u003cc1095936\u003e] vfs_kern_mount+0xc5/0x14e\n  [\u003cc1095a03\u003e] do_kern_mount+0x32/0xbd\n  [\u003cc10a811e\u003e] do_mount+0x671/0x6d0\n  [\u003cc1073794\u003e] ? __get_free_pages+0x1f/0x21\n  [\u003cc10a684f\u003e] ? copy_mount_options+0x2b/0xe2\n  [\u003cc107b634\u003e] ? strndup_user+0x48/0x67\n  [\u003cc10a81de\u003e] sys_mount+0x61/0x8f\n  [\u003cc100280c\u003e] sysenter_do_call+0x12/0x32\n\nThis ensures to set s_bdi for nilfs and fixes the sync silent failure.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c91cea11dfec65968ff9d1b4239c1eab63bf72fd",
      "tree": "2749de610dd52786d7fb3ccdd3e1b5872feb544d",
      "parents": [
        "55480a06e9ee8d05d0e580bf46611df489653c76"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 04:01:27 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 10:29:51 2010 +0900"
      },
      "message": "nilfs2: remove whitespaces before quoted newlines\n\nThis kills the following checkpatch warnings:\n\n WARNING: unnecessary whitespace before a quoted newline\n #869: FILE: super.c:869:\n +     \t           \"remount to a different snapshot. \\n\",\n\n WARNING: unnecessary whitespace before a quoted newline\n #389: FILE: the_nilfs.c:389:\n +     \t    printk(KERN_ERR \"NILFS: too short segment. \\n\");\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "7a65004bbaa6a21a0438aac9c64814e46084dc3f",
      "tree": "3153527bf645a5ee5865f9059b08282ec00e99f5",
      "parents": [
        "1621562b6ac55aa69239895d90276577547a5f62"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 03:32:40 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 10:29:51 2010 +0900"
      },
      "message": "nilfs2: fix various typos in comments\n\nThis fixes various typos I found in comments of nilfs2.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "e605f0a7249d8002c660af379f884896cbaa45ae",
      "tree": "8daadf8848cd8f6c7817c399e568a2fcecdf0255",
      "parents": [
        "dcd76186955e2b595c378dbe5b9bb6c8c5374b10"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Dec 09 00:57:52 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Feb 13 12:26:03 2010 +0900"
      },
      "message": "nilfs2: get rid of s_dirt flag use\n\nThis replaces s_dirt flag use in nilfs with a new flag added on the\nnilfs object.  The s_dirt flag was used to indicate if\nsop-\u003ewrite_super() should be called, however the current version of\nnilfs does not use the callback.  Thus, it can be replaced with the\nown flag.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Jiro SEKIBA \u003cjir@unicus.jp\u003e\n"
    },
    {
      "commit": "fe5f171bb272946ce5fbf843ce2f8467d0d41b9a",
      "tree": "fc3917cd7b3fae605e464f94af815dc9d9cce36f",
      "parents": [
        "7512487e6d6459e4c3f9c7cedc53050a6c30e387"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jan 31 19:46:40 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Feb 13 12:26:03 2010 +0900"
      },
      "message": "nilfs2: fix potential hang in nilfs_error on errors\u003dremount-ro\n\nnilfs_error() calls nilfs_detach_segment_constructor() if\nerrors\u003dremount-ro option is specified, and this may lead to a hang due\nto recursive locking of, for instance, nilfs-\u003ens_segctor_sem and\nothers.\n\nIn this case, detaching segment constructor is not necessary because\nread-only flag is set to the filesystem and further writes are\nblocked.\n\nThis fixes the potential hang issue by removing the\nnilfs_detach_segment_constructor() call from nilfs_error.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "e902ec9906e844f4613fa6190c6fa65f162dc86e",
      "tree": "ee0ea829ae04a30fb01c119f050a3967304e55ba",
      "parents": [
        "724e6d3fe8003c3f60bf404bf22e4e331327c596"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Sat Jan 30 18:06:35 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Feb 13 12:26:02 2010 +0900"
      },
      "message": "nilfs2: issue discard request after cleaning segments\n\nThis adds a function to send discard requests for given array of\nsegment numbers, and calls the function when garbage collection\nsucceeded.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "a95161aaa801c18c52b2e7cf3d6b4b141c00a20a",
      "tree": "62d9989ea04a37ae276101de8d151eadeea86c88",
      "parents": [
        "3d1e463158febf6e047897597722f768b15350cd"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Aug 09 00:52:02 2009 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 16 12:16:42 2009 -0500"
      },
      "message": "switch nilfs2 to deactivate_locked_super()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0234576d041b9b2cc7043691ea61d2c2ca597aaa",
      "tree": "1fd5f397cf0a7cb010a3e383a715438e64582b65",
      "parents": [
        "a057d2c01161444c48b12a60351ae6c7135f6e61"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 03:28:01 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:52 2009 +0900"
      },
      "message": "nilfs2: add norecovery mount option\n\nThis adds \"norecovery\" mount option which disables temporal write\naccess to read-only mounts or snapshots during mount/recovery.\nWithout this option, write access will be even performed for those\ntypes of mounts; the temporal write access is needed to mount root\nfile system read-only after an unclean shutdown.\n\nThis option will be helpful when user wants to prevent any write\naccess to the device.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Eric Sandeen \u003csandeen@redhat.com\u003e\n"
    },
    {
      "commit": "f50a4c8149cc135921a8a0476bff8e622f59aef9",
      "tree": "eba1d25b71d85daf34153ffc1b1e8eaf8b83cccc",
      "parents": [
        "050b4142c9f3cb3a213f254bd1a1fa1476800585"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Nov 19 16:58:40 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:52 2009 +0900"
      },
      "message": "nilfs2: move recovery completion into load_nilfs function\n\nAlthough mount recovery of nilfs is integrated in load_nilfs()\nprocedure, the completion of recovery was isolated from the procedure\nand performed at the end of the fill_super routine.\n\nThis was somewhat confusing since the recovery is needed for the nilfs\nobject, not for a super block instance.\n\nTo resolve the inconsistency, this will integrate the recovery\ncompletion into load_nilfs().\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "fd66c0d5c377ee8146909d0eb9258539e4b0f293",
      "tree": "7fefab4c3108aff9d18943a17cd3522a53bdc3bd",
      "parents": [
        "3961f0e2775f84a8f81b0dcddb0b356ebfe0696b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 13 02:25:41 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:48 2009 +0900"
      },
      "message": "nilfs2: hide nilfs_mdt_clear calls in nilfs_mdt_destroy\n\nThis will hide a function call of nilfs_mdt_clear() in\nnilfs_mdt_destroy().\n\nThis ensures nilfs_mdt_destroy() to do cleanup jobs included in\nnilfs_mdt_clear().\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "79739565e15f2adbc482207a0800fc127c84d1a0",
      "tree": "10d61f5a31e4de5c90a6c9c10f0f0bc8e68d1550",
      "parents": [
        "5731e191f254af9135ad843119804a500528ecf3"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Nov 12 23:56:43 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:48 2009 +0900"
      },
      "message": "nilfs2: separate constructor of metadata files\n\nThis will displace nilfs_mdt_new() constructor with individual\nmetadata file constructors like nilfs_dat_new(), new_sufile_new(),\nnilfs_cpfile_new(), and nilfs_ifile_new().\n\nThis makes it possible for each metadata file to have own\nintialization code.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "5731e191f254af9135ad843119804a500528ecf3",
      "tree": "1ababce01647674af0e9c6bfb36f5ab5e96ab76c",
      "parents": [
        "9cb4e0d2b99e8b0e5e269d898ae6ab1967647c5a"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Nov 12 22:42:04 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:48 2009 +0900"
      },
      "message": "nilfs2: add size option of private object to metadata file allocator\n\nThis adds an optional \"object size\" argument to nilfs_mdt_new_common()\nfunction; the argument specifies the size of private object attached\nto a newly allocated metadata file inode.\n\nThis will afford space to keep local variables for meta data files.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "e2073e78575e3690ea3cce67b11b7b1de8e85fd3",
      "tree": "46a43afec32b87abac0967bb5b19dec0a8708f3d",
      "parents": [
        "91f1953bf3243a4215b57d8e2f317a7035924de7"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Thu Nov 12 14:07:27 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:47 2009 +0900"
      },
      "message": "nilfs2: cleanup unused match_bool function\n\nmatch_bool function is not used anymore.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "91f1953bf3243a4215b57d8e2f317a7035924de7",
      "tree": "78bec48dc558ebd130c67a6144e2e981286a603c",
      "parents": [
        "6600b9dd8e0d4a60c610f216b78d992a598bc52a"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Thu Nov 12 14:07:26 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Nov 20 10:05:47 2009 +0900"
      },
      "message": "nilfs2: Using nobarrier option instead of barrier\u003doff\n\nSince most of fs using nofoobar style option,\nmodified barrier\u003doff option as nobarrier.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "ac4cfdd6d141c319a7af8655f750ed504c187a74",
      "tree": "2143509e0d585667203892a5036676e955273e52",
      "parents": [
        "b87221de6a4934eda856475a0065688d12973a04"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining export_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b87221de6a4934eda856475a0065688d12973a04",
      "tree": "6bcf0628e106c4833538f4c23d710fbbe3d7609a",
      "parents": [
        "0d54b217a247f39605361f867fefbb9e099a5432"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining super_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a102b09232be1ad7c180dfd1f46c7aa95dff1e0",
      "tree": "81691c3a48e3108db1a5341c8dcf4531ac404cac",
      "parents": [
        "3218929dbd25245e0f601df1e359a3ed3f7fb03b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Aug 15 13:47:09 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:15 2009 +0900"
      },
      "message": "nilfs2: remove individual gfp constants for each metadata file\n\nThis gets rid of NILFS_CPFILE_GFP, NILFS_SUFILE_GFP, NILFS_DAT_GFP,\nand NILFS_IFILE_GFP.  All of these constants refer to NILFS_MDT_GFP,\nand can be removed.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "43be0ec0387a5ccce2e064cb78502e7b2b4dd590",
      "tree": "e412246fce3f999b46b960ef416f1f10653ca895",
      "parents": [
        "a4f0b9c5b4ae83636dafde8f3a0e04b5e411a0f3"
      ],
      "author": {
        "name": "Zhu Yanhai",
        "email": "zhu.yanhai@gmail.com",
        "time": "Wed Aug 12 14:17:59 2009 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:14 2009 +0900"
      },
      "message": "nilfs2: add more check routines in mount process\n\nnilfs2: Add more safeguard routines and protections in mount process,\nwhich also makes nilfs2 report consistency error messages when\ncheckpoint number is invalid.\n\nSigned-off-by: Zhu Yanhai \u003czhu.yanhai@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "a4f0b9c5b4ae83636dafde8f3a0e04b5e411a0f3",
      "tree": "885111c7beec6e69680768c7fb1a8b22d53cd175",
      "parents": [
        "c1b353f04a42f1b531be920149b85343d56a6b3b"
      ],
      "author": {
        "name": "Zhang Qiang",
        "email": "zhangqiang.buaa@gmail.com",
        "time": "Sun Aug 09 19:13:10 2009 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:14 2009 +0900"
      },
      "message": "nilfs2: An unassigned variable is assigned to a never used structure member\n\nnilfs2: In procedure \u0027nilfs_get_sb()\u0027, when a nilfs filesysttem is\nmounted for the first time, local variable \u0027nilfs-\u003ens_last_cno\u0027 is\nused before loading the latest checkpoint number from disk (in\n\u0027nilfs_fill_super\u0027). \u0027nilfs-\u003ens_last_cno\u0027 is assigned to \u0027sd.cno\u0027, but\n\u0027sd.cno\u0027 has never been used in the procedure.\n\nSigned-off-by: Zhang Qiang \u003czhangqiang.buaa@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "1dfa27105a6cf4171c439fd40a004a0a17838115",
      "tree": "7d348398a9e623324ca86eafd050b8c12abf3cea",
      "parents": [
        "79efdd94111f30c373fce05e4e5822d8ff671c2a"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Thu Jul 23 01:33:49 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:14 2009 +0900"
      },
      "message": "nilfs2: stop using periodic write_super callback\n\nThis removes nilfs_write_super and commit super block in nilfs\ninternal thread, instead of periodic write_super callback.\n\nVFS layer calls -\u003ewrite_super callback periodically.  However,\nit looks like that calling back is ommited when disk I/O is busy.\nAnd when cleanerd (nilfs GC) is runnig, disk I/O tend to be busy thus\nnilfs superblock is not synchronized as nilfs designed.\n\nTo avoid it, syncing superblock by nilfs thread instead of pdflush.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "79efdd94111f30c373fce05e4e5822d8ff671c2a",
      "tree": "9d12c0e87146fb4fb63362f567e574d629a222a1",
      "parents": [
        "6233caa9d5b153c2190d6c1c35c1dd1010104fc1"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Thu Jul 23 01:26:34 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:14 2009 +0900"
      },
      "message": "nilfs2: clean up nilfs_write_super\n\nSeparate conditions that check if syncing super block and alternative\nsuper block are required as inline functions to reuse the conditions.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "6233caa9d5b153c2190d6c1c35c1dd1010104fc1",
      "tree": "885fdeacf10bbbecebf94fc274bfd84ff28066f6",
      "parents": [
        "ec5d66abdb0caf8b753a138568f20770a3d64c8c"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Thu Jul 23 01:26:33 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:14 2009 +0900"
      },
      "message": "nilfs2: fix disorder of nilfs_write_super in nilfs_sync_fs\n\nThis fixes disorder of nilfs_write_super in nilfs_sync_fs.  Commiting\nsuper block must be the end of the function so that every changes are\nreflected.\n\n-\u003esync_fs() is not called frequently so this makes nilfs_sync_fs call\nnilfs_commit_super instead of nilfs_write_super.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "ec5d66abdb0caf8b753a138568f20770a3d64c8c",
      "tree": "238dab276eab98a6aa0f560812e62adde759143a",
      "parents": [
        "b58a285ba40866e22e5876969a8f796a74311d9e"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Fri Jul 10 19:57:28 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:13 2009 +0900"
      },
      "message": "nilfs2: remove redundant super block commit\n\nThis removes redundant super block commit.\n\nnilfs_write_super will call nilfs_commit_super to store super block\ninto block device.  However, nilfs_put_super will call\nnilfs_commit_super right after calling nilfs_write_super.  So calling\nnilfs_write_super in nilfs_put_super would be redundant.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "b58a285ba40866e22e5876969a8f796a74311d9e",
      "tree": "9a667fdb99c0429c1871da626cb7589dec54adb7",
      "parents": [
        "143511046765504d2d1be633efd710f8d84e0407"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Wed Jun 24 20:06:34 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Sep 14 18:27:13 2009 +0900"
      },
      "message": "nilfs2: implement nilfs_show_options to display mount options in /proc/mounts\n\nThis is a patch to display mount options in procfs.\nMount options will show up in the /proc/mounts as other fs does.\n\n...\n/dev/sda6 /mnt nilfs2 ro,relatime,barrier\u003doff,cp\u003d3,order\u003dstrict 0 0\n...\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "1154ecbd2f8298ef75609f5f8ed5aca96be599fb",
      "tree": "a6801fc442fecf4c0b2a1dc1d7a5350910983041",
      "parents": [
        "64f1607ffbbc772685733ea63e6f7f4183df1b16"
      ],
      "author": {
        "name": "Zhang Qiang",
        "email": "zhangqiang.buaa@gmail.com",
        "time": "Tue Aug 18 14:58:24 2009 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Aug 18 17:32:27 2009 +0900"
      },
      "message": "nilfs2: missing a read lock for segment writer in nilfs_attach_checkpoint()\n\n\u0027ns_cno\u0027 of structure \u0027the_nilfs\u0027 must be protected from segment\nwriter, in other words, the caller of nilfs_get_checkpoint should hold\nread lock for nilfs-\u003ens_segctor_sem.  This patch adds the lock/unlock\noperations in nilfs_attach_checkpoint() when calling\nnilfs_cpfile_get_checkpoint().\n\nSigned-off-by: Zhang Qiang \u003czhangqiang.buaa@gmail.com\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "d441b1c293149212045de00f346c8ea6cd41cce4",
      "tree": "cbc7aa520feeabaa90ff4b8ff83e6e8fade216c7",
      "parents": [
        "5affd88a104af43f0063a12ad1ee4c7a587945dc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 08 19:56:34 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:05 2009 -0400"
      },
      "message": "switch nilfs2 to inode-\u003ei_acl\n\nActually, get rid of private analog, since nothing in there is\nusing ACLs at all so far.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9c7cb99a8202452d3e0440a5505c5c6d262771d9",
      "tree": "56d2fe83150f7bea3446b28bfa3094066c5f26b5",
      "parents": [
        "0a8eba9b7f7aa3ad0305627c99ad4d6deedd871d",
        "c3a7abf06ce719a51139e62a034590be99abbc2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 15 09:13:49 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 15 09:13:49 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: (22 commits)\n  nilfs2: support contiguous lookup of blocks\n  nilfs2: add sync_page method to page caches of meta data\n  nilfs2: use device\u0027s backing_dev_info for btree node caches\n  nilfs2: return EBUSY against delete request on snapshot\n  nilfs2: modify list of unsupported features in caveats\n  nilfs2: enable sync_page method\n  nilfs2: set bio unplug flag for the last bio in segment\n  nilfs2: allow future expansion of metadata read out via get info ioctl\n  NILFS2: Pagecache usage optimization on NILFS2\n  nilfs2: remove nilfs_btree_operations from btree mapping\n  nilfs2: remove nilfs_direct_operations from direct mapping\n  nilfs2: remove bmap pointer operations\n  nilfs2: remove useless b_low and b_high fields from nilfs_bmap struct\n  nilfs2: remove pointless NULL check of bpop_commit_alloc_ptr function\n  nilfs2: move get block functions in bmap.c into btree codes\n  nilfs2: remove nilfs_bmap_delete_block\n  nilfs2: remove nilfs_bmap_put_block\n  nilfs2: remove header file for segment list operations\n  nilfs2: eliminate removal list of segments\n  nilfs2: add sufile function that can modify multiple segment usages\n  ...\n"
    },
    {
      "commit": "aa7dfb8954ccf49e026ba13d12991a4eb7defb96",
      "tree": "ff2d6cf81629322906bd0cea1423e9efe516ffee",
      "parents": [
        "e59399d0102c1813cec48db5cebe1750313f88a0"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:33 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:18 2009 -0400"
      },
      "message": "nilfs2: get rid of bd_mount_sem use from nilfs\n\nThis will remove every bd_mount_sem use in nilfs.\n\nThe intended exclusion control was replaced by the previous patch\n(\"nilfs2: correct exclusion control in nilfs_remount function\") for\nnilfs_remount(), and this patch will replace remains with a new mutex\nthat this inserts in nilfs object.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e59399d0102c1813cec48db5cebe1750313f88a0",
      "tree": "cd4fde6b5c442ede5d00b9640d3a545f847aeb8c",
      "parents": [
        "6dd4740662405a68bb229ac2b9e0aeaaf2188bf2"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:32 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:18 2009 -0400"
      },
      "message": "nilfs2: correct exclusion control in nilfs_remount function\n\nnilfs_remount() changes mount state of a superblock instance.  Even\nthough nilfs accesses other superblock instances during mount or\nremount, the mount state was not properly protected in\nnilfs_remount().\n\nMoreover, nilfs_remount() has a lock order reversal problem;\nnilfs_get_sb() holds:\n\n  1. bdev-\u003ebd_mount_sem\n  2. sb-\u003es_umount  (sget acquires)\n\nand nilfs_remount() holds:\n\n  1. sb-\u003es_umount  (locked by the caller in vfs)\n  2. bdev-\u003ebd_mount_sem\n\nTo avoid these problems, this patch divides a semaphore protecting\nsuper block instances from nilfs-\u003ens_sem, and applies it to the mount\nstate protection in nilfs_remount().\n\nWith this change, bd_mount_sem use is removed from nilfs_remount() and\nthe lock order reversal will be resolved.  And the new rw-semaphore,\nnilfs-\u003ens_super_sem will properly protect the mount state except the\nmodification from nilfs_error function.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6dd4740662405a68bb229ac2b9e0aeaaf2188bf2",
      "tree": "36e6ae2a095613be1c36e8828ee9471e60c09de6",
      "parents": [
        "3f82ff55168e92859119bf348e9e0bd6714d2fea"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:31 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:18 2009 -0400"
      },
      "message": "nilfs2: simplify remaining sget() use\n\nThis simplifies the test function passed on the remaining sget()\ncallsite in nilfs.\n\nInstead of checking mount type (i.e. ro-mount/rw-mount/snapshot mount)\nin the test function passed to sget(), this patch first looks up the\nnilfs_sb_info struct which the given mount type matches, and then\nacquires the super block instance holding the nilfs_sb_info.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3f82ff55168e92859119bf348e9e0bd6714d2fea",
      "tree": "f35bf723b02d6fe8c101252aa4a2c0e0172fd4aa",
      "parents": [
        "33c8e57c86d1bd1548c12a4f7c4bceb94b862cca"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:30 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: get rid of sget use for checking if current mount is present\n\nThis stops using sget() for checking if an r/w-mount or an r/o-mount\nexists on the device.  This elimination uses a back pointer to the\ncurrent mount added to nilfs object.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "33c8e57c86d1bd1548c12a4f7c4bceb94b862cca",
      "tree": "8e2052a81dc1036e64d78da1082ab6af01ae4bbd",
      "parents": [
        "81fc20bd0e75ba6357bce2403767d7c2585d8f28"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:29 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: get rid of sget use for acquiring nilfs object\n\nThis will change the way to obtain nilfs object in nilfs_get_sb()\nfunction.\n\nPreviously, a preliminary sget() call was performed, and the nilfs\nobject was acquired from a super block instance found by the sget()\ncall.\n\nThis patch, instead, instroduces a new dedicated function\nfind_or_create_nilfs(); as the name implies, the function finds an\nexistent nilfs object from a global list or creates a new one if no\nobject is found on the device.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "81fc20bd0e75ba6357bce2403767d7c2585d8f28",
      "tree": "e3680d7c8184da3cbb4b7efe83fe99626d08cd68",
      "parents": [
        "0c95ee190e1dea60c55c834d14695341085c9b7b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 08 01:39:28 2009 +0900"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: remove meaningless EBUSY case from nilfs_get_sb function\n\nThe following EBUSY case in nilfs_get_sb() is meaningless.  Indeed,\nthis error code is never returned to the caller.\n\n    if (!s-\u003es_root) {\n          ...\n    } else if (!(s-\u003es_flags \u0026 MS_RDONLY)) {\n        err \u003d -EBUSY;\n    }\n\nThis simply removes the else case.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d731e06323cb705003e4172ec209e469be4c18e1",
      "tree": "636b1b2f7aaea08fa7be27b3d908fe6dbe6ec70b",
      "parents": [
        "d579ed00aa96a7f7486978540a0d7cecaff742ae"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Jun 08 10:08:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:17 2009 -0400"
      },
      "message": "nilfs2: call nilfs2_write_super from nilfs2_sync_fs\n\nThe call to -\u003ewrite_super from __sync_filesystem will go away, so make\nsure nilfs2 performs the same actions from inside -\u003esync_fs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "337eb00a2c3a421999c39c94ce7e33545ee8baa7",
      "tree": "d9b780d095b638b1d8fa23841ff70347cf5daa08",
      "parents": [
        "4195f73d1329e49727bcceb028e58cb38376c2b0"
      ],
      "author": {
        "name": "Alessio Igor Bogani",
        "email": "abogani@texware.it",
        "time": "Tue May 12 15:10:54 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:11 2009 -0400"
      },
      "message": "Push BKL down into -\u003eremount_fs()\n\n[xfs, btrfs, capifs, shmem don\u0027t need BKL, exempt]\n\nSigned-off-by: Alessio Igor Bogani \u003cabogani@texware.it\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6cfd0148425e528b859b26e436b01f23f6926224",
      "tree": "60e3257053554ff198fe5825e6f12a00c3b4422a",
      "parents": [
        "a9e220f8322e2b0e0b8903fe00265461cffad3f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:40:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "push BKL down into -\u003eput_super\n\nMove BKL into -\u003eput_super from the only caller.  A couple of\nfilesystems had trivial enough -\u003eput_super (only kfree and NULLing of\ns_fs_info + stuff in there) to not get any locking: coda, cramfs, efs,\nhugetlbfs, omfs, qnx4, shmem, all others got the full treatment.  Most\nof them probably don\u0027t need it, but I\u0027d rather sort that out individually.\nPreferably after all the other BKL pushdowns in that area.\n\n[AV: original used to move lock_super() down as well; these changes are\nremoved since we don\u0027t do lock_super() at all in generic_shutdown_super()\nnow]\n[AV: fuse, btrfs and xfs are known to need no damn BKL, exempt]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8c85e125124a473d6f3e9bb187b0b84207f81d91",
      "tree": "d883424a156c00c55193e46567efdffddb6ef6b9",
      "parents": [
        "517bfae28353e996160518add4d00033d3886e61"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Apr 28 18:00:26 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:06 2009 -0400"
      },
      "message": "remove -\u003ewrite_super call in generic_shutdown_super\n\nWe just did a full fs writeout using sync_filesystem before, and if\nthat\u0027s not enough for the filesystem it can perform it\u0027s own writeout\nin -\u003eput_super, which many filesystems already do.\n\nMove a call to foofs_write_super into every foofs_put_super for now to\nguarantee identical behaviour until it\u0027s cleaned up by the individual\nfilesystem maintainers.\n\nExceptions:\n\n - affs already has identical copy \u0026 pasted code at the beginning of\n   affs_put_super so no need to do it twice.\n - xfs does the right thing without it and I have changes pending for\n   the xfs tree touching this are so I don\u0027t really need conflicts\n   here..\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a53b4751ae92adb372017222887f3ec625cba60b",
      "tree": "454c0876bb532ee44ad07485e6d40c60e157ca34",
      "parents": [
        "30c25be71fcbd87fd33518045cc014e69bff3d6f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed May 27 22:11:46 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Jun 10 23:41:12 2009 +0900"
      },
      "message": "nilfs2: use device\u0027s backing_dev_info for btree node caches\n\nPreviously, default_backing_dev_info was used for the mapping of btree\nnode caches.  This uses device dependent backing_dev_info to allow\ndetailed control of the device for the btree node pages.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "e7a7402c0d392dcadc74cae8922f8fae4667605a",
      "tree": "cb0023291a09eb7689fb47a3d8cc1ead46465605",
      "parents": [
        "c2698e50e304cd29a7836f05452359a3306a405e"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Mar 27 10:49:11 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 13 09:53:50 2009 +0900"
      },
      "message": "nilfs2: remove module version\n\nA MODULE_VERSION() macro has been used in out-of-tree nilfs modules,\nbut it\u0027s needless and not updated in tree.  So, this removes it along\nwith the version declaration.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "c306af23e19d3c94c9229263c39fe487e915e774",
      "tree": "019a87429a8a27d336d3b433866a5e7eaaa3f0ff",
      "parents": [
        "b0cbc861a3c05e634520b049b5cc27ad6febb51f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Mar 26 10:16:57 2009 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 13 09:53:49 2009 +0900"
      },
      "message": "nilfs2: return f_fsid for statfs2\n\nThis follows the change of Coly Li\u0027s series (\"fs: return f_fsid for\nstatfs(2)\"), and make nilfs2 return f_fsid info for statfs(2).\n\nAcked-by: Coly Li \u003ccoly.li@suse.de\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "612392307cb09e49051225092cbbd7049bd8db93",
      "tree": "401a227d0fae219aae7b682bb613bb388b4a7682",
      "parents": [
        "e339ad31f59925b48a92ee3947692fdf9758b8c7"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:02:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:20 2009 -0700"
      },
      "message": "nilfs2: support nanosecond timestamp\n\nAfter a review of user\u0027s feedback for finding out other compatibility\nissues, I found nilfs improperly initializes timestamps in inode;\nCURRENT_TIME was used there instead of CURRENT_TIME_SEC even though nilfs\ndidn\u0027t have nanosecond timestamps on disk.  A few users gave us the report\nthat the tar program sometimes failed to expand symbolic links on nilfs,\nand it turned out to be the cause.\n\nInstead of applying the above displacement, I\u0027ve decided to support\nnanosecond timestamps on this occation.  Fortunetaly, a needless 64-bit\nfield was in the nilfs_inode struct, and I found it\u0027s available for this\npurpose without impact for the users.\n\nSo, this will do the enhancement and resolve the tar problem.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "e339ad31f59925b48a92ee3947692fdf9758b8c7",
      "tree": "6bb85c43bfd100b0a220c788c654f2f74ca553e4",
      "parents": [
        "cece552074c591970353ad48308d65f110aeaf28"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:20 2009 -0700"
      },
      "message": "nilfs2: introduce secondary super block\n\nThe former versions didn\u0027t have extra super blocks.  This improves the\nweak point by introducing another super block at unused region in tail of\nthe partition.\n\nThis doesn\u0027t break disk format compatibility; older versions just ingore\nthe secondary super block, and new versions just recover it if it doesn\u0027t\nexist.  The partition created by an old mkfs may not have unused region,\nbut in that case, the secondary super block will not be added.\n\nThis doesn\u0027t make more redundant copies of the super block; it is a future\nwork.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "cece552074c591970353ad48308d65f110aeaf28",
      "tree": "2dcca7913d38df89711504f5daeecccfedb5a3eb",
      "parents": [
        "c96fa464a567a2a8796009af0e79bc68af73f485"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:20 2009 -0700"
      },
      "message": "nilfs2: simplify handling of active state of segments\n\nwill reduce some lines of segment constructor.  Previously, the state was\ncomplexly controlled through a list of segments in order to keep\nconsistency in meta data of usage state of segments.  Instead, this\npresents ``calculated\u0027\u0027 active flags to userland cleaner program and stop\nmaintaining its real flag on disk.\n\nOnly by this fake flag, the cleaner cannot exactly know if each segment is\nreclaimable or not.  However, the recent extension of nilfs_sustat ioctl\nstruct (nilfs2-extend-nilfs_sustat-ioctl-struct.patch) can prevent the\ncleaner from reclaiming in-use segment wrongly.\n\nSo, now I can apply this for simplification.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "e62687468588f47c32256e3c8c36157c40111b6e",
      "tree": "00b9532341e606868567c03b8c3a631d0bf19b46",
      "parents": [
        "1f5abe7e7dbcd83e73212c6cb135a6106cea6a0b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:19 2009 -0700"
      },
      "message": "nilfs2: super block operations fix endian bug\n\nThis adds a missing endian conversion of checksum field in the super\nblock.  This fixes compatibility issue on big endian machines which will\ncome to surface after supporting recovery of super block.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "1f5abe7e7dbcd83e73212c6cb135a6106cea6a0b",
      "tree": "f80e97297d5badebd31bbb17003d76a4ea30453a",
      "parents": [
        "2c2e52fc4fca251e68f90821c9ff5cb18be4df58"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:55 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:19 2009 -0700"
      },
      "message": "nilfs2: replace BUG_ON and BUG calls triggerable from ioctl\n\nPekka Enberg advised me:\n\u003e It would be nice if BUG(), BUG_ON(), and panic() calls would be\n\u003e converted to proper error handling using WARN_ON() calls. The BUG()\n\u003e call in nilfs_cpfile_delete_checkpoints(), for example, looks to be\n\u003e triggerable from user-space via the ioctl() system call.\n\nThis will follow the comment and keep them to a minimum.\n\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "2c2e52fc4fca251e68f90821c9ff5cb18be4df58",
      "tree": "fb0b86203bb5f4dda4d5907e29bd2b1b6cc0be90",
      "parents": [
        "7a9461939a46345860622ea36ff267ee4446f00f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:19 2009 -0700"
      },
      "message": "nilfs2: extend nilfs_sustat ioctl struct\n\nThis adds a new argument to the nilfs_sustat structure.\n\nThe extended field allows to delete volatile active state of segments,\nwhich was needed to protect freshly-created segments from garbage\ncollection but has confused code dealing with segments.  This\nextension alleviates the mess and gives room for further\nsimplifications.\n\nThe volatile active flag is not persistent, so it\u0027s eliminable on this\noccasion without affecting compatibility other than the ioctl change.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "a2e7d2df82cafb76f76809ddf6e2caa8afe4f75e",
      "tree": "ac16ef25c4d3e4eaf55090b57035d292ec5bc9fb",
      "parents": [
        "3358b4aaa84fd4c1cdd64391875e92cbb8afeb29"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:17 2009 -0700"
      },
      "message": "nilfs2: cleanup nilfs_clear_inode\n\nThis will remove the following unnecessary locks and cleanup code in\nnilfs_clear_inode():\n\n- unnecessary protection using nilfs_transaction_begin() and\n  nilfs_transaction_end().\n\n- cleanup code of i_dirty list field which is never chained\n  when this function is called.\n\n- spinlock used when releasing i_bh field.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.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": "783f61843e9d14724f5f79ae955a28c27e300467",
      "tree": "7b424994eb39f238a93cafc805372a322f80cb9e",
      "parents": [
        "8a9d2191e9f43bbcd256a9a6871bd73434c83f2f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 06 19:01:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 07 08:31:15 2009 -0700"
      },
      "message": "nilfs2: super block operations\n\nThis adds super block operations for the nilfs2 file system.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ]
}
