nilfs2: add bmap function to seek a valid key
Add a new bmap function, nilfs_bmap_seek_key(), which seeks a valid entry and returns its key starting from a given key. This function can be used to skip hole blocks efficiently. Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Cc: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:

committed by
Linus Torvalds

parent
3568a13f40
commit
5b20384fb3
@@ -76,8 +76,10 @@ struct nilfs_bmap_operations {
|
||||
union nilfs_binfo *);
|
||||
int (*bop_mark)(struct nilfs_bmap *, __u64, int);
|
||||
|
||||
/* The following functions are internal use only. */
|
||||
int (*bop_seek_key)(const struct nilfs_bmap *, __u64, __u64 *);
|
||||
int (*bop_last_key)(const struct nilfs_bmap *, __u64 *);
|
||||
|
||||
/* The following functions are internal use only. */
|
||||
int (*bop_check_insert)(const struct nilfs_bmap *, __u64);
|
||||
int (*bop_check_delete)(struct nilfs_bmap *, __u64);
|
||||
int (*bop_gather_data)(struct nilfs_bmap *, __u64 *, __u64 *, int);
|
||||
@@ -155,6 +157,7 @@ void nilfs_bmap_write(struct nilfs_bmap *, struct nilfs_inode *);
|
||||
int nilfs_bmap_lookup_contig(struct nilfs_bmap *, __u64, __u64 *, unsigned);
|
||||
int nilfs_bmap_insert(struct nilfs_bmap *bmap, __u64 key, unsigned long rec);
|
||||
int nilfs_bmap_delete(struct nilfs_bmap *bmap, __u64 key);
|
||||
int nilfs_bmap_seek_key(struct nilfs_bmap *bmap, __u64 start, __u64 *keyp);
|
||||
int nilfs_bmap_last_key(struct nilfs_bmap *bmap, __u64 *keyp);
|
||||
int nilfs_bmap_truncate(struct nilfs_bmap *bmap, __u64 key);
|
||||
void nilfs_bmap_clear(struct nilfs_bmap *);
|
||||
|
Reference in New Issue
Block a user