Messages in this thread | | | Subject | Re: WARNING in sk_stream_kill_queues (5) | From | Eric Dumazet <> | Date | Thu, 3 Dec 2020 19:01:21 +0100 |
| |
On 12/3/20 6:41 PM, Marco Elver wrote:
> One more experiment -- simply adding > > --- a/net/core/skbuff.c > +++ b/net/core/skbuff.c > @@ -207,7 +207,21 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask, > */ > size = SKB_DATA_ALIGN(size); > size += SKB_DATA_ALIGN(sizeof(struct skb_shared_info)); > + size = 1 << kmalloc_index(size); /* HACK */ > data = kmalloc_reserve(size, gfp_mask, node, &pfmemalloc); > > > also got rid of the warnings. Something must be off with some value that > is computed in terms of ksize(). If not, I don't have any explanation > for why the above hides the problem.
Maybe the implementations of various macros (SKB_DATA_ALIGN and friends) hae some kind of assumptions, I will double check this.
| |