linux/drivers
Akilesh Kailash 9d80dbe0a3 ANDROID: dm-user: Fail the IO if there is no daemon
IO processing is done by the daemon when bio requests
are queued in dm-user. If there is no daemon, then
IO's will be hung indefinitely; This can lead
to sysrq kernel panic when llkd daemon detects
IO's hung in uninterruptible state.

Terminate the bio reqests as an IO error if there
is no daemon to process. We already track if
there are any user-space threads processing
IO's per dm-user targer. If there is no daemon,
queue the IO requests to a delayed work queue.
If the daemon does not show up within that time frame,
worker thread will fail the IO with an IO error.

Bug: 188362117
Test: 1: Kill the daemon when IO to dm-user is in-flight
         Verify IO failure and no IO hang.
2: Verify daemon picks up IO's queued for cancelling.
3: Full and incremental OTA.
4: Terminate snapuserd daemon during post-install phase of OTA
5: Add user-space unit test to test (1)

Signed-off-by: Akilesh Kailash <akailash@google.com>
Change-Id: I9351e8f664edc67d75c4ea10a065928ef85e5490
2021-05-25 23:58:09 +00:00
..
accessibility
acpi Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
amba Merge 5.10.20 into android12-5.10 2021-03-07 12:33:33 +01:00
android ANDROID: mm, oom: add vendor hook to prevent oom panic 2021-05-24 23:21:17 +05:30
ata ata: libahci_platform: fix IRQ check 2021-05-14 09:50:24 +02:00
atm atm: idt77252: fix null-ptr-dereference 2021-03-30 14:31:50 +02:00
auxdisplay auxdisplay: ht16k33: Fix refresh rate handling 2021-03-04 11:38:00 +01:00
base Revert "PM: runtime: Fix unpaired parent child_count for force_resume" 2021-05-20 15:35:26 +02:00
bcma
block Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
bluetooth Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
bus bus: qcom: Put child node before return 2021-05-14 09:50:13 +02:00
cdrom
char Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
clk Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
clocksource Revert "clocksource/drivers/timer-ti-dm: Handle dra7 timer wrap errata i940" 2021-05-20 15:35:26 +02:00
connector
counter counter: stm32-timer-cnt: fix ceiling miss-alignment with reload register 2021-03-25 09:04:16 +01:00
cpufreq Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
cpuidle Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
crypto Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
dax device-dax: Fix default return code of range_parse() 2021-03-04 11:38:15 +01:00
dca
devfreq PM / devfreq: Use more accurate returned new_freq as resume_freq 2021-05-14 09:50:15 +02:00
dio
dma This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
dma-buf ANDROID: dma-buf: Make DMA-BUF sysfs stats kobjects not send uevents 2021-04-29 22:11:05 +00:00
edac EDAC/amd64: Do not load on family 0x15, model 0x13 2021-03-07 12:34:08 +01:00
eisa
extcon extcon: arizona: Fix various races on driver unbind 2021-05-11 14:47:24 +02:00
firewire firewire: nosy: Fix a use-after-free bug in nosy_ioctl() 2021-04-07 15:00:11 +02:00
firmware Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
fpga fpga: fpga-mgr: xilinx-spi: fix error messages on -EPROBE_DEFER 2021-05-14 09:50:06 +02:00
fsi
gnss
gpio This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
gpu This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
greybus
hid Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
hsi HSI: core: fix resource leaks in hsi_add_client_from_dt() 2021-05-14 09:50:28 +02:00
hv Drivers: hv: vmbus: Increase wait time for VMbus unload 2021-05-14 09:50:21 +02:00
hwmon Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
hwspinlock
hwtracing coresight: Do not scan for graph if none is present 2021-05-19 10:12:55 +02:00
i2c Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
i3c Revert "i3c master: fix missing destroy_workqueue() on error in i3c_master_register" 2021-05-14 09:50:05 +02:00
ide ide/falconide: Fix module unload 2021-03-04 11:38:21 +01:00
idle
iio iio: tsl2583: Fix division by a zero lux_val 2021-05-19 10:13:16 +02:00
infiniband IB/hfi1: Correct oversized ring allocation 2021-05-19 10:12:55 +02:00
input This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
interconnect interconnect: core: fix error return code of icc_link_destroy() 2021-04-16 11:43:19 +02:00
iommu ANDROID: iommu: Add vendor hook for iova allocation and free tracking 2021-05-20 16:47:46 +00:00
ipack
irqchip ANDROID: gic-v3: Change GIC v3 vendor hook to restricted 2021-05-21 13:17:07 -07:00
isdn isdn: capi: fix mismatched prototypes 2021-05-22 11:40:52 +02:00
leds leds: trigger: fix potential deadlock with libata 2021-02-03 23:28:41 +01:00
lightnvm lightnvm: fix memory leak when submit fails 2021-01-27 11:55:22 +01:00
macintosh macintosh/adb-iop: Use big-endian autopoll mask 2021-03-04 11:37:42 +01:00
mailbox mailbox: sprd: Introduce refcnt when clients requests/free channels 2021-05-14 09:50:27 +02:00
mcb
md ANDROID: dm-user: Fail the IO if there is no daemon 2021-05-25 23:58:09 +00:00
media Revert "Revert "media: v4l2-ctrls: fix reference to freed memory"" 2021-05-21 13:17:06 -07:00
memory Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
memstick
message
mfd mfd: stm32-timers: Avoid clearing auto reload register 2021-05-14 09:50:27 +02:00
misc This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
mmc ANDROID: mmc: Add vendor hooks 2021-05-21 13:17:07 -07:00
most
mtd mtd: rawnand: gpmi: Fix a double free in gpmi_nand_init 2021-05-14 09:50:15 +02:00
mux
net This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
nfc nfc: pn533: prevent potential memory corruption 2021-05-14 09:50:32 +02:00
ntb
nubus
nvdimm libnvdimm/region: Fix nvdimm_has_flush() to handle ND_REGION_ASYNC 2021-04-21 13:00:55 +02:00
nvme nvmet: remove unsupported command noise 2021-05-22 11:40:54 +02:00
nvmem drivers: nvmem: Fix voltage settings for QTI qfprom-efuse 2021-05-14 09:50:14 +02:00
of Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
opp Merge 5.10.20 into android12-5.10 2021-03-07 12:33:33 +01:00
oprofile
parisc
parport
pci This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
pcmcia
perf perf/arm_pmu_platform: Fix error handling 2021-05-11 14:47:19 +02:00
phy phy: marvell: ARMADA375_USBCLUSTER_PHY should not default to y, unconditionally 2021-05-14 09:50:13 +02:00
pinctrl Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
platform This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
pnp
power Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
powercap UPSTREAM: powercap/drivers/dtpm: Add the experimental label to the option description 2021-03-22 15:24:47 +00:00
pps
ps3
ptp ptp_qoriq: fix overflow in ptp_qoriq_adjfine() u64 calcalation 2021-04-10 13:36:09 +02:00
pwm Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
rapidio
ras RAS/CEC: Correct ce_add_elem()'s returned values 2021-04-14 08:42:12 +02:00
regulator Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
remoteproc Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
reset FROMLIST: reset: reset-scmi: port driver to the new scmi_reset_proto_ops interface 2021-03-02 17:34:33 -08:00
rpmsg Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
rtc Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
s390 Merge 5.10.36 into android12-5.10 2021-05-13 14:22:11 +02:00
sbus
scsi This is the 5.10.39 stable release 2021-05-22 15:34:48 +02:00
sfi
sh
siox
slimbus
soc Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
soundwire soundwire: stream: fix memory leak in stream config error path 2021-05-14 09:50:14 +02:00
spi Revert "spi: Fix use-after-free with devm_spi_alloc_*" 2021-05-15 09:31:41 +02:00
spmi spmi: spmi-pmic-arb: Fix hw_irq overflow 2021-03-04 11:38:40 +01:00
ssb
staging ANDROID: kernel: Fix debug_kinfo warning message 2021-05-20 15:48:27 +00:00
target scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found 2021-05-22 11:40:54 +02:00
tc
tee tee: optee: do not check memref size on return from Secure World 2021-05-11 14:47:18 +02:00
thermal Merge 5.10.38 into android12-5.10 2021-05-20 15:35:25 +02:00
thunderbolt thunderbolt: Fix off by one in tb_port_find_retimer() 2021-04-14 08:42:03 +02:00
tty Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
uio
usb ANDROID: usb: gadget: Resolve NULL pointer dereference in composite_disconnect 2021-05-25 08:13:49 +00:00
vdpa vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails 2021-04-28 13:39:59 +02:00
vfio Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
vhost vhost-vdpa: fix vm_flags for virtqueue doorbell mapping 2021-05-11 14:47:12 +02:00
video Merge 5.10.36 into android12-5.10 2021-05-13 14:22:11 +02:00
virt nitro_enclaves: Fix stale file descriptors on failed usercopy 2021-05-11 14:47:11 +02:00
virtio FROMGIT: mm, page_poison: remove CONFIG_PAGE_POISONING_NO_SANITY 2021-03-24 15:09:17 -07:00
visorbus
vlynq
vme
w1 w1: w1_therm: Fix conversion result for negative temperatures 2021-03-04 11:37:18 +01:00
watchdog Merge 5.10.20 into android12-5.10 2021-03-07 12:33:33 +01:00
xen xen/gntdev: fix gntdev_mmap() error exit path 2021-05-19 10:13:16 +02:00
zorro
Kconfig
Makefile
OWNERS ANDROID: Add OWNERS files referring to the respective android-mainline OWNERS 2021-04-03 14:11:30 +00:00