program as it internally can also change the page count of
fragments belonging to xdp_buff.
Fixes: ac0753391195 ("ice: Store page count inside ice_rx_buf")
Reported-and-tested-by: Xu Du
Reviewed-by: Przemek Kitszel
Co-developed-by: Jacob Keller
Signed-off-by: Jacob Keller
Signed-off-
("ice: Add support for XDP multi-buffer on Rx side")
Reviewed-by: Przemek Kitszel
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_txrx.c | 60 +++
drivers/net/ethernet/intel/ice/ice_txrx.h | 1 -
drivers/net/ethernet/intel/ice
it within introduced routine.
Fixes: 1dc1a7e7f410 ("ice: Centrallize Rx buffer recycling")
Reported-and-tested-by: Xu Du
Reviewed-by: Przemek Kitszel
Co-developed-by: Jacob Keller
Signed-off-by: Jacob Keller
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/
ng reproducer and Jacob Keller for
initial extensive analysis.
Thanks,
Maciej
Maciej Fijalkowski (3):
ice: put Rx buffers after being done with current frame
ice: gather page_count()'s of each frag right before XDP prog call
ice: stop storing XDP verdict within ice_rx_buf
drivers/
On Thu, Jan 16, 2025 at 06:10:38PM +0100, Petr Oros wrote:
>
> On 16. 01. 25 16:39, Maciej Fijalkowski wrote:
> > Introduce a new helper ice_put_rx_mbuf() that will go through gathered
> > frags from current frame and will call ice_put_rx_buf() on them. Current
> > lo
On Wed, Jan 15, 2025 at 03:59:04PM +0100, Piotr Kwapulinski wrote:
> Check both skb NULL pointer dereference and error in ixgbe_put_rx_buffer().
Hi Piotr,
is this only theoretical or have you encountered any system panic? If so
please include the splat so that reviewers will be able to understand
ped-by: Jacob Keller
Signed-off-by: Jacob Keller
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_txrx.c | 18 +-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_txrx.c
b/drivers/net/ethernet/intel/ice/ice_txrx.
("ice: Add support for XDP multi-buffer on Rx side")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_txrx.c | 61 +++
drivers/net/ethernet/intel/ice/ice_txrx.h | 1 -
drivers/net/ethernet/intel/ice/ice_txrx_lib.h | 43 -
ice_rx_buf::act related logic
(which was mostly introduced for purposes from cited commit).
Special thanks to Xu Du for providing reproducer and Jacob Keller for
initial extensive analysis.
Thanks,
Maciej
Maciej Fijalkowski (3):
ice: put Rx buffers after being done with current frame
i
it within introduced routine.
Fixes: 1dc1a7e7f410 ("ice: Centrallize Rx buffer recycling")
Reported-and-tested-by: Xu Du
Co-developed-by: Jacob Keller
Signed-off-by: Jacob Keller
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_txrx.c | 67 +--
On Wed, Dec 11, 2024 at 09:45:32PM +0800, Song Yoong Siang wrote:
> Improve XDP_SETUP_PROG process by avoiding unnecessary link down event.
>
> This patch is tested by using ip link set xdpdrv command to attach a simple
> XDP program which always return XDP_PASS.
>
> Before this patch, attaching
; To avoid this, introduces a check to determine if there is a need to
> close and reopen the interface, allowing for seamless hot-swapping of
> XDP programs.
>
> Signed-off-by: Song Yoong Siang
Acked-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/igc/igc_xdp.c | 6 -
return value.
>
> Fixes: c7aec59657b6 ("ixgbevf: Add XDP support for pass and drop actions")
> Reviewed-by: Jacob Keller
> Signed-off-by: Yue Haibing
Reviewed-by: Maciej Fijalkowski
> ---
> .../net/ethernet/intel/ixgbevf/ixgbevf_main.c | 23 ---
return value.
>
> Fixes: 924708081629 ("ixgbe: add XDP support for pass and drop actions")
> Reviewed-by: Jacob Keller
> Signed-off-by: Yue Haibing
Reviewed-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 23 ---
> 1
On Fri, Oct 18, 2024 at 10:37:34AM +0800, Yue Haibing wrote:
> ixgbevf_run_xdp() converts customed xdp action to a negative error code
> with the sk_buff pointer type which be checked with IS_ERR in
> ixgbevf_clean_rx_irq(). Remove this error pointer handing instead use
> plain int return value.
>
On Fri, Oct 18, 2024 at 10:37:33AM +0800, Yue Haibing wrote:
> ixgbe_run_xdp() converts customed xdp action to a negative error code
> with the sk_buff pointer type which be checked with IS_ERR in
> ixgbe_clean_rx_irq(). Remove this error pointer handing instead use
> plain int return value.
>
> F
return value.
>
> Fixes: 9cbc948b5a20 ("igb: add XDP support")
> Signed-off-by: Yue Haibing
Reviewed-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/igb/igb_main.c | 22 --
> 1 file changed, 8 insertions(+), 14 deletions(-)
>
> diff --g
urn value to fix this smatch warnings:
>
> drivers/net/ethernet/intel/igc/igc_main.c:2533
> igc_xdp_run_prog() warn: passing zero to 'ERR_PTR'
>
> Fixes: 26575105d6ed ("igc: Add initial XDP support")
> Signed-off-by: Yue Haibing
Reviewed-by: Maciej Fij
1.000 160
>
> [0]:
> https://lore.kernel.org/intel-wired-lan/20230704095915.9750-1-sriram.yagnara...@est.tech/
> [1]: https://www.qemu.org/docs/master/system/devices/igb.html
> [2]: https://github.com/xdp-project/bpf-examples/tree/master/AF_XDP-example
>
> v3-&g
mutual exclusion.
>
> Signed-off-by: Sriram Yagnaraman
> [Kurt: Set olinfo_status in igb_xmit_zc() so that frames are transmitted,
>Use READ_ONCE() for xsk_pool and check Tx disabled and carrier in
>igb_xmit_zc(), Add FIXME for RS bit]
> Signed-off-by: Kurt Kanze
On Thu, Oct 17, 2024 at 11:55:05AM +0800, Yue Haibing wrote:
> On 2024/10/17 7:12, Jacob Keller wrote:
> >
> >
> > On 10/16/2024 4:06 PM, Jacob Keller wrote:
> >>
> >>
> >> On 10/16/2024 11:53 AM, Simon Horman wrote:
> >>> On Wed, Oct 16, 2024 at 06:53:10PM +0800, Yue Haibing wrote:
> Return
mutual exclusion.
>
> Signed-off-by: Sriram Yagnaraman
> [Kurt: Set olinfo_status in igb_xmit_zc() so that frames are transmitted,
>Use READ_ONCE() for xsk_pool and check Tx disabled and carrier in
>igb_xmit_zc(), Add FIXME for RS bit]
> Signed-off-by:
ONCE() xsk_pool, likelyfy for XDP_REDIRECT case]
> Signed-off-by: Kurt Kanzenbach
Acked-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/igb/igb.h | 6 +
> drivers/net/ethernet/intel/igb/igb_main.c | 79 ++--
> drivers/net/ethernet/intel/igb/igb_xsk.c | 298
On Fri, Oct 11, 2024 at 11:01:02AM +0200, Kurt Kanzenbach wrote:
> Move XDP finalize and Rx statistics update into separate functions. This
> way, they can be reused by the XDP and XDP/ZC code later.
>
> Signed-off-by: Kurt Kanzenbach
Acked-by: Maciej Fijalkowski
> ---
> dr
mutual exclusion.
>
> Signed-off-by: Sriram Yagnaraman
> [Kurt: Set olinfo_status in igb_xmit_zc() so that frames are transmitted,
>Use READ_ONCE() for xsk_pool and check Tx disabled and carrier in
>igb_xmit_zc()]
> Signed-off-by: Kurt Kanzenbach
> Reviewed
Signed-off-by: Sriram Yagnaraman
> [Kurt: Split patches, inline small XDP functions]
> Signed-off-by: Kurt Kanzenbach
Acked-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/igb/igb.h | 29
> drivers/net/ethernet/intel/igb/igb_main.c | 37
>
On Mon, Oct 07, 2024 at 02:31:26PM +0200, Kurt Kanzenbach wrote:
> From: Sriram Yagnaraman
>
> Add support for AF_XDP zero-copy receive path.
>
> When AF_XDP zero-copy is enabled, the rx buffers are allocated from the
> xsk buff pool using igb_alloc_rx_buffers_zc().
>
> Use xsk_pool_get_rx_fram
On Fri, Sep 20, 2024 at 01:55:09PM +0200, Marcin Szycik wrote:
> If DDP package is missing or corrupted, the driver should enter Safe Mode.
> Instead, an error is returned and probe fails.
>
> Don't check return value of ice_init_ddp_config() to fix this.
no one else checks the retval after your
On Tue, Sep 03, 2024 at 08:05:11PM +0200, Maciej Fijalkowski wrote:
> In cases when synchronizing DMA operations is necessary,
> xsk_buff_alloc_batch() returns a single buffer instead of the requested
> count. Detect such situation when filling HW Rx ring in ZC driver and
> use xsk_buf
On Fri, Aug 30, 2024 at 09:28:07PM +0200, Aleksandr Loktionov wrote:
> In cases when vf sends malformed packets that are classified as
> malicious, sometimes it causes tx queue to freeze. This frozen queue can be
> stuck for several minutes being unusable. When mdd event occurs, there is a
> posibi
-tested-by: Dries De Winter
Fixes: db804cfc21e9 ("ice: Use the xsk batched rx allocation interface")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 24
1 file changed, 24 insertions(+)
diff --git a/drivers/net/ethernet/intel/ice/ic
N
> under rtnl_lock.
>
> Fixes: 0f9d5027a749 ("ice: Refactor VSI allocation, deletion and rebuild
> flow")
> Reviewed-by: Wojciech Drewek
> Reviewed-by: Jacob Keller
> Tested-by: Chandan Kumar Rout
> Signed-off-by: Larysa Zaremba
Reviewed-by: Maciej Fijalko
nt by deconfiguring VSI when coalesce allocation fails.
>
> Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
> Fixes: efc2214b6047 ("ice: Add support for XDP")
> Reviewed-by: Wojciech Drewek
> Reviewed-by: Jacob Keller
> Tested-by: Chandan Kumar Rout
> Signed-off-by: Larysa Zaremba
Reviewed-by: Maciej Fijalkowski
> ---
after_hwframe+0x76/0x7e
> [ +0.05] RIP: 0033:0x7f2033593154
>
> Fixes: 080b0c8d6d26 ("ice: Fix ASSERT_RTNL() warning during certain
> scenarios")
> Fixes: 91fdbce7e8d6 ("ice: Add support in the driver for associating queue
> with napi")
> Reviewed-b
On Thu, Aug 22, 2024 at 02:56:50PM +0200, Larysa Zaremba wrote:
> On Thu, Aug 22, 2024 at 01:34:33PM +0200, Maciej Fijalkowski wrote:
> > On Mon, Aug 19, 2024 at 12:05:41PM +0200, Larysa Zaremba wrote:
> > > Consider the following scenario:
>
and slow paths. Furthermore, the current XDP
> implementation is racy on tail updates.
>
> Fixes: 9cbc948b5a20 ("igb: add XDP support")
> Signed-off-by: Sriram Yagnaraman
> [Kurt: Add lockdep assert and fixes tag]
> Signed-off-by: Kurt Kanzenbach
Acked-by: Maciej Fijalkowski
T
>
> Remove ICE_CFG_BUSY locking from ice_qp_dis() and ice_qp_ena().
>
> Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
> Reviewed-by: Wojciech Drewek
> Reviewed-by: Jacob Keller
> Tested-by: Chandan Kumar Rout
> Signed-off-by: Larysa Zaremba
Reviewed-by: Ma
On Mon, Aug 19, 2024 at 12:05:39PM +0200, Larysa Zaremba wrote:
> The main threat to data consistency in ice_xdp() is a possible asynchronous
> PF reset. It can be triggered by a user or by TX timeout handler.
>
> XDP setup and PF reset code access the same resources in the following
> sections:
>
>
> Reviewed-by: Wojciech Drewek
> Reviewed-by: Jacob Keller
> Tested-by: Chandan Kumar Rout
> Signed-off-by: Larysa Zaremba
Acked-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/ice/ice_lib.c | 4 ++--
> drivers/net/ethernet/intel/ice/ice_main.c | 4 ++
gt; later bring it up only in such case.
>
> Fixes: efc2214b6047 ("ice: Add support for XDP")
> Reviewed-by: Wojciech Drewek
> Reviewed-by: Jacob Keller
> Tested-by: Chandan Kumar Rout
> Signed-off-by: Larysa Zaremba
Acked-by: Maciej Fijalkowski
> ---
&g
On Mon, Aug 19, 2024 at 12:05:41PM +0200, Larysa Zaremba wrote:
> Consider the following scenario:
>
> .ndo_bpf()| ice_prepare_for_reset() |
> |___|
> rtnl_lock() |
On Tue, Aug 20, 2024 at 06:15:24PM +0200, Dawid Osuchowski wrote:
> Ethtool callbacks can be executed while reset is in progress and try to
> access deleted resources, e.g. getting coalesce settings can result in a
> NULL pointer dereference seen below.
>
> Reproduction steps:
> Once the driver is
On Tue, Aug 20, 2024 at 02:47:31PM +0200, Larysa Zaremba wrote:
> On Tue, Aug 20, 2024 at 02:31:51PM +0200, Maciej Fijalkowski wrote:
> > On Mon, Aug 19, 2024 at 12:05:38PM +0200, Larysa Zaremba wrote:
> > > Currently, netif_queue_set_napi() is called from ice_vsi_rebuild() that
On Mon, Aug 19, 2024 at 12:05:38PM +0200, Larysa Zaremba wrote:
> Currently, netif_queue_set_napi() is called from ice_vsi_rebuild() that is
> not rtnl-locked when called from the reset. This creates the need to take
> the rtnl_lock just for a single function and complicates the
> synchronization w
ivers/net/ethernet/intel/igb/igb.h | 2 +
> drivers/net/ethernet/intel/igb/igb_main.c | 61
> ++-
> drivers/net/ethernet/intel/igb/igb_xsk.c | 59 ++
> 3 files changed, 112 insertions(+), 10 deletions(-)
>
Reviewed-by: Maciej Fijalkowski
On Fri, Aug 16, 2024 at 11:24:04AM +0200, Kurt Kanzenbach wrote:
> From: Sriram Yagnaraman
>
> Add support for AF_XDP zero-copy receive path.
>
> When AF_XDP zero-copy is enabled, the rx buffers are allocated from the
> xsk buff pool using igb_alloc_rx_buffers_zc().
>
> Use xsk_pool_get_rx_fram
On Mon, Aug 19, 2024 at 03:41:20PM +0200, Kurt Kanzenbach wrote:
> On Mon Aug 19 2024, Maciej Fijalkowski wrote:
> > On Fri, Aug 16, 2024 at 11:24:03AM +0200, Kurt Kanzenbach wrote:
> >> From: Sriram Yagnaraman
> >>
> >> Add the following ring flag:
> &
;
> Signed-off-by: Sriram Yagnaraman
Sriram's mail bounces unfortunately, is it possible to grab his current
address?
You could also update the copyright date in igb_xsk.c. Besides:
Reviewed-by: Maciej Fijalkowski
> [Kurt: Add READ/WRITE_ONCE(), synchronize_net(),
>re
[Kurt: Split patches and use READ_ONCE()]
> Signed-off-by: Kurt Kanzenbach
Acked-by: Maciej Fijalkowski
> ---
> drivers/net/ethernet/intel/igb/igb.h | 5 +
> drivers/net/ethernet/intel/igb/igb_main.c | 8 +---
> 2 files changed, 10 insertions(+), 3 deletions(-)
&g
On Fri, Aug 16, 2024 at 11:24:01AM +0200, Kurt Kanzenbach wrote:
> From: Sriram Yagnaraman
>
> Remove static qualifiers on the following functions to be able to call
> from XSK specific file that is added in the later patches:
> - igb_xdp_tx_queue_mapping()
> - igb_xdp_ring_update_tail()
> - igb_
On Fri, Aug 16, 2024 at 11:24:00AM +0200, Kurt Kanzenbach wrote:
> From: Sriram Yagnaraman
>
> Always call igb_xdp_ring_update_tail() under __netif_tx_lock(), add a
> comment to indicate that. This is needed to share the same TX ring between
> XDP, XSK and slow paths.
Sorry for being a-hole here
15.9750-1-sriram.yagnara...@est.tech/
> [1]: https://www.qemu.org/docs/master/system/devices/igb.html
> [2]: https://github.com/xdp-project/bpf-examples/tree/master/AF_XDP-example
>
> v3->v4:
> - NULL check buffer_info in igb_dump before dereferencing (Simon Horman)
>
> v2->
On Tue, Aug 13, 2024 at 05:31:37PM +0200, Dawid Osuchowski wrote:
> On 13.08.2024 13:49, Maciej Fijalkowski wrote:
> > What about other intel drivers tho?
>
> I have not performed detailed analysis of other intel ethernet drivers in
> this regard, but it is surely a topic worth
On Mon, Aug 12, 2024 at 02:50:09PM +0200, Dawid Osuchowski wrote:
> Ethtool callbacks can be executed while reset is in progress and try to
> access deleted resources, e.g. getting coalesce settings can result in a
> NULL pointer dereference seen below.
>
> Reproduction steps:
> Once the driver is
On Wed, Jul 24, 2024 at 06:48:33PM +0200, Larysa Zaremba wrote:
> The main threat to data consistency in ice_xdp() is a possible asynchronous
> PF reset. It can be triggered by a user or by TX timeout handler.
>
> XDP setup and PF reset code access the same resources in the following
> sections:
>
On Mon, Aug 12, 2024 at 05:59:21PM +0200, Larysa Zaremba wrote:
> On Mon, Aug 12, 2024 at 03:03:19PM +0200, Maciej Fijalkowski wrote:
> > On Wed, Jul 24, 2024 at 06:48:36PM +0200, Larysa Zaremba wrote:
> > > Locking used in ice_qp_ena() and ice_qp_dis() does pretty much noth
On Wed, Jul 24, 2024 at 06:48:36PM +0200, Larysa Zaremba wrote:
> Locking used in ice_qp_ena() and ice_qp_dis() does pretty much nothing,
> because ICE_CFG_BUSY is a state flag that is supposed to be set in a PF
> state, not VSI one. Therefore it does not protect the queue pair from
> e.g. reset.
>
On Wed, Jul 24, 2024 at 06:48:34PM +0200, Larysa Zaremba wrote:
> If VSI rebuild is pending, .ndo_bpf() can attach/detach the XDP program on
> VSI without applying new ring configuration. When unconfiguring the VSI, we
> can encounter the state in which there is an XDP program but no XDP rings
> to
6-9311-946a06d03...@redhat.com/
Fixes: 1dc1a7e7f410 ("ice: Centrallize Rx buffer recycling")
Fixes: 2fba7dc5157b ("ice: Add support for XDP multi-buffer on Rx side")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_base.c | 21 ++-
drivers/ne
For bigger PAGE_SIZE archs, ice driver works on 3k Rx buffers.
Therefore, ICE_LAST_OFFSET should take into account ICE_RXBUF_3072, not
ICE_RXBUF_2048.
Fixes: 7237f5b0dba4 ("ice: introduce legacy Rx flag")
Suggested-by: Luiz Capitulino
Signed-off-by: Maciej Fijalkowski
---
drivers/ne
accounted per each buffer.
Thanks,
Maciej
Maciej Fijalkowski (3):
ice: fix page reuse when PAGE_SIZE is over 8k
ice: fix ICE_LAST_OFFSET formula
ice: fix truesize operations for PAGE_SIZE >= 8192
drivers/net/ethernet/intel/ice/ice_base.c | 21 +-
drivers/net/ethernet/intel/
its value vs ice_rx_buf::pagecnt_bias when making the
decision regarding page reuse
Fixes: 2b245cb29421 ("ice: Implement transmit and NAPI support")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_txrx.c | 12 +++-
1 file changed, 3 insertions(+), 9 delet
)
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 24 ++--
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice
It is read by data path and modified from process context on remote cpu
so it is needed to use WRITE_ONCE to clear the pointer.
Fixes: efc2214b6047 ("ice: Add support for XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-
: 2d4238f55697 ("ice: Add support for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice.h | 11 ++--
drivers/net/ethernet/intel/ice/ice_base.c | 4 +-
drivers/ne
ice_get_link_status() tells us that physical link is up.
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 8 +++-
1 file
ngent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 30 +---
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_xsk.c
index ba50af9a592
.
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/
port for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Michal Kubiak
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/ne
non]
- add review and test tags
v1->v2:
- fix kdoc issues in patch 6 and 8
- drop Larysa's patches for now
Maciej Fijalkowski (7):
ice: don't busy wait for Rx queue disable in ice_qp_dis()
ice: replace synchronize_rcu with synchronize_net
ice: modify error handling when setting XSK
On Thu, Jun 06, 2024 at 01:24:55PM +0200, Michal Swiatkowski wrote:
> From: Piotr Raczynski
>
> Configure netdevice for subfunction usecase. Mostly it is reusing ops
> from the PF netdevice.
>
> SF netdev is linked to devlink port registered after SF activation.
>
> Reviewed-by: Simon Horman
>
On Thu, Jun 06, 2024 at 01:24:52PM +0200, Michal Swiatkowski wrote:
> When subfunction VSI is open the same code as for PF VSI should be
> executed. Also when up is complete. Reflect that in code by adding
> subfunction VSI to consideration.
>
> In case of stopping, PF doesn't have additional task
On Wed, Jun 26, 2024 at 02:21:39PM +0200, Michal Kubiak wrote:
> On Tue, Jun 04, 2024 at 03:21:52PM +0200, Maciej Fijalkowski wrote:
> > This so we prevent Tx timeout issues. One of conditions checked on
> > running in the background dev_watchdog() is netif_carrier_ok(), so let
>
rt frags");
> @@ -13301,14 +13305,9 @@ static int i40e_xdp_setup(struct i40e_vsi *vsi,
> struct bpf_prog *prog,
>
> /* When turning XDP on->off/off->on we reset and rebuild the rings. */
> need_reset = (i40e_enabled_xdp_vsi(vsi) != !!prog);
> -
> if (need_reset)
>
On Thu, Jun 13, 2024 at 05:51:25PM +0200, Maciej Fijalkowski wrote:
> On Wed, Jun 12, 2024 at 11:15:31AM +0200, Alexander Lobakin wrote:
> > From: Alexander Lobakin
> > Date: Wed, 12 Jun 2024 11:09:10 +0200
> >
> > > From: Maciej Fijalkowski
> > >
On Wed, Jun 12, 2024 at 11:15:31AM +0200, Alexander Lobakin wrote:
> From: Alexander Lobakin
> Date: Wed, 12 Jun 2024 11:09:10 +0200
>
> > From: Maciej Fijalkowski
> > Date: Tue, 11 Jun 2024 16:21:27 +0200
>
> [...]
>
> >>>> diff --git a/drive
nly trigger the Rx interrupts in case of real allocation
> failures. Introduce a new flag for signaling that condition.
>
> [1] -
> https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/?id=3be507547e6177e5c808544bd6a2efa2c7f1d436
>
> Signed-off-by: Kurt Kanzenbach
On Tue, Jun 11, 2024 at 01:59:37PM +0200, Alexander Lobakin wrote:
> From: Maciej Fijalkowski
> Date: Tue, 4 Jun 2024 15:21:48 +0200
>
> > From: Michal Kubiak
> >
> > Address a scenario in which XSK ZC Tx produces descriptors to XDP Tx
> > ring when link is ei
)
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 24 ++--
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice
It is read by data path and modified from process context on remote cpu
so it is needed to use WRITE_ONCE to clear the pointer.
Fixes: efc2214b6047 ("ice: Add support for XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-
: 2d4238f55697 ("ice: Add support for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice.h | 11 ++--
drivers/net/ethernet/intel/ice/ice_base.c | 4 +-
drivers/ne
F_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet
ngent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 30 +---
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_xsk.c
index b6f4ddb744d
.
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/
port for AF_XDP")
Reviewed-by: Shannon Nelson
Tested-by: Chandan Kumar Rout (A Contingent Worker at
Intel)
Signed-off-by: Michal Kubiak
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/ne
and test tags
v1->v2:
- fix kdoc issues in patch 6 and 8
- drop Larysa's patches for now
Maciej Fijalkowski (7):
ice: don't busy wait for Rx queue disable in ice_qp_dis()
ice: replace synchronize_rcu with synchronize_net
ice: modify error handling when setting XSK pool in ndo_b
On Tue, Jun 04, 2024 at 12:52:16PM +0200, Maciej Fijalkowski wrote:
> On Fri, May 31, 2024 at 04:49:05PM -0700, Nelson, Shannon wrote:
> > On 5/29/2024 4:23 AM, Maciej Fijalkowski wrote:
> > >
> > > xsk_buff_pool pointers that ice ring structs hold are updated via
>
On Fri, May 31, 2024 at 04:49:05PM -0700, Nelson, Shannon wrote:
> On 5/29/2024 4:23 AM, Maciej Fijalkowski wrote:
> >
> > xsk_buff_pool pointers that ice ring structs hold are updated via
> > ndo_bpf that is executed in process context while it can be read by
> >
On Fri, May 31, 2024 at 04:49:01PM -0700, Nelson, Shannon wrote:
> On 5/29/2024 4:23 AM, Maciej Fijalkowski wrote:
> >
> > Given that ice_qp_dis() is called under rtnl_lock, synchronize_net() can
> > be called instead of synchronize_rcu() so that XDP rings can finish its
&g
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 24 ++--
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_xsk.c
index 693f0e3a37ce..85aa841a16bb 10
It is read by data path and modified from process context on remote cpu
so it is needed to use WRITE_ONCE to clear the pointer.
Fixes: efc2214b6047 ("ice: Add support for XDP")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_txrx.c | 2 +-
1 file changed, 1
: 2d4238f55697 ("ice: Add support for AF_XDP")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice.h | 6 +-
drivers/net/ethernet/intel/ice/ice_base.c | 4 +-
drivers/net/ethernet/intel/ice/ice_main.c | 2 +-
drivers/net/ethernet/intel/ice/ice_txrx.c | 4 +-
d
F_XDP")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_xsk.c
index 3dcab89be256..8c5006f37310 100644
--- a/drivers/net/ethernet
Don't bail out right when spotting an error within ice_qp_{dis,ena}()
but rather track error and go through whole flow of disabling and
enabling queue pair.
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice
.
Fixes: 2d4238f55697 ("ice: Add support for AF_XDP")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_x
DP")
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_xsk.c
index 1bd4b054dd80..4f606a1055b0 100644
--- a/driver
AF_XDP")
Signed-off-by: Michal Kubiak
Signed-off-by: Maciej Fijalkowski
---
drivers/net/ethernet/intel/ice/ice_xsk.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_xsk.c
b/drivers/net/ethernet/intel/ice/ice_xsk.c
index 2015f6
side. Main focus here is to forbid producing Tx descriptors
when either carrier is not yet initialized or process of bringing
interface down has already started.
Thanks,
Maciej
v1->v2:
- fix kdoc issues in patch 6 and 8
- drop Larysa's patches for now
Maciej Fijalkowski (7):
ice: do
1 - 100 of 160 matches
Mail list logo