diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 16d3aef45d189a561fafa15700181b1bde39ae93..026bc9c4c90d37a0b6a766cf48e56102c432e8ea 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -1430,7 +1430,7 @@ static int btrfs_readdir(struct file *filp, void *dirent, filldir_t filldir) di = (struct btrfs_dir_item *)((char *)di + di_len); } } - filp->f_pos++; + filp->f_pos = INT_LIMIT(typeof(filp->f_pos)); nopos: ret = 0; err: