[SCSI] fcoe: move offload exchange manager pointer from fcoe_port to fcoe_interface
[linux-2.6-block.git] / drivers / scsi / fcoe / fcoe.c
index 01519c722edf9994a7f469b0b2ae1c97169d5f76..bb59a7a04f23f75a22915b262607b38d141cf3ed 100644 (file)
@@ -438,7 +438,6 @@ bool fcoe_oem_match(struct fc_frame *fp)
 static inline int fcoe_em_config(struct fc_lport *lp)
 {
        struct fcoe_port *port = lport_priv(lp);
-       struct fcoe_port *oldport = NULL;
        struct fcoe_interface *fcoe = port->fcoe;
        struct fcoe_interface *oldfcoe = NULL;
        struct net_device *old_real_dev, *cur_real_dev;
@@ -464,30 +463,29 @@ static inline int fcoe_em_config(struct fc_lport *lp)
                cur_real_dev = fcoe->netdev;
 
        list_for_each_entry(oldfcoe, &fcoe_hostlist, list) {
-               oldport = oldfcoe->priv;
                if (oldfcoe->netdev->priv_flags & IFF_802_1Q_VLAN)
                        old_real_dev = vlan_dev_real_dev(oldfcoe->netdev);
                else
                        old_real_dev = oldfcoe->netdev;
 
                if (cur_real_dev == old_real_dev) {
-                       port->oem = oldport->oem;
+                       fcoe->oem = oldfcoe->oem;
                        break;
                }
        }
 
-       if (port->oem) {
-               if (!fc_exch_mgr_add(lp, port->oem, fcoe_oem_match)) {
+       if (fcoe->oem) {
+               if (!fc_exch_mgr_add(lp, fcoe->oem, fcoe_oem_match)) {
                        printk(KERN_ERR "fcoe_em_config: failed to add "
                               "offload em:%p on interface:%s\n",
-                              port->oem, fcoe->netdev->name);
+                              fcoe->oem, fcoe->netdev->name);
                        return -ENOMEM;
                }
        } else {
-               port->oem = fc_exch_mgr_alloc(lp, FC_CLASS_3,
+               fcoe->oem = fc_exch_mgr_alloc(lp, FC_CLASS_3,
                                            FCOE_MIN_XID, lp->lro_xid,
                                            fcoe_oem_match);
-               if (!port->oem) {
+               if (!fcoe->oem) {
                        printk(KERN_ERR "fcoe_em_config: failed to allocate "
                               "em for offload exches on interface:%s\n",
                               fcoe->netdev->name);