Re: [PATCH v5] slab/mempolicy: always use local policy from interrupt context

From: Pekka Enberg
Date: Wed Jun 20 2012 - 03:02:27 EST


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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/