mmap.c corner case fix, per David S. Miller
Subsystems (2)
PATCH 1/1 mmap.c corner case fix, per David S. Miller
Hi Marcelo :)
This patch fixes the same corner case, but does something useful
even or architectures where TASK_SIZE is greater than SIZE_MAX-PAGE_SIZE
The patch is from David S. Miller, not me. My patch was
incomplete and did nothing on 'big TASK_SIZE' architectures, as sparc64.
The patch is against both 2.4.20 and 2.4.21-pre1, is just the same.
Raúl
mm/mmap.c renamed from mm/mmap.c.orig +4 -2
@@ -403,10 +403,12 @@if (file && (!file->f_op || !file->f_op->mmap))return -ENODEV ; -if ((len =PAGE_ALIGN (len)) ==0 ) +if (!len)return addr; -if (len >TASK_SIZE ) + len =PAGE_ALIGN (len); + +if (len >TASK_SIZE || len ==0 )return -EINVAL ;/* offset overflow? */