kernel-fxtec-pro1x/drivers
Sibi Sankar 59e5269c69 remoteproc: qcom: q6v5: Fix a race condition on fatal crash
[ Upstream commit d3ae96c0e6b042a883927493351b2af6ee05e92c ]

Currently with GLINK_SSR enabled each fatal crash results in servicing
a crash from wdog as well. This is due to a race that occurs in setting
the running flag in the shutdown path. Fix this by moving the running
flag to the end of fatal interrupt handler.

Crash Logs:
qcom-q6v5-pil 4080000.remoteproc: fatal error without message
remoteproc remoteproc0: crash detected in 4080000.remoteproc: type fatal
	error
remoteproc remoteproc0: handling crash #1 in 4080000.remoteproc
remoteproc remoteproc0: recovering 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: watchdog without message
remoteproc remoteproc0: crash detected in 4080000.remoteproc: type watchdog
remoteproc:glink-edge: intent request timed out
qcom_glink_ssr remoteproc:glink-edge.glink_ssr.-1.-1: failed to send
	cleanup message
qcom_glink_ssr remoteproc:glink-edge.glink_ssr.-1.-1: timeout waiting
	for cleanup done message
qcom-q6v5-pil 4080000.remoteproc: timed out on wait
qcom-q6v5-pil 4080000.remoteproc: port failed halt
remoteproc remoteproc0: stopped remote processor 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: MBA booted, loading mpss
remoteproc remoteproc0: remote processor 4080000.remoteproc is now up
remoteproc remoteproc0: handling crash #2 in 4080000.remoteproc
remoteproc remoteproc0: recovering 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: port failed halt
remoteproc remoteproc0: stopped remote processor 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: MBA booted, loading mpss
remoteproc remoteproc0: remote processor 4080000.remoteproc is now up

