Commit graph

43068 commits

Author SHA1 Message Date
Kevin Bowling
b6cd053e6d ixgbe: update if_sriov with ix-3.3.38 changes
There are some critical fixes here. The PF must communicate with each VF
slot (vf->pool), only VFs shall use 0 for everything.

IXGBE_FEATURE_SRIOV needs to be set before calling ixgbe_if_init().

With these changes, ixv(4) now attaches to VFs, but after bringing up
VFs, the PF and VF still are not correctly passing traffic.

MFC after:	1 week
2024-09-21 02:59:33 -07:00
Kevin Bowling
f72de14ea1 ixgbe: update if_ix and ixgbe api with ix-3.3.38 changes
MFC after:	1 week
2024-09-21 02:52:21 -07:00
Kevin Bowling
0acea458f8 ixgbe: update ixgbe_mbx with ix-3.3.38 changes
MFC after:	1 week
2024-09-21 02:47:11 -07:00
Kevin Bowling
e06918b94a ixgbe: update ixgbe_phy with ix-3.3.38 changes
MFC after:	1 week
2024-09-21 02:45:12 -07:00
Kevin Bowling
c41a0eeea0 ixgbe: update if_bypass to ix-3.3.38
Bring if_bypass up to date with changes in the out of tree driver

Drop NEEDGIANT as the sysctl handlers have internal mutex for state
changes.

MFC after:	1 week
2024-09-21 02:42:23 -07:00
Kevin Bowling
ddfec1fb68 e1000: Update igb driver version to 2.5.28-fbsd
Bump to the current out of tree driver version since we only have some
gratuitous changes.

MFC after:	1 week
2024-09-20 23:27:54 -07:00
Kevin Bowling
36c516b311 ixgbe: update if_sriov to use the new mailbox apis
This fixes a page fault when creating VFs and updates to the new mailbox
API and naming conventions.

The functionality works to the same level that it did before my recent
changes. In particular on my 82599 it creates both passthru and ixv
interfaces. In either case, the PF seems to lose the ability to pass
traffic. The ixv driver fails to attach. These issues are present with
or without my updates.

If you use SR-IOV on ixgbe I would be interested in hearing what does
or does not work for you.

MFC after:	6 days
2024-09-20 20:26:42 -07:00
WHR
66efdefe78 mfi: Correct a struct member name
This 'struct mfi_evt_pd' typed member should be named 'pd' instead of 'ld'.

PR: 281155
Reviewed by: imp, delphij
Pull Request: https://github.com/freebsd/freebsd-src/pull/1402
2024-09-20 16:22:43 -06:00
Doug Moore
267f223f62 ixgbe: fix compilation for VF
The mailbox API changed in version 15 and these array ops were left out
of the recent code import as applicable to FreeBSD.

Reported by:	vishwin, yasu
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D46708
2024-09-20 00:57:36 -07:00
Chinh Cao
420c984470 ixgbe: remove unused function prototypes
DPDK commit message

net/ixgbe/base: remove unused function prototypes
There are some function prototypes that were introduced at some point
but were never implemented, so remove them.

Signed-off-by: Chinh Cao <chinh.t.cao@intel.com>

Obtained from:	DPDK (e9cc1b4)
MFC after:	1 week
2024-09-19 20:37:07 -07:00
Dawid Zielinski
25771c8c1a ixgbe: prevent PBA read over eeprom word size
DPDK commit message

net/ixgbe/base: prevent untrusted loop bound
Added length check against EEPROM size in words to prevent untrusted
loop bound reported by static code analysis.

Signed-off-by: Dawid Zielinski <dawid.zielinski@intel.com>

Obtained from:	DPDK (6b58617)
MFC after:	1 week
2024-09-19 20:33:37 -07:00
Barbara Skobiej
cc99441831 ixgbe: improve Atom C3000 SWFW semaphore acq
DPDK commit message

net/ixgbe/base: improve SWFW semaphore acquisition
HWSW semaphore acquisition in Atom C3000 NIC is a two stage process.
Each time two semaphore acquisitions are required. Each second semaphore
failure requires re-acquisition of first semaphore. This patch decouples
the two acquisitions preventing potentially hundreds of thousands
of unnecessary loop iterations.

