Re: [PATCH 04/13] mm: Track NR_KERNEL_STACK in pages instead of number of stacks

From: Andy Lutomirski
Date: Thu Jun 16 2016 - 13:40:09 EST


On Thu, Jun 16, 2016 at 8:33 AM, Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
> On Wed, Jun 15, 2016 at 05:28:26PM -0700, Andy Lutomirski wrote:
>> Currently, NR_KERNEL_STACK tracks the number of kernel stacks in a
>> zone. This only makes sense if each kernel stack exists entirely in
>> one zone, and allowing vmapped stacks could break this assumption.
>>
>> It turns out that the code for tracking kernel stack allocations in
>> units of pages is slightly simpler, so just switch to counting
>> pages.
>>
>> Cc: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
>> Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
>> Cc: Michal Hocko <mhocko@xxxxxxxxxx>
>> Cc: linux-mm@xxxxxxxxx
>> Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
>> ---
>> fs/proc/meminfo.c | 2 +-
>> kernel/fork.c | 3 ++-
>> mm/page_alloc.c | 3 +--
>> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> You missed another usage of NR_KERNEL_STACK in drivers/base/node.c.

Thanks.

The real reason I cc'd you was so you could look at
rewind_stack_do_exit and the sneaky trick I did in no_context in the
last patch, though. :) Both survive objtool, but I figured I'd check
with objtool's author as well. If there was a taint bit I could set
saying "kernel is hosed -- don't try to apply live patches any more",
I'd have extra confidence.

--Andy