Ian Munsie
bc78b05bb4
cxl: Return error to PSL if IRQ demultiplexing fails & print clearer warning
...
If an AFU has a hardware bug that causes it to acknowledge a context
terminate or remove while that context has outstanding transactions, it
is possible for the kernel to receive an interrupt for that context
after we have removed it from the context list.
The kernel will not be able to demultiplex the interrupt (or worse - if
we have already reallocated the process handle we could mis-attribute it
to the new context), and printed a big scary warning.
It did not acknowledge the interrupt, which would effectively halt
further translation fault processing on the PSL.
This patch makes the warning clearer about the likely cause of the issue
(i.e. hardware bug) to make it obvious to future AFU designers of what
needs to be fixed. It also prints out the process handle which can then
be matched up with hardware and software traces for debugging.
It also acknowledges the interrupt to the PSL with either an address
error or acknowledge, so that the PSL can continue with other
translations.
Signed-off-by: Ian Munsie <imunsie@au1.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2014-11-18 12:58:38 +11:00
..
altera-stapl
altera-stapl: replace strnicmp with strncasecmp
2014-10-14 02:18:25 +02:00
c2port
carma
Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma
2014-10-18 18:11:04 -07:00
cb710
mmc: cb710: drop free_irq for devm_request_irq allocated irq
2013-09-26 13:55:30 -07:00
cxl
cxl: Return error to PSL if IRQ demultiplexing fails & print clearer warning
2014-11-18 12:58:38 +11:00
echo
staging: echo: move to drivers/misc/
2014-02-28 14:08:42 -08:00
eeprom
EEPROM: Introduce the use of devm_kzalloc
2014-09-23 23:04:17 -07:00
fuse
soc/tegra: Add efuse driver for Tegra
2014-07-17 14:36:01 +02:00
genwqe
GenWQE: Support blocking when DDCB queue is busy
2014-09-23 23:15:47 -07:00
ibmasm
misc: ibmasm: remove unnecessary pci_set_drvdata()
2013-09-26 09:13:54 -07:00
lis3lv02d
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
mei
Char/Misc driver patches for 3.18-rc1
2014-10-08 06:55:41 -04:00
mic
virtio: unify config_changed handling
2014-10-15 10:24:54 +10:30
sgi-gru
Merge branch 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into next
2014-06-03 15:48:23 -07:00
sgi-xp
net: set name_assign_type in alloc_netdev()
2014-07-15 16:12:48 -07:00
ti-st
misc: st_core: Protect unsigned value against becoming negative
2014-09-23 23:14:28 -07:00
vmw_vmci
PCI changes for the v3.18 merge window:
2014-10-09 15:03:49 -04:00
ad525x_dpot-i2c.c
ad525x_dpot-spi.c
ad525x_dpot.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
ad525x_dpot.h
apds990x.c
apds9802als.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
arm-charlcd.c
misc: arm-charlcd: add DT probe support
2014-05-03 19:26:25 -04:00
atmel-ssc.c
ASoC: atmel-ssc: distinguish whether SSC supports fslen ext
2014-06-21 11:37:32 +01:00
atmel_tclib.c
ARM: at91/tclib: mask interruptions at shutdown and probe
2014-09-08 10:54:03 +02:00
bh1770glc.c
misc: bh1770glc: Use managed functions
2014-07-22 16:28:11 -07:00
bh1780gli.c
misc: bh1780: Introduce the use of devm_kzalloc
2014-07-27 11:10:42 -07:00
bmp085-i2c.c
misc: bmp085: Clean up and enable use of interrupt for completion.
2013-12-04 20:23:51 -08:00
bmp085-spi.c
misc: bmp085: Clean up and enable use of interrupt for completion.
2013-12-04 20:23:51 -08:00
bmp085.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
bmp085.h
misc: bmp085: Clean up and enable use of interrupt for completion.
2013-12-04 20:23:51 -08:00
cs5535-mfgpt.c
ds1682.c
misc: (ds1682) replace obsolete simple_strtoull() with kstrtoull()
2014-05-03 19:26:24 -04:00
dummy-irq.c
Add MODULE_DESCRIPTION to dummy-irq.c and lkdtm.c in drivers/misc
2014-07-09 14:19:34 -07:00
enclosure.c
[SCSI] enclosure: fix WARN_ON in dual path device removing
2013-12-02 11:13:14 -08:00
fsa9480.c
treewide: fix comments and printk msgs
2014-01-07 15:06:07 +01:00
hmc6352.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
hpilo.c
hpilo.h
ics932s401.c
hwmon: Change my email address.
2013-08-27 08:28:01 -07:00
ioc4.c
misc: ioc4: Use ktime_get_ns()
2014-07-23 15:01:43 -07:00
isl29003.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
isl29020.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
Kconfig
cxl: Add base builtin support
2014-10-08 20:15:56 +11:00
kgdbts.c
lattice-ecp3-config.c
misc: lattice-ecp3-config: Add missing MODULE_FIRMWARE()
2014-09-23 23:04:17 -07:00
lkdtm.c
Add MODULE_DESCRIPTION to dummy-irq.c and lkdtm.c in drivers/misc
2014-07-09 14:19:34 -07:00
Makefile
cxl: Add base builtin support
2014-10-08 20:15:56 +11:00
pch_phub.c
pch_phub: Report error writing MAC back to user
2014-03-08 22:15:51 -08:00
phantom.c
misc: phantom: remove deprecated IRQF_DISABLED
2013-10-16 12:36:10 -07:00
pti.c
misc: pti: remove unnecessary pci_set_drvdata()
2013-09-26 09:13:54 -07:00
spear13xx_pcie_gadget.c
pcie-gadget-spear: use devm_ functions
2014-09-23 23:04:17 -07:00
sram.c
misc: sram: implement reserved sram areas
2014-02-28 15:31:11 -08:00
ti_dac7512.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
tifm_7xx1.c
tifm: fix error return code in tifm_7xx1_probe()
2013-10-30 10:19:30 -07:00
tifm_core.c
tifm: convert bus code to use dev_groups
2013-10-16 18:40:58 -07:00
tsl2550.c
drivers/misc: delete non-required instances of include <linux/init.h>
2014-02-07 15:10:19 -08:00
vexpress-syscfg.c
misc: vexpress: Fix sparse non static symbol warnings
2014-07-22 16:28:11 -07:00
vmw_balloon.c
MAINTAINERS: add entry for VMware Balloon driver
2014-06-20 11:47:33 -07:00