Signed-off-by: Barbara Skobiej <barbara.skobiej@intel.com>

Obtained from:	DPDK (99f960c)
MFC after:	1 week
2024-09-19 20:31:18 -07:00
Barbara Skobiej
bfa48c32bc ixgbe: add missing QV defines
DPDK commit message

net/ixgbe/base: add missing QV defines
This patch adds missing QV defines:
- offset of ANVM data
- Immediate Field module pointer offset
- 2.5GBASE-T and 5GBASE-T physical layer types for X550

Signed-off-by: Barbara Skobiej <barbara.skobiej@intel.com>
Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com>

Obtained from:	DPDK (a730b83)
MFC after:	1 week
2024-09-19 20:27:21 -07:00
Barbara Skobiej
3167854b9d ixgbe: remove circular dependency in ixgbe_mbx.h
DPDK commit message

net/ixgbe/base: remove circular header dependency
Including one header file in second header file should be avoided, so
fix it by forward declaring the struct instead.

Signed-off-by: Barbara Skobiej <barbara.skobiej@intel.com>

Obtained from:	DPDK (0bc2af5)
MFC after:	1 week
2024-09-19 20:22:35 -07:00
Marcin Jurczak
4530d49e68 ixgbe: use primary and block terminology
DPDK commit message

net/ixgbe/base: replace non-inclusive language
This patch removes non-inclusive language from code, user interface
and comments.

Signed-off-by: Marcin Jurczak <marcin.jurczak@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (f12a4bd)
MFC after:	1 week
2024-09-19 20:18:00 -07:00
Piotr Skajewski
50455f73c2 ixgbe: replace implicit fall-through comments
DPDK commit message

Convert all "fall-through" comments to actual code. This aligns the code
with the kernel which no longer allows implicit fallthrough.

Signed-off-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (ae8211f)
MFC after:	1 week
2024-09-19 20:15:05 -07:00
Marek Mical
f56311e37d ixgbe: Remove Atom C3000 HIC FW access
DPDK commit message

net/ixgbe/base: replace HIC with direct register access
Unify FW access method to direct register read/writes across all
Atom(R) C3000 products.

Atom(R) C3000 fiber exhibited an issue with the Host Interface Command
execution being locked when another LAN function attempted to acquire
the SWFW sync on Manageability Host. This resulted in HIC atomicity
break and bogus data being read since the other LAN function cleared
all semaphores on timeout whereas HIC execution continued after
unlock.  Direct register IOSF access showed higher stability and
reliability.

Signed-off-by: Marek Mical <marekx.mical@intel.com>
Reviewed-by: Krzysztof Galazka <krzysztof.galazka@intel.com>
Reviewed-by: Eryk Rybak <eryk.roch.rybak@intel.com>
Reviewed-by: Francis Racicot <Francis.Racicot@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (e947f1e)
MFC after:	1 week
2024-09-19 20:01:21 -07:00
Radoslaw Tyl
224f7ab8b4 ixgbe: add reset count field to HW struct
DPDK commit message

net/ixgbe/base: add reset count field to HW struct
Add fw_rst_cnt to store the number of resets after fw update.
This value is required to detect if the EICR.MNG event occurred
after firmware update reset.

Signed-off-by: Radoslaw Tyl <radoslawx.tyl@intel.com>
Reviewed-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (9ab0e9c)
MFC after:	1 week
2024-09-19 19:55:35 -07:00
Radoslaw Tyl
edef276948 ixgbe: improve function comments
Some function comments have mismatches between actual function names and
function name in comments, which causes warnings with kernel-doc. Fix
comments to match function names.

Signed-off-by: Radoslaw Tyl <radoslawx.tyl@intel.com>
Reviewed-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (7b5bc85)
MFC after:	1 week
2024-09-19 19:50:23 -07:00
Radoslaw Tyl
1b80ac6fa6 ixgbe: increase DCB BW calculation for MTU
Change max credit and credit refill to a maximum possible value, 9128.
Too small values cause the incorrect calculation of the bandwidth limits
to each traffic class for frames larger than 4088 bytes.

Signed-off-by: Radoslaw Tyl <radoslawx.tyl@intel.com>
Reviewed-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>
Tested-by: Piotr Skajewski <piotrx.skajewski@intel.com>

