| #
f1d7eea9
|
| 20-Jan-2026 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: implement skb_queue_splice()
Add skb_queue_splice() and use it in skb_queue_splice_init() which already had that functionality (plus the init bit). The new function is used by rtw8
LinuxKPI: skbuff: implement skb_queue_splice()
Add skb_queue_splice() and use it in skb_queue_splice_init() which already had that functionality (plus the init bit). The new function is used by rtw89(4).
Sponosred by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
88dbf833
|
| 11-Oct-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: add a misplaced socket operation to skbuff.h for now
This likely belongs in socket code which we do not have in LinuxKPI. Needed by a wirless driver at v6.17.
MFC after: 3 days
|
| #
bc222e96
|
| 03-Sep-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: no longer use IEEE80211_DEBUG to turn on debug
A port using linux(kpi) header files but not using skbuffs is hitting the case that it cannot find opt_wlan.h. Give up to the idea t
LinuxKPI: skbuff: no longer use IEEE80211_DEBUG to turn on debug
A port using linux(kpi) header files but not using skbuffs is hitting the case that it cannot find opt_wlan.h. Give up to the idea that skbuff.h is only used by wireless drivers (or in-tree) and that IEEE80211_DEBUG (via opt_lwan.h) could autmatically compile in debug support.
It is likely time to add a LINUXKPI_DEBUG knob in the near future (also for linuxkpi_debug or linuxkpi_debug_rcu).
PR: 289268 MFC after: 3 days
show more ...
|
| #
343f8f71
|
| 29-Aug-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: checksum offloading flags
Given the checksum offloading flags are mutually exclusive and are not a bit mask, we can compress them into 2 bit for the four possible values. Change t
LinuxKPI: skbuff: checksum offloading flags
Given the checksum offloading flags are mutually exclusive and are not a bit mask, we can compress them into 2 bit for the four possible values. Change the define but leave the type at uint8_t for now with a comment. We can possible combine them with another sub-octet field in the future.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
84c5998c
|
| 29-Jul-2024 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: add dummy skb_copy_header()
There's one case which needs skb_copy_header(); add a dummy function for now until we get to the code which uses it to test an implementation.
Sponsor
LinuxKPI: skbuff: add dummy skb_copy_header()
There's one case which needs skb_copy_header(); add a dummy function for now until we get to the code which uses it to test an implementation.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
36ca2172
|
| 10-May-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: make csum_unfold return __wsum
Given the internal field now stores a __wsum csum (after we added the type) also make sure csum_unfold() returns a __wsum.
Sponsored by: The FreeBSD
LinuxKPI: skbuff: make csum_unfold return __wsum
Given the internal field now stores a __wsum csum (after we added the type) also make sure csum_unfold() returns a __wsum.
Sponsored by: The FreeBSD Foundation MFC after: 3 days Fixes: 59481c7db234
show more ...
|
| #
59481c7d
|
| 14-Apr-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: fix types, shuffle fields
Fix the types of a few remaining fields. Shuffle the fields around so the important ones align to 64byte on a 64bit platform.
Sponsored by: The FreeBSD F
LinuxKPI: skbuff: fix types, shuffle fields
Fix the types of a few remaining fields. Shuffle the fields around so the important ones align to 64byte on a 64bit platform.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
73e3969f
|
| 22-Apr-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
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 anymo
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 MFC after: 3 days
show more ...
|
| #
2ab4a419
|
| 22-Feb-2025 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: add synchronization primitives and missing bits
Make a pass over skbuff.h: - implement some missing bits, - sprinkle some const, - add locking and read/write_once calls as needed t
LinuxKPI: skbuff: add synchronization primitives and missing bits
Make a pass over skbuff.h: - implement some missing bits, - sprinkle some const, - add locking and read/write_once calls as needed to provide synchronization as expected by Linux, - fix some typos, - remove return from void functions, - adjust tracing macros.
Sponsored by: The FreeBSD Foundation MFC after: 3 days PR: 283903 (rtw88 skb leak) Tested by: Guillaume Outters (guillaume-freebsd outters.eu) Differential Revision: https://reviews.freebsd.org/D49101
show more ...
|
| #
bcf1d8ee
|
| 27-Dec-2024 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: 802.11/skb: add extra information for skb alloc failures
rtw88 seems to have an skb leak still.
Add a WARN_ONCE to __skb_queue_purge() just to make sure there is no glitch due to missing
LinuxKPI: 802.11/skb: add extra information for skb alloc failures
rtw88 seems to have an skb leak still.
Add a WARN_ONCE to __skb_queue_purge() just to make sure there is no glitch due to missing locking.
Also add a rolling error reporting for skb allocation failures in LinuxKPI to gather some more information if possible about queue states.
This is a corrected version of what was initially part of D48474.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
b4856b8e
|
| 24-Oct-2024 |
Zhenlei Huang <zlei@FreeBSD.org> |
LinuxKPI: Remove stray semicolons
MFC after: 1 week
|
| #
59d262fe
|
| 06-Apr-2024 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: 802.11 compile in debugging based on IEEE80211 debugging
If IEEE80211 debugging is turned on in kernel configs also turn on LinuxKPI 802.11 and SKB debugging (sysctls) to have them availab
LinuxKPI: 802.11 compile in debugging based on IEEE80211 debugging
If IEEE80211 debugging is turned on in kernel configs also turn on LinuxKPI 802.11 and SKB debugging (sysctls) to have them available.
Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D45820
show more ...
|
| #
3d3ec178
|
| 02-Apr-2024 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: sk_buff: implement skb_queue_splice_tail_init()
Implement skb_queue_splice_tail_init() and SKB_DATA_ALIGN() as needed by the mt76 wireless driver.
Sponsord by: The FreeBD Foundation MFC a
LinuxKPI: sk_buff: implement skb_queue_splice_tail_init()
Implement skb_queue_splice_tail_init() and SKB_DATA_ALIGN() as needed by the mt76 wireless driver.
Sponsord by: The FreeBD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D44590
show more ...
|
| #
d3befb53
|
| 02-Mar-2024 |
Tom Coldrick <tom@coldrick.cc> |
LinuxKPI: Queue skbuffs at tail in __skb_queue_tail
Correct skb_queue_tail to queue the buffer at the tail of the skbuff. The skbuff is a circular doubly-linked list, and we call with a pointer to t
LinuxKPI: Queue skbuffs at tail in __skb_queue_tail
Correct skb_queue_tail to queue the buffer at the tail of the skbuff. The skbuff is a circular doubly-linked list, and we call with a pointer to the head of the list. Thus queueing before the head gives us a queueing at the tail.
As a motivating factor, the current behaviour (queueing at the head) was causing frequent kernel panics from my RTL8822BE wireless card, which uses the rtw88 driver. Interrupts can cause buffers to be added to the rtwdev c2h_queue while the queue is being drained in rtw_c2h_work. Queueing at the head would leave the nascent entry in the linked list pointing to the old, now freed, memory for the buffer being processed. When rtw_c2h_work is next called, we try reading this and so panic.
Reviewed by: emaste, bz MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D44192
show more ...
|
| #
f0e59b69
|
| 08-Sep-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: remove assumption about mac_header
It seems the mac_header can be set to offset 0 for frames received. Remove the warning splattering messages to the console for each packet.
Spon
LinuxKPI: skbuff: remove assumption about mac_header
It seems the mac_header can be set to offset 0 for frames received. Remove the warning splattering messages to the console for each packet.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
e039b38d
|
| 10-Aug-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: add skb_cow_head()
Add dummy implementation of skb_cow_head().
Sponsored by: The FreeBSD Foundation MFC after: 10 days
|
| #
149c457d
|
| 19-Aug-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: fix tracing
Fix arguments to a trace line and remove another trace line until we actually will have the skb to trace along with a future implementation.
Sponsored by: The FreeBSD
LinuxKPI: skbuff: fix tracing
Fix arguments to a trace line and remove another trace line until we actually will have the skb to trace along with a future implementation.
Sponsored by: The FreeBSD Foundation MFC after: 10 days
show more ...
|
| #
95ee2897
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
| #
1213a6be
|
| 23-May-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: add napi_build_skb() and skb_mark_for_recycle()
Add more (skeleton) functions used by wireless drivers.
MFC after: 10 days
|
| #
369264ac
|
| 20-May-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: add skb_get_hash()
Add a dummy implementation of skb_get_hash() until we'll hit and implement it. It'll help to keep an upcoming wireless driver to compile.
MFC after: 10 days
|
| #
262c5e81
|
| 16-May-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff.h: add skb_hwtstamps(), implement *mac_header()
Add a dummy skb_hwtstamps() function for now, and implement skb_mac_header(), skb_reset_mac_header(), and skb_set_mac_header().
Spon
LinuxKPI: skbuff.h: add skb_hwtstamps(), implement *mac_header()
Add a dummy skb_hwtstamps() function for now, and implement skb_mac_header(), skb_reset_mac_header(), and skb_set_mac_header().
Sponsored by: The FreeBSD Foundation MFC after: 10 days
show more ...
|
| #
b2dcb848
|
| 19-Apr-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff.h: fix -Warray-bounds warnings
Harmonize sk_buff_head and sk_buff further and fix -Warray-bounds warnings reports by gcc. At the same time simplify some code by re-using other func
LinuxKPI: skbuff.h: fix -Warray-bounds warnings
Harmonize sk_buff_head and sk_buff further and fix -Warray-bounds warnings reports by gcc. At the same time simplify some code by re-using other functions or factoring some code out.
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
dbbf46eb
|
| 28-Jan-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: skbuff: implement skb_free_frag()
Using the work from 55038a6306a570c9f2df89f5ad076de0f7d98152 implement skb_free_frag() calling page_frag_free().
Sponsored by: The FreeBSD Foundation MFC
LinuxKPI: skbuff: implement skb_free_frag()
Using the work from 55038a6306a570c9f2df89f5ad076de0f7d98152 implement skb_free_frag() calling page_frag_free().
Sponsored by: The FreeBSD Foundation MFC after: 3 days
show more ...
|
| #
5504bd59
|
| 28-Nov-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: SKB update
- skb_reset_tail_pointer(): we do not do offsets so do a plain reset - skb_add_rx_frag(): adjust data_len to keep track of the frag - based on that implement skb_is_nonlinear()
LinuxKPI: SKB update
- skb_reset_tail_pointer(): we do not do offsets so do a plain reset - skb_add_rx_frag(): adjust data_len to keep track of the frag - based on that implement skb_is_nonlinear() and skb_linearize() - implement build_skb() and adjust linuxkpi_kfree_skb() and ddb macro.
Sponsored by: The FreeBSD Foundation (partially) MFC after: 3 days
show more ...
|
| #
ce9f3661
|
| 28-Nov-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: SKB: implement skb_peek()
Sponsored by: The FreeBSD Foundation MFC after: 3 days
|