linux/fs/nilfs2
Ryusuke Konishi 7fa10d2001 nilfs2: fix improper return values of nilfs_get_cpinfo ioctl
A few tool developers gave me requests for fixing inconvenient return
value of nilfs_get_cpinfo() ioctl; if the requested mode is NILFS_SNAPSHOT
and the specified start entry is not a snapshot, the ioctl unnaturally
returns one as the number of acquired snapshot item.

In addition, the ioctl function returns an ENOENT error for checkpoints
within blocks deleted by garbage collection.

These behaviors require corrections for programs which enumerate
snapshots.  This resolves the inconvenience by changing the return values
to zero for the above cases.

Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-07 08:31:17 -07:00
..
alloc.c nilfs2: persistent object allocator 2009-04-07 08:31:13 -07:00
alloc.h nilfs2: persistent object allocator 2009-04-07 08:31:13 -07:00
bmap_union.h nilfs2: integrated block mapping 2009-04-07 08:31:13 -07:00
bmap.c nilfs2: integrated block mapping 2009-04-07 08:31:13 -07:00
bmap.h nilfs2: integrated block mapping 2009-04-07 08:31:13 -07:00
btnode.c nilfs2: B-tree node cache 2009-04-07 08:31:13 -07:00
btnode.h nilfs2: B-tree node cache 2009-04-07 08:31:13 -07:00
btree.c nilfs2: B-tree based block mapping 2009-04-07 08:31:13 -07:00
btree.h nilfs2: B-tree based block mapping 2009-04-07 08:31:13 -07:00
cpfile.c nilfs2: fix improper return values of nilfs_get_cpinfo ioctl 2009-04-07 08:31:17 -07:00
cpfile.h nilfs2: fix gc failure on volumes keeping numerous snapshots 2009-04-07 08:31:17 -07:00
dat.c nilfs2: disk address translator 2009-04-07 08:31:14 -07:00
dat.h nilfs2: disk address translator 2009-04-07 08:31:14 -07:00
dir.c nilfs2: directory entry operations 2009-04-07 08:31:15 -07:00
direct.c nilfs2: direct block mapping 2009-04-07 08:31:13 -07:00
direct.h nilfs2: direct block mapping 2009-04-07 08:31:13 -07:00
file.c nilfs2: fix missed-sync issue for do_sync_mapping_range() 2009-04-07 08:31:15 -07:00
gcdat.c nilfs2: another dat for garbage collection 2009-04-07 08:31:16 -07:00
gcinode.c nilfs2: insert explanations in gcinode file 2009-04-07 08:31:17 -07:00
ifile.c nilfs2: inode map file 2009-04-07 08:31:14 -07:00
ifile.h nilfs2: inode map file 2009-04-07 08:31:14 -07:00
inode.c nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00
ioctl.c nilfs2: fix gc failure on volumes keeping numerous snapshots 2009-04-07 08:31:17 -07:00
Makefile nilfs2: update makefile and Kconfig 2009-04-07 08:31:16 -07:00
mdt.c nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00
mdt.h nilfs2: meta data file 2009-04-07 08:31:13 -07:00
namei.c nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00
nilfs.h nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00
page.c nilfs2: buffer and page operations 2009-04-07 08:31:13 -07:00
page.h nilfs2: buffer and page operations 2009-04-07 08:31:13 -07:00
recovery.c nilfs2: recovery functions 2009-04-07 08:31:16 -07:00
sb.h nilfs2: add inode and other major structures 2009-04-07 08:31:12 -07:00
segbuf.c nilfs2: segment buffer 2009-04-07 08:31:15 -07:00
segbuf.h nilfs2: segment buffer 2009-04-07 08:31:15 -07:00
seglist.h nilfs2: segment constructor 2009-04-07 08:31:15 -07:00
segment.c nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00
segment.h nilfs2: fix missed-sync issue for do_sync_mapping_range() 2009-04-07 08:31:15 -07:00
sufile.c nilfs2: segment usage file 2009-04-07 08:31:14 -07:00
sufile.h nilfs2: segment usage file 2009-04-07 08:31:14 -07:00
super.c nilfs2: cleanup nilfs_clear_inode 2009-04-07 08:31:17 -07:00
the_nilfs.c nilfs2: operations for the_nilfs core object 2009-04-07 08:31:15 -07:00
the_nilfs.h nilfs2: avoid double error caused by nilfs_transaction_end 2009-04-07 08:31:17 -07:00