freebsd-dev/sys/dev/mps
Stephen McConnell f4e69c98fd - No log bit in IOCStatus and endian-safe changes.
Use MPI2_IOCSTATUS_MASK when checking IOCStatus to mask off the log bit, and
make a few more things endian-safe.

- Fix possible use of invalid pointer.

It was possible to use an invalid pointer to get the target ID value. To fix
this, initialize a local Target ID variable to an invalid value and change that
variable to a valid value only if the pointer to the Target ID is not NULL.

- No need to set the MPSSAS_SHUTDOWN flag because it's never used.

- done_ccb pointer can be used if it is NULL.

To prevent this, move check for done_ccb == NULL to before done_ccb is used in
mpssas_stop_unit_done().

- Disks can go missing until a reboot is done in some cases.

This is due to the DevHandle not being released, which causes the Firmware to
not allow that disk to be re-added.

Reviewed by:	ken
Approved by:	re (gjb), ken, scottl, ambrisko (mentors)
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D6872
2016-06-20 18:14:51 +00:00
..
mpi sys/dev: minor spelling fixes. 2016-05-03 03:41:25 +00:00
mps_config.c - No log bit in IOCStatus and endian-safe changes. 2016-06-20 18:14:51 +00:00
mps_ioctl.h - Updated all files with 2015 Avago copyright, and updated LSI's copyright 2015-02-24 22:07:42 +00:00
mps_mapping.c Add sysctls for dumping out the device mapping tables. I'm finding this 2016-02-04 23:38:55 +00:00
mps_mapping.h sys/dev: minor spelling fixes. 2016-05-03 03:41:25 +00:00
mps_pci.c - Updated all files with 2015 Avago copyright, and updated LSI's copyright 2015-02-24 22:07:42 +00:00
mps_sas_lsi.c - No log bit in IOCStatus and endian-safe changes. 2016-06-20 18:14:51 +00:00
mps_sas.c - No log bit in IOCStatus and endian-safe changes. 2016-06-20 18:14:51 +00:00
mps_sas.h Revert an extra hunk that crept into the last commit. 2015-10-16 20:18:12 +00:00
mps_table.c
mps_table.h
mps_user.c - No log bit in IOCStatus and endian-safe changes. 2016-06-20 18:14:51 +00:00
mps.c - No log bit in IOCStatus and endian-safe changes. 2016-06-20 18:14:51 +00:00
mpsvar.h - No log bit in IOCStatus and endian-safe changes. 2016-06-20 18:14:51 +00:00