1. 23 10月, 2010 10 次提交
  2. 30 8月, 2010 1 次提交
  3. 18 8月, 2010 1 次提交
  4. 16 8月, 2010 1 次提交
  5. 25 7月, 2010 1 次提交
    • R
      nilfs2: reject filesystem with unsupported block size · 89c0fd01
      Ryusuke Konishi 提交于
      This inserts sanity check that refuses to mount a filesystem with
      unsupported block size.
      
      Previously, kernel code of nilfs was looking only limitation of
      devices though mkfs.nilfs2 limits the range of block sizes; there was
      no check that prevents rec_len overflow with larger block sizes.
      
      With this change, block sizes larger than 64KB or smaller than 1KB
      will get rejected explicitly by kernel.
      Signed-off-by: NRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
      89c0fd01
  6. 23 7月, 2010 10 次提交
  7. 10 5月, 2010 1 次提交
    • R
      nilfs2: use checkpoint number instead of timestamp to select super block · 25294d8c
      Ryusuke Konishi 提交于
      Nilfs maintains two super blocks, and selects the new one on mount
      time if they both have valid checksums and their timestamps differ.
      
      However, this has potential for mis-selection since the system clock
      may be rewinded and the resolution of the timestamps is not high.
      
      Usually this doesn't become an issue because both super blocks are
      updated at the same time when the file system is unmounted.  Even if
      the file system wasn't unmounted cleanly, the roll-forward recovery
      will find the proper log which stores the latest super root.  Thus,
      the issue can appear only if update of one super block fails and the
      clock happens to be rewinded.
      
      This fixes the issue by using checkpoint numbers instead of timestamps
      to pick the super block storing the location of the latest log.
      Signed-off-by: NRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
      25294d8c
  8. 29 4月, 2010 1 次提交
  9. 14 3月, 2010 1 次提交
  10. 13 2月, 2010 1 次提交
  11. 20 11月, 2009 8 次提交
  12. 16 9月, 2009 1 次提交
  13. 14 9月, 2009 2 次提交
    • R
      nilfs2: remove individual gfp constants for each metadata file · 7a102b09
      Ryusuke Konishi 提交于
      This gets rid of NILFS_CPFILE_GFP, NILFS_SUFILE_GFP, NILFS_DAT_GFP,
      and NILFS_IFILE_GFP.  All of these constants refer to NILFS_MDT_GFP,
      and can be removed.
      Signed-off-by: NRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
      7a102b09
    • R
      nilfs2: use semaphore to protect pointer to a writable FS-instance · 027d6404
      Ryusuke Konishi 提交于
      will get rid of nilfs_get_writer() and nilfs_put_writer() pair used to
      retain a writable FS-instance for a period.
      
      The pair functions were making up some kind of recursive lock with a
      mutex, but they became overkill since the commit
      201913ed.  Furthermore, they caused
      the following lockdep warning because the mutex can be released by a
      task which didn't lock it:
      
       =====================================
       [ BUG: bad unlock balance detected! ]
       -------------------------------------
       kswapd0/422 is trying to release lock (&nilfs->ns_writer_mutex) at:
       [<c1359ff5>] mutex_unlock+0x8/0xa
       but there are no more locks to release!
      
       other info that might help us debug this:
       no locks held by kswapd0/422.
      
       stack backtrace:
       Pid: 422, comm: kswapd0 Not tainted 2.6.31-rc4-nilfs #51
       Call Trace:
        [<c1358f97>] ? printk+0xf/0x18
        [<c104fea7>] print_unlock_inbalance_bug+0xcc/0xd7
        [<c11578de>] ? prop_put_global+0x3/0x35
        [<c1050195>] lock_release+0xed/0x1dc
        [<c1359ff5>] ? mutex_unlock+0x8/0xa
        [<c1359f83>] __mutex_unlock_slowpath+0xaf/0x119
        [<c1359ff5>] mutex_unlock+0x8/0xa
        [<d1284add>] nilfs_mdt_write_page+0xd8/0xe1 [nilfs2]
        [<c1092653>] shrink_page_list+0x379/0x68d
        [<c109171b>] ? isolate_pages_global+0xb4/0x18c
        [<c1092bd2>] shrink_list+0x26b/0x54b
        [<c10930be>] shrink_zone+0x20c/0x2a2
        [<c10936b7>] kswapd+0x407/0x591
        [<c1091667>] ? isolate_pages_global+0x0/0x18c
        [<c1040603>] ? autoremove_wake_function+0x0/0x33
        [<c10932b0>] ? kswapd+0x0/0x591
        [<c104033b>] kthread+0x69/0x6e
        [<c10402d2>] ? kthread+0x0/0x6e
        [<c1003e33>] kernel_thread_helper+0x7/0x1a
      
      This patch uses a reader/writer semaphore instead of the own lock and
      kills this warning.
      Signed-off-by: NRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
      027d6404
  14. 12 6月, 2009 1 次提交