linux/drivers
Dan Williams a455aa72f7 device-dax/kmem: fix resource release
The conversion to request_mem_region() is broken because it assumes that
the range is marked busy prior to release.  However, due to the way that
the kmem driver manipulates the IORESOURCE_BUSY flag (clears it to let
{add,remove}_memory() handle busy) it requires a manual release_resource()
to perform cleanup.

Given that the actual 'struct resource *' needs to be recalled, not just
the range, add that tracking to the kmem driver-data.

Fixes: 0513bd5bb1 ("device-dax/kmem: replace release_resource() with release_mem_region()")
Reported-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: David Hildenbrand <david@redhat.com>
Cc: Vishal Verma <vishal.l.verma@intel.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Pavel Tatashin <pasha.tatashin@soleen.com>
Cc: Brice Goglin <Brice.Goglin@inria.fr>
Cc: Dave Jiang <dave.jiang@intel.com>
Cc: Ira Weiny <ira.weiny@intel.com>
Cc: Jia He <justin.he@arm.com>
Cc: Joao Martins <joao.m.martins@oracle.com>
Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lkml.kernel.org/r/160272252925.3136502.17220638073995895400.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-10-16 11:11:14 -07:00
..
accessibility
acpi dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
amba
android binder: fix UAF when releasing todo list 2020-10-10 12:40:52 +02:00
ata ata: ahci: mvebu: Make SATA PHY optional for Armada 3720 2020-10-09 12:47:56 -06:00
atm
auxdisplay
base dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
bcma
block drivers-5.10-2020-10-12 2020-10-13 13:04:41 -07:00
bluetooth Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv() 2020-09-25 16:33:59 +02:00
bus Char/Misc driver patches for 5.10-rc1 2020-10-15 10:01:51 -07:00
cdrom
char drm next for 5.10-rc1 2020-10-15 10:46:16 -07:00
clk clk: socfpga: stratix10: fix the divider for the emac_ptp_free_clk 2020-09-22 12:54:41 -07:00
clocksource hyperv-next for 5.10 2020-10-14 10:32:10 -07:00
connector
counter counter: use semicolons rather than commas to separate statements 2020-09-29 17:27:08 +01:00
cpufreq cpufreq: stats: Fix string format specifier mismatch 2020-10-12 12:32:10 +02:00
cpuidle Merge back cpuidle material for 5.10. 2020-09-28 16:31:25 +02:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2020-10-13 08:50:16 -07:00
dax device-dax/kmem: fix resource release 2020-10-16 11:11:14 -07:00
dca
devfreq PM / devfreq: tegra30: Improve initial hardware resetting 2020-09-29 17:50:10 +09:00
dio
dma dmaengine: owl-dma: fix kernel-doc style for enum 2020-10-08 15:18:48 +05:30
dma-buf dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
edac EFI changes for v5.10: 2020-10-12 13:26:49 -07:00
eisa
extcon extcon: axp288: Use module_platform_driver to simplify the code 2020-09-30 00:40:06 +09:00
firewire firewire-ohci: use dma_alloc_pages 2020-09-25 06:20:48 +02:00
firmware USB/PHY/Thunderbolt driver patches for 5.10-rc1 2020-10-15 09:51:18 -07:00
fpga
fsi
gnss
gpio - New Drivers 2020-10-14 15:56:58 -07:00
gpu dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
greybus
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2020-10-15 15:11:56 -07:00
hsi
hv hyperv-next for 5.10 2020-10-14 10:32:10 -07:00
hwmon Driver Core patches for 5.10-rc1 2020-10-14 16:09:32 -07:00
hwspinlock
hwtracing intel_th: pci: Add Alder Lake CPU support 2020-10-05 12:43:54 +02:00
i2c i2c: owl: Clear NACK and BUS error bits 2020-10-10 13:15:46 +02:00
i3c
ide block-5.10-2020-10-12 2020-10-13 12:12:44 -07:00
idle
iio sound updates for 5.10 2020-10-15 11:07:44 -07:00
infiniband block-5.10-2020-10-12 2020-10-13 12:12:44 -07:00
input hyperv-next for 5.10 2020-10-14 10:32:10 -07:00
interconnect interconnect: imx: simplify the return expression of imx_icc_unregister 2020-09-21 11:15:02 +03:00
iommu dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
ipack
irqchip - New Drivers 2020-10-14 15:56:58 -07:00
isdn
leds leds: pwm: Remove platform_data support 2020-10-07 12:02:58 +02:00
lightnvm
macintosh
mailbox
mcb
md - Improve DM core's bio splitting to use blk_max_size_offset(). Also 2020-10-14 15:05:38 -07:00
media dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
memory IOMMU Updates for Linux v5.10 2020-10-14 12:08:34 -07:00
memstick Merge branch 'fixes' into next 2020-09-28 12:17:36 +02:00
message SCSI misc on 20201013 2020-10-14 15:15:35 -07:00
mfd - New Drivers 2020-10-14 15:56:58 -07:00
misc dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
mmc block-5.10-2020-10-12 2020-10-13 12:12:44 -07:00
most
mtd Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2020-10-15 15:11:56 -07:00
mux
net dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
nfc
ntb
nubus
nvdimm mm/memremap_pages: support multiple ranges per invocation 2020-10-13 18:38:28 -07:00
nvme drivers-5.10-2020-10-12 2020-10-13 13:04:41 -07:00
nvmem nvmem: core: fix possibly memleak when use nvmem_cell_info_to_nvmem_cell() 2020-09-27 14:25:48 +02:00
of dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
opp Merge branch 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm 2020-10-06 12:26:45 +02:00
oprofile
parisc dma-mapping: split <linux/dma-mapping.h> 2020-10-06 07:07:03 +02:00
parport
pci dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
pcmcia dma-mapping: remove DMA_MASK_NONE 2020-09-25 06:12:15 +02:00
perf perf: arm-cmn: Fix conversion specifiers for node type 2020-10-01 22:30:07 +01:00
phy drm next for 5.10-rc1 2020-10-15 10:46:16 -07:00
pinctrl Pin control bulk changes for the v5.10 kernel cycle 2020-10-14 15:25:04 -07:00
platform platform-drivers-x86 for v5.10-1 2020-10-14 10:43:24 -07:00
pnp PNP: remove the now unused pnp_find_card() function 2020-10-08 18:00:08 +02:00
power Char/Misc driver patches for 5.10-rc1 2020-10-15 10:01:51 -07:00
powercap powercap: include header to fix -Wmissing-prototypes 2020-09-25 16:46:01 +02:00
pps
ps3
ptp
pwm drm next for 5.10-rc1 2020-10-15 10:46:16 -07:00
rapidio
ras RAS/CEC: Convert to DEFINE_SHOW_ATTRIBUTE() 2020-09-25 19:05:31 +02:00
regulator Merge remote-tracking branch 'regulator/for-5.10' into regulator-next 2020-10-05 16:54:56 +01:00
remoteproc dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
reset
rpmsg
rtc
s390 SCSI misc on 20201013 2020-10-14 15:15:35 -07:00
sbus
scsi dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
sfi
sh
siox
slimbus slimbus: qcom-ngd-ctrl: disable ngd in qmi server down callback 2020-09-25 14:41:51 +02:00
soc Power management updates for 5.10-rc1 2020-10-14 10:45:41 -07:00
soundwire soundwire updates for 5.10-rc1 2020-10-01 22:59:55 +02:00
spi sound updates for 5.10 2020-10-15 11:07:44 -07:00
spmi
ssb
staging dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
target SCSI misc on 20201013 2020-10-14 15:15:35 -07:00
tc
tee
thermal
thunderbolt thunderbolt: Changes for v5.10 merge window 2020-09-30 09:42:36 +02:00
tty serial: mcf: add sysrq capability 2020-10-05 13:32:30 +02:00
uio uio: free uio id after uio file node is freed 2020-09-17 18:52:03 +02:00
usb dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
vdpa dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
vfio
vhost vhost-vdpa: fix page pinning leakage in error path 2020-10-04 03:47:02 -04:00
video drm next for 5.10-rc1 2020-10-15 10:46:16 -07:00
virt virt: vbox: simplify the return expression of vbg_input_open() 2020-10-02 11:36:13 +02:00
virtio drm next for 5.10-rc1 2020-10-15 10:46:16 -07:00
visorbus
vlynq
vme
w1 w1: w1_therm: make w1_poll_completion static 2020-10-05 14:49:24 +02:00
watchdog - New Drivers 2020-10-14 15:56:58 -07:00
xen dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
zorro
Kconfig
Makefile