Fix potential crash with sys_move_pages
We incorrectly depended on the 'node_state/node_isset()' functions testing the node range, rather than checking it explicitly. That's not reliable, even if it might often happen to work. So do the proper explicit test. Reported-by: Marcus Meissner <meissner@suse.de> Acked-and-tested-by: Brice Goglin <Brice.Goglin@inria.fr> Acked-by: Hugh Dickins <hugh.dickins@tiscali.co.uk> Cc: stable@kernel.org Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
9d9c3a51e7
commit
6f5a55f1a6
1 changed files with 3 additions and 0 deletions
|
@ -912,6 +912,9 @@ static int do_pages_move(struct mm_struct *mm, struct task_struct *task,
|
|||
goto out_pm;
|
||||
|
||||
err = -ENODEV;
|
||||
if (node < 0 || node >= MAX_NUMNODES)
|
||||
goto out_pm;
|
||||
|
||||
if (!node_state(node, N_HIGH_MEMORY))
|
||||
goto out_pm;
|
||||
|
||||
|
|
Loading…
Reference in a new issue