[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202210210909.76CDB7A2@keescook>
Date: Fri, 21 Oct 2022 09:10:21 -0700
From: Kees Cook <keescook@...omium.org>
To: Paolo Abeni <pabeni@...hat.com>
Cc: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
David Rientjes <rientjes@...gle.com>,
Vlastimil Babka <vbabka@...e.cz>,
Pavel Begunkov <asml.silence@...il.com>,
Menglong Dong <imagedong@...cent.com>,
linux-kernel@...r.kernel.org, linux-hardening@...r.kernel.org
Subject: Re: [PATCH v3][next] skbuff: Proactively round up to kmalloc bucket
size
On Thu, Oct 20, 2022 at 10:42:47AM +0200, Paolo Abeni wrote:
> > size = SKB_DATA_ALIGN(size);
> > size += SKB_DATA_ALIGN(sizeof(struct skb_shared_info));
> > - data = kmalloc_reserve(size, gfp_mask, node, &pfmemalloc);
> > - if (unlikely(!data))
> > - goto nodata;
>
> I'm sorry for not noticing the above in the previous iteration, but I
> think this revision will produce worse code than the V1, as
> kmalloc_reserve() now pollutes an additional register.
>
> Why did you prefer adding an additional parameter to kmalloc_reserve()?
> I think computing the alloc_size in the caller is even more readable.
>
> Additionally, as a matter of personal preference, I would not introduce
> an additional variable for alloc_size, just:
>
> // ...
> size = kmalloc_size_roundup(size);
> data = kmalloc_reserve(size, gfp_mask, node, &pfmemalloc);
>
> The rationale is smaller diff, and consistent style with the existing
> code where 'size' is already adjusted multiple times icrementally.
Sure, I can do that. I will respin it. :)
--
Kees Cook
Powered by blists - more mailing lists