linux_dsm_epyc7002/drivers/infiniband/hw/hfi1
Don Hiatt 243d9f436f IB/hfi1: Add transmit fault injection feature
Add ability to fault packets on transmit by opcode.
Dropping by packet can be achieved by setting the mask to 0.

In order to drop non-verbs traffic we set PbcInsertHrc
to NONE (0x2). The packet will still be delivered to
the receiving node but a KHdrHCRCErr (KDETH packet
with a bad HCRC) will be triggered and the packet will
not be delivered to the correct context.

In order to drop regular verbs traffic we set the
PbcTestEbp flag. The packet will still be delivered
to the receiving node but a 'late ebp error' will
be triggered and will be dropped.

A global toggle (/sys/kernel/debug/hfi1/hfi1_X/fault_suppress_err)
has been added to suppress the error messages on the receive
node when a packet was faulted on the sending node.

Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Don Hiatt <don.hiatt@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2017-04-05 14:45:09 -04:00
..
affinity.c sched/core: Remove the tsk_cpus_allowed() wrapper 2017-03-02 08:42:24 +01:00
affinity.h Updates for 4.10 kernel merge window 2016-12-15 12:03:32 -08:00
aspm.h
chip_registers.h IB/hfi1: Add active channel and backplane support for integrated devices 2016-11-15 16:37:27 -05:00
chip.c IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00
chip.h IB/hfi1: Add a patch value to the firmware version string 2017-04-05 14:45:09 -04:00
common.h IB/hfi1, qib, rdmavt: Move AETH credit functions into rdmavt 2017-02-19 09:18:38 -05:00
debugfs.c IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00
debugfs.h IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00
device.c
device.h
driver.c IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00
efivar.c IB/hfi1: Check upper-case EFI variables 2017-02-19 09:18:37 -05:00
efivar.h
eprom.c IB/hfi1: Read new EPROM format 2016-12-11 15:25:13 -05:00
eprom.h IB/hfi1: Add ability to read platform config from the EPROM 2016-10-02 08:42:20 -04:00
file_ops.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/mm.h> 2017-03-02 08:42:28 +01:00
firmware.c IB/hfi1: Add a patch value to the firmware version string 2017-04-05 14:45:09 -04:00
hfi.h IB/hfi1: Add a patch value to the firmware version string 2017-04-05 14:45:09 -04:00
init.c IB/hfi1: Check device id early during init 2017-04-05 14:45:09 -04:00
intr.c
iowait.h IB/hfi1: Add unique txwait_lock for txreq events 2016-11-15 16:25:59 -05:00
Kconfig Second round of merge items for 4.8 2016-08-04 20:26:31 -04:00
mad.c IB/hfi1: Switch from dma_device to dev.parent 2017-01-24 12:23:35 -05:00
mad.h IB/hfi1: Clean up port state structure definition 2016-08-02 12:00:54 -04:00
Makefile IB/hfi1: Remove TWSI references 2016-08-02 15:47:42 -04:00
mmu_rb.c IB/hfi1: constify mmu_notifier_ops structure 2016-12-11 15:29:42 -05:00
mmu_rb.h IB/hfi1: Remove unneeded mm argument in remove function 2016-08-02 22:46:21 -04:00
opa_compat.h
pcie.c IB/hfi1: Use static CTLE with Preset 6 for integrated HFIs 2017-02-19 09:18:34 -05:00
pio_copy.c IB/hfi1: Optimize pio_buf and send_context structs 2016-11-15 16:37:27 -05:00
pio.c Updates for 4.10 kernel merge window 2016-12-15 12:03:32 -08:00
pio.h IB/hfi1: Optimize pio_buf and send_context structs 2016-11-15 16:37:27 -05:00
platform.c IB/hfi1: Add special setting for low power AOC 2016-12-11 15:29:42 -05:00
platform.h IB/hfi1: Define platform_config_table_limits once 2016-12-11 15:29:42 -05:00
qp.c IB/hfi1: Use new rdmavt timers 2017-02-19 09:18:39 -05:00
qp.h IB/hfi1, qib, rdmavt: Move AETH credit functions into rdmavt 2017-02-19 09:18:38 -05:00
qsfp.c IB/hfi1: Extend i2c timeout 2016-10-02 08:42:13 -04:00
qsfp.h IB/hfi1: Fetch monitor values on-demand for CableInfo query 2016-08-22 14:31:41 -04:00
rc.c IB/rdmavt: Add swqe completion trace 2017-04-05 14:45:09 -04:00
ruc.c IB/rdmavt: Add swqe completion trace 2017-04-05 14:45:09 -04:00
sdma_txreq.h
sdma.c IB/hfi1: Ensure VL index is within bounds 2017-04-05 14:45:09 -04:00
sdma.h IB/hfi1: Inline sdma_txclean() for verbs pio 2016-11-15 16:25:59 -05:00
sysfs.c IB/hfi1: Remove redundant sysfs irq affinity entry 2016-11-15 16:16:40 -05:00
trace_ctxts.h IB/hfi1: Fix user-space buffers mapping with IOMMU enabled 2016-10-02 08:42:07 -04:00
trace_dbg.h IB/hfi1: Separate tracepoints into specific headers 2016-08-02 12:00:54 -04:00
trace_ibhdrs.h IB/qib,IB/hfi: Use core common header file 2016-10-02 08:42:06 -04:00
trace_misc.h IB/hfi1: Add receive fault injection feature 2017-04-05 14:45:09 -04:00
trace_rc.h IB/rdmavt, IB/hfi1: Fix timer migration regressions 2017-04-05 14:45:09 -04:00
trace_rx.h IB/hfi1: Remove leftover snoop references 2016-11-15 16:16:43 -05:00
trace_tx.h IB/rdmavt: Add swqe completion trace 2017-04-05 14:45:09 -04:00
trace.c IB/hfi1, qib, rdmavt: Move AETH defines to rdma/ib_hdrs.h 2017-02-19 09:18:44 -05:00
trace.h IB/hfi1: Separate tracepoints into specific headers 2016-08-02 12:00:54 -04:00
uc.c IB/hfi1, rdmavt: Update copy_sge to use boolean arguments 2017-02-19 09:18:41 -05:00
ud.c IB/hfi1, rdmavt: Move SGE state helper routines into rdmavt 2017-02-19 09:18:41 -05:00
user_exp_rcv.c IB/hfi1: Code reuse with memdup_copy 2017-02-19 09:18:45 -05:00
user_exp_rcv.h
user_pages.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/signal.h> 2017-03-02 08:42:29 +01:00
user_sdma.c IB/hfi1: Race hazard avoidance in user SDMA driver 2017-04-05 14:45:09 -04:00
user_sdma.h IB/hfi1: Use evict mmu rb operation 2016-08-02 22:46:21 -04:00
verbs_txreq.c IB/hfi1: Add unique txwait_lock for txreq events 2016-11-15 16:25:59 -05:00
verbs_txreq.h IB/hfi1: Remove dependence on qp->s_cur_size 2016-12-11 15:25:13 -05:00
verbs.c IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00
verbs.h IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00