)]}'
{
  "log": [
    {
      "commit": "2f9e825d3e0e2b407ae8f082de5c00afcf7378fb",
      "tree": "f8b3ee40674ce4acd5508a0a0bf52a30904caf6c",
      "parents": [
        "7ae0dea900b027cd90e8a3e14deca9a19e17638b",
        "de75d60d5ea235e6e09f4962ab22541ce0fe176a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block: (149 commits)\n  block: make sure that REQ_* types are seen even with CONFIG_BLOCK\u003dn\n  xen-blkfront: fix missing out label\n  blkdev: fix blkdev_issue_zeroout return value\n  block: update request stacking methods to support discards\n  block: fix missing export of blk_types.h\n  writeback: fix bad _bh spinlock nesting\n  drbd: revert \"delay probes\", feature is being re-implemented differently\n  drbd: Initialize all members of sync_conf to their defaults [Bugz 315]\n  drbd: Disable delay probes for the upcomming release\n  writeback: cleanup bdi_register\n  writeback: add new tracepoints\n  writeback: remove unnecessary init_timer call\n  writeback: optimize periodic bdi thread wakeups\n  writeback: prevent unnecessary bdi threads wakeups\n  writeback: move bdi threads exiting logic to the forker thread\n  writeback: restructure bdi forker loop a little\n  writeback: move last_active to bdi\n  writeback: do not remove bdi from bdi_list\n  writeback: simplify bdi code a little\n  writeback: do not lose wake-ups in bdi threads\n  ...\n\nFixed up pretty trivial conflicts in drivers/block/virtio_blk.c and\ndrivers/scsi/scsi_error.c as per Jens.\n"
    },
    {
      "commit": "5f248c9c251c60af3403902b26e08de43964ea0b",
      "tree": "6d3328e72a7e4015a64017eb30be18095c6a3c64",
      "parents": [
        "f6cec0ae58c17522a7bc4e2f39dae19f199ab534",
        "dca332528bc69e05f67161e1ed59929633d5e63d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:26:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:26:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (96 commits)\n  no need for list_for_each_entry_safe()/resetting with superblock list\n  Fix sget() race with failing mount\n  vfs: don\u0027t hold s_umount over close_bdev_exclusive() call\n  sysv: do not mark superblock dirty on remount\n  sysv: do not mark superblock dirty on mount\n  btrfs: remove junk sb_dirt change\n  BFS: clean up the superblock usage\n  AFFS: wait for sb synchronization when needed\n  AFFS: clean up dirty flag usage\n  cifs: truncate fallout\n  mbcache: fix shrinker function return value\n  mbcache: Remove unused features\n  add f_flags to struct statfs(64)\n  pass a struct path to vfs_statfs\n  update VFS documentation for method changes.\n  All filesystems that need invalidate_inode_buffers() are doing that explicitly\n  convert remaining -\u003eclear_inode() to -\u003eevict_inode()\n  Make -\u003edrop_inode() just return whether inode needs to be dropped\n  fs/inode.c:clear_inode() is gone\n  fs/inode.c:evict() doesn\u0027t care about delete vs. non-delete paths now\n  ...\n\nFix up trivial conflicts in fs/nilfs2/super.c\n"
    },
    {
      "commit": "6fd1e5c994c392ebdbe45600051b2a32ec4860f1",
      "tree": "672de56405c3a7dd4ffb079304661e4ef14401b7",
      "parents": [
        "4ec70c9b46b032e7f1b41b543c607d6a33b78a1a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 07 11:55:00 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:48:25 2010 -0400"
      },
      "message": "convert nilfs2 to -\u003eevict_inode()\n\n[folded build fix from sfr]\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a4ffdde6e56fdf8c34ddadc2674d6eb978083369",
      "tree": "0fa07df92d804cb7d0482135195e4835cb16403a",
      "parents": [
        "b5fc510c48f631882ccec3c0f02a25d5b67de09f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 02 17:38:30 2010 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:44 2010 -0400"
      },
      "message": "simplify checks for I_CLEAR/I_FREEING\n\nadd I_CLEAR instead of replacing I_FREEING with it.  I_CLEAR is\nequivalent to I_FREEING for almost all code looking at either;\nit\u0027s there to keep track of having called clear_inode() exactly\nonce per inode lifetime, at some point after having set I_FREEING.\nI_CLEAR and I_FREEING never get set at the same time with the\ncurrent code, so we can switch to setting i_flags to I_FREEING | I_CLEAR\ninstead of I_CLEAR without loss of information.  As the result of\nsuch change, checks become simpler and the amount of code that needs\nto know about I_CLEAR shrinks a lot.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1025774ce411f2bd4b059ad7b53f0003569b74fa",
      "tree": "2be221c205cb5579652a6063e8ee27d1c72d1bbd",
      "parents": [
        "eef2380c187890816b73b1a4cb89a09203759469"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:30:02 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:37 2010 -0400"
      },
      "message": "remove inode_setattr\n\nReplace inode_setattr with opencoded variants of it in all callers.  This\nmoves the remaining call to vmtruncate into the filesystem methods where it\ncan be replaced with the proper truncate sequence.\n\nIn a few cases it was obvious that we would never end up calling vmtruncate\nso it was left out in the opencoded variant:\n\n spufs: explicitly checks for ATTR_SIZE earlier\n btrfs,hugetlbfs,logfs,dlmfs: explicitly clears ATTR_SIZE earlier\n ufs: contains an opencoded simple_seattr + truncate that sets the filesize just above\n\nIn addition to that ncpfs called inode_setattr with handcrafted iattrs,\nwhich allowed to trim down the opencoded variant.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "155130a4f7848b1aac439cab6bda1a175507c71c",
      "tree": "5019b14b0a9221b08959196e01e3f9326957d678",
      "parents": [
        "6e1db88d536adcbbfe562b2d4b7d6425784fff12"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:29:58 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:33 2010 -0400"
      },
      "message": "get rid of block_write_begin_newtrunc\n\nMove the call to vmtruncate to get rid of accessive blocks to the callers\nin preparation of the new truncate sequence and rename the non-truncating\nversion to block_write_begin.\n\nWhile we\u0027re at it also remove several unused arguments to block_write_begin.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6e1db88d536adcbbfe562b2d4b7d6425784fff12",
      "tree": "8cfcb5a6190722db6249b2e4978f39247975abcf",
      "parents": [
        "f4e420dc423148fba637af1ab618fa8896dfb2d6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:29:57 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:32 2010 -0400"
      },
      "message": "introduce __block_write_begin\n\nSplit up the block_write_begin implementation - __block_write_begin is a new\ntrivial wrapper for block_prepare_write that always takes an already\nallocated page and can be either called from block_write_begin or filesystem\ncode that already has a page allocated.  Remove the handling of already\nallocated pages from block_write_begin after switching all callers that\ndo it to __block_write_begin.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f4e420dc423148fba637af1ab618fa8896dfb2d6",
      "tree": "df0e81f5f4b8448dd6b3929e5537dcc46e7d7dde",
      "parents": [
        "282dc178849882289d30e58b54be6b2799b351aa"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:29:56 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:31 2010 -0400"
      },
      "message": "clean up write_begin usage for directories in pagecache\n\nFor filesystem that implement directories in pagecache we call\nblock_write_begin with an already allocated page for this code, while the\nnormal regular file write path uses the default block_write_begin behaviour.\n\nGet rid of the __foofs_write_begin helper and opencode the normal write_begin\ncall in foofs_write_begin, while adding a new foofs_prepare_chunk helper for\nthe directory code.  The added benefit is that foofs_prepare_chunk has\na much saner calling convention.\n\nNote that the interruptible flag passed into block_write_begin is always\nignored if we already pass in a page (see next patch for details), and\nwe never were doing truncations of exessive blocks for this case either so we\ncan switch directly to block_write_begin_newtrunc.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "eafdc7d190a944c755a9fe68573c193e6e0217e7",
      "tree": "915c3cc8004706fabf88eae1ab123a3fa0147516",
      "parents": [
        "256249584bda1a9357e2d29987a37f5b2df035f6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Jun 04 11:29:53 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:29 2010 -0400"
      },
      "message": "sort out blockdev_direct_IO variants\n\nMove the call to vmtruncate to get rid of accessive blocks to the callers\nin prepearation of the new truncate calling sequence.  This was only done\nfor DIO_LOCKING filesystems, so the __blockdev_direct_IO_newtrunc variant\nwas not needed anyway.  Get rid of blockdev_direct_IO_no_locking and\nits _newtrunc variant while at it as just opencoding the two additional\nparamters is shorted than the name suffix.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7b6d91daee5cac6402186ff224c3af39d79f4a0e",
      "tree": "b1518cf0b6c301178e0a320f80610cd5b3aa7625",
      "parents": [
        "33659ebbae262228eef4e0fe990f393d1f0ed941"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Aug 07 18:20:39 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:20:39 2010 +0200"
      },
      "message": "block: unify flags for struct bio and struct request\n\nRemove the current bio flags and reuse the request flags for the bio, too.\nThis allows to more easily trace the type of I/O from the filesystem\ndown to the block driver.  There were two flags in the bio that were\nmissing in the requests:  BIO_RW_UNPLUG and BIO_RW_AHEAD.  Also I\u0027ve\nrenamed two request flags that had a superflous RW in them.\n\nNote that the flags are in bio.h despite having the REQ_ name - as\nblkdev.h includes bio.h that is the only way to go for now.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "89c0fd014d34d409a7b196667c2b9a4813b6c968",
      "tree": "9fad0ab3ce77b7537ed7d8db45c40e746e26692f",
      "parents": [
        "6cda9fa2575ec0869fe77b0bdf295c0e51868cab"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 25 22:44:53 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 25 23:29:21 2010 +0900"
      },
      "message": "nilfs2: reject filesystem with unsupported block size\n\nThis inserts sanity check that refuses to mount a filesystem with\nunsupported block size.\n\nPreviously, kernel code of nilfs was looking only limitation of\ndevices though mkfs.nilfs2 limits the range of block sizes; there was\nno check that prevents rec_len overflow with larger block sizes.\n\nWith this change, block sizes larger than 64KB or smaller than 1KB\nwill get rejected explicitly by kernel.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "6cda9fa2575ec0869fe77b0bdf295c0e51868cab",
      "tree": "09f160f79f2ab135cd0c9ce0a2099d96423e5e00",
      "parents": [
        "c28e69d9332aab739920082a0a5677d861390824"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 25 20:39:03 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 25 20:46:43 2010 +0900"
      },
      "message": "nilfs2: avoid rec_len overflow with 64KB block size\n\nWith 64KB blocksize, a directory entry can have size 64KB which does\nnot fit into 16 bits we have for entry length.  So this patch stores\n0xffff instead and converts value when read from / written to disk.\n\nNilfs derives its directory implementation from ext2 filesystem, and\nthis draws upon the corresponding change on ext2.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "c28e69d9332aab739920082a0a5677d861390824",
      "tree": "b51e3cb03298c8f2d3d1443647b7a6e75af5d4c6",
      "parents": [
        "c5ca48aabe8b11674bf1102abe52d17ecc053f9c"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 24 17:09:10 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 24 17:36:29 2010 +0900"
      },
      "message": "nilfs2: simplify nilfs_get_page function\n\nImplementation of nilfs_get_page() is a bit old as below:\n\n - A common read_mapping_page inline function is now available instead\n   of its read_cache_page use.\n - wait_on_page_locked() use in the function is eliminable since\n   read_cache_page function does the same thing through wait_on_page_read().\n - PageUptodate() check is eliminable for the same reason.\n\nThis renews nilfs_get_page() based on these points.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "c5ca48aabe8b11674bf1102abe52d17ecc053f9c",
      "tree": "18c7647b42981d457c59cd4a842ca342a239770d",
      "parents": [
        "1a80a1763fb760b3a84a28df87515f7cdc07a4f4"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Jul 22 03:22:20 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:16 2010 +0900"
      },
      "message": "nilfs2: reject incompatible filesystem\n\nThis forces nilfs to check compatibility of feature flags so as to\nreject a filesystem with unknown features when it mounts or remounts\nthe filesystem.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "03bdb5ac58a2144dfe8cfd73347fdb9f57e2e062",
      "tree": "1ac37bb7c8020a2cf40ff5d8996d51725b190e8d",
      "parents": [
        "4e13e66bee2d792c1aae21797f16c181024834eb"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 18 10:42:26 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:16 2010 +0900"
      },
      "message": "nilfs2: apply read-ahead for nilfs_btree_lookup_contig\n\nThis applies read-ahead to nilfs_btree_do_lookup and\nnilfs_btree_lookup_contig functions and extends them to read ahead\nsiblings of level 1 btree nodes that hold data blocks.\n\nAt present, the read-ahead is not applied to most btree operations;\nonly get_block() callback function, which is used during read of\nregular files or directories, receives the benefit.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "4e13e66bee2d792c1aae21797f16c181024834eb",
      "tree": "1fa51dade28bc025d9bda0e09dec1f202281a498",
      "parents": [
        "464ece88630d0fb715ca942eabb1da825046a534"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 18 10:42:25 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:15 2010 +0900"
      },
      "message": "nilfs2: introduce check flag to btree node buffer\n\nnilfs_btree_get_block() now may return untested buffer due to\nread-ahead.  This adds a new flag for buffer heads so that the btree\ncode can check whether the buffer is already verified or not.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "464ece88630d0fb715ca942eabb1da825046a534",
      "tree": "254185629ce58cf314c5b22b846969a3c26984ed",
      "parents": [
        "26dfdd8e29f28c08aa67861b3c83d0f3f7d30cee"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 18 10:42:24 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:15 2010 +0900"
      },
      "message": "nilfs2: add btree get block function with readahead option\n\nThis adds __nilfs_btree_get_block() function that can issue a series\nof read-ahead requests for sibling btree nodes.\n\nThis read-ahead needs parent node block, so nilfs_btree_readahead_info\nstructure is added to pass the information that\n__nilfs_btree_get_block() needs.\n\nThis also replaces the previous nilfs_btree_get_block() implementation\nwith a wrapper function of __nilfs_btree_get_block().\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "26dfdd8e29f28c08aa67861b3c83d0f3f7d30cee",
      "tree": "3cc14a71010b454f6524006e973147837f040a39",
      "parents": [
        "f8e6cc013b896d75d6ce4ec9e168014af1257fd8"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jul 18 10:42:23 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:15 2010 +0900"
      },
      "message": "nilfs2: add read ahead mode to nilfs_btnode_submit_block\n\nThis adds mode argument to nilfs_btnode_submit_block() function and\nallows it to issue a read-ahead request.\n\nAn optional submit_ptr argument is also added to store the actual\nblock address for which bio is sent.  submit_ptr is used for a series\nof read-ahead requests, and helps to decide if each requested block is\ncontinous to the previous one on disk.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "f8e6cc013b896d75d6ce4ec9e168014af1257fd8",
      "tree": "799258b2cc52207ab98946f3f8ae3466b1b33352",
      "parents": [
        "7c397a81fe90c0445df2873700d14e82cca5fbc8"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Jul 15 11:39:10 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:15 2010 +0900"
      },
      "message": "nilfs2: fix buffer head leak in nilfs_btnode_submit_block\n\nnilfs_btnode_submit_block() refers to buffer head just before\nreturning from the function, but it releases the buffer head earlier\nthan that if nilfs_dat_translate() gets an error.\n\nThis has potential for oops in the erroneous case.  This fixes the\nissue.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "7c397a81fe90c0445df2873700d14e82cca5fbc8",
      "tree": "99e4ecd31923cbdcaaeabb7cf54f548a2716415f",
      "parents": [
        "5ad2686e9266f24a0bb76b01d5c3ae29b4e149fe"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jul 13 23:33:55 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:15 2010 +0900"
      },
      "message": "nilfs2: eliminate inline keywords in btree implementation\n\nThis removes all inline uses from btree.c.  Gcc now agressively apply\ninline expansion even for the functions declared without the keyword;\nthe inline use in btree.c looks excessive.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "5ad2686e9266f24a0bb76b01d5c3ae29b4e149fe",
      "tree": "df7d1d37ec380e58b0b171db07c5d8a7f9bb4ff0",
      "parents": [
        "9b7b265c9ab67fcd1245d6b64fa5ca2eda43ac88"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jul 13 23:33:54 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:14 2010 +0900"
      },
      "message": "nilfs2: get maximum number of child nodes from bmap object\n\nThe patch \"reduce repetitive calculation of max number of child nodes\"\ngathered up the calculation of maximum number of child nodes into\nnilfs_btree_nchildren_per_block() function.  This makes the function\nget resultant value from a private variable in bmap object instead of\ncalculating it for each call.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "9b7b265c9ab67fcd1245d6b64fa5ca2eda43ac88",
      "tree": "3aeed58de180351e46ecb4e58f2e55c097eeed0d",
      "parents": [
        "ea64ab87cdba9e1172392d247e6526359e301f12"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jul 13 23:33:53 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:14 2010 +0900"
      },
      "message": "nilfs2: reduce repetitive calculation of max number of child nodes\n\nThe current btree implementation repeats the same calculation on the\nmaximum number of child nodes.  This is because a few low level\nroutines use the calculation for index addressing in a btree node\nblock.\n\nThis reduces the calculation by explicitly passing the maximum number\nof child nodes (ncmax) through their argument.\n\nThis changes parameter passing of the following functions:\n\n - nilfs_btree_node_dptrs\n - nilfs_btree_node_get_ptr\n - nilfs_btree_node_set_ptr\n - nilfs_btree_node_init\n - nilfs_btree_node_move_left\n - nilfs_btree_node_move_right\n - nilfs_btree_node_insert\n - nilfs_btree_node_delete, and\n - nilfs_btree_get_node\n\nThe following functions are removed:\n\n - nilfs_btree_node_nchildren_min\n - nilfs_btree_node_nchildren_max\n\nMost middle level btree operations are rewritten to pass a proper\nncmax value depending on whether each occurrence of node is \"root\" or\nnot.\n\nA constant NILFS_BTREE_ROOT_NCHILDREN_MAX is used for the root node,\nwhereas nilfs_btree_nchildren_per_block() function is used for\nnon-root nodes.  If a node could be either root or a non-root node, an\noutput argument of nilfs_btree_get_node() is used to set up ncmax.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "ea64ab87cdba9e1172392d247e6526359e301f12",
      "tree": "644b2af0f1c20e79375d226c167c0b4f4d3a0ade",
      "parents": [
        "364ec2d700223b965620ff4d5031a3665d195873"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jul 13 23:33:52 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:14 2010 +0900"
      },
      "message": "nilfs2: optimize calculation of min/max number of btree node children\n\nnilfs_btree_node_nchildren_max() and nilfs_btree_node_nchildren_min()\nfunctions switch return value depending on whether target node is the\nroot or a node block.  In most uses of these functions, however, the\nnode type is fixed, and moreover the same calculation is repeatedly\nperformed in loop.\n\nThis unfold these functions depending on context and move them outside\nloops wherever possible.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "364ec2d700223b965620ff4d5031a3665d195873",
      "tree": "2cf23dbf1ce4de2125c62f6804f4c672a4127096",
      "parents": [
        "05d0e94b66dbdf9d90371b39dc7a6b390ba74d41"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jul 13 23:33:51 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:14 2010 +0900"
      },
      "message": "nilfs2: remove redundant pointer checks in bmap lookup functions\n\nnilfs_bmap_lookup and its variants are supposed to take a valid\npointer argument to return a block address, thus pointer checks in\nnilfs_btree_lookup and nilfs_direct_lookup are needless.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "05d0e94b66dbdf9d90371b39dc7a6b390ba74d41",
      "tree": "10476599c8102fc58f635d63e4e9a7aa58bf905e",
      "parents": [
        "dc935be2a094087bc561d80f8cf9e66bbc1f7b18"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 10 20:52:09 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:14 2010 +0900"
      },
      "message": "nilfs2: get rid of nilfs_bmap_union\n\nThis removes nilfs_bmap_union and finally unifies three structures and\nthe union in bmap/btree code into one.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "dc935be2a094087bc561d80f8cf9e66bbc1f7b18",
      "tree": "ab7af5a2a40633f74a949916de7797c3d8f345b7",
      "parents": [
        "e7c274f8083793f8f861def63c02a0839b34d26d"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 10 22:21:54 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:14 2010 +0900"
      },
      "message": "nilfs2: unify bmap set_target_v operations\n\nThis unifies two similar functions nilfs_btree_set_target_v and\nnilfs_direct_set_target_v into one, nilfs_bmap_set_target_v.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "e7c274f8083793f8f861def63c02a0839b34d26d",
      "tree": "a03bfd25a6b2736a0fec40c9282bb235691ccc0c",
      "parents": [
        "10ff885ba6f56bf7480ce3b5daf38c07600ecea3"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 10 19:09:49 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:13 2010 +0900"
      },
      "message": "nilfs2: get rid of nilfs_btree uses\n\nThis replaces all uses of nilfs_btree struct in implementation of\nbtree mapping with nilfs_bmap struct.\n\nName of local variable \"btree\" is kept not to bloat amount of change.\nAnd, a part of local variables \"bmap\" is renamed to \"btree\" to uniform\nnaming rule.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "10ff885ba6f56bf7480ce3b5daf38c07600ecea3",
      "tree": "d1a301a1f870bcc2085c840eb875097e2fe0cb7b",
      "parents": [
        "583ada4761e18bb105ce5181b0b13cf55ead6201"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 10 18:07:04 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:13 2010 +0900"
      },
      "message": "nilfs2: get rid of nilfs_direct uses\n\nThis replaces all uses of nilfs_direct struct in implementation of\ndirect mapping with nilfs_bmap struct.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "583ada4761e18bb105ce5181b0b13cf55ead6201",
      "tree": "01f0ea519265b965e50d87edd826ec56cdc7ca42",
      "parents": [
        "25b8d7ded0e4579bf152882249abfd351e65a17d"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 10 21:37:47 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:13 2010 +0900"
      },
      "message": "nilfs2: remove constant qualifier from argument of bmap propagate\n\nThe first argument of bops-\u003ebop_propagate operation takes a constant\nqualifier, and causes compilation error when removed cast to pointer\nof nilfs_btree structure type.  This fixes the issue to prepare for\nsuccesive removal of nilfs_btree struct.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "25b8d7ded0e4579bf152882249abfd351e65a17d",
      "tree": "4949d1b531805b5ea2c25a544eea200f0ec3d580",
      "parents": [
        "1d5385b9f30ae43209459db424416a3e1d8f2bde"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Jul 10 16:50:41 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:13 2010 +0900"
      },
      "message": "nilfs2: get rid of private conversion macros on bmap key and pointer\n\nWill remove nilfs_bmap_key_to_dkey(), nilfs_bmap_dkey_to_key(),\nnilfs_bmap_ptr_to_dptr(), and nilfs_bmap_dptr_to_ptr() for simplicity.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "1d5385b9f30ae43209459db424416a3e1d8f2bde",
      "tree": "202a19586853da9ec598645b5d289d4a0164b232",
      "parents": [
        "cfa913a5077f7619869b2b4d1bf23ccb4f8b3d7b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 16 23:52:40 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:13 2010 +0900"
      },
      "message": "nilfs2: verify btree node after reading\n\nThis inserts sanity checks soon after read btree node from disk.  This\nallows early detection of broken btree nodes, and helps to narrow down\nproblems due to file system corruption.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "cfa913a5077f7619869b2b4d1bf23ccb4f8b3d7b",
      "tree": "f4d8e4e8d8ee220b448566a08e75bccfb0ca966f",
      "parents": [
        "7c01745781177795e39f78b2c2c42c470a13833a"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Jul 07 17:19:54 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:12 2010 +0900"
      },
      "message": "nilfs2: add sanity check in nilfs_btree_add_dirty_buffer\n\nAccording to the report titled \"problem with nilfs_cleanerd\" from\nŁukasz Wójcicki, nilfs_btree_lookup_dirty_buffers or\nnilfs_btree_add_dirty_buffer got memory violation during garbage\ncollection.\n\nThis could happen if a level field of given btree node buffer is\nincorrect, which is a crucial internal bug.\n\nThis inserts a sanity check to figure out the problem.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "7c01745781177795e39f78b2c2c42c470a13833a",
      "tree": "20ffcebedce21dba5b9fb8180cdca1e06b42fd41",
      "parents": [
        "c6b4d57ddf12f3fd4d41d7b3b9181de46748418d"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jul 05 20:08:33 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:12 2010 +0900"
      },
      "message": "nilfs2: pass remount flag to parse_options\n\nThis adds is_remount argument to the parse_options() function that\nobtains mount options from strings.\n\nPreviously, parse_options did not distinguish context whether it\u0027s\ncalled for a new mount or remount, so the caller needed additional\nverifications outside the function.\n\nThis allows parse_options to verify options and print messages\ndepending on the context.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "c6b4d57ddf12f3fd4d41d7b3b9181de46748418d",
      "tree": "66e748018b5f5bd0c343381f88b946a777fd8c13",
      "parents": [
        "802d31775404ee335ca1e97a82e1e706a4c843be"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jul 05 14:40:27 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:12 2010 +0900"
      },
      "message": "nilfs2: use seq_puts to print mount options without argument\n\nThis replaces seq_printf() with seq_puts() in nilfs_show_options for\nmount options which have no argument.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "802d31775404ee335ca1e97a82e1e706a4c843be",
      "tree": "3753263ea97748e6c2b01f29fb7f81c19381eb7b",
      "parents": [
        "773bc4f3b6898634a80a41c72a1f34cb89992dcd"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jul 05 14:27:04 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:12 2010 +0900"
      },
      "message": "nilfs2: add nodiscard mount option\n\nNilfs has \"discard\" mount option which issues discard/TRIM commands to\nunderlying block device, but it lacks a complementary option and has\nno way to disable the feature through remount.\n\nThis adds \"nodiscard\" option to resolve this imbalance.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "773bc4f3b6898634a80a41c72a1f34cb89992dcd",
      "tree": "ee6f12c0fbfa959a79861904498d04db8d899cc2",
      "parents": [
        "325020477a51ffa849418b3e38189fd266f2ae20"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jul 05 13:00:08 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:12 2010 +0900"
      },
      "message": "nilfs2: add barrier mount option\n\nNilfs enables write barriers by default and has \"nobarrier\" mount\noption to disable this feature.  But it lacks the complementary option\nand has no way to re-enable the feature on remount.\n\nThis adds \"barrier\" option to resolve this imbalance.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "325020477a51ffa849418b3e38189fd266f2ae20",
      "tree": "a02d99b61ed3b98fbbd56f857fdd46808326dff7",
      "parents": [
        "6c12516083cf51b6e576691ac6e20c4a32f4edb9"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Jun 29 14:42:13 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:11 2010 +0900"
      },
      "message": "nilfs2: do not update log cursor for small change\n\nSuper blocks of nilfs are periodically overwritten in order to record\nthe recent log position.  This shortens recovery time after unclean\nunmount, but the current implementation performs the update even for a\nfew blocks of change.  If the filesystem gets small changes slowly and\ncontinually, super blocks may be updated excessively.\n\nThis moderates the issue by skipping update of log cursor if it does\nnot cross a segment boundary.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "6c12516083cf51b6e576691ac6e20c4a32f4edb9",
      "tree": "61d3b3d2502aac37ee2a6d426be104ac8728d6aa",
      "parents": [
        "2d72b99ecdf8cbb5d9422c54b401d9d590b2faf5"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 28 19:15:26 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:11 2010 +0900"
      },
      "message": "nilfs2: implement fallback for super root search\n\nAlthough nilfs redundantly uses two super blocks and each may point to\ndifferent position on log, the current version of nilfs does not try\nfallback to the spare super block when it doesn\u0027t find any valid log\nat the position that the primary super block points to.\n\nThis has been a cause of mount failures due to write order reversals\non barrier less block devices.\n\nThis inserts fallback code in error path of nilfs_search_super_root\nroutine to resolve the mount failure problem.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "2d72b99ecdf8cbb5d9422c54b401d9d590b2faf5",
      "tree": "9984b1d2f457bb80268e66171b404b12dd917d21",
      "parents": [
        "843d63baa5babf3d8786f6a4377a2448525da7aa"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 28 19:15:25 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:11 2010 +0900"
      },
      "message": "nilfs2: add missing error code in comment of nilfs_search_super_root\n\nnilfs_search_super_root can return -ENOMEM, but this error code is not\ndescribed in its kernel-doc comment.  This fixes the discrepancy.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "843d63baa5babf3d8786f6a4377a2448525da7aa",
      "tree": "15466ecdb0e65b1f654d6bc67f3607b4b5740eb5",
      "parents": [
        "b2ac86e1a8e3a3b0ab4449d062c582f07a078e7b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 28 19:15:24 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:11 2010 +0900"
      },
      "message": "nilfs2: separate setup of log cursor from init_nilfs\n\nThis separates a setup routine of log cursor from init_nilfs().  The\nroutine, nilfs_store_log_cursor, reads the last position of the log\ncontaining a super root, and initializes relevant state on the nilfs\nobject.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "b2ac86e1a8e3a3b0ab4449d062c582f07a078e7b",
      "tree": "b681ea820685a278e06995ff23b58f7a85904b70",
      "parents": [
        "d26493b6f017c0b0063a15bf893411ddae85eee4"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Mon Jun 28 17:49:33 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:11 2010 +0900"
      },
      "message": "nilfs2: sync super blocks in turns\n\nThis will sync super blocks in turns instead of syncing duplicate\nsuper blocks at the time.  This will help searching valid super root\nwhen super block is written into disk before log is written, which is\nhappen when barrier-less block devices are unmounted uncleanly.  In\nthe situation, old super block likely points to valid log.\n\nThis patch introduces ns_sbwcount member to the nilfs object and adds\nnilfs_sb_will_flip() function; ns_sbwcount counts how many times super\nblocks write back to the disk.  And, nilfs_sb_will_flip() decides\nwhether flipping required or not based on the count of ns_sbwcount to\nsync super blocks asymmetrically.\n\nThe following functions are also changed:\n\n - nilfs_prepare_super(): flips super blocks according to the\n   argument.  The argument is calculated by nilfs_sb_will_flip()\n   function.\n\n - nilfs_cleanup_super(): sets \"clean\" flag to both super blocks if\n   they point to the same checkpoint.\n\nTo update both of super block information, caller of\nnilfs_commit_super must set the information on both super blocks.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "d26493b6f017c0b0063a15bf893411ddae85eee4",
      "tree": "994de3e7c0383f0e30e5e9c88c0c5d0261a834bc",
      "parents": [
        "60f46b7efc1d6b980511c2644cb89903062f6e98"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Mon Jun 28 17:49:32 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:10 2010 +0900"
      },
      "message": "nilfs2: introduce nilfs_prepare_super\n\nThis function checks validity of super block pointers.\nIf first super block is invalid, it will swap the super blocks.\nThe function should be called before any super block information updates.\nCaller must obtain nilfs-\u003ens_sem.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "60f46b7efc1d6b980511c2644cb89903062f6e98",
      "tree": "6a0093650f858279db262c3b39de721bf3b20098",
      "parents": [
        "c8a11c8a1455c380286cfd3d3442e2b60edee49a"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 28 17:49:31 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:10 2010 +0900"
      },
      "message": "nilfs2: separate function that updates log position\n\nThis moves out section that updates information of the recent log\nposition stored in super blocks from nilfs_commit_super to a new\nroutine named nilfs_set_log_cursor.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "c8a11c8a1455c380286cfd3d3442e2b60edee49a",
      "tree": "351227134573d3a95855fe8a4b352c8baf20efb9",
      "parents": [
        "7ecaa46cfea453238a369b3019739d50ff5d7c37"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 28 17:49:30 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:10 2010 +0900"
      },
      "message": "nilfs2: add nilfs_set_error\n\nThis function marks error state and write it on super blocks.  This is\na preparation for making super block writeback alternately.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "7ecaa46cfea453238a369b3019739d50ff5d7c37",
      "tree": "c69911a31c3a2cd4966979de2d34764e08471f2a",
      "parents": [
        "bde4e696e4a527c3cc579ed77e4844d11ca17e12"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Jun 28 17:49:29 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:10 2010 +0900"
      },
      "message": "nilfs2: add nilfs_cleanup_super\n\nThis function write out filesystem state to super blocks in order to\nshare the same cleanup work.  This is a preparation for making super\nblock writeback alternately.\n\nCc: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "bde4e696e4a527c3cc579ed77e4844d11ca17e12",
      "tree": "fb93204331c64f1cac3a7cd8e579941224580b73",
      "parents": [
        "57a4bfc486727b68e4422031aeba427fb7262668"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jun 27 21:38:05 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:10 2010 +0900"
      },
      "message": "nilfs2: do not update mount time on rw-\u003ero remount\n\nMount time field in super block is wrongly updated when nilfs remounts\nthe partition from read-write to read-only.  This fixes the issue.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "57a4bfc486727b68e4422031aeba427fb7262668",
      "tree": "9e151535879babada61ee3db258ef73b9ab45c3d",
      "parents": [
        "4762077c7b93d35e0417f66702deae3ce3a9855e"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Jun 20 03:10:21 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:09 2010 +0900"
      },
      "message": "nilfs2: get rid of ns_free_segments_count\n\nThis counter is unused.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "4762077c7b93d35e0417f66702deae3ce3a9855e",
      "tree": "b292dca26b4dedd12f8f1d45ab3b7d49c137f8b0",
      "parents": [
        "85655484f896d078d310221475b90ea27f76e5f2"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 21:48:36 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:09 2010 +0900"
      },
      "message": "nilfs2: get rid of macros for segment summary information\n\nThis removes macros to test segment summary flags and redefines a few\nrelevant macros with inline functions.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "85655484f896d078d310221475b90ea27f76e5f2",
      "tree": "007cab199f81b4b461dd7a05fd90e84381a8ccd6",
      "parents": [
        "354fa8be280ce81c88b6b236d62d23ebcade2d3f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 19:46:44 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:09 2010 +0900"
      },
      "message": "nilfs2: do not use nilfs_segsum_info structure in recovery code\n\nThis will get rid of nilfs_segsum_info use from recovery functions for\nsimplicity.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "354fa8be280ce81c88b6b236d62d23ebcade2d3f",
      "tree": "68577608794a15910b72d7644339edc1f39eddbe",
      "parents": [
        "aee5ce2f578b98eba16e59cb84d39a95682a836b"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 19:21:49 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:09 2010 +0900"
      },
      "message": "nilfs2: divide load_segment_summary function\n\nload_segment_summary function has two distinct roles: getting summary\nheader of a log, and verifying consistencies of the log.\n\nThis divide it into two corresponding functions, nilfs_read_log_header\nand nilfs_validate_log to clarify the meaning.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "aee5ce2f578b98eba16e59cb84d39a95682a836b",
      "tree": "fd8b3d254a328f4b6ccf9240515002b0e1f96c88",
      "parents": [
        "8b94025c00f9171b41ba9c1696943f5c935b62ef"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 12:21:57 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:09 2010 +0900"
      },
      "message": "nilfs2: rename nilfs_recover_logical_segments function\n\nThe function name of nilfs_recover_logical_segments makes no sense.\nThis changes the name into nilfs_salvage_orphan_logs to clarify the\nrole of the function.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "8b94025c00f9171b41ba9c1696943f5c935b62ef",
      "tree": "97f770d1f1aa6d57c1a070514d4f933ffc4d467c",
      "parents": [
        "92c60ccaf3c15a06d859682b980de1066641b4d0"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 01:39:02 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:08 2010 +0900"
      },
      "message": "nilfs2: refactor recovery logic routines\n\nMost functions in recovery code take an argument of a super block\ninstance or a nilfs_sb_info struct for convenience sake.\n\nThis replaces them aggressively with a nilfs object by applying\n__bread and __breadahead against routines using sb_bread and\nsb_breadahead.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "92c60ccaf3c15a06d859682b980de1066641b4d0",
      "tree": "9abc2b4ce0fa94e26e4708eedfd72546eec5a0e4",
      "parents": [
        "b37fa16e78d6f9790462b3181602a26b5af36260"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 00:17:48 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Jul 23 10:02:08 2010 +0900"
      },
      "message": "nilfs2: add blocksize member to nilfs object\n\nThis stores blocksize in nilfs objects for the successive refactoring\nof recovery logic.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "c29684d6834af7b3792f2feb6bdcf8c906ad8db6",
      "tree": "b8499307caa90e2860221add4008e50882b6c9e1",
      "parents": [
        "84cb0999851e25bc4bd4aaa717cc8f8acbf42b2a"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 23 20:40:32 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 31 20:50:29 2010 +0900"
      },
      "message": "nilfs2: remove obsolete declarations of cache constructor and destructor\n\nThe commit 41c88bd7 (\"nilfs2: cleanup multi\nkmem_cache_{create,destroy} code\") consolidated slab constructors and\ndestructors used in nilfs, but it left some declarations in header\nfiles.\n\nThis gets rid of the obsolete declarations.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "84cb0999851e25bc4bd4aaa717cc8f8acbf42b2a",
      "tree": "7e7cdd687ea97cf41543ae543cb17ec5ad11317b",
      "parents": [
        "67a3e12b05e055c0415c556a315a3d3eb637e29e"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat May 22 12:49:32 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 31 20:50:29 2010 +0900"
      },
      "message": "nilfs2: fix style issue in nilfs_destroy_cachep\n\nThis gets rid of unwanted space chars in front of conditional\nsentences of nilfs_destroy_cachep().\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "7ea8085910ef3dd4f3cad6845aaa2b580d39b115",
      "tree": "d9c1edb5906f943f7d70bfb4b65106e29772d379",
      "parents": [
        "cc967be54710d97c05229b2e5ba2d00df84ddd64"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed May 26 17:53:25 2010 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 27 22:05:02 2010 -0400"
      },
      "message": "drop unused dentry argument to -\u003efsync\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e8bebe2f71d26871b0970ae1d9cf0ed3cdd9569d",
      "tree": "c0d82cbd11daaf579b74121c6641d58947091094",
      "parents": [
        "6109e2ce2600e2db26cd0424bb9c6ed019723288",
        "82f3952c02add60b15eea9151d4d99b6b82066c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 19:37:45 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 19:37:45 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (69 commits)\n  fix handling of offsets in cris eeprom.c, get rid of fake on-stack files\n  get rid of home-grown mutex in cris eeprom.c\n  switch ecryptfs_write() to struct inode *, kill on-stack fake files\n  switch ecryptfs_get_locked_page() to struct inode *\n  simplify access to ecryptfs inodes in -\u003ereadpage() and friends\n  AFS: Don\u0027t put struct file on the stack\n  Ban ecryptfs over ecryptfs\n  logfs: replace inode uid,gid,mode initialization with helper function\n  ufs: replace inode uid,gid,mode initialization with helper function\n  udf: replace inode uid,gid,mode init with helper\n  ubifs: replace inode uid,gid,mode initialization with helper function\n  sysv: replace inode uid,gid,mode initialization with helper function\n  reiserfs: replace inode uid,gid,mode initialization with helper function\n  ramfs: replace inode uid,gid,mode initialization with helper function\n  omfs: replace inode uid,gid,mode initialization with helper function\n  bfs: replace inode uid,gid,mode initialization with helper function\n  ocfs2: replace inode uid,gid,mode initialization with helper function\n  nilfs2: replace inode uid,gid,mode initialization with helper function\n  minix: replace inode uid,gid,mode init with helper\n  ext4: replace inode uid,gid,mode init with helper\n  ...\n\nTrivial conflict in fs/fs-writeback.c (mark bitfields unsigned)\n"
    },
    {
      "commit": "73459dcc67e77aa5cb28d51b2d84dd145977ace3",
      "tree": "140b6bc33f01b5549b7ab9c0a0ad085a382169e9",
      "parents": [
        "9eed1fb721c6c512795f8847bccc413f3a1143bb"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Thu Mar 04 17:32:15 2010 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 21 18:31:25 2010 -0400"
      },
      "message": "nilfs2: replace inode uid,gid,mode initialization with helper function\n\nAcked-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ee9a3607fb03e804ddf624544105f4e34260c380",
      "tree": "ce41b6e0fa10982a306f6c142a92dbf3c9961284",
      "parents": [
        "b492e95be0ae672922f4734acf3f5d35c30be948",
        "d515e86e639890b33a09390d062b0831664f04a2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 21 21:27:26 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 21 21:27:26 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-2.6.35\n\nConflicts:\n\tfs/ext3/fsync.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "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": "cdce214e39814fd46d47e0e660ca3ddf3fdce8a6",
      "tree": "18473658f4e8128d4a8012301ec1c3acaf18182f",
      "parents": [
        "b87ca91948843472c05ae49e4c5e1714001d24c9"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun May 09 15:31:22 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:34 2010 +0900"
      },
      "message": "nilfs2: use huge_encode_dev/huge_decode_dev\n\nThis replaces uses of new_encode_dev/new_decode_dev with their 64-bit\ncounterparts, huge_encode_dev/huge_decode_dev respectively.\n\nThis is just for clarification and has no impact on the disk format.\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": "25294d8c376296b1420694317e9856eaaea710ca",
      "tree": "0241728923929381293a738222967952531d5625",
      "parents": [
        "34cb9b5c973ac06449b96884be932da9a9b99819"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat May 01 11:54:21 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:32 2010 +0900"
      },
      "message": "nilfs2: use checkpoint number instead of timestamp to select super block\n\nNilfs maintains two super blocks, and selects the new one on mount\ntime if they both have valid checksums and their timestamps differ.\n\nHowever, this has potential for mis-selection since the system clock\nmay be rewinded and the resolution of the timestamps is not high.\n\nUsually this doesn\u0027t become an issue because both super blocks are\nupdated at the same time when the file system is unmounted.  Even if\nthe file system wasn\u0027t unmounted cleanly, the roll-forward recovery\nwill find the proper log which stores the latest super root.  Thus,\nthe issue can appear only if update of one super block fails and the\nclock happens to be rewinded.\n\nThis fixes the issue by using checkpoint numbers instead of timestamps\nto pick the super block storing the location of the latest log.\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": "4e819509cba664e7cbfba5c4d1517df4dfda86f5",
      "tree": "ade615c9d48d18e31a6906ac0955339e917a2a48",
      "parents": [
        "db55d92252c07c0e5561966ecca95c6f332dd892"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Apr 23 17:35:23 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:31 2010 +0900"
      },
      "message": "nilfs2: make nilfs_sc_*_ops static\n\nThis kills the following sparse warnings:\n\nfs/nilfs2/segment.c:567:28: warning: symbol \u0027nilfs_sc_file_ops\u0027 was not declared. Should it be static?\nfs/nilfs2/segment.c:617:28: warning: symbol \u0027nilfs_sc_dat_ops\u0027 was not declared. Should it be static?\nfs/nilfs2/segment.c:625:28: warning: symbol \u0027nilfs_sc_dsync_ops\u0027 was not declared. Should it be static?\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "db55d92252c07c0e5561966ecca95c6f332dd892",
      "tree": "624aacfce2e287a89f4a49f03b543af3b5e4a6da",
      "parents": [
        "fdce895ea5dd4e24edf1f4d693827349a4e5b3b4"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 12 01:46:02 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:31 2010 +0900"
      },
      "message": "nilfs2: add kernel doc comments to persistent object allocator functions\n\nThe implementation of persistent object allocator (alloc.c) is poorly\ndocumented.  This adds kernel doc style comments on that functions.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "fdce895ea5dd4e24edf1f4d693827349a4e5b3b4",
      "tree": "77a1a4cd496ed8459813eddf68efe8b777c3c058",
      "parents": [
        "154ac5a83014cd6ea72e4ac5018bf8c10ee9a79e"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Sat Apr 10 23:25:39 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:31 2010 +0900"
      },
      "message": "nilfs2: change sc_timer from a pointer to an embedded one in struct nilfs_sc_info\n\nIn nilfs_segctor_thread(), timer is a local variable allocated on stack. Its\naddress can\u0027t be set to sci-\u003esc_timer and passed in several procedures.\n\nIt works now by chance, just because other procedures are called by\nnilfs_segctor_thread() directly or indirectly and the stack hasn\u0027t been\ndeallocated yet.\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": "154ac5a83014cd6ea72e4ac5018bf8c10ee9a79e",
      "tree": "ea772f3e5b301e1dbf81c6ff9821711c9de61db6",
      "parents": [
        "50614bcf29d0cec6df5b84c0d8331e8b8c7d72a7"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Sat Apr 10 21:57:11 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:31 2010 +0900"
      },
      "message": "nilfs2: remove nilfs_segctor_init() in segment.c\n\nThere are only two lines of code in nilfs_segctor_init(). From a logic\ndesign view, the first line \u0027sci-\u003esc_seq_done \u003d sci-\u003esc_seq_request;\u0027\nshould be put in nilfs_segctor_new(). Even in nilfs_segctor_new(),\nthis initialization is needless because sci is kzalloc-ed. So\nnilfs_segctor_init() is only a wrap call to\nnilfs_segctor_start_thread().\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": "50614bcf29d0cec6df5b84c0d8331e8b8c7d72a7",
      "tree": "3a91f6af1396f377a3bced903d605feb9b811b15",
      "parents": [
        "9f130263f30233a44a3175db3218dd89af143d64"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Apr 10 17:59:15 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:31 2010 +0900"
      },
      "message": "nilfs2: insert checkpoint number in segment summary header\n\nThis adds a field to record the latest checkpoint number in the\nnilfs_segment_summary structure.  This will help to recover the latest\ncheckpoint number from logs on disk.  This field is intended for\ncrucial cases in which super blocks have lost pointer to the latest\nlog.\n\nEven though this will change the disk format, both backward and\nforward compatibility is preserved by a size field prepared in the\nsegment summary header.\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": "aaed1d5bfac459ead9aaad324e7fe3326250f50a",
      "tree": "389f305354db9a45a482ff38e5f0ffab030c76bd",
      "parents": [
        "1e2b68bf285dce604388fcb6f85b7e612156db17"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Mar 23 01:50:38 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:30 2010 +0900"
      },
      "message": "nilfs2: move out checksum routines to segment buffer code\n\nThis moves out checksum routines in log writer to segbuf.c for\ncleanup.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "1e2b68bf285dce604388fcb6f85b7e612156db17",
      "tree": "5cf59247e8171edceb77a521fd2cdf865f0ec9d2",
      "parents": [
        "277a6a34175dcb0ee98dceee619e0e3190347a25"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Tue Mar 23 01:15:31 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:30 2010 +0900"
      },
      "message": "nilfs2: move pointer to super root block into logs\n\nThis moves a pointer to buffer storing super root block to each log\nbuffer from nilfs_sc_info struct for simplicity.\n\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": "73bb48869b14fd5094b9ec173a2bf86bc0e464d4",
      "tree": "3c2ffd6ebdf3a821cb7a37fe873fe4e8e957bcd9",
      "parents": [
        "f905440f5edfa70a07e64bdbc973cbdd55dd001d"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Fri Apr 02 18:35:00 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:29 2010 +0900"
      },
      "message": "nilfs2: Combine nilfs_btree_release_path() and nilfs_btree_free_path()\n\nnilfs_btree_release_path() and nilfs_btree_free_path() are bound into each other\ntightly. Make them into one procedure to clearify the logic and avoid some\nmisusages.\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": "f905440f5edfa70a07e64bdbc973cbdd55dd001d",
      "tree": "83f27e8f4ebd473c00e758bb0a52a4949b342a9a",
      "parents": [
        "0d9cc2332df24d3e81060c782b2ecb87c28443f9"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Fri Apr 02 17:36:34 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon May 10 11:32:29 2010 +0900"
      },
      "message": "nilfs2: Combine nilfs_btree_alloc_path() and nilfs_btree_init_path()\n\nnilfs_btree_alloc_path() and nilfs_btree_init_path() are bound into each other\ntightly. Make them into one procedure to clearify the logic and avoid some\nmisusages.\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": "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": "6a47dc1418682c83d603b491df1d048f73aa973e",
      "tree": "4a73ae4ce74be630b8862dcaf2a757f2f268ebbd",
      "parents": [
        "0341aafb7f3313bcedc6811a098500be85f3fc77"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Thu Apr 29 09:32:00 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 29 09:32:00 2010 +0200"
      },
      "message": "nilfs: fix breakage caused by barrier flag changes\n\nAfter merging the block tree, today\u0027s linux-next build (powerpc ppc64_defconfig)\nfailed like this:\n\nfs/nilfs2/the_nilfs.c: In function \u0027nilfs_discard_segments\u0027:\nfs/nilfs2/the_nilfs.c:673: error: \u0027DISCARD_FL_BARRIER\u0027 undeclared (first use in this function)\n\nCaused by commit fbd9b09a177a481eda256447c881f014f29034fe (\"blkdev:\ngeneralize flags for blkdev_issue_fn functions\") interacting with commit\ne902ec9906e844f4613fa6190c6fa65f162dc86e (\"nilfs2: issue discard request\nafter cleaning segments\") (which netered Linus\u0027 tree on about March 4 -\nbefore v2.6.34-rc1).\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "44fa2b4bee5b07d506a7b002b4e2eb73654db7e0",
      "tree": "5415a4988e326de7d3456d72115ac74f548ca8d1",
      "parents": [
        "0eddb519b9127c73d53db4bf3ec1d45b13f844d1",
        "be3bd2223b89d270853302ab0a5909fa875fd831"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 12 18:34:25 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 12 18:34:25 2010 -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:\n  nilfs2: fix typo \"numer\" -\u003e \"number\" in alloc.c\n  nilfs2: Remove an uninitialization warning in nilfs_btree_propagate_v()\n  nilfs2: fix a wrong type conversion in nilfs_ioctl()\n"
    },
    {
      "commit": "be3bd2223b89d270853302ab0a5909fa875fd831",
      "tree": "7f309ea90c33c6306790c4f6dfc2d42ab0066ac7",
      "parents": [
        "308f44193f796b1c522b3b87760e43d8d8e316d2"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 12 01:51:03 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Apr 12 01:51:03 2010 +0900"
      },
      "message": "nilfs2: fix typo \"numer\" -\u003e \"number\" in alloc.c\n\nFixes the typo found in a warning message of a persistent object\nallocator function.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "308f44193f796b1c522b3b87760e43d8d8e316d2",
      "tree": "da0fae6f13ce7ae48d67b6d362303fea312a6d88",
      "parents": [
        "753234007f4ac2c96921cfb19ec1ba535ac29790"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Fri Apr 02 18:40:39 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Fri Apr 02 20:03:30 2010 +0900"
      },
      "message": "nilfs2: Remove an uninitialization warning in nilfs_btree_propagate_v()\n\n`make CONFIG_NILFS2_FS\u003dm M\u003dfs/nilfs2/` will give the following warnings:\n\nfs/nilfs2/btree.c: In function \u0027nilfs_btree_propagate\u0027:\nfs/nilfs2/btree.c:1882: warning: \u0027maxlevel\u0027 may be used uninitialized in this function\nfs/nilfs2/btree.c:1882: note: \u0027maxlevel\u0027 was declared here\n\nSet maxlevel \u003d 0 to fix it.\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": "753234007f4ac2c96921cfb19ec1ba535ac29790",
      "tree": "c238c54daff482ba3e91153b0d13e2c646a6e1bd",
      "parents": [
        "2eaa9cfdf33b8d7fb7aff27792192e0019ae8fc6"
      ],
      "author": {
        "name": "Li Hong",
        "email": "lihong.hi@gmail.com",
        "time": "Wed Mar 31 15:41:00 2010 +0800"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Mar 31 16:55:00 2010 +0900"
      },
      "message": "nilfs2: fix a wrong type conversion in nilfs_ioctl()\n\n(void * __user *) should be (void __user *)\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": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "d067633b4483f3c7d971d8f889f35340a8635bb5",
      "tree": "4b27e195b6006b1fffe8c952d0a208b1e0491583",
      "parents": [
        "110d735a0ae69bdd11af9acb6ea3b979137eb118"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Mar 22 19:33:43 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Mar 24 01:17:20 2010 +0900"
      },
      "message": "nilfs2: fix imperfect completion wait in nilfs_wait_on_logs\n\nnilfs_wait_on_logs has a potential to slip out before completion of\nall bio requests when it met an error.  This synchronization fault may\ncause unexpected results, for instance, violative access to freed\nsegment buffers from an end-bio callback routine.\n\nThis fixes the issue by ensuring that nilfs_wait_on_logs waits all\ngiven logs.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "110d735a0ae69bdd11af9acb6ea3b979137eb118",
      "tree": "aa25160aad878031823920a00e802ac3da76b5bb",
      "parents": [
        "2d8428acaee5468d194d8a84de22a0797791cb33"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Mar 22 21:36:06 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Wed Mar 24 00:03:06 2010 +0900"
      },
      "message": "nilfs2: fix hang-up of cleaner after log writer returned with error\n\nAccording to the report from Andreas Beckmann (Message-ID:\n\u003c4BA54677.3090902@abeckmann.de\u003e), nilfs in 2.6.33 kernel got stuck\nafter a disk full error.\n\nThis turned out to be a regression by log writer updates merged at\nkernel 2.6.33.  nilfs_segctor_abort_construction, which is a cleanup\nfunction for erroneous cases, was skipping writeback completion for\nsome logs.\n\nThis fixes the bug and would resolve the hang issue.\n\nReported-by: Andreas Beckmann \u003cdebian@abeckmann.de\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nTested-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nCc: stable \u003cstable@kernel.org\u003e                     [2.6.33.x]\n"
    },
    {
      "commit": "2d8428acaee5468d194d8a84de22a0797791cb33",
      "tree": "4d7b400be54f01b9756bffe421c109c19dafe458",
      "parents": [
        "220bf991b0366cc50a94feede3d7341fa5710ee4"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Mar 22 14:01:24 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Mon Mar 22 14:41:07 2010 +0900"
      },
      "message": "nilfs2: fix duplicate call to nilfs_segctor_cancel_freev\n\nAndreas Beckmann gave me a report that nilfs logged the following\nwarnings when it got a disk full:\n\n  nilfs_sufile_do_cancel_free: segment 0 must be clean\n  nilfs_sufile_do_cancel_free: segment 1 must be clean\n\nThese arise from a duplicate call to nilfs_segctor_cancel_freev in an\nerror path of log writer.  This will fix the issue.\n\nReported-by: Andreas Beckmann \u003cdebian@abeckmann.de\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\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": "55480a06e9ee8d05d0e580bf46611df489653c76",
      "tree": "5e84360a299051720943a3ce0a2713f4165d1ca0",
      "parents": [
        "7a65004bbaa6a21a0438aac9c64814e46084dc3f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 03:55:56 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 spaces before tabs\n\nThis kills the following checkpatch warnings:\n\n WARNING: please, no space before tabs\n #74: FILE: segment.h:74:\n +^Iunsigned ^I^Iflags;$\n\n WARNING: please, no space before tabs\n #35: FILE: segbuf.c:35:\n +^Iint ^I^I^Istart, end; /* The region to be submitted */$\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": "1621562b6ac55aa69239895d90276577547a5f62",
      "tree": "27d33991e28ac824a8262f1beddecad52cdd304e",
      "parents": [
        "9ccf56c13831c5fe0edecd8c1184c9a6fe805d23"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 03:17:45 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 10:29:50 2010 +0900"
      },
      "message": "nilfs2: fix typo \"cout\" -\u003e \"count\" in error message\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "9ccf56c13831c5fe0edecd8c1184c9a6fe805d23",
      "tree": "f3e3810e1d12e6ba88b7dfd922f0185a90112073",
      "parents": [
        "6c477d44a7dad43a2783b4dea7f4ca3882d77126"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 03:01:03 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 10:29:50 2010 +0900"
      },
      "message": "nilfs2: fix function name typos in docbook comments\n\nFixes the following typos in docbook comments:\n\n nilfs_detroy_transaction_cache -\u003e nilfs_destroy_transaction_cache\n nilfs_secgtor_start_timer -\u003e nilfs_segctor_start_timer\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "6c477d44a7dad43a2783b4dea7f4ca3882d77126",
      "tree": "7a0e051ddbb9c2c0f11910983efe3d98c8bcf8c5",
      "parents": [
        "57d54889cd00db2752994b389ba714138652e60c"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 02:01:51 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sun Mar 14 10:27:27 2010 +0900"
      },
      "message": "nilfs2: fix discrepancy in use of static specifier\n\nTwo segbuf functions, nilfs_segbuf_write and nilfs_segbuf_wait, are\ndeclared with the static storage class specifier, but their\nimplementations are not.\n\nThis fixes the discrepancy.\n\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "0f2cc4ecd81dc1917a041dc93db0ada28f8356fa",
      "tree": "f128b50f48f50f0cda6d2b20b53e9ad6e2dfded3",
      "parents": [
        "1fae4cfb97302289bb5df6a8195eb28385d0b002",
        "9643f5d94aadd47a5fa9754fb60f2c957de05903"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 04 08:15:33 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 04 08:15:33 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (52 commits)\n  init: Open /dev/console from rootfs\n  mqueue: fix typo \"failues\" -\u003e \"failures\"\n  mqueue: only set error codes if they are really necessary\n  mqueue: simplify do_open() error handling\n  mqueue: apply mathematics distributivity on mq_bytes calculation\n  mqueue: remove unneeded info-\u003emessages initialization\n  mqueue: fix mq_open() file descriptor leak on user-space processes\n  fix race in d_splice_alias()\n  set S_DEAD on unlink() and non-directory rename() victims\n  vfs: add NOFOLLOW flag to umount(2)\n  get rid of -\u003emnt_parent in tomoyo/realpath\n  hppfs can use existing proc_mnt, no need for do_kern_mount() in there\n  Mirror MS_KERNMOUNT in -\u003emnt_flags\n  get rid of useless vfsmount_lock use in put_mnt_ns()\n  Take vfsmount_lock to fs/internal.h\n  get rid of insanity with namespace roots in tomoyo\n  take check for new events in namespace (guts of mounts_poll()) to namespace.c\n  Don\u0027t mess with generic_permission() under -\u003ed_lock in hpfs\n  sanitize const/signedness for udf\n  nilfs: sanitize const/signedness in dealing with -\u003ed_name.name\n  ...\n\nFix up fairly trivial (famous last words...) conflicts in\ndrivers/infiniband/core/uverbs_main.c and security/tomoyo/realpath.c\n"
    },
    {
      "commit": "072f98b4637eddcbdf2178fc84f382e2ee522f08",
      "tree": "ee260375c1be79a1ba4f60f5211a18ba913b93e6",
      "parents": [
        "0319003d0d229735770c185ddf132c666e9cd01a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 31 21:03:58 2010 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 03 14:07:58 2010 -0500"
      },
      "message": "nilfs: sanitize const/signedness in dealing with -\u003ed_name.name\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0319003d0d229735770c185ddf132c666e9cd01a",
      "tree": "b6c7e8d10bc09816ae20711fac24fd5b9f63a4ca",
      "parents": [
        "89031bc79782a93fc65adabd0e123c89645bee6e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jan 31 21:02:09 2010 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 03 14:07:58 2010 -0500"
      },
      "message": "nilfs really shouldn\u0027t slap struct dentry on stack...\n\n... especially when it only needs (and initializes) .d_name of it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0d561f12b490dd2b993d73112d3297007688e6df",
      "tree": "3c754966cb9ec6647048ae2fd41428c9fa4b1b84",
      "parents": [
        "03f29365e84ff6d651be4e6186e0400ca59da6cd"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Sat Feb 20 19:47:49 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Sat Feb 20 21:18:19 2010 +0900"
      },
      "message": "nilfs2: add reader\u0027s lock for cno in nilfs_ioctl_sync\n\nThis adds reader\u0027s lock for the_nilfs-\u003ecno in nilfs_ioctl_sync,\nfor the_nilfs-\u003ecno should be proctected by segctor_sem when reading.\n\nSigned-off-by: Jiro SEKIBA \u003cjir@unicus.jp\u003e\nSigned-off-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\n"
    },
    {
      "commit": "03f29365e84ff6d651be4e6186e0400ca59da6cd",
      "tree": "c017d0f58954acd7f5e15bd97fa0871eb4024da9",
      "parents": [
        "d1c6b72a7224f6cd6924f7079f79580cde696d68"
      ],
      "author": {
        "name": "Jiro SEKIBA",
        "email": "jir@unicus.jp",
        "time": "Thu Feb 18 19:11:35 2010 +0900"
      },
      "committer": {
        "name": "Ryusuke Konishi",
        "email": "konishi.ryusuke@lab.ntt.co.jp",
        "time": "Thu Feb 18 20:09:03 2010 +0900"
      },
      "message": "nilfs2: delete unnecessary condition in load_segment_summary\n\nThis is a trivial patch to remove unnecessary condition.\n\nload_segment_summary() checks crc of segment_summary OR crc of whole\nlog data blocks based on boolean argument full_check.  However,\ncallers of the function pass only 1 as full_check, which means only\nwhole log data blocks checking code is running all the time.\n\nThis patch deletes the condition and full_check argument and also\ndeletes enum \u0027NILFS_SEG_FAIL_CHECKSUM_SEGSUM\u0027 and corresponding case\nclause, for it is nolonger 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"
    }
  ],
  "next": "d1c6b72a7224f6cd6924f7079f79580cde696d68"
}
