History log of /freebsd/sys/cam/scsi/scsi_enc.c (Results 76 – 86 of 86)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/9.0.0
# 784b65ad 27-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Tune destruction sequence, including aborting queued control requests.
Cover for some edge cases is still ongoing.


# 7a4a2d36 27-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Fix/Implement I/O errors handling:
- make done() method called even after I/O errors to handle them,
- pass error argument to done() method,
- return error code to user-level.


# 6c143125 25-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Make emulate_array_devices global to not bother with locking and kenv.
This also makes it writable sysctl.


# 8247d3fc 25-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Drop the periph lock during M_WAITOK buffer allocation.


# 94802ffa 25-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Remove some strange lock operations.


# f845e1de 24-Aug-2011 Alexander Motin <mav@FreeBSD.org>

First part of SAF-TE driver refactoring to the new fsm-based model:
- make configuration and status reading asynchronous.


# 66514eb8 23-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Element descriptor is optional for SES devices. Respecting that, report
empty string for SAF-TE devices where there is no descriptor, instead of
returning confusing EINVAL error.


# 68cb5c3b 21-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Do not delay boot if we are not going to run daemon process. Otherwise
boot will wait infinitely.


# fad0e9f2 20-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Fetch list of supported diagnostic pages for SES to find whether optional
Additional Element Status page is supported. If it's not, do not try to
query it.


# f0bbee5f 20-Aug-2011 Alexander Motin <mav@FreeBSD.org>

Add support for SATA Enclosure Management Bridge (SEMB).


# 01acaa30 18-Jul-2011 Justin T. Gibbs <gibbs@FreeBSD.org>

Revamp the CAM enclosure services driver, renaming it to "enc" from "ses" in
the process. This updated driver uses an in-kernel daemon to track state
changes and publishes physical path location inf

Revamp the CAM enclosure services driver, renaming it to "enc" from "ses" in
the process. This updated driver uses an in-kernel daemon to track state
changes and publishes physical path location information for disk elements
into the CAM device database.

share/examples/ses/Makefile.inc:
share/examples/ses/srcs/eltsub.c:
share/examples/ses/srcs/sesd.c:
share/examples/ses/srcs/getencstat.c:
share/examples/ses/srcs/setobjstat.c:
share/examples/ses/srcs/inienc.c:
share/examples/ses/srcs/getobjstat.c:
share/examples/ses/srcs/getnobj.c:
share/examples/ses/srcs/getobjmap.c:
share/examples/ses/srcs/setencstat.c:
Update for changes in driver name and API. The ioctl interface
is largely unchanged and could use additional refinement. It
would be nice to be able to fetch the status of all elements in
a single ioctl call and to have the ioctls that return variable
length data allow you to query the necessary allocation size
by passing in a zero length buffer.

sys/sparc64/conf/GENERIC:
sys/ia64/conf/GENERIC:
sys/mips/conf/OCTEON1:
sys/pc98/conf/GENERIC:
sys/i386/conf/GENERIC:
sys/amd64/conf/GENERIC:
ses -> enc

sys/conf/files:
sys/modules/cam/Makefile:
sys/cam/scsi/scsi_enc_internal.h
sys/cam/scsi/scsi_enc_ses.c
sys/cam/scsi/scsi_enc_safte.c
sys/cam/scsi/scsi_ses.c
sys/cam/scsi/scsi_enc.c
Split the enc driver into a generic driver file and one file
each for the SES and SAF-TE personalities.

sys/cam/scsi/scsi_ses.h:
o Retain this header, but use it to only hold structures derived
from the T10 SES spec. The driver interface can be found in
scsi_enc.h.
o Add definitions for most SES pages.

sys/cam/scsi/scsi_enc.c
sys/cam/scsi/scsi_enc.h
o Use a function vector table to allow interaction between the
generic and protocol specific portions of this driver.
o Provide a generic mechanism allowing personalities to define a
finite state machine that is executed from a daemon thread context.
o Track CAM device arrival events and pass these on to personalities
that have registered an interest in them. These notifications are
used to trigger physical path updates in the CAM EDT.

sys/cam/scsi/scsi_enc_safte.c:
The SAF-TE personality. This module is largely untouched by this
update. To achieve the same level of support as we have for SES,
it will need to define an FSM and code to determine the physical
paths of elements within the enclosure.

sys/cam/scsi/scsi_enc_ses.c:
o Implement a state machine to fetch configuration, status, element
descriptors, and additional element status.
o Build a "element map" that indexes into the config and status
data retrieved from a SES device. Use this to simplify our
responses to ioctls.
o Add support for using SAS domain/phy WWN data to determine the
physical path (ence@<enc WWN>/type@<elm type>/slot@<slot #>)
of an element. Stubs are in place for FC, but both FC and SPI
will need additional work in order to be supported.

Sponsored by: Spectra Logic Corporation
Submitted by: gibbs, will

show more ...


1234