Re: [PATCH net-next v5 11/13] net: replace page_frag with page_frag_cache

From: Simon Horman
Date: Fri May 31 2024 - 06:53:59 EST


On Tue, May 28, 2024 at 08:56:01PM +0800, Yunsheng Lin wrote:
> Use the newly introduced prepare/probe/commit API to
> replace page_frag with page_frag_cache for sk_page_frag().
>
> CC: Alexander Duyck <alexander.duyck@xxxxxxxxx>
> Signed-off-by: Yunsheng Lin <linyunsheng@xxxxxxxxxx>
> Acked-by: Mat Martineau <martineau@xxxxxxxxxx>

Hi Yunsheng Lin,

Unfortunately this seems to break W=1 allmodconfig builds (on x8_64).
I'm suspecting this relates to some missing includes, but I am unsure.

With clang-18 I see:

In file included from net/ipv4/ip_output.c:46:
In file included from ./include/linux/uaccess.h:8:
In file included from ./include/linux/sched.h:48:
/include/linux/page_frag_cache.h:176:2: error: call to undeclared function 'VM_BUG_ON'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
176 | VM_BUG_ON(fragsz > nc->remaining || !nc->pagecnt_bias);

..

In file included from net/ipv4/ip_output.c:47:
In file included from ./include/linux/module.h:19:
In file included from ./include/linux/elf.h:6:
In file included from ./arch/x86/include/asm/elf.h:10:
In file included from ./arch/x86/include/asm/ia32.h:7:
In file included from ./include/linux/compat.h:17:
In file included from ./include/linux/fs.h:33:
In file included from ./include/linux/percpu-rwsem.h:7:
In file included from ./include/linux/rcuwait.h:6:
In file included from ./include/linux/sched/signal.h:6:
/include/linux/signal.h:98:11: warning: array index 3 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
98 | return (set->sig[3] | set->sig[2] |
| ^ ~
/arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
24 | unsigned long sig[_NSIG_WORDS];
| ^

..