Lorenzo Stoakes
5b56d49fc3
mm: add locked parameter to get_user_pages_remote()
...
Patch series "mm: unexport __get_user_pages_unlocked()".
This patch series continues the cleanup of get_user_pages*() functions
taking advantage of the fact we can now pass gup_flags as we please.
It firstly adds an additional 'locked' parameter to
get_user_pages_remote() to allow for its callers to utilise
VM_FAULT_RETRY functionality. This is necessary as the invocation of
__get_user_pages_unlocked() in process_vm_rw_single_vec() makes use of
this and no other existing higher level function would allow it to do
so.
Secondly existing callers of __get_user_pages_unlocked() are replaced
with the appropriate higher-level replacement -
get_user_pages_unlocked() if the current task and memory descriptor are
referenced, or get_user_pages_remote() if other task/memory descriptors
are referenced (having acquiring mmap_sem.)
This patch (of 2):
Add a int *locked parameter to get_user_pages_remote() to allow
VM_FAULT_RETRY faulting behaviour similar to get_user_pages_[un]locked().
Taking into account the previous adjustments to get_user_pages*()
functions allowing for the passing of gup_flags, we are now in a
position where __get_user_pages_unlocked() need only be exported for his
ability to allow VM_FAULT_RETRY behaviour, this adjustment allows us to
subsequently unexport __get_user_pages_unlocked() as well as allowing
for future flexibility in the use of get_user_pages_remote().
[sfr@canb.auug.org.au: merge fix for get_user_pages_remote API change]
Link: http://lkml.kernel.org/r/20161122210511.024ec341@canb.auug.org.au
Link: http://lkml.kernel.org/r/20161027095141.2569-2-lstoakes@gmail.com
Signed-off-by: Lorenzo Stoakes <lstoakes@gmail.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Hugh Dickins <hughd@google.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Radim Krcmar <rkrcmar@redhat.com>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-12-14 16:04:08 -08:00
..
accessibility
acpi
ACPI material for v4.10-rc1
2016-12-13 11:06:21 -08:00
amba
android
ata
Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata
2016-12-13 15:30:50 -08:00
atm
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-06 21:33:19 -05:00
auxdisplay
auxdisplay: ht16k33: select framebuffer helper modules
2016-11-30 13:04:31 +01:00
base
Driver core patches for 4.10-rc1
2016-12-13 11:42:18 -08:00
bcma
bcma: add Dell Inspiron 3148
2016-11-29 17:35:14 +02:00
block
SCSI misc on 20161213
2016-12-14 10:49:33 -08:00
bluetooth
Bluetooth: btmrvl: drop duplicate header slab.h
2016-12-08 07:44:56 +01:00
bus
cdrom
char
xen: features and fixes for 4.10 rc0
2016-12-13 16:07:55 -08:00
clk
clk: bcm: Fix 'maybe-uninitialized' warning in bcm2835_clock_choose_div_and_prate()
2016-12-12 11:25:40 -08:00
clocksource
connector
cpufreq
Power management material for v4.10-rc1
2016-12-13 10:41:53 -08:00
cpuidle
cpuidle: Add a kerneldoc comment to cpuidle_use_deepest_state()
2016-12-06 02:25:03 +01:00
crypto
Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-12-12 14:27:49 -08:00
dax
device-dax: fix private mapping restriction, permit read-only
2016-12-06 17:42:37 -08:00
dca
devfreq
devfreq: rk3399_dmc: Don't use OPP structures outside of RCU locks
2016-12-08 01:46:07 +01:00
dio
dma
remoteproc updates for v4.10
2016-12-13 08:49:12 -08:00
dma-buf
edac
EDAC, amd64: Fix improper return value
2016-12-04 10:51:42 +01:00
eisa
extcon
firewire
firmware
arm64 updates for 4.10:
2016-12-13 16:39:21 -08:00
fmc
fpga
fpga: Clarify how write_init works streaming modes
2016-11-29 15:51:49 -06:00
gpio
Bulk GPIO changes for the v4.10 kernel cycle:
2016-12-13 07:54:57 -08:00
gpu
mm: add locked parameter to get_user_pages_remote()
2016-12-14 16:04:08 -08:00
hid
hsi
hv
uio-hv-generic: new userspace i/o driver for VMBus
2016-12-06 11:52:49 +01:00
hwmon
hwmon: (g762) Fix overflows and crash seen when writing limit attributes
2016-12-12 11:33:44 -08:00
hwspinlock
hwtracing
coresight: perf: Add a missing call to etm_free_aux
2016-11-29 20:05:32 +01:00
i2c
Revert "i2c: octeon: thunderx: Limit register access retries"
2016-11-29 20:04:21 +01:00
ide
idle
Power management material for v4.10-rc1
2016-12-13 10:41:53 -08:00
iio
infiniband
mm: add locked parameter to get_user_pages_remote()
2016-12-14 16:04:08 -08:00
input
xen: features and fixes for 4.10 rc0
2016-12-13 16:07:55 -08:00
iommu
Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-12-12 19:25:04 -08:00
ipack
irqchip
arm64 updates for 4.10:
2016-12-13 16:39:21 -08:00
isdn
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-10 16:21:55 -05:00
leds
leds: pca955x: Add ACPI support
2016-12-02 09:31:50 +01:00
lguest
lightnvm
Char/Misc driver patches for 4.10-rc1
2016-12-13 12:11:01 -08:00
macintosh
mailbox
mcb
md
. various fixes and improvements to request-based DM and DM multipath
2016-12-14 11:01:00 -08:00
media
USB/PHY patches for 4.10-rc1
2016-12-13 11:10:36 -08:00
memory
memstick
Merge branch 'for-4.10/block' of git://git.kernel.dk/linux-block
2016-12-13 10:19:16 -08:00
message
SCSI misc on 20161213
2016-12-14 10:49:33 -08:00
mfd
Staging/IIO patches for 4.10-rc1
2016-12-13 11:35:00 -08:00
misc
Char/Misc driver patches for 4.10-rc1
2016-12-13 12:11:01 -08:00
mmc
MMC core:
2016-12-14 10:55:56 -08:00
mtd
net
drivers/net/wireless/intel/iwlwifi/dvm/calib.c: simplfy min() expression
2016-12-14 16:04:08 -08:00
nfc
ntb
nubus
nvdimm
These are the documentation changes for 4.10.
2016-12-12 21:58:13 -08:00
nvme
Just one simple change from Andrzej to drop the pointless return value
2016-12-14 10:31:25 -08:00
nvmem
of
Char/Misc driver patches for 4.10-rc1
2016-12-13 12:11:01 -08:00
oprofile
oprofile/nmi timer: Convert to hotplug state machine
2016-12-02 00:52:34 +01:00
parisc
parport
pci
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
2016-12-13 16:33:33 -08:00
pcmcia
drivers/pcmcia/m32r_pcc.c: check return from add_pcc_socket
2016-12-12 18:55:06 -08:00
perf
phy
SCSI misc on 20161213
2016-12-14 10:49:33 -08:00
pinctrl
Bulk pin control changes for the v4.10 kernel cycle:
2016-12-13 07:59:10 -08:00
platform
Char/Misc driver patches for 4.10-rc1
2016-12-13 12:11:01 -08:00
pnp
power
powercap
powercap / RAPL: Add Knights Mill CPUID
2016-11-30 23:41:33 +01:00
pps
ps3
ptp
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-12-12 19:56:15 -08:00
pwm
pwm: Fix device reference leak
2016-11-29 16:43:24 +01:00
rapidio
ras
regulator
Merge remote-tracking branches 'regulator/topic/tps65086' and 'regulator/topic/twl' into regulator-next
2016-12-12 12:17:31 +00:00
remoteproc
remoteproc: qcom_adsp_pil: select qcom_scm
2016-12-09 16:16:56 -08:00
reset
rpmsg
rpmsg updates for v4.10
2016-12-13 08:52:45 -08:00
rtc
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-12-12 19:56:15 -08:00
s390
SCSI misc on 20161213
2016-12-14 10:49:33 -08:00
sbus
scsi
SCSI misc on 20161213
2016-12-14 10:49:33 -08:00
sfi
sh
lib: radix-tree: check accounting of existing slot replacement users
2016-12-12 18:55:08 -08:00
sn
soc
This is a fairly quiet release. We don't have any patches to the core
2016-12-13 08:54:27 -08:00
spi
Merge remote-tracking branches 'spi/topic/spidev', 'spi/topic/sunxi', 'spi/topic/ti-qspi', 'spi/topic/topcliff-pch' and 'spi/topic/xlp' into spi-next
2016-12-12 15:54:20 +00:00
spmi
ssb
staging
Staging/IIO patches for 4.10-rc1
2016-12-13 11:35:00 -08:00
target
SCSI misc on 20161213
2016-12-14 10:49:33 -08:00
tc
thermal
Power management material for v4.10-rc1
2016-12-13 10:41:53 -08:00
thunderbolt
Char/Misc driver patches for 4.10-rc1
2016-12-13 12:11:01 -08:00
tty
Merge branch 'for-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq
2016-12-13 12:59:57 -08:00
uio
uio-hv-generic: store physical addresses instead of virtual
2016-12-10 14:57:58 +01:00
usb
Just one simple change from Andrzej to drop the pointless return value
2016-12-14 10:31:25 -08:00
uwb
vfio
mm: add locked parameter to get_user_pages_remote()
2016-12-14 16:04:08 -08:00
vhost
Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2016-12-12 10:48:02 -08:00
video
xen: features and fixes for 4.10 rc0
2016-12-13 16:07:55 -08:00
virt
virtio
vlynq
vme
w1
watchdog
Char/Misc driver patches for 4.10-rc1
2016-12-13 12:11:01 -08:00
xen
xen: features and fixes for 4.10 rc0
2016-12-13 16:07:55 -08:00
zorro
Kconfig
Makefile