Obtained from:	DPDK (440823f)
MFC after:	1 week
2024-09-19 19:42:39 -07:00
Jakub Chylkowski
7234c30999 ixgbe: introduce new mailbox API
DPDK commit message

Current mailbox API does not work as described in documentation and
is prone to errors (for example, it is doing locks on read). Introduce
new mailbox API and provide compatibility functions with old API.

New error codes have been introduced:
- IXGBE_ERR_CONFIG - ixgbe_mbx_operations is not correctly set
- IXGBE_ERR_TIMEOUT - mailbox operation, e.g. poll for message, timedout
- IXGBE_ERR_MBX_NOMSG - no message available on read

In addition, some refactoring has been done: mailbox structures were
defined twice: in ixgbe_type.h and ixgbe_vf.h. Move them into
ixgbe_mbx.h as this header is dedicated for mailbox.

Signed-off-by: Jakub Chylkowski <jakubx.chylkowski@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>
Reviewed-by: Piotr Pietruszewski <piotr.pietruszewski@intel.com>
Tested-by: Alice Michael <alice.michael@intel.com>
Tested-by: Piotr Skajewski <piotrx.skajewski@intel.com>

Obtained from:	DPDK (6d243d2)
MFC after:	1 week

Reapply message

This reverts commit d80c12ba68.
2024-09-19 19:38:59 -07:00
Kevin Bowling
d80c12ba68 Revert "ixgbe: introduce new mailbox API"
This is missing the ixgbe_mbx.h changes, revert so it can be
committed atomically.

This reverts commit 68ba3eabd4.
2024-09-19 19:18:25 -07:00
Jakub Chylkowski
68ba3eabd4 ixgbe: introduce new mailbox API
DPDK commit message

Current mailbox API does not work as described in documentation and
is prone to errors (for example, it is doing locks on read). Introduce
new mailbox API and provide compatibility functions with old API.

New error codes have been introduced:
- IXGBE_ERR_CONFIG - ixgbe_mbx_operations is not correctly set
- IXGBE_ERR_TIMEOUT - mailbox operation, e.g. poll for message, timedout
- IXGBE_ERR_MBX_NOMSG - no message available on read

In addition, some refactoring has been done: mailbox structures were
defined twice: in ixgbe_type.h and ixgbe_vf.h. Move them into
ixgbe_mbx.h as this header is dedicated for mailbox.

Signed-off-by: Jakub Chylkowski <jakubx.chylkowski@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>
Reviewed-by: Piotr Pietruszewski <piotr.pietruszewski@intel.com>
Tested-by: Alice Michael <alice.michael@intel.com>
Tested-by: Piotr Skajewski <piotrx.skajewski@intel.com>

Obtained from:	DPDK (6d243d2)
MFC after:	1 week
2024-09-19 18:39:35 -07:00
Jakub Chylkowski
b3c7fde6fe ixgbe: correct register names to match datasheet
DPDK commit message

net/ixgbe/base: correct registers names to match datasheet
Some of mailbox-related registers have different names than it is
specified in datasheet. Correct these names to correspond to their
datasheet counterparts. Additionally, several calculations are changed
to no longer use magic numbers but dedicated macros instead.

Signed-off-by: Jakub Chylkowski <jakubx.chylkowski@intel.com>
Reviewed-by: Marek Zalfresso-jundzillo <marekx.zalfresso-jundzillo@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>
Reviewed-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Tested-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Tested-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (10fd55e)
MFC after:	1 week
2024-09-19 16:25:09 -07:00
Jakub Chylkowski
1074604082 ixgbe: rename VF message type macros
DPDK commit message

There is name similarity within IXGBE_VT_MSGTYPE_ACK and
PFMAILBOX.ACK / VFMAILBOX.ACK which may cause confusion. Rename MSGTYPE
macros to SUCCESS and FAILURE as they are not specified in datasheet and
now will be easily distinguishable.

Signed-off-by: Jakub Chylkowski <jakubx.chylkowski@intel.com>
Reviewed-by: Marek Zalfresso-jundzillo <marekx.zalfresso-jundzillo@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>
Reviewed-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Tested-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Tested-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (4f675c9)
MFC after:	1 week
2024-09-19 14:03:18 -07:00
Radoslaw Tyl
9b56dfd27c ixgbe: fix PHY ID for X550
DPDK commit message

