linux-stable/drivers
Christoph Hellwig d31b82b7f0 block, loop: support partitions without scanning
commit b9684a71fc upstream.

Historically we did distinguish between a flag that surpressed partition
scanning, and a combinations of the minors variable and another flag if
any partitions were supported.  This was generally confusing and doesn't
make much sense, but some corner case uses of the loop driver actually
do want to support manually added partitions on a device that does not
actively scan for partitions.  To make things worsee the loop driver
also wants to dynamically toggle the scanning for partitions on a live
gendisk, which makes the disk->flags updates non-atomic.

Introduce a new GD_SUPPRESS_PART_SCAN bit in disk->state that disables
just scanning for partitions, and toggle that instead of GENHD_FL_NO_PART
in the loop driver.

Fixes: 1ebe2e5f9d ("block: remove GENHD_FL_EXT_DEVT")
Reported-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20220527055806.1972352-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-06-14 18:41:52 +02:00
..
accessibility
acpi ACPI: property: Release subnode properties with data nodes 2022-06-09 10:26:19 +02:00
amba
android binder: Address corner cases in deferred copy and fixup 2022-05-09 09:16:14 +02:00
ata ata: libata-transport: fix {dma|pio|xfer}_mode sysfs files 2022-06-14 18:41:46 +02:00
atm
auxdisplay
base driver core: Fix wait_for_device_probe() & deferred_probe_timeout interaction 2022-06-14 18:41:25 +02:00
bcma
block block, loop: support partitions without scanning 2022-06-14 18:41:52 +02:00
bluetooth Bluetooth: btmtksdio: fix use-after-free at btmtksdio_recv_event 2022-06-09 10:25:52 +02:00
bus bus: ti-sysc: Fix warnings for unbind for serial 2022-06-14 18:41:19 +02:00
cdrom
char random: account for arch randomness in bits 2022-06-14 18:41:52 +02:00
clk clk: tegra: Add missing reset deassertion 2022-06-09 10:26:29 +02:00
clocksource clocksource/drivers/sp804: Avoid error on multiple instances 2022-06-14 18:41:35 +02:00
comedi
connector
counter
cpufreq cpufreq: mediatek: Unregister platform device on exit 2022-06-09 10:26:12 +02:00
cpuidle cpuidle: PSCI: Improve support for suspend-to-RAM for PSCI OSI mode 2022-06-09 10:25:21 +02:00
crypto crypto: sun8i-ss - handle zero sized sg 2022-06-09 10:26:07 +02:00
cxl cxl/port: Hold port reference until decoder release 2022-04-08 13:58:07 +02:00
dax dax: make sure inodes are flushed before destroy cache 2022-04-08 13:58:07 +02:00
dca
devfreq PM / devfreq: rk3399_dmc: Disable edev on remove() 2022-06-09 10:25:32 +02:00
dio
dma dmaengine: zynqmp_dma: In struct zynqmp_dma_chan fix desc_size data type 2022-06-14 18:41:28 +02:00
dma-buf dma-buf: ensure unique directory name for dmabuf stats 2022-05-25 09:59:04 +02:00
edac EDAC/dmc520: Don't print an error for each unconfigured interrupt line 2022-06-09 10:25:40 +02:00
eisa
extcon extcon: Modify extcon device to be created after driver data is set 2022-06-14 18:41:35 +02:00
firewire firewire: core: extend card->lock in fw_core_handle_bus_reset 2022-05-12 12:32:20 +02:00
firmware firmware: dmi-sysfs: Fix memory leak in dmi_sysfs_register_handle 2022-06-14 18:41:19 +02:00
fpga
fsi fsi: Aspeed: Fix a potential double free 2022-04-08 13:58:24 +02:00
gnss
gpio gpio: pca953x: use the correct register address to do regcache sync 2022-06-14 18:41:25 +02:00
gpu drm/ast: Create threshold values for AST2600 2022-06-14 18:41:51 +02:00
greybus greybus: svc: fix an error handling bug in gb_svc_hello() 2022-04-08 13:57:16 +02:00
hid HID: amd_sfh: Modify the hid name 2022-06-09 10:25:49 +02:00
hsi
hv Drivers: hv: vmbus: Fix handling of messages with transaction ID of zero 2022-06-09 10:26:03 +02:00
hwmon hwmon: (pmbus) Check PEC support before reading other registers 2022-06-09 10:25:57 +02:00
hwspinlock
hwtracing coresight: cpu-debug: Replace mutex with mutex_trylock on panic notifier 2022-06-14 18:41:17 +02:00
i2c i2c: cadence: Increase timeout per message if necessary 2022-06-14 18:41:27 +02:00
i3c
idle cpuidle,intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE 2022-06-14 18:41:49 +02:00
iio iio: st_sensors: Add a local lock for protecting odr 2022-06-14 18:41:33 +02:00
infiniband RDMA/rxe: Generate a completion for unsupported/invalid opcode 2022-06-09 10:26:31 +02:00
input Input: bcm5974 - set missing URB_NO_TRANSFER_DMA_MAP urb flag 2022-06-14 18:41:48 +02:00
interconnect interconnect: Restore sync state by ignoring ipa-virt in provider count 2022-05-18 10:28:18 +02:00
iommu iommu/arm-smmu-v3: check return value after calling platform_get_resource() 2022-06-14 18:41:27 +02:00
ipack
irqchip irqchip: irq-xtensa-mx: fix initial IRQ affinity 2022-06-09 10:26:26 +02:00
isdn
leds
macintosh macintosh: via-pmu and via-cuda need RTC_LIB 2022-06-09 10:26:09 +02:00
mailbox mailbox: forward the hrtimer if not queued and under a lock 2022-06-09 10:26:10 +02:00
mcb
md md/raid0: Ignore RAID0 layout if the second zone has only one device 2022-06-14 18:41:52 +02:00
media media: coda: Add more H264 levels for CODA960 2022-06-09 10:26:25 +02:00
memory memory: samsung: exynos5422-dmc: Avoid some over memory allocation 2022-06-09 10:25:59 +02:00
memstick memstick/mspro_block: fix handling of read-only devices 2022-04-08 13:58:36 +02:00
message
mfd mfd: davinci_voicecodec: Fix possible null-ptr-deref davinci_vc_probe() 2022-06-09 10:26:10 +02:00
misc misc: rtsx: set NULL intfdata when probe fails 2022-06-14 18:41:35 +02:00
mmc mmc: block: Fix CQE recovery reset success 2022-06-14 18:41:46 +02:00
most
mtd ubi: ubi_create_volume: Fix use-after-free when volume creation failed 2022-06-14 18:41:22 +02:00
mux
net ixgbe: fix unexpected VLAN Rx in promisc mode on VF 2022-06-14 18:41:48 +02:00
nfc nfc: st21nfca: fix incorrect sizing calculations in EVT_TRANSACTION 2022-06-14 18:41:48 +02:00
ntb
nubus
nvdimm mce: fix set_mce_nospec to always unmap the whole page 2022-06-09 10:26:08 +02:00
nvme nvme: set dma alignment to dword 2022-06-09 10:25:53 +02:00
nvmem
of of: overlay: do not break notify on NOTIFY_{OK|STOP} 2022-06-09 10:25:43 +02:00
opp OPP: call of_node_put() on error path in _bandwidth_supported() 2022-06-09 10:26:11 +02:00
parisc parisc: Fix CPU affinity for Lasi, WAX and Dino chips 2022-04-13 19:27:26 +02:00
parport
pci Revert "PCI: brcmstb: Split brcm_pcie_setup() into two funcs" 2022-06-14 18:41:41 +02:00
pcmcia pcmcia: db1xxx_ss: restrict to MIPS_DB1XXX boards 2022-06-14 18:41:12 +02:00
perf arm_pmu: Validate single/group leader events 2022-04-27 14:41:15 +02:00
phy phy: qcom-qmp: fix pipe-clock imbalance on power-on failure 2022-06-14 18:41:16 +02:00
pinctrl pinctrl/rockchip: support setting input-enable param 2022-06-09 10:26:32 +02:00
platform platform/x86: hp-wmi: Use zero insize parameter only when supported 2022-06-14 18:41:43 +02:00
pnp
power extcon: Fix extcon_get_extcon_dev() error handling 2022-06-14 18:41:35 +02:00
powercap powercap/dtpm_cpu: Reset per_cpu variable in the release function 2022-04-08 13:58:37 +02:00
pps pps: clients: gpio: Propagate return value from pps_gpio_probe 2022-04-08 13:58:24 +02:00
ps3
ptp ptp: ocp: have adjtime handle negative delta_ns correctly 2022-05-25 09:59:07 +02:00
pwm pwm: raspberrypi-poe: Fix endianness in firmware struct 2022-06-14 18:41:14 +02:00
rapidio
ras
regulator regulator: scmi: Fix refcount leak in scmi_regulator_probe 2022-06-09 10:25:54 +02:00
remoteproc remoteproc: imx_rproc: Ignore create mem entry for resource table 2022-06-14 18:41:13 +02:00
reset reset: tegra-bpmp: Restore Handle errors in BPMP response 2022-04-27 14:41:06 +02:00
rpmsg rpmsg: qcom_smd: Fix returning 0 if irq_of_parse_and_map() fails 2022-06-14 18:41:16 +02:00
rtc rtc: ftrtc010: Fix error handling in ftrtc010_rtc_probe 2022-06-14 18:41:18 +02:00
s390 s390/stp: clock_delta should be signed 2022-06-09 10:26:21 +02:00
sbus
scsi scsi: sd: Fix interpretation of VPD B9h length 2022-06-14 18:41:45 +02:00
sh
siox
slimbus slimbus: qcom: Fix IRQ check in qcom_slim_probe 2022-05-18 10:28:20 +02:00
soc soc: rockchip: Fix refcount leak in rockchip_grf_init 2022-06-14 18:41:17 +02:00
soundwire soundwire: qcom: adjust autoenumeration timeout 2022-06-14 18:41:35 +02:00
spi spi: fsi: Fix spurious timeout 2022-06-14 18:41:20 +02:00
spmi
ssb
staging staging: rtl8712: fix uninit-value in r871xu_drv_init() 2022-06-14 18:41:35 +02:00
target target: remove an incorrect unmap zeroes data deduction 2022-06-09 10:25:40 +02:00
tc
tee tee: optee: add missing mutext_destroy in optee_ffa_probe 2022-05-09 09:16:17 +02:00
thermal thermal: devfreq_cooling: use local ops instead of global ops 2022-06-09 10:26:26 +02:00
thunderbolt thunderbolt: Use different lane for second DisplayPort tunnel 2022-06-14 18:41:34 +02:00
tty serial: msm_serial: disable interrupts in __msm_console_write() 2022-06-14 18:41:36 +02:00
uio
usb extcon: Fix extcon_get_extcon_dev() error handling 2022-06-14 18:41:35 +02:00
vdpa vduse: Fix NULL pointer dereference on sysfs access 2022-06-14 18:41:49 +02:00
vfio vfio/pci: Fix vf_token mechanism when device-specific VF drivers are used 2022-04-20 09:36:18 +02:00
vhost vringh: Fix loop descriptors check in the indirect cases 2022-06-14 18:41:42 +02:00
video video: fbdev: pxa3xx-gcu: release the resources correctly in pxa3xx_gcu_probe/remove() 2022-06-14 18:41:28 +02:00
virt virt: acrn: fix a memory leak in acrn_dev_ioctl() 2022-04-08 13:58:30 +02:00
virtio virtio: pci: Fix an error handling path in vp_modern_probe() 2022-06-14 18:41:23 +02:00
visorbus
vlynq
vme
w1 w1: w1_therm: fixes w1_seq for ds28ea00 sensors 2022-04-13 19:27:24 +02:00
watchdog watchdog: wdat_wdt: Stop watchdog when rebooting the system 2022-06-14 18:41:36 +02:00
xen xen: unexport __init-annotated xen_xlate_map_ballooned_pages() 2022-06-14 18:41:30 +02:00
zorro
Kconfig
Makefile