mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-09-21 20:22:13 +08:00
[PATCH] mempolicy.c GFP fix
zonelist_policy() forgot to mask non-zone bits from gfp when comparing zone number with policy_zone. ACKed-by: Andi Kleen <ak@suse.de> Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
bc86120a85
commit
01424961e6
@ -661,7 +661,7 @@ static struct zonelist *zonelist_policy(unsigned int __nocast gfp, struct mempol
|
|||||||
case MPOL_BIND:
|
case MPOL_BIND:
|
||||||
/* Lower zones don't get a policy applied */
|
/* Lower zones don't get a policy applied */
|
||||||
/* Careful: current->mems_allowed might have moved */
|
/* Careful: current->mems_allowed might have moved */
|
||||||
if (gfp >= policy_zone)
|
if ((gfp & GFP_ZONEMASK) >= policy_zone)
|
||||||
if (cpuset_zonelist_valid_mems_allowed(policy->v.zonelist))
|
if (cpuset_zonelist_valid_mems_allowed(policy->v.zonelist))
|
||||||
return policy->v.zonelist;
|
return policy->v.zonelist;
|
||||||
/*FALL THROUGH*/
|
/*FALL THROUGH*/
|
||||||
|
Loading…
Reference in New Issue
Block a user