net/ixgbe/base: fix PHY ID for X550
Function ixgbe_get_phy_type_from_id() for X550_PHY_ID2 and
X550_PHY_ID3 always return ixgbe_phy_unknown instead of ixgbe_phy_aq
because phy ID's last 4 bits are always masked, and should not be
taken into account when selecting phy type.

This patch adds default PHY ID for X550 devices with mask on last 4
bits (0xFFFFFFF0), and fixes the switch statement to use it.

Fixes: 58ddc80 ("ixgbe/base: add new X550 PHY ids")
Cc: stable@dpdk.org

Signed-off-by: Radoslaw Tyl <radoslawx.tyl@intel.com>
Reviewed-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (a9f5a3b)
MFC after:	1 week
2024-09-19 13:42:14 -07:00
Piotr Skajewski
ab92cab026 ixv: fix x550 VF link speed reported
DPDK commit message

net/ixgbe/base: fix 5G link speed reported on VF
When 5000 Base-T was set on PF the VF reported 100 Base-T. This patch
changes ixgbe_check_mac_link_vf function where there was an incorrect
conditional which checks using PF mac types, now it is correctly
using VF mac types.

Fixes: 12e2090 ("net/ixgbe/base: include new speeds in VFLINK interpretation")
Cc: stable@dpdk.org

Signed-off-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Reviewed-by: Radoslaw Tyl <radoslawx.tyl@intel.com>
Reviewed-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Reviewed-by: Alice Michael <alice.michael@intel.com>

Obtained from:	DPDK (9eb7fdb)
MFC after:	1 week
2024-09-19 13:32:24 -07:00
Kevin Traynor
28fdb212ad ixgbe: increase VF reset timeout
DPDK commit meesage

When VF issues a reset to PF there is a 50 msec wait plus an additional
max of 1 msec (200 * 5us) for the PF to indicate the reset is complete
before timeout.

In some cases, it is seen that the reset is timing out, in which case
the reset does not complete and an error is returned.

In order to account for this, continue to wait an initial 50 msecs, but
then allow a max of an additional 50 msecs (10,000 * 5us) for the
command to complete.

Fixes: af75078 ("first public release")
Cc: stable@dpdk.org

Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>

Obtained from:	DPDK (64e714f)
MFC after:	1 week
2024-09-19 13:29:34 -07:00
Anatoly Burakov
811912c46b e1000: fix link power down
DPDK commit message

net/e1000/base: fix link power down
Current code is a result of work to reduce duplication between various
device models. However, the logic that was replaced did not exactly
match the new logic, and as a result the link power down was not
working correctly for some NICs, and the link remained up even when
the interface is down.

Fix it to correctly power down the link under all circumstances that
were supported by old logic.

Fixes: 44dddd1 ("net/e1000/base: remove duplicated codes")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>

Obtained from:	DPDK (a8218d0)
MFC after:	1 week
2024-09-19 12:04:47 -07:00
Mark Johnston
1ae4951ba7 netmap: Make the memory ops function pointer table const
No functional change intended.

Reviewed by:	vmaffione
MFC after:	2 weeks
Sponsored by:	Klara, Inc.
Differential Revision:	https://reviews.freebsd.org/D46664
2024-09-19 09:56:30 +00:00
Kevin Bowling
14561f1eda ixl: Increase tx/rx ring size to 8160
I've verified the tx queue (table 8-22) in addition.

DPDK commit message

net/i40e: increase max descriptor queue length
According to the Intel X710/XXV710/XL710 Datasheet, the maximum receive
queue descriptor length is 0x1FE0 (8160 in base 10). This is specified
as QLEN in table 8-12, page 1083.

I've tested this change with an XXV710 NIC and it has positive effect on
performance under high load scenarios. Where previously I'd get
~2000 packets/sec miss rate, now I get only ~40 packets/sec miss rate.

Signed-off-by: Igor Gutorov <igootorov@gmail.com>
Acked-by: Morten Brørup <mb@smartsharesystems.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>

