Re: [PATCH] net/packet: simply allocations in alloc_one_pg_vec_page

From: Shakeel Butt
Date: Sat May 16 2020 - 18:36:17 EST


On Sat, May 16, 2020 at 1:40 PM David Miller <davem@xxxxxxxxxxxxx> wrote:
>
> From: Shakeel Butt <shakeelb@xxxxxxxxxx>
> Date: Fri, 15 May 2020 19:17:36 -0700
>
> > and thus there is no need to have any fallback after vzalloc.
>
> This statement is false.
>
> The virtual mapping allocation or the page table allocations can fail.
>
> A fallback is therefore indeed necessary.

I am assuming that you at least agree that vzalloc should only be
called for non-zero order allocations. So, my argument is if non-zero
order vzalloc has failed (allocations internal to vzalloc, including
virtual mapping allocation and page table allocations, are order 0 and
use GFP_KERNEL i.e. triggering reclaim and oom-killer) then the next
non-zero order page allocation has very low chance of succeeding.