diff options
author | Chris Leech <christopher.leech@intel.com> | 2009-08-25 16:59:41 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-09-10 13:07:32 -0400 |
commit | 259ad85d8dbbcd508e3dad29a36e3e76365853b7 (patch) | |
tree | 4330e34aea6c87aa09264d1e0d548b5bcfcb8b0f /drivers/scsi/fcoe/fcoe.h | |
parent | 250249898a92a1228050f40fbe3c05deb1392da8 (diff) |
[SCSI] fcoe: move packet handlers from fcoe_port to fcoe_interface
The packet handlers need to be tracked in fcoe_interface so there is only one
set per net_device. When NPIV is enabled there will be multiple SCSI hosts
and multiple fcoe_port structures on a single net_device.
The packet handlers match by ethertype and netdev. If the same handler gets
registered on a single netdev multiple times, the receive function will be
called multiple times for each frame.
Signed-off-by: Chris Leech <christopher.leech@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/fcoe/fcoe.h')
-rw-r--r-- | drivers/scsi/fcoe/fcoe.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/fcoe/fcoe.h b/drivers/scsi/fcoe/fcoe.h index 3b3886e99b48..685aa9d02226 100644 --- a/drivers/scsi/fcoe/fcoe.h +++ b/drivers/scsi/fcoe/fcoe.h | |||
@@ -83,6 +83,8 @@ struct fcoe_interface { | |||
83 | * moved out of fcoe_port */ | 83 | * moved out of fcoe_port */ |
84 | struct fcoe_port *priv; | 84 | struct fcoe_port *priv; |
85 | struct net_device *netdev; | 85 | struct net_device *netdev; |
86 | struct packet_type fcoe_packet_type; | ||
87 | struct packet_type fip_packet_type; | ||
86 | }; | 88 | }; |
87 | 89 | ||
88 | /* | 90 | /* |
@@ -92,8 +94,6 @@ struct fcoe_interface { | |||
92 | struct fcoe_port { | 94 | struct fcoe_port { |
93 | struct fcoe_interface *fcoe; | 95 | struct fcoe_interface *fcoe; |
94 | struct fc_exch_mgr *oem; /* offload exchange manger */ | 96 | struct fc_exch_mgr *oem; /* offload exchange manger */ |
95 | struct packet_type fcoe_packet_type; | ||
96 | struct packet_type fip_packet_type; | ||
97 | struct sk_buff_head fcoe_pending_queue; | 97 | struct sk_buff_head fcoe_pending_queue; |
98 | u8 fcoe_pending_queue_active; | 98 | u8 fcoe_pending_queue_active; |
99 | struct timer_list timer; /* queue timer */ | 99 | struct timer_list timer; /* queue timer */ |