*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> emx (7)              
Title
Content
Arch
Section
 

emx(7)

Contents


NAME    [Toc]    [Back]

       emx  -  Device  Driver  for  the Emulex Fibre Channel Host
       Adapter

SYNOPSIS    [Toc]    [Back]

       bus emx0 at pci? controller scsiX at emx0 bus emx1 at pci?
       controller scsiY at emx1
        .
        .
        .  bus emxN at pci? controller scsiZ at emxN

DESCRIPTION    [Toc]    [Back]

       The emx driver controls and manages the Emulex Fibre Channel
 Host Adapter. The emx driver is fully integrated  with
       the  CAM SCSI I/O subsystem to provide connectivity to FCP
       (Fibre Channel Protocol, such as  SCSI)  devices  attached
       via the Fibre Channel adapter. In addition to acting as an
       FCP initiator, the emx driver also  functions  as  an  FCP
       target.  CAM  target mode peripheral drivers are also supported.


       The emx driver currently provides Class 3 operation  in  a
       switch-based fabric configuration.

   Tuning the EMX Driver    [Toc]    [Back]
       Some Fibre Channel configurations become busy dealing with
       QUEUE FULL responses that are generated by  busy  devices.
       When  this  occurs,  not enough I/O requests are completed
       successfully and the host CPU can fail the busy devices.

       If such problems occur, you can tune  the  performance  of
       the emx driver by manipulating the values of the following
       kernel configuration attributes, which are part of the I/O
       subsystem: NPort_Max_IOs (default value 256) NPort_Min_IOs
       (default value 20) NPort_IORamp_Delay  (default  value  1)
       NPort_IORamp_Percent (default value 10)

       Configure  these attributes at run time, without rebooting
       the system by using the /sbin/sysconfig -r command. If you
       want  custom  settings  to persist across a reboot, ensure
       that the values are written in  the  system  configuration
       file.  To  write  the values into the system configuration
       file, create a stanza file and use  the  /sbin/sysconfigdb
       command.

       These  system configuration attributes enable you to limit
       I/O via  an  N_Port.   An  N_Port  is  a  hardware  entity
       attached  to  the  end of a Fibre Channel link. It manages
       the transmission and reception of Fibre Channel I/O in the
       form  of  primitives and frames. Each N_Port is identified
       by a 64-bit worldwide name (WWN) known as the  port  name.
       In  a  Point-to-Point  topology,  an  N_Port  connects  to
       another N_Port via a  link.  In  a  fabric  topology,  the
       N_Port connects to an F_Port via a link.

       The  attributes  enable  an I/O limiting feature, allowing
       you to tune I/O when devices become too busy to cope  with
       the  I/O  rate.   When I/O is limited to the correct rate,
       the emx driver allows only the value of NPort_Max_IOs commands
  to  be  outstanding to an N_Port at one time during
       normal use.  If the device  becomes  too  busy  to  accept
       commands  the  host responds with a QUEUE FULL status message.
  The QUEUE FULL response triggers an internal temporary
  maximum I/O limit. This limit is equal to the volume
       of commands presently outstanding to the N_Port  to  which
       the device is attached.

       The  internal  temporary  maximum  I/O limit is never less
       than the value that you specify  for  NPort_Min_IOs.   The
       limit  increases  by  the  percentage  value specified for
       NPort_IORamp_Percent.  This  percentage  increase  repeats
       for  the  time  value  (in  seconds)  that you specify for
       NPort_IORamp_Delay.   The  process  continues  until   the
       internal  temporary maximum I/O limit is equivalent to the
       value of NPort_Max_IOs or when another QUEUE FULL response
       is  received from the device. This logic limits the volume
       of commands sent to a busy  device  while  maximizing  the
       volume  of  I/O in a busy system. See the EXAMPLES section
       for some typical usage scenarios.

                                  Note

       Do not attempt to set the value of NPort_Max_IOs  to  less
       than the value of NPort_Min_IOs.

RESTRICTIONS    [Toc]    [Back]

       Due  to the way sense data is handled in FCP, CAM SCSI I/O
       CCBs that have AUTOSENSE disabled (CAM_DIS_AUTOSENSE) will
       be rejected with a CAM_PROVIDE_FAIL status.

       Direct  connections  without  an intervening switch or hub
       are not supported.

       Due to the SCSI-2 limitations inherent in  the  design  of
       target  mode  operation in the CAM specification, specifically
 in the area of sense data handling,  tagged  command
       queuing is not supported in the target mode portion of the
       emx driver.

EXAMPLES    [Toc]    [Back]

       To turn off I/O limiting, use the following run-time  configuration
  command: # /sbin/sysconfig -r io NPort_Max_IOs
       = 0xFFFFFFFF

       Using the default values of the attributes, assume the emx
       driver  has 30 commands outstanding to an N_Port. When the
       driver tries to  send  another  command,  the  command  is
       rejected  with  QUEUE  FULL  status  from the device. This
       event triggers the emx driver to decrease the internal I/O
       limit  from  NPort_Max_IOs to a value of 30. The decreased
       limit prevents the emx driver from  sending  new  commands
       until  an outstanding command completes successfully.  The
       emx driver continues to send  and  receive  commands  with
       only  30  commands  outstanding to the N_Port at one time.
       This  status   continues   until   the   time   value   of
       NPort_IORamp_Delay  (by  default, one second) has elapsed.
       At this point the internal  I/O  limit  increases  by  the
       absolute  value  calculated  from  the following equation:
       (NPort_Max_IOs * NPort_IORamp_Percent)/100

       For example: (256 * 10)/100 = 25

       The value of the internal I/O limit then becomes 30 + 25 =
       55.  In  this  scenario,  the internal I/O limit increases
       every one second, which is the current time value set  for
       the  NPort_IORamp_Delay  attribute.  The procedure repeats
       until the internal I/O limit is  equivalent  to  256,  the
       current value of NPort_Max_IOs.

       Assume  that  the  emx  driver has only five commands outstanding
 to  an  N_Port  and  it  receives  a  QUEUE  FULL
       response from one of the outstanding I/Os.  The emx driver
       automatically decreases its internal I/O  limit  from  the
       value of NPort_Max_IOs to be equivalent to 20, the current
       value of NPort_Min_IOs.  This decrease occurs because  the
       emx  driver cannot limit the outstanding I/Os to less than
       the current value of NPort_Min_IOs.

FILES    [Toc]    [Back]

       The device driver module

SEE ALSO    [Toc]    [Back]

      
      
       SCSI(7), rz(7)

       hwmgr(8), sys_attrs_io(5), sysconfig(8), sysconfigdb(8)

       Hardware Management



                                                           emx(7)
[ Back ]
 Similar pages
Name OS Title
mpt FreeBSD LSI Fusion-MPT SCSI/Fibre Channel driver
sesdaemon IRIX Fibre Channel Drive Enclosure Status/Configuration daemon
aha FreeBSD Adaptec SCSI host adapter driver
emxmgr Tru64 Displays Fibre Channel worldwide name to target ID mappings for emx devices (obsolete)
sesmgr IRIX Fibre Channel Drive Enclosure Status/Configuration Command Line Interface
ahc OpenBSD Adaptec VL/EISA/PCI SCSI host adapter driver
ncv FreeBSD NCR 53C500 based SCSI host adapter driver
adw FreeBSD Advansys PCI 16bit SCSI Host adapter driver
mpt OpenBSD LSI Fusion-MPT SCSI and FibreChannel host adapter driver
ahd FreeBSD Adaptec PCI/PCI-X Ultra320 SCSI host adapter driver
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service