Skip to content
  • Ryusuke Konishi's avatar
    nilfs2: fix buggy behavior seen in enumerating checkpoints · 76068c4f
    Ryusuke Konishi authored
    
    
    This will fix the weird behavior of lscp command in listing continuously
    created checkpoints; the output of lscp is rewinded regularly for the
    recent nilfs.  As a result of debugging, a defect was found in
    nilfs_cpfile_do_get_cpinfo() function.
    
    Though the function can be repeatedly called to enumerate checkpoints and
    it can skip invalid checkpoint entries, the index value was not carried
    between successive calls.
    
    The bug has long been present, and came to surface after applying a bugfix
    nilfs2-fix-problems-of-memory-allocation-in-ioctl.patch, which increased
    frequency of calling the function.  The similar bugfix was already applied
    for ``snapshots'' by
    nilfs2-fix-gc-failure-on-volumes-keeping-numerous-snapshots.patch.
    
    This fixes the problem by making the index argument bidirectional on the
    function.
    
    Signed-off-by: default avatarRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    76068c4f