Suggested-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-24 08:20:29 +01:00
..
accessibility
acpi ACPICA: Never run _REG on system_memory and system_IO 2019-11-24 08:20:07 +01:00
amba
android android: binder: no outgoing transaction when thread todo has transaction 2019-11-20 18:46:42 +01:00
ata ata: ep93xx: Use proper enums for directions 2019-11-24 08:20:10 +01:00
atm Kconfig: Fix the reference to the IDT77105 Phy driver in the description of ATM_NICSTAR_USE_IDT77105 2019-09-21 07:16:57 +02:00
auxdisplay auxdisplay: panel: need to delete scan_timer when misc_register fails in panel_attach 2019-09-06 10:21:56 +02:00
base component: fix loop condition to call unbind() if bind() fails 2019-11-20 18:46:47 +01:00
bcma
block nbd: handle racing with error'ed out commands 2019-11-10 11:27:35 +01:00
bluetooth Bluetooth: btrsi: fix bt tx timeout issue 2019-11-20 18:47:42 +01:00
bus bus: ti-sysc: Simplify cleanup upon failures in sysc_probe() 2019-09-21 07:16:51 +02:00
cdrom cdrom: Fix race condition in cdrom_sysctl_register 2019-04-05 22:33:10 +02:00
char crypto: chacha20 - Fix chacha20_block() keystream alignment (again) 2019-11-20 18:47:11 +01:00
clk clk: samsung: Use clk_hw API for calling clk framework from clk notifiers 2019-11-24 08:20:23 +01:00
clocksource clocksource/drivers/sh_cmt: Fix clocksource width for 32-bit machines 2019-11-24 08:19:57 +01:00
connector
cpufreq cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown 2019-10-29 09:20:08 +01:00
cpuidle cpuidle: menu: Fix wakeup statistics updates for polling state 2019-11-24 08:20:07 +01:00
crypto crypto: s5p-sss: Fix Fix argument list alignment 2019-11-20 18:47:43 +01:00
dax mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned addresses 2019-05-22 07:37:40 +02:00
dca
devfreq PM / devfreq: stopping the governor before device_unregister() 2019-11-24 08:19:36 +01:00
dio
dma dmaengine: ioat: fix prototype of ioat_enumerate_channels 2019-11-24 08:20:24 +01:00
dma-buf dma-buf/sw_sync: Synchronize signal vs syncpt free 2019-10-07 18:57:04 +02:00
edac EDAC: Correct DIMM capacity unit symbol 2019-11-20 18:47:15 +01:00
eisa
extcon extcon: cht-wc: Return from default case to avoid warnings 2019-11-20 18:45:26 +01:00
firewire
firmware firmware: dell_rbu: Make payload memory uncachable 2019-11-20 18:47:41 +01:00
fmc
fpga fpga: altera-ps-spi: Fix getting of optional confd gpio 2019-09-21 07:16:53 +02:00
fsi fsi: scom: Don't abort operations for minor errors 2019-09-06 10:22:19 +02:00
gnss
gpio gpiolib: Fix gpio_direction_* for single direction GPIOs 2019-11-20 18:47:22 +01:00
gpu msm/gpu/a6xx: Force of_dma_configure to setup DMA for GMU 2019-11-24 08:20:06 +01:00
hid HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() 2019-11-12 19:20:54 +01:00
hsi
hv vmbus: keep pointer to ring buffer page 2019-11-20 18:47:31 +01:00
hwmon hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' 2019-10-05 13:09:54 +02:00
hwspinlock
hwtracing coresight: dynamic-replicator: Handle multiple connections 2019-11-20 18:47:29 +01:00
i2c i2c: zx2967: use core to detect 'no zero length' quirk 2019-11-24 08:20:27 +01:00
ide
idle x86/cpu: Sanitize FAM6_ATOM naming 2019-05-14 19:17:53 +02:00
iio iio: dac: mcp4922: fix error handling in mcp4922_write_raw 2019-11-20 18:45:21 +01:00
infiniband RDMA/hns: Limit the size of extend sge of sq 2019-11-24 08:20:04 +01:00
input Input: silead - try firmware reload after unsuccessful resume 2019-11-24 08:20:28 +01:00
iommu iommu/arm-smmu-v3: Fix unexpected CMD_SYNC timeout 2019-11-24 08:19:30 +01:00
ipack
irqchip irqchip/irq-mvebu-icu: Fix wrong private data retrieval 2019-11-24 08:19:40 +01:00
isdn net: use skb_queue_empty_lockless() in poll() handlers 2019-11-10 11:27:48 +01:00
leds led: triggers: Fix a memory leak bug 2019-10-05 13:09:45 +02:00
lightnvm lightnvm: pblk: fix freeing of merged pages 2019-07-26 09:14:09 +02:00
macintosh
mailbox mbox: qcom: add APCS child device for QCS404 2019-10-07 18:57:02 +02:00
mcb
md md: allow metadata updates while suspending an array - fix 2019-11-24 08:19:58 +01:00
media media: cec-gpio: select correct Signal Free Time 2019-11-24 08:20:25 +01:00
memory memory: tegra: Fix integer overflow on tick value calculation 2019-05-25 18:23:32 +02:00
memstick memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()' 2019-10-29 09:20:07 +01:00
message
mfd mfd: intel-lpss: Remove D3cold delay 2019-10-07 18:57:08 +02:00
misc misc: genwqe: should return proper error value. 2019-11-20 18:47:31 +01:00
mmc mmc: sdhci-of-at91: fix quirk2 overwrite 2019-11-20 18:45:20 +01:00
mtd mtd: physmap_of: Release resources on error 2019-11-24 08:20:17 +01:00
mux
net net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware 2019-11-24 08:20:28 +01:00
nfc NFC: st21nfca: fix double free 2019-11-12 19:20:30 +01:00
ntb ntb: point to right memory window index 2019-10-11 18:21:18 +02:00
nubus
nvdimm libnvdimm/region: Initialize bad block for volatile namespaces 2019-10-11 18:21:20 +02:00
nvme nvme-multipath: fix possible io hang after ctrl reconnect 2019-11-12 19:21:11 +01:00
nvmem nvmem: core: return error code instead of NULL from nvmem_device_get 2019-11-20 18:46:31 +01:00
of of/unittest: Fix I2C bus unit-address error 2019-11-20 18:47:00 +01:00
opp OPP: Return error on error from dev_pm_opp_get_opp_count() 2019-11-24 08:20:06 +01:00
oprofile
parisc parisc: Disable HP HSC-PCI Cards to prevent kernel crash 2019-10-05 13:10:04 +02:00
parport parport: Fix mem leak in parport_register_dev_model 2019-06-25 11:35:55 +08:00
pci PCI/ERR: Run error recovery callbacks for all affected devices 2019-11-20 18:47:39 +01:00
pcmcia
perf drivers/perf: arm_pmu: Fix failure path in PM notifier 2019-08-06 19:06:55 +02:00
phy phy: lantiq: Fix compile warning 2019-11-20 18:47:35 +01:00
pinctrl pinctrl: at91: don't use the same irqchip with multiple gpiochips 2019-11-20 18:46:41 +01:00
platform platform/x86: pmc_atom: Add Siemens SIMATIC IPC227E to critclk_systems DMI table 2019-11-10 11:27:55 +01:00
pnp
power power: supply: twl4030_charger: disable eoc interrupt on linear charge 2019-11-20 18:47:01 +01:00
powercap x86/cpu: Sanitize FAM6_ATOM naming 2019-05-14 19:17:53 +02:00
pps drivers/pps/pps.c: clear offset flags in PPS_SETPARAMS ioctl 2019-08-04 09:30:56 +02:00
ps3
ptp
pwm pwm: stm32-lp: Add check in case requested period cannot be achieved 2019-10-11 18:21:17 +02:00
rapidio drivers/rapidio/devices/rio_mport_cdev.c: NUL terminate some strings 2019-08-06 19:06:52 +02:00
ras RAS/CEC: Fix pfn insertion 2019-07-26 09:14:05 +02:00
regulator regulator: pfuze100-regulator: Variable "val" in pfuze100_regulator_probe() could be uninitialized 2019-11-10 11:27:15 +01:00
remoteproc remoteproc: qcom: q6v5: Fix a race condition on fatal crash 2019-11-24 08:20:29 +01:00
reset reset: meson-audio-arb: Fix missing .owner setting of reset_controller_dev 2019-05-08 07:21:47 +02:00
rpmsg rpmsg: glink: smem: Support rx peak for size less than 4 bytes 2019-11-24 08:20:05 +01:00
rtc rtc: armada38x: fix possible race condition 2019-11-20 18:47:52 +01:00
s390 s390/zcrypt: enable AP bus scan without a valid default domain 2019-11-20 18:47:07 +01:00
sbus
scsi scsi: NCR5380: Check for bus reset 2019-11-20 18:47:52 +01:00
sfi
sh
siox
slimbus silmbus: ngd: register controller after power up. 2019-11-20 18:47:30 +01:00
sn
soc soc: fsl: bman_portals: defer probe after bman's probe 2019-11-24 08:20:28 +01:00
soundwire soundwire: intel: Fix uninitialized adev deref 2019-11-20 18:45:22 +01:00
spi spi: mediatek: use correct mata->xfer_len when in fifo transfer 2019-11-24 08:19:06 +01:00
spmi
ssb ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit 2019-05-31 06:46:04 -07:00
staging media: imx: work around false-positive warning, again 2019-11-20 18:47:16 +01:00
target scsi: target: core: Do not overwrite CDB byte 1 2019-11-10 11:27:28 +01:00
tc
tee tee: optee: add missing of_node_put after of_device_is_available 2019-11-24 08:19:08 +01:00
thermal thermal_hwmon: Sanitize thermal_zone type 2019-10-11 18:21:19 +02:00
thunderbolt thunderbolt: Use 32-bit writes when writing ring producer/consumer 2019-11-06 13:06:12 +01:00
tty tty: serial: qcom_geni_serial: Fix serial when not used as console 2019-11-20 18:46:54 +01:00
uio vmbus: keep pointer to ring buffer page 2019-11-20 18:47:31 +01:00
usb usb: dwc2: disable power_down on rockchip devices 2019-11-24 08:20:16 +01:00
uwb
vfio vfio/pci: Mask buggy SR-IOV VF INTx support 2019-11-20 18:47:32 +01:00
vhost vhost: make sure log_num < in_num 2019-09-16 08:22:25 +02:00
video fbdev: Ditch fb_edid_add_monspecs 2019-11-24 08:19:14 +01:00
virt virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr 2019-11-06 13:06:04 +01:00
virtio virtio_pci: fix a NULL pointer reference in vp_del_vqs 2019-05-10 17:54:08 +02:00
visorbus
vlynq
vme
w1 w1: fix the resume command API 2019-05-31 06:46:14 -07:00
watchdog watchdog: w83627hf_wdt: Support NCT6796D, NCT6797D, NCT6798D 2019-11-24 08:19:43 +01:00
xen xen/pci: reserve MCFG areas earlier 2019-10-11 18:21:13 +02:00
zorro
Kconfig
Makefile