Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Apr 2025 11:41:45 GMT
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 7f4088f4286c - stable/14 - LinuxKPI: skbuff: remove _alloc_len field
Message-ID:  <202504291141.53TBfjAk045998@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/14 has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=7f4088f4286c850d0c8cc694922ca5cbd5df8470

commit 7f4088f4286c850d0c8cc694922ca5cbd5df8470
Author:     Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2025-04-22 20:24:03 +0000
Commit:     Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2025-04-29 10:49:29 +0000

    LinuxKPI: skbuff: remove _alloc_len field
    
    Initially we saved the exact allocation length for contigfree(9).
    contigfree can now be replaced by free(9) so there is no need to
    remember that value anymore.  Removing it also simplifies the
    linuxkpi_kfree_skb() code.
    
    Sponsored by:   The FreeBSD Foundation
    
    (cherry picked from commit 73e3969fd435eea296b44f3bd40ff76c042c9a36)
---
 sys/compat/linuxkpi/common/include/linux/skbuff.h |  1 -
 sys/compat/linuxkpi/common/src/linux_80211.c      |  4 ++--
 sys/compat/linuxkpi/common/src/linux_skbuff.c     | 13 ++-----------
 3 files changed, 4 insertions(+), 14 deletions(-)

diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h
index 9db29c72e20c..7a8521e6fd38 100644
--- a/sys/compat/linuxkpi/common/include/linux/skbuff.h
+++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h
@@ -154,7 +154,6 @@ struct sk_buff {
 		};
 		struct list_head	list;
 	};
-	uint32_t		_alloc_len;	/* Length of alloc data-buf. XXX-BZ give up for truesize? */
 	uint32_t		len;		/* ? */
 	uint32_t		data_len;	/* ? If we have frags? */
 	uint32_t		truesize;	/* The total size of all buffers, incl. frags. */
diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index f3464f370a13..8e56862d7a92 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -6545,9 +6545,9 @@ linuxkpi_ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb,
 		goto no_trace_beacons;
 
 	if (linuxkpi_debug_80211 & D80211_TRACE_RX)
-		printf("TRACE-RX: %s: skb %p a/l/d/t-len (%u/%u/%u/%u) "
+		printf("TRACE-RX: %s: skb %p l/d/t-len (%u/%u/%u) "
 		    "h %p d %p t %p e %p sh %p (%u) m %p plen %u len %u%s\n",
-		    __func__, skb, skb->_alloc_len, skb->len, skb->data_len,
+		    __func__, skb, skb->len, skb->data_len,
 		    skb->truesize, skb->head, skb->data, skb->tail, skb->end,
 		    shinfo, shinfo->nr_frags,
 		    m, m->m_pkthdr.len, m->m_len, is_beacon ? " beacon" : "");
diff --git a/sys/compat/linuxkpi/common/src/linux_skbuff.c b/sys/compat/linuxkpi/common/src/linux_skbuff.c
index 16a7083123be..4139295fc837 100644
--- a/sys/compat/linuxkpi/common/src/linux_skbuff.c
+++ b/sys/compat/linuxkpi/common/src/linux_skbuff.c
@@ -115,7 +115,6 @@ linuxkpi_alloc_skb(size_t size, gfp_t gfp)
 #endif
 	if (skb == NULL)
 		return (skb);
-	skb->_alloc_len = len;
 	skb->truesize = size;
 
 	skb->head = skb->data = skb->tail = (uint8_t *)(skb+1);
@@ -258,14 +257,7 @@ linuxkpi_kfree_skb(struct sk_buff *skb)
 		skb_free_frag(p);
 	}
 
-#ifdef __LP64__
-	if (__predict_true(linuxkpi_skb_memlimit == 0))
-		free(skb, M_LKPISKB);
-	else
-		contigfree(skb, skb->_alloc_len, M_LKPISKB);
-#else
 	free(skb, M_LKPISKB);
-#endif
 }
 
 #ifdef DDB
@@ -284,9 +276,8 @@ DB_SHOW_COMMAND(skb, db_show_skb)
 	db_printf("skb %p\n", skb);
 	db_printf("\tnext %p prev %p\n", skb->next, skb->prev);
 	db_printf("\tlist %p\n", &skb->list);
-	db_printf("\t_alloc_len %u len %u data_len %u truesize %u mac_len %u\n",
-	    skb->_alloc_len, skb->len, skb->data_len, skb->truesize,
-	    skb->mac_len);
+	db_printf("\tlen %u data_len %u truesize %u mac_len %u\n",
+	    skb->len, skb->data_len, skb->truesize, skb->mac_len);
 	db_printf("\tcsum %#06x l3hdroff %u l4hdroff %u priority %u qmap %u\n",
 	    skb->csum, skb->l3hdroff, skb->l4hdroff, skb->priority, skb->qmap);
 	db_printf("\tpkt_type %d dev %p sk %p\n",



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202504291141.53TBfjAk045998>