diff options
| -rw-r--r-- | fs/btrfs/inode.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 5440bab23635..d5aa97310943 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
| @@ -3995,7 +3995,11 @@ skip: | |||
| 3995 | 3995 | ||
| 3996 | /* Reached end of directory/root. Bump pos past the last item. */ | 3996 | /* Reached end of directory/root. Bump pos past the last item. */ |
| 3997 | if (key_type == BTRFS_DIR_INDEX_KEY) | 3997 | if (key_type == BTRFS_DIR_INDEX_KEY) |
| 3998 | filp->f_pos = INT_LIMIT(off_t); | 3998 | /* |
| 3999 | * 32-bit glibc will use getdents64, but then strtol - | ||
| 4000 | * so the last number we can serve is this. | ||
| 4001 | */ | ||
| 4002 | filp->f_pos = 0x7fffffff; | ||
| 3999 | else | 4003 | else |
| 4000 | filp->f_pos++; | 4004 | filp->f_pos++; |
| 4001 | nopos: | 4005 | nopos: |
