The target provider needs a per-instance lookup table or other way to lookup sessions quickly without going through a linear list or serializing too much.
Add a simple void * array indexed by FC-4 type to the fc_lport. Signed-off-by: Joe Eykholt <[email protected]> --- include/scsi/libfc.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/include/scsi/libfc.h b/include/scsi/libfc.h index b272184..73698a0 100644 --- a/include/scsi/libfc.h +++ b/include/scsi/libfc.h @@ -790,6 +790,7 @@ struct fc_disc { * @lp_mutex: Mutex to protect the local port * @list: Handle for list of local ports * @retry_work: Handle to local port for delayed retry context + * @prov: for use by active providers, indexed by type */ struct fc_lport { /* Associations */ @@ -842,6 +843,7 @@ struct fc_lport { struct mutex lp_mutex; struct list_head list; struct delayed_work retry_work; + void *prov[FC_FC4_PROV_SIZE]; }; /** _______________________________________________ devel mailing list [email protected] http://www.open-fcoe.org/mailman/listinfo/devel
