]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
eth: fbnic: split fbnic_fill()
authorJakub Kicinski <kuba@kernel.org>
Mon, 1 Sep 2025 21:12:09 +0000 (14:12 -0700)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 4 Sep 2025 08:19:17 +0000 (10:19 +0200)
Factor out handling a single nv from fbnic_fill() to make
it reusable for queue ops.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Link: https://patch.msgid.link/20250901211214.1027927-10-kuba@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/meta/fbnic/fbnic_txrx.c

index 38dd1afb70059b06fd0bd8193da03b40ef7459c8..7694b25ef77df272e65a10ca22c16bbe1573950d 100644 (file)
@@ -2348,27 +2348,30 @@ void fbnic_flush(struct fbnic_net *fbn)
                fbnic_nv_flush(fbn->napi[i]);
 }
 
-void fbnic_fill(struct fbnic_net *fbn)
+static void fbnic_nv_fill(struct fbnic_napi_vector *nv)
 {
-       int i;
-
-       for (i = 0; i < fbn->num_napi; i++) {
-               struct fbnic_napi_vector *nv = fbn->napi[i];
-               int j, t;
+       int j, t;
 
-               /* Configure NAPI mapping and populate pages
-                * in the BDQ rings to use for Rx
-                */
-               for (j = 0, t = nv->txt_count; j < nv->rxt_count; j++, t++) {
-                       struct fbnic_q_triad *qt = &nv->qt[t];
+       /* Configure NAPI mapping and populate pages
+        * in the BDQ rings to use for Rx
+        */
+       for (j = 0, t = nv->txt_count; j < nv->rxt_count; j++, t++) {
+               struct fbnic_q_triad *qt = &nv->qt[t];
 
-                       /* Populate the header and payload BDQs */
-                       fbnic_fill_bdq(&qt->sub0);
-                       fbnic_fill_bdq(&qt->sub1);
-               }
+               /* Populate the header and payload BDQs */
+               fbnic_fill_bdq(&qt->sub0);
+               fbnic_fill_bdq(&qt->sub1);
        }
 }
 
+void fbnic_fill(struct fbnic_net *fbn)
+{
+       int i;
+
+       for (i = 0; i < fbn->num_napi; i++)
+               fbnic_nv_fill(fbn->napi[i]);
+}
+
 static void fbnic_enable_twq0(struct fbnic_ring *twq)
 {
        u32 log_size = fls(twq->size_mask);