opnsense-src/sys
Marcin Wojtas 87ffe59470 Upgrade ENA to v2.4.0
ena: change ENA C++-style comment into C-style

According to man style(9), only C-style comments should be used.

Submitted by: Michal Krawczyk <mk@semihalf.com>
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

(cherry picked from commit 438c9e3cf8)

ena: add support for the large LLQ headers in ENA

Default LLQ (Low-latency queue) maximum header size is 96 bytes and can
be too small for some types of packets - like IPv6 packets with multiple
extension. This can be fixed, by using large LLQ headers.

If the device supports larger LLQ headers, the user can activate this
feature by setting sysctl tunable 'hw.ena.force_large_llq_header' to '1'
in the /boot/loader.conf file.

In case the device isn't supporting this feature, the default value (96B)
will be used.

Submitted by: Michal Krawczyk <mk@semihalf.com>
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

(cherry picked from commit beaadec9ea)

ena: remove surplus NULL checks when freeing ENA resources

Calling free on a NULL pointer is valid, as appropriate check is already
done internally:

/* free(NULL, ...) does nothing */
if (addr == NULL)
    return;

Submitted by: Artur Rojek <ar@semihalf.com>
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

(cherry picked from commit ddec69e6a7)

ena: hide sysctl nodes for unused ENA queues

IO queue related attributes are registered statically at driver attach
with the rest of the ENA specific sysctl nodes. However, the number of
queues can be changed at runtime via the `ena_sysctl_io_queues_nb`
request, leading to a potential exposure of attributes for non-existing
queues.

Introduce a new `ena_sysctl_update_queue_node_nb` function, which
updates the sysctl nodes after the number of queues is altered.
This happens by either registering or unregistering node specific oids,
based on a delta between the previous and current queue count.

NOTE: All unregistered oids must be registered again before the driver
detach, e.g. by another call to this function.

Submitted by: Artur Rojek <ar@semihalf.com>
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

(cherry picked from commit 0e7d31f63b)

Merge tag 'vendor/ena-com/2.4.0'

Update the driver in order not to break its compilation
and make use of the new ENA logging system

Migrate platform code to the new logging system provided by ena_com
layer.

Make ENA_INFO the new default log level.

Remove all explicit use of `device_printf`, all new logs requiring one
of the log macros to be used.

(cherry picked from commit 3fc5d816f8)

Update ENA driver man page

Bring the obsolete man page up to date:
* update diagnostic error messages
* add documentation of loader tunables
* document netmap support
* add a driver history section
* update the contact information

Submitted by: Artur Rojek <ar@semihalf.com>
Submitted by: Michal Krawczyk <mk@semihalf.com>
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

(cherry picked from commit e34856a2c4)

Update ENA version to v2.4.0

Some of the changes in this release:
* Large LLQ headers,
* Bug/stability fixes,
* Change of the README/Documentation.

Submitted by: Michal Krawczyk <mk@semihalf.com>
Obtained from: Semihalf
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

(cherry picked from commit 93f0df457b)
2021-10-07 18:10:21 +02:00
..
amd64 amd64 wakeup: rework trampoline page allocation 2021-09-20 03:47:21 +03:00
arm bcm2835_sdhci: don't use DMA for kernel dumps 2021-09-28 11:21:38 -03:00
arm64 Restrict spsr updated in the arm64 set_regs* 2021-09-27 10:55:27 +01:00
bsm
cam cam: Fix a typo in a comment 2021-10-06 08:21:29 +02:00
cddl kern: drop remaining references to removed makesyscalls.sh 2021-09-14 20:53:03 -05:00
compat freebsd32: Fix a double copyin in sendmsg() and recvmsg() 2021-09-26 11:55:05 -04:00
conf e1000: remove duplicated phy codes 2021-09-23 18:21:34 -07:00
contrib Upgrade ENA to v2.4.0 2021-10-07 18:10:21 +02:00
crypto crypto(4): Fix a few typos in camellia.c 2021-09-07 09:23:33 +02:00
ddb
dev Upgrade ENA to v2.4.0 2021-10-07 18:10:21 +02:00
dts arm: allwinner: dtb: Add overlays to disable SD/MMC node 2021-07-22 19:29:21 +02:00
fs nfscl: Add vfs.nfs.maxalloclen to limit Allocate RPC RTT 2021-10-03 15:58:59 -07:00
gdb
geom g_label: Handle small sector sizes when tasting 2021-09-14 08:50:09 -04:00
gnu
i386 x86: duplicate acpi_wakeup.c per i386 and amd64 2021-09-20 03:47:21 +03:00
isa
kern socket: Avoid clearing SS_ISCONNECTING if soconnect() fails 2021-10-07 09:57:27 -04:00
kgssapi
libkern Switch to an ifunc in the kernel for crc32c 2021-08-30 12:22:21 +01:00
mips Fix a common typo in source code comments 2021-09-07 09:24:05 +02:00
modules modules: iichid: needs opt_acpi.h 2021-10-06 02:10:54 -05:00
net pfctl: userspace adaptive syncookies configration 2021-10-06 10:46:54 +02:00
net80211
netgraph ng_ether: Create netgraph nodes for bridge interfaces. 2021-10-02 20:51:14 +09:00
netinet socket: Rename sb(un)lock() and interlock with listen(2) 2021-10-07 09:56:47 -04:00
netinet6 nd6: Make the DAD callout MPSAFE 2021-09-21 09:37:52 -04:00
netipsec netipsec/key.c: Use ANSI C definition for key_random() 2021-08-13 12:34:42 +03:00
netpfil pf: hook up adaptive mode configuration 2021-10-06 10:46:53 +02:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed socket: Rename sb(un)lock() and interlock with listen(2) 2021-10-07 09:56:47 -04:00
opencrypto opencrypto: Disallow requests which pass VERIFY_DIGEST without a MAC 2021-10-01 10:08:30 -04:00
powerpc Add pmap_vm_page_alloc_check() 2021-08-24 02:21:13 +03:00
riscv sifive_spi: Add missing case for SPIBUS_MODE_NONE 2021-09-07 13:08:20 +01:00
rpc rpc: Convert an SOLISTENING check to an assertion 2021-09-24 09:01:07 -04:00
security
sys socket: Rename sb(un)lock() and interlock with listen(2) 2021-10-07 09:56:47 -04:00
teken
tests routing: add IPv6 fib validation procedure. 2021-09-07 21:02:58 +00:00
tools makesyscalls: sprinkle some assert() on standard function calls 2021-10-03 00:14:56 -05:00
ufs Eliminate snaplk / bufwait LOR when creating UFS snapshots 2021-09-27 20:13:38 -07:00
vm uma: Show the count of free slabs in each per-domain keg's sysctl tree 2021-09-24 09:01:22 -04:00
x86 x86 bounce_bus_dmamem_alloc(): use malloc_aligned() only when possible 2021-10-01 03:32:24 +03:00
xdr
xen
Makefile