X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=mm%2Fswapfile.c;h=fafc26d1b1dc885d2541eda3bdc5705a4fe56012;hb=0eb4fd9b3e4d08973f7f086dbdb14a0ad5c3d76d;hp=dae42f380d6ebcde88d3aaef6aa3cb1d64e0f5a3;hpb=61e5191c9d96268746bd57ed55d035678a1a2cf9;p=~andy%2Flinux diff --git a/mm/swapfile.c b/mm/swapfile.c index dae42f380d6..fafc26d1b1d 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -2022,6 +2022,9 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags) struct page *page = NULL; struct inode *inode = NULL; + if (swap_flags & ~SWAP_FLAGS_VALID) + return -EINVAL; + if (!capable(CAP_SYS_ADMIN)) return -EPERM;