On Mon, Jun 18, 2012 at 11:20 AM, KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxx> wrote: > (6/9/12 5:40 AM), David Mackey wrote: >> From: Andi Kleen<ak@xxxxxxxxxxxxxxx> >> >> From: Andi Kleen<ak@xxxxxxxxxxxxxxx> >> >> slab_node() could access current->mempolicy from interrupt context. >> However there's a race condition during exit where the mempolicy >> is first freed and then the pointer zeroed. >> >> Using this from interrupts seems bogus anyways. The interrupt >> will interrupt a random process and therefore get a random >> mempolicy. Many times, this will be idle's, which noone can change. >> >> Just disable this here and always use local for slab >> from interrupts. I also cleaned up the callers of slab_node a bit >> which always passed the same argument. >> >> I believe the original mempolicy code did that in fact, >> so it's likely a regression. >> >> v2: send version with correct logic >> v3: simplify. fix typo. >> Reported-by: Arun Sharma<asharma@xxxxxx> >> Cc: penberg@xxxxxxxxxx >> Cc: cl@xxxxxxxxx >> Signed-off-by: Andi Kleen<ak@xxxxxxxxxxxxxxx> >> [tdmackey@xxxxxxxxxxx: Rework control flow based on feedback from >> cl@xxxxxxxxx, fix logic, and cleanup current task_struct reference] >> Signed-off-by: David Mackey<tdmackey@xxxxxxxxxxx> > > Acked-by: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> Applied, thanks! -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>