From: Hugh Dickins <[email protected]> Subject: tmpfs: ZERO_RANGE and COLLAPSE_RANGE not currently supported
I was well aware of FALLOC_FL_ZERO_RANGE and FALLOC_FL_COLLAPSE_RANGE support being added to fallocate(); but didn't realize until now that I had been too stupid to future-proof shmem_fallocate() against new additions. -EOPNOTSUPP instead of going on to ordinary fallocation. Signed-off-by: Hugh Dickins <[email protected]> Reviewed-by: Lukas Czerner <[email protected]> Cc: <[email protected]> [3.15] Signed-off-by: Andrew Morton <[email protected]> --- mm/shmem.c | 3 +++ 1 file changed, 3 insertions(+) diff -puN mm/shmem.c~tmpfs-zero_range-and-collapse_range-not-currently-supported mm/shmem.c --- a/mm/shmem.c~tmpfs-zero_range-and-collapse_range-not-currently-supported +++ a/mm/shmem.c @@ -1724,6 +1724,9 @@ static long shmem_fallocate(struct file pgoff_t start, index, end; int error; + if (mode & ~(FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE)) + return -EOPNOTSUPP; + mutex_lock(&inode->i_mutex); if (mode & FALLOC_FL_PUNCH_HOLE) { _ -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
