linux_old1/drivers/misc
Guilherme G. Piccoli de4ce2d1ad genwqe: Take R/W permissions into account when dealing with memory pages
Currently we assume userspace pages are always writable when doing
memory pinning. This is not true, specially since userspace applications
may allocate their memory the way they want, we have no control over it.
If a read-only page is set for pinning, currently the driver fails due
to get_user_pages_fast() refusing to map read-only pages as writable.

This patch changes this behavior, by taking the permission flags of the
pages into account in both pinning/unpinning process, as well as in the
DMA data copy-back to userpace (which we shouldn't try to do blindly,
since it will fail in case of read-only-pages).

Signed-off-by: Frank Haverkamp <haver@linux.vnet.ibm.com>
Signed-off-by: Guilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-10-23 11:34:42 +02:00
..
altera-stapl misc: altera-stapl: drop Kconfig comment 2017-10-04 10:43:08 +02:00
c2port drivers/misc/c2port/c2port-duramar2150.c: checking for NULL instead of IS_ERR() 2017-05-08 17:15:10 -07:00
cb710
cxl cxl: Fix memory page not handled 2017-09-29 14:19:44 +10:00
echo
eeprom eeprom: idt_89hpesx: Support both ACPI and OF probing 2017-08-31 18:49:41 +02:00
genwqe genwqe: Take R/W permissions into account when dealing with memory pages 2017-10-23 11:34:42 +02:00
ibmasm sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h> 2017-03-02 08:42:32 +01:00
lis3lv02d misc: lis3lv02d: constify attribute_group structures. 2017-08-28 16:55:48 +02:00
mei tracing, mei: Remove unused trace event mei_pci_cfg_write 2017-10-20 15:17:44 +02:00
mic misc: mic: move to its own menu in Misc devices 2017-10-04 10:45:18 +02:00
sgi-gru sgi-gru: update to new mmu_notifier semantic 2017-08-31 16:13:00 -07:00
sgi-xp sgi-xp: Use designated initializers 2017-05-28 10:22:42 -07:00
ti-st misc: ti-st: constify attribute_group structures. 2017-08-28 16:55:48 +02:00
vmw_vmci vmci: fix duplicated code for different branches 2017-08-28 16:55:50 +02:00
Kconfig drivers/misc: add Aspeed LPC snoop driver 2017-06-03 19:15:18 +09:00
Makefile lkdtm: Provide more complete coverage for REFCOUNT tests 2017-07-26 14:38:03 -07:00
ad525x_dpot-i2c.c
ad525x_dpot-spi.c
ad525x_dpot.c misc: ad525x_dpot: Fix the enabling of the "otpXen" attributes 2016-03-01 16:55:13 -08:00
ad525x_dpot.h
apds990x.c misc: apds990x: constify attribute_group structures. 2017-08-28 16:55:49 +02:00
apds9802als.c misc: apds9802als: constify i2c_device_id 2017-08-28 16:55:49 +02:00
aspeed-lpc-ctrl.c drivers/misc: aspeed-lpc-ctrl: fix printk format warning again 2017-04-08 17:37:20 +02:00
aspeed-lpc-snoop.c drivers/misc: (aspeed-lpc-snoop): Add ast2400 to compat 2017-07-17 17:23:16 +02:00
atmel-ssc.c misc: atmel-ssc: register as sound DAI if #sound-dai-cells is present 2016-12-15 12:13:31 +00:00
atmel_tclib.c
bh1770glc.c misc: bh1770glc: constify attribute_group structures. 2017-08-28 16:55:48 +02:00
cs5535-mfgpt.c
ds1682.c MISC: add const to bin_attribute structures 2017-08-28 16:55:48 +02:00
dummy-irq.c Annotate hardware config module parameters in drivers/misc/ 2017-04-20 12:02:32 +01:00
enclosure.c scsi: ses: do not add a device to an enclosure if enclosure_add_links() fails. 2017-07-01 16:52:38 -04:00
fsa9480.c
hmc6352.c misc: hmc6352: constify i2c_device_id 2017-08-28 16:55:49 +02:00
hpilo.c misc: hpilo: constify pci_device_id. 2017-08-28 16:55:48 +02:00
hpilo.h
ics932s401.c
ioc4.c misc: ioc4: constify pci_device_id. 2017-08-28 16:55:48 +02:00
isl29003.c
isl29020.c misc: isl29020: constify i2c_device_id 2017-08-28 16:55:49 +02:00
kgdbts.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/task.h> 2017-03-02 08:42:35 +01:00
lattice-ecp3-config.c
lkdtm.h lkdtm: Add -fstack-protector-strong test 2017-08-15 12:27:35 -07:00
lkdtm_bugs.c lkdtm: Add -fstack-protector-strong test 2017-08-15 12:27:35 -07:00
lkdtm_core.c lkdtm: Constify the crashtypes table 2017-10-20 15:51:39 +02:00
lkdtm_heap.c sched/headers: Prepare to remove <linux/cred.h> inclusion from <linux/sched.h> 2017-03-02 08:42:31 +01:00
lkdtm_perms.c lkdtm: Do not use flush_icache_range() on user addresses 2016-11-10 15:34:56 +01:00
lkdtm_refcount.c lkdtm: fix spelling mistake: "incremeted" -> "incremented" 2017-08-28 17:47:11 +02:00
lkdtm_rodata.c lkdtm: Mark lkdtm_rodata_do_nothing() notrace 2016-08-31 13:12:38 +02:00
lkdtm_usercopy.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/task_stack.h> 2017-03-02 08:42:36 +01:00
pch_phub.c MISC: add const to bin_attribute structures 2017-08-28 16:55:48 +02:00
pci_endpoint_test.c misc: pci_endpoint_test: Avoid triggering a BUG() 2017-10-04 10:39:28 +02:00
phantom.c
pti.c
qcom-coincell.c ARM: qcom: silence an uninitialized variable warning 2016-05-01 14:20:04 -07:00
spear13xx_pcie_gadget.c
sram-exec.c misc: sram-exec: Use aligned fncpy instead of memcpy 2017-05-18 17:37:52 +02:00
sram.c misc: Convert to using %pOF instead of full_name 2017-08-28 16:55:49 +02:00
sram.h misc: sram: Integrate protect-exec reserved sram area type 2017-01-25 11:48:03 +01:00
ti_dac7512.c
tifm_7xx1.c misc: tifm: constify pci_device_id. 2017-08-28 16:55:48 +02:00
tifm_core.c
tsl2550.c misc: tsl2550: Add OF device ID table 2017-04-08 18:22:59 +02:00
vexpress-syscfg.c sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h> 2017-03-02 08:42:32 +01:00
vmw_balloon.c