Obtained from:	DPDK (ce9470f)
MFC after:	1 week
2024-09-18 22:30:24 -07:00
Alexander Motin
a1bb5bdb0a ure(4): Add ID for LAN port in Thinkpad OneLink+ dock
That's a pretty old dock for Thinkpad X1 Carbon Gen4 and few others.

MFC after:	1 week
2024-09-18 21:55:24 -04:00
Gordon Bergling
3e614fb600 e1000: Fix a typo in a source code comment
- s/chekcsums/checksums/

MFC after: 3 days
2024-09-18 04:32:41 +02:00
Navdeep Parhar
07f47e8850 cxgbe/t4_tom: completely avoid L2T entries during stop/suspend.
1. Mark the L2T entry valid only if t4_write_l2e succeeds, which won't
   happen if the adapter is stopped.  This prevents L2T entries from
   sometimes getting (re)promoted to VALID on Tx activity during stop.
2. Discard a work request immediately instead of enqueueing it to the
   arp queue if the adapter is stopped.

Fixes:	c1c524852f cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM.
MFC after:	1 week
Sponsored by:	Chelsio Communications
2024-09-16 10:24:32 -07:00
Ahmad Khalifa
92adaa5862 gpiobus(4): Add an acpi variant of gpiobus
This currently only implements the address space handler and attempts to
configure pins with flags obtained from ACPI.

Reviewed by:	wulf
MFC after:	1 month
Pull Request:	https://github.com/freebsd/freebsd-src/pull/1359
2024-09-14 12:02:33 +03:00
Navdeep Parhar
d82cb5c608 cxgbe(4): Make sure that the tracing filters are usable after restart.
The destination queue for tracing filters is destroyed during stop or
suspend and the software state needs to reflect this.  A new destination
queue will be setup when the adapter resumes operation.

MFC after:	1 week
Sponsored by:	Chelsio Communications
2024-09-11 12:12:32 -07:00
Navdeep Parhar
171e57967b cxgbe/t4_tom: Demote STALE L2 table entries to RESOLVING in uld_stop.
The STALE state means the L2T entry is valid in hardware but needs to be
refreshed (ARP/NDP) in software.  But stop/suspend wipes the hardware
L2T and STALE entries need to be updated just like VALID entries to match
actual hardware state.

Fixes:	c1c524852f cxgbe/t4_tom: Implement uld_stop and uld_restart for ULD_TOM.
MFC after:	1 week
Sponsored by:	Chelsio Communications
2024-09-11 12:09:48 -07:00
Joshua Rogers
8aef1cd698 wsp: Use already-calculated distance of fingers for comparison.
Also correctly use tun.max_double_tap_distance for maximum distance
of fingers for vertical scrolling.

Signed-off-by: Joshua Rogers <Joshua@Joshua.Hu>
Reviewed by: imp, wulf
Pull Request: https://github.com/freebsd/freebsd-src/pull/1365
2024-09-06 12:34:31 -06:00
Joshua Rogers
62cf43dda8 wsp: Improve multi-finger touchpad usage and allow more configurations
This patch allows scrolling with multiple fingers simultaneously, in
line with how wsp trackpads function on MacOS.

Two new tunables are added: hw.usb.wsp.max_finger_area and
hw.usb.wsp.max_double_tap_distance.

max_finger_area defines the maximum size which the driver registered an
object on trackpad as a finger.
Previously, this value was hardcoded as 1200, which was too low to
register thumb-clicks.

max_double_tap_distance defines the maximum distance between two
fingers which will register as a double-click.

Signed-off-by: Joshua Rogers <Joshua@Joshua.Hu>
Reviewed by: imp, wulf
Pull Request: https://github.com/freebsd/freebsd-src/pull/1365
2024-09-06 12:34:31 -06:00
Joshua Rogers
7b984d5043 wsp: Allow the trackpad to be used after a partially unreleased click.
This provides functionality for a click which is partially unreleased
and then allows the user to continue moving the mousepad as if were not
invoked as a full click

