From: Byungchul Park <byungchul@sk.com>
To: kernel test robot <lkp@intel.com>
Cc: willy@infradead.org, netdev@vger.kernel.org,
oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org,
linux-mm@kvack.org, kernel_team@skhynix.com,
almasrymina@google.com, ilias.apalodimas@linaro.org,
harry.yoo@oracle.com, akpm@linux-foundation.org,
andrew+netdev@lunn.ch, asml.silence@gmail.com, toke@redhat.com,
david@redhat.com, Liam.Howlett@oracle.com, vbabka@suse.cz,
rppt@kernel.org, surenb@google.com, mhocko@suse.com,
linux-rdma@vger.kernel.org, bpf@vger.kernel.org,
vishal.moola@gmail.com, hannes@cmpxchg.org, ziy@nvidia.com,
jackmanb@google.com, wei.fang@nxp.com, shenwei.wang@nxp.com,
xiaoning.wang@nxp.com, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org
Subject: Re: [Intel-wired-lan] [PATCH net-next v11 12/12] libeth: xdp: access ->pp through netmem_desc instead of page
Date: Fri, 18 Jul 2025 09:43:46 +0900 [thread overview]
Message-ID: <20250718004346.GA38833@system.software.com> (raw)
In-Reply-To: <202507180111.jygqJHzk-lkp@intel.com>
On Fri, Jul 18, 2025 at 01:42:38AM +0800, kernel test robot wrote:
> Hi Byungchul,
>
> kernel test robot noticed the following build warnings:
>
> [auto build test WARNING on c65d34296b2252897e37835d6007bbd01b255742]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Byungchul-Park/netmem-introduce-struct-netmem_desc-mirroring-struct-page/20250717-150253
> base: c65d34296b2252897e37835d6007bbd01b255742
> patch link: https://lore.kernel.org/r/20250717070052.6358-13-byungchul%40sk.com
> patch subject: [Intel-wired-lan] [PATCH net-next v11 12/12] libeth: xdp: access ->pp through netmem_desc instead of page
> config: arm-randconfig-r072-20250717 (https://download.01.org/0day-ci/archive/20250718/202507180111.jygqJHzk-lkp@intel.com/config)
> compiler: arm-linux-gnueabi-gcc (GCC) 8.5.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250718/202507180111.jygqJHzk-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202507180111.jygqJHzk-lkp@intel.com/
>
> All warnings (new ones prefixed by >>):
>
> In file included from include/linux/container_of.h:5,
> from include/linux/list.h:5,
> from include/linux/timer.h:5,
> from include/linux/netdevice.h:24,
> from include/trace/events/xdp.h:8,
> from include/linux/bpf_trace.h:5,
> from include/net/libeth/xdp.h:7,
> from drivers/net/ethernet/intel/libeth/tx.c:6:
> include/net/libeth/xdp.h: In function 'libeth_xdp_prepare_buff':
> >> include/net/libeth/xdp.h:1295:23: warning: passing argument 1 of 'page_pool_page_is_pp' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
> pp_page_to_nmdesc(page)->pp->p.offset, len, true);
> ^~~~
> include/linux/build_bug.h:30:63: note: in definition of macro 'BUILD_BUG_ON_INVALID'
> #define BUILD_BUG_ON_INVALID(e) ((void)(sizeof((__force long)(e))))
> ^
> include/net/netmem.h:301:2: note: in expansion of macro 'DEBUG_NET_WARN_ON_ONCE'
> DEBUG_NET_WARN_ON_ONCE(!page_pool_page_is_pp(p)); \
> ^~~~~~~~~~~~~~~~~~~~~~
> include/net/libeth/xdp.h:1295:5: note: in expansion of macro 'pp_page_to_nmdesc'
> pp_page_to_nmdesc(page)->pp->p.offset, len, true);
> ^~~~~~~~~~~~~~~~~
> In file included from arch/arm/include/asm/cacheflush.h:10,
> from include/linux/cacheflush.h:5,
> from include/linux/highmem.h:8,
> from include/linux/bvec.h:10,
> from include/linux/skbuff.h:17,
> from include/net/net_namespace.h:43,
> from include/linux/netdevice.h:38,
> from include/trace/events/xdp.h:8,
> from include/linux/bpf_trace.h:5,
> from include/net/libeth/xdp.h:7,
> from drivers/net/ethernet/intel/libeth/tx.c:6:
> include/linux/mm.h:4176:54: note: expected 'struct page *' but argument is of type 'const struct page *'
> static inline bool page_pool_page_is_pp(struct page *page)
> ~~~~~~~~~~~~~^~~~
Oh. page_pool_page_is_pp() in the mainline code already has this issue
that the helper cannot take const struct page * as argument.
How should we resolve the issue? Changing page_pool_page_is_pp() to
macro and using _Generic again looks too much. Or should we? Any idea?
Byungchul
> vim +1295 include/net/libeth/xdp.h
>
> 1263
> 1264 bool libeth_xdp_buff_add_frag(struct libeth_xdp_buff *xdp,
> 1265 const struct libeth_fqe *fqe,
> 1266 u32 len);
> 1267
> 1268 /**
> 1269 * libeth_xdp_prepare_buff - fill &libeth_xdp_buff with head FQE data
> 1270 * @xdp: XDP buffer to attach the head to
> 1271 * @fqe: FQE containing the head buffer
> 1272 * @len: buffer len passed from HW
> 1273 *
> 1274 * Internal, use libeth_xdp_process_buff() instead. Initializes XDP buffer
> 1275 * head with the Rx buffer data: data pointer, length, headroom, and
> 1276 * truesize/tailroom. Zeroes the flags.
> 1277 * Uses faster single u64 write instead of per-field access.
> 1278 */
> 1279 static inline void libeth_xdp_prepare_buff(struct libeth_xdp_buff *xdp,
> 1280 const struct libeth_fqe *fqe,
> 1281 u32 len)
> 1282 {
> 1283 const struct page *page = __netmem_to_page(fqe->netmem);
> 1284
> 1285 #ifdef __LIBETH_WORD_ACCESS
> 1286 static_assert(offsetofend(typeof(xdp->base), flags) -
> 1287 offsetof(typeof(xdp->base), frame_sz) ==
> 1288 sizeof(u64));
> 1289
> 1290 *(u64 *)&xdp->base.frame_sz = fqe->truesize;
> 1291 #else
> 1292 xdp_init_buff(&xdp->base, fqe->truesize, xdp->base.rxq);
> 1293 #endif
> 1294 xdp_prepare_buff(&xdp->base, page_address(page) + fqe->offset,
> > 1295 pp_page_to_nmdesc(page)->pp->p.offset, len, true);
> 1296 }
> 1297
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-07-18 0:43 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-17 7:00 [PATCH net-next v11 00/12] Split netmem from struct page Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 01/12] netmem: introduce struct netmem_desc mirroring " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 02/12] netmem: use netmem_desc instead of page to access ->pp in __netmem_get_pp() Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 03/12] netmem, mlx4: access ->pp_ref_count through netmem_desc instead of page Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 04/12] netdevsim: access ->pp " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 05/12] mt76: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 06/12] net: fec: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 07/12] octeontx2-pf: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 08/12] iavf: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 09/12] idpf: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 10/12] mlx5: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 11/12] net: ti: icssg-prueth: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 7:00 ` [PATCH net-next v11 12/12] libeth: xdp: " Byungchul Park
2025-07-17 7:00 ` [Intel-wired-lan] " Byungchul Park
2025-07-17 17:42 ` kernel test robot
2025-07-18 0:43 ` Byungchul Park [this message]
2025-07-18 1:14 ` Byungchul Park
2025-07-18 9:18 ` Pavel Begunkov
2025-07-18 9:32 ` Pavel Begunkov
2025-07-21 1:03 ` Byungchul Park
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250718004346.GA38833@system.software.com \
--to=byungchul@sk.com \
--cc=Liam.Howlett@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=almasrymina@google.com \
--cc=andrew+netdev@lunn.ch \
--cc=asml.silence@gmail.com \
--cc=bpf@vger.kernel.org \
--cc=davem@davemloft.net \
--cc=david@redhat.com \
--cc=edumazet@google.com \
--cc=hannes@cmpxchg.org \
--cc=harry.yoo@oracle.com \
--cc=ilias.apalodimas@linaro.org \
--cc=jackmanb@google.com \
--cc=kernel_team@skhynix.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-rdma@vger.kernel.org \
--cc=lkp@intel.com \
--cc=mhocko@suse.com \
--cc=netdev@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=rppt@kernel.org \
--cc=shenwei.wang@nxp.com \
--cc=surenb@google.com \
--cc=toke@redhat.com \
--cc=vbabka@suse.cz \
--cc=vishal.moola@gmail.com \
--cc=wei.fang@nxp.com \
--cc=willy@infradead.org \
--cc=xiaoning.wang@nxp.com \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.