linux/drivers
Dragos Tatulea 512c0cdd80 vdpa/mlx5: Decouple cvq iotlb handling from hw mapping code
The handling of the cvq iotlb is currently coupled with the creation
and destruction of the hardware mkeys (mr).

This patch moves cvq iotlb handling into its own function and shifts it
to a scope that is not related to mr handling. As cvq handling is just a
prune_iotlb + dup_iotlb cycle, put it all in the same "update" function.
Finally, the destruction path is handled by directly pruning the iotlb.

After this move is done the ASID mr code can be collapsed into a single
function.

Acked-by: Jason Wang <jasowang@redhat.com>
Acked-by: Eugenio Pérez <eperezma@redhat.com>
Signed-off-by: Dragos Tatulea <dtatulea@nvidia.com>
Message-Id: <20231018171456.1624030-8-dtatulea@nvidia.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Si-Wei Liu <si-wei.liu@oracle.com>
Tested-by: Si-Wei Liu <si-wei.liu@oracle.com>
Tested-by: Lei Yang <leiyang@redhat.com>
2023-11-01 09:19:56 -04:00
..
accel accel/ivpu/37xx: Fix missing VPUIP interrupts 2023-10-26 07:43:28 +02:00
accessibility
acpi ACPI: NFIT: Install Notify() handler before getting NFIT table 2023-10-22 12:47:43 +02:00
amba amba: bus: fix refcount leak 2023-08-22 15:50:57 +02:00
android binder: fix memory leaks of spam and pending work 2023-10-05 12:48:08 +02:00
ata scsi: sd: Introduce manage_shutdown device flag 2023-10-27 10:00:19 +09:00
atm
auxdisplay drm for 6.6-rc1 2023-08-30 13:34:34 -07:00
base regmap: Fix for v6.6 2023-10-18 09:30:03 -07:00
bcma
block block-6.6-2023-10-06 2023-10-06 15:43:19 -07:00
bluetooth Bluetooth: btrtl: Ignore error return for hci_devcd_register() 2023-10-13 20:03:04 -07:00
bus bus: ti-sysc: Fix SYSC_QUIRK_SWSUP_SIDLE_ACT handling for uart wake-up 2023-09-13 10:24:53 +03:00
cache riscv: RISCV_NONSTANDARD_CACHE_OPS shouldn't depend on RISCV_DMA_NONCOHERENT 2023-10-26 09:42:37 +02:00
cdrom
cdx
char Hi, 2023-09-13 11:44:20 -07:00
clk Three fixes, one for the clk framework and two for clk drivers: 2023-10-27 16:52:51 -10:00
clocksource Updates for clocksource/clockevent drivers: 2023-09-04 13:15:57 -07:00
comedi Revert "comedi: add HAS_IOPORT dependencies" 2023-09-12 15:49:20 +02:00
connector Fix NULL pointer dereference in cn_filter() 2023-10-24 10:53:45 +02:00
counter First set of Counter fixes for 6.6 2023-10-02 13:13:15 +02:00
cpufreq cpufreq: Support per-policy performance boost 2023-08-29 20:51:40 +02:00
cpuidle powerpc updates for 6.6 2023-08-31 12:43:10 -07:00
crypto virtio-crypto: handle config changed by work queue 2023-10-18 11:30:06 -04:00
cxl cxl/acpi: Annotate struct cxl_cxims_data with __counted_by 2023-09-22 14:31:04 -07:00
dax mm: remove enum page_entry_size 2023-08-24 16:20:30 -07:00
dca
devfreq
dio
dma dmaengine fixes for v6.6 2023-10-13 08:52:57 -07:00
dma-buf dma-buf: add dma_fence_timestamp helper 2023-10-05 11:05:58 +02:00
edac Intel EDAC fixes: 2023-08-30 19:23:00 -07:00
eisa
extcon
firewire scsi: sd: Introduce manage_shutdown device flag 2023-10-27 10:00:19 +09:00
firmware ARM: SoC fixes for 6.7, part 3 2023-10-26 08:17:26 -10:00
fpga fpga: Fix memory leak for fpga_region_test_class_find() 2023-10-24 19:32:39 +02:00
fsi fsi: i2cr: Switch to use struct i2c_driver's .probe() 2023-08-22 15:51:33 +02:00
gnss
gpio gpiolib: acpi: Add missing memset(0) to acpi_get_gpiod_from_data() 2023-10-20 11:24:16 +02:00
gpu amd-drm-fixes-6.6-2023-10-25: 2023-10-27 12:17:26 +10:00
greybus
hid HID: logitech-hidpp: Fix kernel crash on receiver USB disconnect 2023-10-06 16:09:14 +02:00
hsi
hte hte: Explicitly include correct DT includes 2023-08-28 13:31:06 -05:00
hv hyperv-next for v6.6 2023-09-04 11:26:29 -07:00
hwmon hwmon: (nct6775) Fix non-existent ALARM warning 2023-09-18 11:52:18 -07:00
hwspinlock
hwtracing coresight: tmc-etr: Disable warnings for allocation failures 2023-09-20 10:46:30 +01:00
i2c i2c: stm32f7: Fix PEC handling in case of SMBUS transfers 2023-10-21 20:31:04 +02:00
i3c i3c: master: svc: fix probe failure when no i3c device exist 2023-09-06 01:21:47 +02:00
idle Perf events changes for v6.6: 2023-08-28 16:35:01 -07:00
iio iio: afe: rescale: Accept only offset channels 2023-10-17 20:25:32 +01:00
infiniband RDMA/core: Require admin capabilities to set system parameters 2023-10-05 20:01:47 +03:00
input Input updates for v6.6-rc5 2023-10-13 23:19:16 -07:00
interconnect This pull request is full of clk driver changes. In fact, there aren't any 2023-08-30 19:53:39 -07:00
iommu iommu: Avoid unnecessary cache invalidations 2023-10-27 08:57:09 +02:00
ipack
irqchip Restore unintentionally lost quirk settings in the GIC irqchip driver, 2023-10-28 08:12:34 -10:00
isdn isdn: mISDN: hfcsusb: Spelling fix in comment 2023-10-23 09:39:46 +01:00
leds leds: Drop BUG_ON check for LED_COLOR_ID_MULTI 2023-09-19 15:16:23 +01:00
macintosh powerpc updates for 6.6 2023-08-31 12:43:10 -07:00
mailbox mailbox: qcom-ipcc: fix incorrect num_chans counting 2023-09-05 10:11:01 -05:00
mcb mcb: remove is_added flag from mcb_device struct 2023-10-05 09:50:14 +02:00
md This push fixes a 6.5 regression in dm-crypt. 2023-10-10 10:47:35 -07:00
media media: i2c: ov8858: Don't set fwnode in the driver 2023-10-11 15:26:16 +02:00
memory
memstick
message
mfd Couple of small fixes, including: 2023-10-05 11:03:20 -07:00
misc misc: fastrpc: Unmap only if buffer is unmapped from DSP 2023-10-16 20:58:50 +02:00
mmc mmc: core: Capture correct oemid-bits for eMMC cards 2023-09-27 12:17:04 +02:00
most
mtd In the raw NAND subsystem, the major fix prevents using cached reads 2023-10-20 13:12:34 -07:00
mux mux: Explicitly include correct DT includes 2023-08-28 13:36:24 -05:00
net iavf: in iavf_down, disable queues when removing the driver 2023-10-25 17:48:31 -07:00
nfc NFC: nxp: add NXP1002 2023-08-30 18:32:24 -07:00
ntb ntb: Check tx descriptors outstanding instead of head/tail for tx queue 2023-08-22 12:38:19 -04:00
nubus
nvdimm nvdimm changes for v6.6 merge window 2023-08-30 20:52:08 -07:00
nvme nvme-pci: add BOGUS_NID for Intel 0a54 device 2023-10-18 14:08:39 -07:00
nvmem nvmem: imx: correct nregs for i.MX6ULL 2023-10-16 21:00:08 +02:00
of of: overlay: Reorder struct fragment fields kerneldoc 2023-10-02 11:34:23 -05:00
opp OPP: Fix argument name in doc comment 2023-08-18 10:55:49 +05:30
parisc parisc: iosapic.c: Fix sparse warnings 2023-08-31 21:42:42 +02:00
parport TTY/Serial driver changes for 6.6-rc1 2023-09-01 09:38:00 -07:00
pci pci-v6.6-fixes-2 2023-10-06 09:11:13 -07:00
pcmcia
peci
perf RISC-V Fixes for 6.6-rc6 2023-10-13 09:17:48 -07:00
phy phy fixes for 6.6 2023-10-22 07:11:10 -10:00
pinctrl Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()" 2023-10-19 10:12:48 +02:00
platform platform/x86: Add s2idle quirk for more Lenovo laptops 2023-10-27 16:42:12 +02:00
pmdomain pmdomain: imx: scu-pd: correct DMA2 channel 2023-10-05 00:28:52 +02:00
pnp PNP: ACPI: Fix string truncation warning 2023-08-17 19:38:35 +02:00
power power: supply: qcom_battmgr: fix enable request endianness 2023-09-30 21:00:20 +02:00
powercap powercap: intel_rapl: Fix invalid setting of Power Limit 4 2023-09-06 22:21:22 +02:00
pps
ps3
ptp ptp: ocp: Fix error handling in ptp_ocp_device_init 2023-10-02 07:19:22 +01:00
pwm pwm: Changes for v6.6-rc1 2023-09-07 18:05:58 -07:00
rapidio
ras
regulator regulator/core: Revert "fix kobject release warning and memory leak in regulator_register()" 2023-09-26 17:26:08 +02:00
remoteproc remoteproc updates for v6.6 2023-09-04 15:12:26 -07:00
reset This pull request is full of clk driver changes. In fact, there aren't any 2023-08-30 19:53:39 -07:00
rpmsg rpmsg updates for v6.6 2023-09-04 15:08:52 -07:00
rtc RTC for 6.6 2023-09-07 16:07:35 -07:00
s390 s390 updates for 6.6-rc7 2023-10-21 10:11:11 -07:00
sbus sbus: Explicitly include correct DT includes 2023-08-28 13:36:24 -05:00
scsi ATA fixes for 6.6-final 2023-10-27 13:38:59 -10:00
sh
siox
slimbus
soc Renesas fixes for v6.6 (take three) 2023-10-26 17:06:42 +02:00
soundwire soundwire: bus: Make IRQ handling conditionally built 2023-09-21 11:31:33 +02:00
spi spi: npcm-fiu: Fix UMA reads when dummy.nbytes == 0 2023-10-02 15:03:19 +01:00
spmi
ssb
staging staging: media: tegra-video: fix infinite recursion regression 2023-10-02 10:02:53 +02:00
target scsi: target: core: Fix deadlock due to recursive locking 2023-09-27 10:55:29 -04:00
tc
tee ARM: SoC fixes for 6.6, part 2 2023-10-12 11:52:23 -07:00
thermal thermal: sysfs: Fix trip_point_hyst_store() 2023-09-18 13:13:05 +02:00
thunderbolt thunderbolt: Fix for v6.6-rc7 2023-10-17 19:25:42 +02:00
tty serial: core: Fix checks for tx runtime PM state 2023-10-07 11:23:47 +02:00
ufs scsi: ufs: core: Correct clear TM error log 2023-10-09 21:33:30 -04:00
uio uio: pruss: fix missing iounmap() in pruss_probe() 2023-08-22 13:41:55 +02:00
usb USB-serial device ids for 6.6-rc7 2023-10-20 07:52:44 +02:00
vdpa vdpa/mlx5: Decouple cvq iotlb handling from hw mapping code 2023-11-01 09:19:56 -04:00
vfio vfio/mdev: Fix a null-ptr-deref bug for mdev_unregister_parent() 2023-09-22 12:48:04 -06:00
vhost vhost-vdpa: uAPI to get dedicated descriptor group id 2023-11-01 09:19:55 -04:00
video fbdev fixes and cleanups for 6.6-rc7: 2023-10-17 17:14:22 -07:00
virt minmax: add in_range() macro 2023-08-24 16:20:18 -07:00
virtio virtio_pci: fix the common cfg map size 2023-10-18 11:30:12 -04:00
vlynq
w1 w1: ds2482: Switch back to use struct i2c_driver's .probe() 2023-09-13 10:48:42 +02:00
watchdog linux-watchdog 6.6-rc1 tag 2023-09-06 09:19:12 -07:00
xen xen/events: replace evtchn_rwlock with RCU 2023-10-09 09:21:16 +02:00
zorro zorro: Include zorro.h in names.c 2023-08-21 13:27:44 +02:00
Kconfig Merge patch series "Add non-coherent DMA support for AX45MP" 2023-09-08 11:24:34 -07:00
Makefile pmdomain: Rename the genpd subsystem to pmdomain 2023-09-13 11:09:21 +02:00