Signed-off-by: Joshua Rogers <Joshua@Joshua.Hu>
Reviewed by: imp, wulf
Pull Request: https://github.com/freebsd/freebsd-src/pull/1365
2024-09-06 12:34:31 -06:00
Ahmad Khalifa
e152944f1a usb: increase USB_PORT_RESET_RECOVERY
10ms seems to be too strict for some configurations, so increase to
20ms.

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1327
2024-09-06 12:34:30 -06:00
Navdeep Parhar
674cbf38f6 cxgbe/t4_tom: Add synq entry to the list before calling send_synack.
This fixes a panic where the peer's ack to the synack arrives on a
different queue and do_pass_establish tries to remove the synqe from
synqe_list before it has been added by do_pass_accept_req.

Reported by:	Sony Arpita Das @ Chelsio
Fixes:	283333c0e3 cxgbe/t4_tom: Track all synq entries in a per-adapter list.
MFC after:	1 week
Sponsored by:	Chelsio Communications
2024-09-05 23:21:59 -07:00
John Baldwin
bedfac1f02 nvmf_tcp: Fully honor kern.nvmf.tcp.max_transmit_data for C2H_DATA PDUs
The previous version of tcp_send_controller_data avoided sending a
chain of multiple mbufs that exceeded the limit, but if an individual
mbuf was larger than the limit it was sent as a single, over-sized
PDU.  Fix by using m_split() to split individual mbufs larger than the
limit.

Note that this is not a protocol error, per se, as there is no limit
on C2H_DATA PDU lengths (unlike the MAXH2CDATA parameter).  This fix
just honors the administrative limit more faithfully.  This case is
also very unlikely with the default limit of 256k.

Sponsored by:	Chelsio Communications
2024-09-05 17:14:36 -04:00
Justin Hibbits
7b86593f0f sdhci: Match quirk_set/quirk_clear sysctls to type
These quirk fields are u_int, so match the sysctl type to the actual
types, and use SYSCTL_UINT.  This provides room for setting bit 31 quirk
as needed.

Sponsored by:	Juniper Networks, Inc.
MFC after:	1 week
2024-09-05 13:25:16 -04:00
Michael Tuexen
0b45d36510 al_eth: improve TCP LRO
Use the appropriate function to flush correctly all entries. The old
code does not remove the element from the hash table, only from the
active queue.

Reviewed by:		Peter Lei, rscheff
MFC after:		1 week
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D46434
2024-09-05 17:35:40 +02:00
Michael Tuexen
5203dcce25 neta: improve TCP LRO
Use the appropriate function to flush correctly all entries. The old
code does not remove the element from the hash table, only from the
active queue.

Reviewed by:		Peter Lei, rscheff
MFC after:		1 week
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D46433
2024-09-05 17:31:31 +02:00
Navdeep Parhar
7aeec281b8 cxgbe(4): Always report link-down on an abrupt stop.
This fixes a regression in 5241b210a4 where the driver stopped
reporting link down after a fatal error unless t4_reset_on_fatal_err was
also set.

Fixes:	5241b210a4 cxgbe(4): Basic infrastructure for ULDs to participate in adapter reset.
MFC after:	1 week
Sponsored by:	Chelsio Communications
2024-09-04 21:54:30 -07:00
Mark Johnston
dc450b388b vmm: Remove more of vmmdev_open()
The softc pointer is now unused, just remove it.

Reported by:	se
Fixes:	66fc442421 ("vmm: Remove an incorrect credential check in vmmdev_open()")
2024-09-05 00:36:27 +00:00
Mark Johnston
66fc442421 vmm: Remove an incorrect credential check in vmmdev_open()
Checking pointer equality here is too strict and can lead to incorrect
errors, as credentials are frequently copied to avoid reference counting
overhead.

The check is new with commit 4008758105 and was added with the goal of
allowing non-root users to create VMs in mind.  Just remove it for now.

Reported by:	Alonso Cárdenas Márquez <acardenas@bsd-peru.org>
Reviewed by:	jhb
Fixes:		4008758105 ("vmm: Validate credentials when opening a vmmdev")
Differential Revision:	https://reviews.freebsd.org/D46535
2024-09-04 22:54:25 +00:00
Konstantin Belousov
ba33e74c7d busdma_iommu: indirect dmar-specific method calls in iommu_get_dev_ctx()
Sponsored by:	Advanced Micro Devices (AMD)
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2024-09-05 00:50:19 +03:00