Thread (21 messages) 21 messages, 2 authors, 2026-01-13

Re: [PATCH RFC net-next v2 1/8] net: macb: move Rx buffers alloc from link up to open

From: Paolo Valerio <hidden>
Date: 2026-01-12 14:15:08

On 08 Jan 2026 at 04:24:32 PM, Théo Lebrun [off-list ref] wrote:
Hello Paolo,

Nothing major in this review. Mostly nits.
Thanks for the feedback!
On Sun Dec 21, 2025 at 12:51 AM CET, Paolo Valerio wrote:
quoted
From: Théo Lebrun <theo.lebrun@bootlin.com>

mog_alloc_rx_buffers(), getting called at open, does not do rx buffer
alloc on GEM. The bulk of the work is done by gem_rx_refill() filling
up all slots with valid buffers.

gem_rx_refill() is called at link up by
gem_init_rings() == bp->macbgem_ops.mog_init_rings().

Move operation to macb_open(), mostly to allow it to fail early and
loudly rather than init the device with Rx mostly broken.

About `bool fail_early`:
 - When called from macb_open(), ring init fails as soon as a queue
   cannot be refilled.
 - When called from macb_hresp_error_task(), we do our best to reinit
   the device: we still iterate over all queues and try refilling all
   even if a previous queue failed.
About [PATCH 1/8], it conflicts with a patch that landed on v6.19-rc4:
99537d5c476c ("net: macb: Relocate mog_init_rings() callback from
macb_mac_link_up() to macb_open()").

I don't get a merge conflict but the
   bp->macbgem_ops.mog_init_rings(bp);
call must be dropped from macb_open() in [1/8]. It doesn't build anyway
because that call passes a single argument.
sure, will do.
Thanks,

--
Théo Lebrun, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help