Skip to content
  • James Smart's avatar
    [SCSI] FC Pass Thru support · 9e4f5e29
    James Smart authored
    Attached is the ELS/CT pass-thru patch for the FC Transport. The patch
    creates a generic framework that lays on top of bsg and the SGIO v4 ioctl
    in order to pass transaction requests to LLDD's.
    
    The interface supports the following operations:
      On an fc_host basis:
        Request login to the specified N_Port_ID, creating an fc_rport.
        Request logout of the specified N_Port_ID, deleting an fc_rport
        Send ELS request to specified N_Port_ID w/o requiring a login, and
          wait for ELS response.
        Send CT request to specified N_Port_ID and wait for CT response.
          Login is required, but LLDD is allowed to manage login and decide
          whether it stays in place after the request is satisfied.
        Vendor-Unique request. Allows a LLDD-specific request to be passed
          to the LLDD, and the passing of a response back to the application.
      On an fc_rport basis:
        Send ELS request to nport and wait for ELS response.
        Send CT request to nport and wait for CT response.
    
    The patch also exports several headers from include/scsi such that
    they can be available to user-space applications:
      include/scsi/scsi.h
      include/scsi/scsi_netlink.h
      include/scsi/scsi_netlink_fc.h
      include/scsi/scsi_bsg_fc.h
    
    For further information, refer to the last RFC:
    http://marc.info/?l=linux-scsi&m=123436574018579&w=2
    
    
    
    Note: Documentation is still spotty and will be added later.
    
    [bharrosh@panasas.com: update for new block API]
    Signed-off-by: default avatarJames Smart <james.smart@emulex.com>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    9e4f5e29