linux/drivers
Alex Williamson 7cb671e7a3 vfio/type1: Reduce repetitive calls in vfio_pin_pages_remote()
vfio_pin_pages_remote() is typically called to iterate over a range
of memory.  Testing CAP_IPC_LOCK is relatively expensive, so it makes
sense to push it up to the caller, which can then repeatedly call
vfio_pin_pages_remote() using that value.  This can show nearly a 20%
improvement on the worst case path through VFIO_IOMMU_MAP_DMA with
contiguous page mapping disabled.  Testing RLIMIT_MEMLOCK is much more
lightweight, but we bring it along on the same principle and it does
seem to show a marginal improvement.

Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Kirti Wankhede <kwankhede@nvidia.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2017-04-18 15:01:15 -06:00
..
accessibility
acpi Merge branch 'acpi-scan-fixes' 2017-04-07 13:48:26 +02:00
amba
android
ata
atm
auxdisplay
base
bcma
block nbd: replace kill_bdev() with __invalidate_device() 2017-03-24 15:42:47 -06:00
bluetooth Bluetooth: btqcomsmd: fix compile-test dependency 2017-03-22 19:22:04 -07:00
bus
cdrom
char Char/Misc driver fixes for 4.11-rc4 2017-03-26 11:15:54 -07:00
clk Allwinner clock fixes for 4.11 2017-03-23 16:08:46 -07:00
clocksource Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-04-02 09:22:03 -07:00
connector
cpufreq Merge branches 'pm-cpufreq-fixes' and 'pm-cpuidle-fixes' 2017-03-31 23:00:53 +02:00
cpuidle cpuidle: powernv: Pass correct drv->cpumask for registration 2017-03-29 22:55:36 +02:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2017-03-31 12:11:32 -07:00
dax
dca
devfreq
dio
dma
dma-buf
edac EDAC, pnd2_edac: Fix reported DIMM number 2017-03-26 09:36:28 +02:00
eisa
extcon
firewire
firmware
fmc
fpga
fsi
gpio ACPI / gpio: do not fall back to parsing _CRS when we get a deferral 2017-03-30 11:08:46 +02:00
gpu Merge branch 'msm-fixes-4.11-rc6' of git://people.freedesktop.org/~robclark/linux into drm-fixes 2017-04-04 10:13:40 +10:00
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid 2017-03-31 11:50:31 -07:00
hsi
hv
hwmon hwmon: (asus_atk0110) fix uninitialized data access 2017-03-23 12:01:57 -07:00
hwspinlock
hwtracing
i2c i2c: mux: pca954x: Add missing pca9546 definition to chip_desc 2017-03-24 12:22:18 +01:00
ide
idle
iio iio: hid-sensor-attributes: Fix sensor property setting failure. 2017-04-02 11:44:03 +01:00
infiniband IB/qib: fix false-postive maybe-uninitialized warning 2017-03-24 22:44:29 -04:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2017-03-23 19:51:06 -07:00
iommu Merge branch 'for-joerg/arm-smmu/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into iommu/fixes 2017-03-22 23:59:56 +01:00
ipack
irqchip irqchip fixes for 4.11-rc5 2017-03-31 16:54:48 +02:00
isdn isdn: kcapi: avoid uninitialized data 2017-03-28 17:59:33 -07:00
leds
lguest
lightnvm
macintosh
mailbox
mcb
md Merge branch 'for-linus' of git://git.kernel.dk/linux-block 2017-04-08 11:56:58 -07:00
media media fixes for v4.11-rc4 2017-03-24 13:34:16 -07:00
memory
memstick
message
mfd
misc Char/Misc driver fixes for 4.11-rc4 2017-03-26 11:15:54 -07:00
mmc mmc: sdhci-of-at91: fix MMC_DDR_52 timing selection 2017-03-30 21:10:29 +02:00
mtd
net nfp: fix potential use after free on xdp prog 2017-04-05 18:46:40 -07:00
nfc
ntb
nubus
nvdimm
nvme nvmet: fix byte swap in nvmet_parse_io_cmd 2017-04-02 10:24:15 +03:00
nvmem
of
oprofile
parisc
parport
pci PCI: dwc: Fix dw_pcie_ops NULL pointer dereference 2017-04-04 08:24:25 -05:00
pcmcia
perf
phy
pinctrl pinctrl: core: Fix pinctrl_register_and_init() with pinctrl_enable() 2017-04-07 01:08:08 +02:00
platform
pnp
power
powercap
pps
ps3
ptp
pwm
rapidio drivers/rapidio/devices/tsi721.c: make module parameter variable name unique 2017-03-31 17:13:30 -07:00
ras
regulator
remoteproc
reset
rpmsg
rtc
s390 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-04-05 20:17:38 -07:00
sbus
scsi Merge branch 'for-linus' of git://git.kernel.dk/linux-block 2017-04-08 11:56:58 -07:00
sfi
sh
sn
soc
spi
spmi
ssb
staging staging: android: ashmem: lseek failed due to no FMODE_LSEEK. 2017-04-08 12:13:11 +02:00
target
tc
thermal
thunderbolt
tty Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-04-02 09:25:10 -07:00
uio
usb usb: phy: isp1301: Fix build warning when CONFIG_OF is disabled 2017-03-29 12:13:50 +02:00
uwb
vfio vfio/type1: Reduce repetitive calls in vfio_pin_pages_remote() 2017-04-18 15:01:15 -06:00
vhost
video
virt
virtio virtio_balloon: prevent uninitialized variable use 2017-03-28 20:41:28 +03:00
vlynq
vme
w1
watchdog
xen xenbus: remove transaction holder from list before freeing 2017-04-04 10:11:06 -04:00
zorro
Kconfig
Makefile