public inbox for dev@dpdk.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [wishes/any Bug 1912] free mbufs should not have next and nb_segs initialized
Date: Wed, 25 Mar 2026 09:44:14 +0000	[thread overview]
Message-ID: <bug-1912-3@http.bugs.dpdk.org/> (raw)

http://bugs.dpdk.org/show_bug.cgi?id=1912

            Bug ID: 1912
           Summary: free mbufs should not have next and nb_segs
                    initialized
           Product: wishes
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: any
          Assignee: dev@dpdk.org
          Reporter: mb@smartsharesystems.com
  Target Milestone: ---
             Group: wishes-managers

The invariant about which mbuf fields are initialized for free mbufs (i.e.
mbufs held in a mempool) should only cover the refcnt and the constant fields:
buf_addr, buf_iova, buf_len, pool, priv_size.
The "next" and "nb_segs" fields are the only remaining non-constant fields (in
addition to the refcnt) still covered, and they should not be.

When an mbuf has been allocated and the driver fills the mbuf's fields during
Rx, the driver might as well also set the "next" and "nb_segs" fields (if it
doesn't already).
The performance cost of setting these two fields along with the other fields is
near zero.

Not having to initialize any mbuf fields when freeing an mbuf would reduce the
performance cost of freeing mbufs.
And in the FAST_FREE case (where the refcnt is known to be 1), the driver can
free the mbufs without touching them at all.

-- 
You are receiving this mail because:
You are the assignee for the bug.

                 reply	other threads:[~2026-03-25  9:44 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-1912-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox