Re: BPF/XDP: kernel panic when removing an interface that is an xdp_redirect target

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/8/2023 5:52 PM, Jakub Kicinski wrote:

On Wed, 8 Nov 2023 13:30:21 -0800 Nelson, Shannon wrote:
Another source of a bug like this could be that your driver does not in
fact call xdp_do_flush() before exiting its NAPI cycle, so that there
will be packets from the previous cycle in the bq queue, in which case
the assumption mentioned in the linked document obviously breaks down.
But that would also be a driver bug :)

We do call the xdp_do_flush() at the end of the NAPI cycle, just before
calling napi_complete_done().

Just to be sure - flush has to happen on every cycle, not only
before calling napi_complete_done().

Ah, good catch. The notes in redirect.html say "Before exiting its NAPI loop" and "must be called before napi_complete_done()". I interpreted those together.

We'll make sure we do the flush at the end of every budget cycle and see what happens.

Thanks all. This is exactly why talking out your problems with others is a very good thing. And yes, this eventually will make it into an upstream patch set - after we do a bunch more testing.

Cheers,
sln




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux