OpenCloudOS-Kernel/drivers
David S. Miller 0475135f8c mlx5-updates-2023-04-14
Yevgeny Kliteynik Says:
 =======================
 
 SW Steering: Support pattern/args modify_header actions
 
 The following patch series adds support for a new pattern/arguments type
 of modify_header actions.
 
 Starting with ConnectX-6 DX, we use a new design of modify_header FW object.
 The current modify_header object allows for having only limited number of
 these FW objects, which means that we are limited in the number of offloaded
 flows that require modify_header action.
 
 The new approach comprises of two types of objects: pattern and argument.
 Pattern holds header modification templates, later used with corresponding
 argument object to create complete header modification actions.
 The pattern indicates which headers are modified, while the arguments
 provide the specific values.
 Therefore a single pattern can be used with different arguments in different
 flows, enabling offloading of large number of modify_header flows.
 
  - Patch 1, 2: Add ICM pool for modify-header-pattern objects and implement
    patterns cache, allowing patterns reuse for different flows
  - Patch 3: Allow for chunk allocation separately for STEv0 and STEv1
  - Patch 4: Read related device capabilities
  - Patch 5: Add create/destroy functions for the new general object type
  - Patch 6: Add support for writing modify header argument to ICM
  - Patch 7, 8: Some required fixes to support pattern/arg - separate read
    buffer from the write buffer and fix QP continuous allocation
  - Patch 9: Add pool for modify header arg objects
  - Patch 10, 11, 12: Implement MODIFY_HEADER and TNL_L3_TO_L2 actions with
    the new patterns/args design
  - Patch 13: Optimization - set modify header action of size 1 directly on
    the STE instead of separate pattern/args combination
  - Patch 14: Adjust debug dump for patterns/args
  - Patch 15: Enable patterns and arguments for supporting devices
 
 =======================
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEEGhZs6bAKwk/OTgTpSD+KveBX+j4FAmQ5zl8ACgkQSD+KveBX
 +j51cgf/fwbs84NDidD8+Ifn2s0uhP5ItwjqfRWDr5xiLupCG4fizh09kox8WDEj
 MdA+ifbx1Y4DvVs20DZlEypcths5dclms43cOuSq9a9uxnDoJMCyMfj4eeMAk1Kh
 1E1aLSYYlyGDFmFkjEQycBjgTECFo2wPJy+0KRmyUmYtkBnMacNjfHfOYV2BqD0o
 T3av7Q1SDQilb+rT7VGQJVj6EWndx/JsCJfFhaPovkZvYhkcbAssrltEzj8rh0z/
 Lbha4FFNLKUT7Q3DXsB6GeLXJq8UZWW9ql+F80em+iMn8MZKcNY98eHK6KT+48UT
 C51STZ3eIoKt1cs6ESDl0D3vOkI4yg==
 =Lwwj
 -----END PGP SIGNATURE-----

Merge tag 'mlx5-updates-2023-04-14' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux

mlx5-updates-2023-04-14

Yevgeny Kliteynik Says:
=======================

SW Steering: Support pattern/args modify_header actions

The following patch series adds support for a new pattern/arguments type
of modify_header actions.

Starting with ConnectX-6 DX, we use a new design of modify_header FW object.
The current modify_header object allows for having only limited number of
these FW objects, which means that we are limited in the number of offloaded
flows that require modify_header action.

The new approach comprises of two types of objects: pattern and argument.
Pattern holds header modification templates, later used with corresponding
argument object to create complete header modification actions.
The pattern indicates which headers are modified, while the arguments
provide the specific values.
Therefore a single pattern can be used with different arguments in different
flows, enabling offloading of large number of modify_header flows.

 - Patch 1, 2: Add ICM pool for modify-header-pattern objects and implement
   patterns cache, allowing patterns reuse for different flows
 - Patch 3: Allow for chunk allocation separately for STEv0 and STEv1
 - Patch 4: Read related device capabilities
 - Patch 5: Add create/destroy functions for the new general object type
 - Patch 6: Add support for writing modify header argument to ICM
 - Patch 7, 8: Some required fixes to support pattern/arg - separate read
   buffer from the write buffer and fix QP continuous allocation
 - Patch 9: Add pool for modify header arg objects
 - Patch 10, 11, 12: Implement MODIFY_HEADER and TNL_L3_TO_L2 actions with
   the new patterns/args design
 - Patch 13: Optimization - set modify header action of size 1 directly on
   the STE instead of separate pattern/args combination
 - Patch 14: Adjust debug dump for patterns/args
 - Patch 15: Enable patterns and arguments for supporting devices

=======================
2023-04-17 08:14:21 +01:00
..
accel Merge branch 'hwmon-const' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging 2023-04-09 18:59:13 -07:00
accessibility Merge 6.2-rc5 into char-misc-next 2023-01-22 08:37:23 +01:00
acpi ACPI: video: Add acpi_backlight=video quirk for Lenovo ThinkPad W530 2023-04-05 20:23:02 +02:00
amba driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
android Char/Misc and other driver subsystem changes for 6.3-rc1 2023-02-24 12:47:33 -08:00
ata ata: pata_parport: fix memory leaks 2023-03-16 16:54:38 +09:00
atm atm: idt77252: fix kmemleak when rmmod idt77252 2023-03-21 20:19:28 -07:00
auxdisplay
base cacheinfo: Fix LLC is not exported through sysfs 2023-03-29 12:04:10 +02:00
bcma bcma: remove unused mips_read32 function 2023-03-31 18:04:59 +03:00
block virtio: last minute fixes 2023-04-10 13:35:54 -07:00
bluetooth bluetooth: btbcm: Fix logic error in forming the board name. 2023-04-10 10:23:15 -07:00
bus Devicetree fixes for v6.2, part 3: 2023-04-13 15:21:56 -07:00
cdrom
char tpm: disable hwrng for fTPM on some AMD designs 2023-03-12 23:28:10 +02:00
clk clk: k210: remove an implicit 64-bit division 2023-03-06 14:41:20 -08:00
clocksource Updates for timekeeping, timers and clockevent/source drivers: 2023-02-21 09:45:13 -08:00
comedi Merge 6.2-rc5 into char-misc-next 2023-01-22 08:37:23 +01:00
connector
counter counter: 104-quad-8: Fix Synapse action reported for Index signals 2023-03-18 09:26:40 -04:00
cpufreq More power management updates for 6.3-rc1 2023-03-03 10:30:58 -08:00
cpuidle cpuidle: psci: Iterate backwards over list in psci_pd_remove() 2023-03-07 14:04:13 +01:00
crypto This push fixes a regression in the caam driver. 2023-03-05 11:32:30 -08:00
cxl Merge branch 'for-6.3/cxl-doe-fixes' into for-6.3/cxl 2023-04-04 15:37:25 -07:00
dax cxl for v6.3 2023-02-25 09:19:23 -08:00
dca
devfreq
dio
dma dmaengine: apple-admac: Fix 'current_tx' not getting freed 2023-03-31 18:17:21 +05:30
dma-buf dma-buf: make kobj_type structure constant 2023-02-17 09:16:34 +01:00
edac - Add a driver for the RAS functionality on Xilinx's on chip memory 2023-02-21 08:10:03 -08:00
eisa driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
extcon extcon: intel-cht-wc: Add support for Lenovo Yoga Tab 3 Pro YT3-X90F 2023-02-04 13:05:42 +00:00
firewire Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
firmware ARM: SoC fixes for 6.3, part 2 2023-03-24 15:38:13 -07:00
fpga Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
fsi driver core: make struct device_type.devnode() take a const * 2023-01-27 13:45:38 +01:00
gnss
gpio gpio fixes for v6.3-rc6 2023-04-07 13:53:16 -07:00
gpu Short summary of fixes pull: 2023-04-13 20:47:58 +02:00
greybus driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
hid bpf-next-for-netdev 2023-04-13 16:43:38 -07:00
hsi Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
hte
hv Drivers: vmbus: Check for channel allocation before looking up relids 2023-03-06 15:28:03 +00:00
hwmon hwmon: constify pointers to hwmon_channel_info 2023-04-07 08:45:17 -07:00
hwspinlock
hwtracing coresight: etm4x: Do not access TRCIDR1 for identification 2023-03-21 12:31:02 +00:00
i2c Devicetree fixes for v6.2, part 3: 2023-04-13 15:21:56 -07:00
i3c I3C for 6.3 2023-02-28 16:05:01 -08:00
idle Power management updates for 6.3-rc1 2023-02-21 12:13:58 -08:00
iio 1st set of IIO fixes for 6.3 2023-03-28 13:30:55 +02:00
infiniband v6.3 RDMA pull request 2023-02-24 15:11:03 -08:00
input Input updates for v6.3-rc4 2023-04-01 14:09:51 -07:00
interconnect interconnect: exynos: drop redundant link destroy 2023-03-13 21:13:48 +02:00
iommu iommufd: Do not corrupt the pfn list when doing batch carry 2023-04-04 09:10:55 -03:00
ipack Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
irqchip ARM: 2023-02-25 11:30:21 -08:00
isdn mISDN: remove unused vpm_read_address and cpld_read_reg functions 2023-03-24 19:09:57 -07:00
leds - Remove Drivers 2023-02-23 15:09:31 -08:00
macintosh powerpc updates for 6.3 2023-02-25 11:00:06 -08:00
mailbox mailbox: qcom-apcs-ipc: add IPQ5332 APSS clock support 2023-02-23 14:47:13 -06:00
mcb driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
md block-6.3-2023-03-30 2023-03-31 12:35:03 -07:00
media Revert "venus: firmware: Correct non-pix start and end addresses" 2023-04-02 10:47:03 -07:00
memory memory: tegra30-emc: fix interconnect registration race 2023-03-13 21:13:49 +02:00
memstick MMC core: 2023-02-27 09:47:26 -08:00
message
mfd mfd: ocelot: add ocelot-serdes capability 2023-03-20 09:08:48 +00:00
misc misc: ad525x_dpot-i2c: Convert to i2c's .probe_new() 2023-03-09 21:58:45 +01:00
mmc mmc: dw_mmc-starfive: Fix initialization of prev_err 2023-03-09 15:33:51 +01:00
most most: tell what the MOST acronym means 2023-01-19 17:16:05 +01:00
mtd mtd: rawnand: meson: fix bitmask for length in command word 2023-04-03 17:58:01 +02:00
mux
net mlx5-updates-2023-04-14 2023-04-17 08:14:21 +01:00
nfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-03-17 16:29:25 -07:00
ntb
nubus
nvdimm virtio,vhost,vdpa: features, fixes 2023-02-25 11:48:02 -08:00
nvme nvme: fix discard support without oncs 2023-04-05 17:13:17 +02:00
nvmem nvmem: core: return -ENOENT if nvmem cell is not found 2023-03-10 10:55:49 +01:00
of Devicetree fixes for v6.2, part 3: 2023-04-13 15:21:56 -07:00
opp OPP: fix error checking in opp_migrate_dentry() 2023-02-16 13:48:53 +01:00
parisc
parport Char/Misc and other driver subsystem changes for 6.3-rc1 2023-02-24 12:47:33 -08:00
pci pci-v6.3-fixes-2 2023-04-11 11:59:49 -07:00
pcmcia Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
peci
perf RISC-V Patches for the 6.3 Merge Window, Part 2 2023-03-03 09:32:51 -08:00
phy phy: phy-ocelot-serdes: add ability to be used in a non-syscon configuration 2023-03-20 09:08:48 +00:00
pinctrl Revert "pinctrl: amd: Disable and mask interrupts on resume" 2023-04-11 22:45:42 +02:00
platform platform-drivers-x86 for v6.3-5 2023-04-06 10:13:23 -07:00
pnp
power power: supply: da9150: Fix use after free bug in da9150_charger_remove due to race condition 2023-03-12 23:28:04 +01:00
powercap More power management updates for 6.3-rc1 2023-03-03 10:30:58 -08:00
pps tty/serial: Make ->dcd_change()+uart_handle_dcd_change() status bool active 2023-01-19 16:04:35 +01:00
ps3
ptp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-03-30 14:43:03 -07:00
pwm pwm: Zero-initialize the pwm_state passed to driver's .get_state() 2023-03-23 14:44:43 +01:00
rapidio driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
ras
regulator regulator: Handle deferred clk 2023-03-27 01:42:01 +01:00
remoteproc ARM: SoC drivers for 6.3 2023-02-27 10:04:49 -08:00
reset
rpmsg rpmsg updates for v6.3 2023-02-26 12:10:28 -08:00
rtc RTC for 6.3 2023-03-03 09:15:50 -08:00
s390 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-03-30 14:43:03 -07:00
sbus mm: replace vma->vm_flags direct modifications with modifier calls 2023-02-09 16:51:39 -08:00
scsi Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-04-13 16:04:28 -07:00
sh sh updates for v6.3 2023-03-01 09:44:22 -08:00
siox
slimbus driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
soc soc: qcom: rmtfs: handle optional qcom,vmid correctly 2023-03-06 20:13:06 -08:00
soundwire soundwire updates for 6.3 2023-02-24 17:29:52 -08:00
spi Devicetree fixes for v6.2, part 3: 2023-04-13 15:21:56 -07:00
spmi driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
ssb driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
staging staging: r8188eu: delete driver 2023-03-09 10:06:28 +01:00
target scsi: target: iscsi: Fix an error message in iscsi_check_key() 2023-03-06 16:50:42 -05:00
tc
tee AMDTEE fix race condition in amdtee_open_session() 2023-03-17 15:30:31 +01:00
thermal Merge branch 'thermal-intel-fixes' 2023-03-31 12:02:46 +02:00
thunderbolt thunderbolt: Rename shadowed variables bit to interrupt_bit and auto_clear_bit 2023-03-20 19:00:58 +02:00
tty TTY/Serial driver fixes for 6.3-rc6 2023-04-08 12:17:46 -07:00
ufs scsi: Revert "scsi: ufs: core: Initialize devfreq synchronously" 2023-04-02 21:12:34 -04:00
uio - Daniel Verkamp has contributed a memfd series ("mm/memfd: add 2023-02-23 17:09:35 -08:00
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-04-13 16:04:28 -07:00
vdpa vdpa_sim_net: complete the initialization before register the device 2023-04-04 14:22:12 -04:00
vfio vfio/mlx5: Fix the report of dirty_bytes upon pre-copy 2023-03-13 12:50:59 -06:00
vhost Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-04-13 16:04:28 -07:00
video Short summary of fixes pull: 2023-04-13 20:47:58 +02:00
virt virt/coco/sev-guest: Add throttling awareness 2023-03-13 13:29:27 +01:00
virtio virtio,vhost,vdpa: features, fixes 2023-02-25 11:48:02 -08:00
vlynq
w1 w1: ds2482: Convert to i2c's .probe_new() 2023-03-09 21:58:57 +01:00
watchdog linux-watchdog 6.3-rc1 tag 2023-03-02 11:12:01 -08:00
xen xen: branch for v6.3-rc3 2023-03-17 10:45:49 -07:00
zorro driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
Kconfig
Makefile Kbuild updates for v6.3 2023-02-26 11:53:25 -08:00