mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 10:04:04 +02:00
fuse: use offset_in_page() for page offset calculations
Replace open-coded (x & ~PAGE_MASK) with offset_in_page(). Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Horst Birthelmer <hbirthelmer@ddn.com> Signed-off-by: Joanne Koong <joannelkoong@gmail.com> Reviewed-by: Jingbo Xu <jefflexu@linux.alibaba.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
This commit is contained in:
parent
dcfd95cb50
commit
8d306cbffc
|
|
@ -52,7 +52,7 @@ static void fuse_add_dirent_to_cache(struct file *file,
|
|||
}
|
||||
version = fi->rdc.version;
|
||||
size = fi->rdc.size;
|
||||
offset = size & ~PAGE_MASK;
|
||||
offset = offset_in_page(size);
|
||||
index = size >> PAGE_SHIFT;
|
||||
/* Dirent doesn't fit in current page? Jump to next page. */
|
||||
if (offset + reclen > PAGE_SIZE) {
|
||||
|
|
@ -392,7 +392,7 @@ static enum fuse_parse_result fuse_parse_cache(struct fuse_file *ff,
|
|||
void *addr, unsigned int size,
|
||||
struct dir_context *ctx)
|
||||
{
|
||||
unsigned int offset = ff->readdir.cache_off & ~PAGE_MASK;
|
||||
unsigned int offset = offset_in_page(ff->readdir.cache_off);
|
||||
enum fuse_parse_result res = FOUND_NONE;
|
||||
|
||||
WARN_ON(offset >= size);
|
||||
|
|
@ -518,13 +518,13 @@ static int fuse_readdir_cached(struct file *file, struct dir_context *ctx)
|
|||
index = ff->readdir.cache_off >> PAGE_SHIFT;
|
||||
|
||||
if (index == (fi->rdc.size >> PAGE_SHIFT))
|
||||
size = fi->rdc.size & ~PAGE_MASK;
|
||||
size = offset_in_page(fi->rdc.size);
|
||||
else
|
||||
size = PAGE_SIZE;
|
||||
spin_unlock(&fi->rdc.lock);
|
||||
|
||||
/* EOF? */
|
||||
if ((ff->readdir.cache_off & ~PAGE_MASK) == size)
|
||||
if (offset_in_page(ff->readdir.cache_off) == size)
|
||||
return 0;
|
||||
|
||||
page = find_get_page_flags(file->f_mapping, index,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user