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

Reply via email to