diff options
author | Sivakumar Subramani <sivakumar.subramani@neterion.com> | 2007-09-17 13:05:35 -0700 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-10-10 16:51:09 -0700 |
commit | 8116f3cf4a2a5a4fa2335e6f32023ac50506698f (patch) | |
tree | 4db08fb067fd37c892f9a98e127854acd0fa3956 /ipc | |
parent | 9caab4587b8320c54fc666a6c820e966e6403aea (diff) |
[S2IO]: Handle and monitor all of the device errors and alarms
- Added support to poll entire set of device errors and alarams.
- A note on how device errors and alarms are handled:
- The adapter will automatically recover from uncorrectable ECC errors.
Packets containing corrupted data will be dropped (not transmitted) or tagged
as invalid before being passed to the host.
- The adapter cannot recover from any internal state machine errors. A state
machine error requires a device reset.
- Any internal error that could potentially result in .store trampling.
(undesirable PCI behaviour)is tagged as a "serious error". In such cases
the adapter will give up its ability to be a bus master. In this situation
the host will still be able to read internal device registers in order to
generate an error report. A device reset is necessary to return to normal
operation.
- In the event of a pcix data parity error, the adapter will automatically
disable itself. Adapter_En will automatically transition from '1' to '0' and
the adapter will enter its clean-up routine. Once the device has achieved
quiescence, an adapter reset should be performed.
- Replaced alarm_intr_handler() with s2io_handle_errors().
- Added statistic counters to monitor the alarms.
[ Fix warnings wrt. do_s2io_chk_alarm_bit(), Callers pass in an
"unsigned long long *" but the function takes a "u64 *" which is
different on many 64-bit platforms. -DaveM ]
Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Santosh Rastapur <santosh.rastapur@neterion.com>
Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions