From: Hugh Dickins <hughd@xxxxxxxxxx> 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 <hughd@xxxxxxxxxx> Reviewed-by: Lukas Czerner <lczerner@xxxxxxxxxx> Cc: <stable@xxxxxxxxxxxxxxx> [3.15] Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- 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 majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html