linux/include/scsi
James Smart 84314fd474 [SCSI] SCSI and FC Transport: add netlink support for posting of transport events
This patch formally adds support for the posting of FC events via netlink.
It is a followup to the original RFC at:
  http://marc.theaimsgroup.com/?l=linux-scsi&m=114530667923464&w=2
and the initial posting at:
  http://marc.theaimsgroup.com/?l=linux-scsi&m=115507374832500&w=2

The patch has been updated to optimize the send path, per the discussions
in the initial posting.

Per discussions at the Storage Summit and at OLS, we are to use netlink for
async events from transports. Also per discussions, to avoid a netlink
protocol per transport, I've create a single NETLINK_SCSITRANSPORT protocol,
which can then be used by all transports.

This patch:
- Creates new files scsi_netlink.c and scsi_netlink.h, which contains the
  single and shared definitions for the SCSI Transport. It is tied into the
  base SCSI subsystem intialization.
  Contains a single interface routine, scsi_send_transport_event(), for a
  transport to send an event (via multicast to a protocol specific group).
- Creates a new scsi_netlink_fc.h file, which contains the FC netlink event
  messages
- Adds 3 new routines to the fc transport:
   fc_get_event_number() -  to get a FC event #
   fc_host_post_event()  -  to send a simple FC event (32 bits of data)
   fc_host_post_vendor_event() - to send a Vendor unique event, with
                                 arbitrary amounts of data.

   Note: the separation of event number allows for a LLD to send a standard
     event, followed by vendor-specific data for the event.

Note: This patch assumes 2 prior fc transport patches have been installed:
   http://marc.theaimsgroup.com/?l=linux-scsi&m=115555807316329&w=2
   http://marc.theaimsgroup.com/?l=linux-scsi&m=115581614930261&w=2

   Sorry - next time I'll do something like making these individual
   patches of the same posting when I know they'll be posted closely
   together.

Signed-off-by: James Smart <James.Smart@emulex.com>

Tidy up configuration not to make SCSI always select NET

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-09-02 15:33:49 -05:00
..
iscsi_if.h [SCSI] iscsi: add async notification of session events 2006-06-29 11:14:42 -04:00
iscsi_proto.h [SCSI] iscsi: update version 2006-05-20 09:36:38 -05:00
Kbuild Add generic Kbuild files for 'make headers_install' 2006-06-18 12:14:01 +01:00
libiscsi.h [SCSI] add refcouting around ctask usage in main IO patch 2006-09-02 13:37:07 -05:00
libsas.h [SCSI] aic94xx: new driver 2006-08-29 09:52:29 -05:00
sas.h [SCSI] aic94xx: new driver 2006-08-29 09:52:29 -05:00
scsi_cmnd.h [SCSI] remove SCSI_STATE_ #defines 2006-08-06 11:35:39 -05:00
scsi_dbg.h [SCSI] remove scsi_request infrastructure 2006-06-10 16:24:40 -05:00
scsi_device.h [SCSI] add scsi_mode_select to scsi_lib.c 2006-03-19 10:19:14 -06:00
scsi_devinfo.h Merge ../scsi-rc-fixes-2.6 2006-04-14 15:47:45 -05:00
scsi_driver.h [BLOCK] update SCSI to use new blk_ordered for barriers 2006-01-06 09:52:55 +01:00
scsi_eh.h [SCSI] remove scsi_request infrastructure 2006-06-10 16:24:40 -05:00
scsi_host.h [SCSI] add shared tag map helpers 2006-08-31 11:18:03 -04:00
scsi_ioctl.h [SCSI] unify SCSI_IOCTL_SEND_COMMAND implementations 2006-04-13 10:13:15 -05:00
scsi_netlink_fc.h [SCSI] SCSI and FC Transport: add netlink support for posting of transport events 2006-09-02 15:33:49 -05:00
scsi_netlink.h [SCSI] SCSI and FC Transport: add netlink support for posting of transport events 2006-09-02 15:33:49 -05:00
scsi_tcq.h [SCSI] add failure return to scsi_init_shared_tag_map() 2006-09-02 13:57:28 -05:00
scsi_transport_fc.h [SCSI] SCSI and FC Transport: add netlink support for posting of transport events 2006-09-02 15:33:49 -05:00
scsi_transport_iscsi.h [SCSI] iscsi bugfixes: fix oops when iser is flushing io 2006-07-28 11:48:32 -05:00
scsi_transport_sas.h [SCSI] scsi_transport_sas: remove local_attached flag 2006-08-27 22:30:11 -05:00
scsi_transport_spi.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
scsi_transport.h [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
scsi.h [SCSI] aic94xx: new driver 2006-08-29 09:52:29 -05:00
scsicam.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sg.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
srp.h [SCSI] srp.h: Add I/O Class values 2006-06-17 20:37:38 -07:00