Subject: Re: [PATCH] mlx4: Add support for EEH error recovery

From: Or Gerlitz <[email-masked]>
Date: Mon, 23 Jul 2012 16:45:19 +0300

On 7/23/2012 4:18 PM, Kleber Sacilotto de Souza wrote:
> Exactly. The callbacks implemented are from standard PCI error recovery
> (Documentation/PCI/pci-error-recovery.txt) and the changes doesn't
> assume any platform in specific. The code was tested only on powerpc
> systems [...]

So how did you test that? using the kernel provided error injection 
support and user space tool (which?) or in another way? we've trying 
quickly here to inject errors using /sbin/ear-inject from 
ras-utils-6.1-1.el6.x86_64 on a kernel built with

CONFIG_PCIEAER=y
CONFIG_PCIEAER_INJECT=m

and it failed to inject errors, SB details.

Or.
> since I don't have any mlx4 card on other platforms, however,
> these changes shouldn't make the error recover any worse than the
> current state.

> # lspci | grep 08.00.1
> 08:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network 
> Connection (rev 02)

> # cat /tmp/intel.aer
> AER
> BUS 8 DEV 0 FN 1
> COR_STATUS BAD_TLP
> HEADER_LOG 0 1 2 3

> # /sbin/aer-inject < /tmp/intel.aer
> Error: Failed to write, Invalid argument

> # strace -F -f /sbin/aer-inject < /tmp/intel.aer
> [...]

> open("/dev/aer_inject", O_WRONLY)       = 3
> write(3, "\10\0\1\0\0\0\0\0@\0\0\0\0\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0", 
> 28) = -1 EINVAL (Invalid argument)
> write(2, "Error: ", 7Error: )                  = 7
> write(2, "Failed to write", 15Failed to write)         = 15
> write(2, ", Invalid argument\n", 19, Invalid argument
> )    = 19
> exit_group(-1)                          = ?