[PATCH net-next 1/3] net: ti: prueth: Fix kernel warning while bringing down network interface
Malladi, Meghana
m-malladi at ti.com
Fri Mar 21 01:01:29 PDT 2025
Hi Simon,
Thanks for reviewing the patch series.
On 3/20/2025 6:23 PM, Simon Horman wrote:
> On Mon, Mar 17, 2025 at 03:45:48PM +0530, Meghana Malladi wrote:
>> During network interface initialization, the NIC driver needs to register
>> its Rx queue with the XDP, to ensure the incoming XDP buffer carries a
>> pointer reference to this info and is stored inside xdp_rxq_info.
>>
>> While this struct isn't tied to XDP prog, if there are any changes in
>> Rx queue, the NIC driver needs to stop the Rx queue by unregistering
>> with XDP before purging and reallocating memory. Drop page_pool destroy
>> during Rx channel reset and this is already handled by XDP during
>> xdp_rxq_info_unreg (Rx queue unregister), failing to do will cause the
>> following warning:
>>
>> [ 271.494611] ------------[ cut here ]------------
>> [ 271.494629] WARNING: CPU: 0 PID: 2453 at /net/core/page_pool.c:1108 0xffff8000808d5f60
>
> I think it would be nice to include a bit more of the stack trace here.
>
Sure, I will attach a link to the warning logs in v2.
>>
>> Fixes: 46eeb90f03e0 ("net: ti: icssg-prueth: Use page_pool API for RX buffer allocation")
>> Signed-off-by: Meghana Malladi <m-malladi at ti.com>
>
> It is a shame that we now have more asymmetry regarding
> the allocation of the pool and unwind on error prueth_prepare_rx_chan().
>
> But if I see things correctly the freeing of the pool via
> xdp_rxq_info_unreg() is unconditional. And with that in mind
> I agree the approach taken by this patch makes sense.
>
Agreed on the asymmetry part, but I am not quite convinced on why
xdp_rxq_info_unreg() is freeing the pool unconditionally, when the
driver is the one which is allocating the pool. If xdp_rxq_info_unreg()
is freeing it, then shouldn't xdp_rxq_info_reg() be allocating it ?
> Reviewed-by: Simon Horman <horms at kernel.org>
>
> ...
More information about the linux-arm-kernel
mailing list