[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20090519133958.31ec120b.sfr@canb.auug.org.au>
Date: Tue, 19 May 2009 13:39:58 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: David Miller <davem@...emloft.net>
Cc: linux-next@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
Vasu Dev <vasu.dev@...el.com>,
Joe Eykholt <jeykholt@...co.com>,
Robert Love <robert.w.love@...el.com>,
James Bottomley <James.Bottomley@...senPartnership.com>,
Chris Leech <christopher.leech@...el.com>
Subject: linux-next: manual merge of the net tree with Linus' tree
Hi David,
Today's linux-next merge of the net tree got a conflict in
drivers/scsi/fcoe/fcoe.c between commit
6401bdcad536cc00589c38e7e1c140d3acc00087 ("[SCSI] fcoe: fip: add
multicast filter to receive FIP advertisements") from Linus' tree and
commit 184dd3459bb334d9061b58faed3610d08d6c7ff8 ("fcoe: adds spma mode
support") from the net tree.
There is another trivial conflict between commit
dd3fd72e692c8af007f70df4433c0cffe8582d8b ("[SCSI] fcoe: fix spelling
typos and bad comments") from Linus' tree and commit
ab6b85c1d7a1bf6c2b27fb542a7b2404e45b7e24 ("fcoe: consolidates netdev
related config and cleanup for spma mode") from the net tree.
Just context changes. I fixed them up (see below) and can carry them for
a while.
--
Cheers,
Stephen Rothwell sfr@...b.auug.org.au
diff --cc drivers/scsi/fcoe/fcoe.c
index 03e1926,f2d1612..0000000
--- a/drivers/scsi/fcoe/fcoe.c
+++ b/drivers/scsi/fcoe/fcoe.c
@@@ -136,8 -136,61 +136,60 @@@ static struct scsi_host_template fcoe_s
};
/**
+ * fcoe_fip_recv - handle a received FIP frame.
+ * @skb: the receive skb
+ * @dev: associated &net_device
+ * @ptype: the &packet_type structure which was used to register this handler.
+ * @orig_dev: original receive &net_device, in case @dev is a bond.
+ *
+ * Returns: 0 for success
+ */
+ static int fcoe_fip_recv(struct sk_buff *skb, struct net_device *dev,
+ struct packet_type *ptype,
+ struct net_device *orig_dev)
+ {
+ struct fcoe_softc *fc;
+
+ fc = container_of(ptype, struct fcoe_softc, fip_packet_type);
+ fcoe_ctlr_recv(&fc->ctlr, skb);
+ return 0;
+ }
+
+ /**
+ * fcoe_fip_send() - send an Ethernet-encapsulated FIP frame.
+ * @fip: FCoE controller.
+ * @skb: FIP Packet.
+ */
+ static void fcoe_fip_send(struct fcoe_ctlr *fip, struct sk_buff *skb)
+ {
+ skb->dev = fcoe_from_ctlr(fip)->real_dev;
+ dev_queue_xmit(skb);
+ }
+
+ /**
+ * fcoe_update_src_mac() - Update Ethernet MAC filters.
+ * @fip: FCoE controller.
+ * @old: Unicast MAC address to delete if the MAC is non-zero.
+ * @new: Unicast MAC address to add.
+ *
+ * Remove any previously-set unicast MAC filter.
+ * Add secondary FCoE MAC address filter for our OUI.
+ */
+ static void fcoe_update_src_mac(struct fcoe_ctlr *fip, u8 *old, u8 *new)
+ {
+ struct fcoe_softc *fc;
+
+ fc = fcoe_from_ctlr(fip);
+ rtnl_lock();
+ if (!is_zero_ether_addr(old))
+ dev_unicast_delete(fc->real_dev, old, ETH_ALEN);
+ dev_unicast_add(fc->real_dev, new, ETH_ALEN);
+ rtnl_unlock();
+ }
+
+ /**
* fcoe_lport_config() - sets up the fc_lport
* @lp: ptr to the fc_lport
- * @shost: ptr to the parent scsi host
*
* Returns: 0 for success
*/
@@@ -255,7 -349,8 +348,9 @@@ static int fcoe_netdev_config(struct fc
rtnl_lock();
memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN);
dev_unicast_add(fc->real_dev, flogi_maddr, ETH_ALEN);
+ dev_mc_add(fc->real_dev, FIP_ALL_ENODE_MACS, ETH_ALEN, 0);
+ if (fc->ctlr.spma)
+ dev_unicast_add(fc->real_dev, fc->ctlr.ctl_src_addr, ETH_ALEN);
rtnl_unlock();
/*
@@@ -370,17 -470,7 +470,7 @@@ static int fcoe_if_destroy(struct net_d
if (lp->emp)
fc_exch_mgr_free(lp->emp);
- /* Delete secondary MAC addresses */
- rtnl_lock();
- memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN);
- dev_unicast_delete(fc->real_dev, flogi_maddr, ETH_ALEN);
- if (!is_zero_ether_addr(fc->ctlr.data_src_addr))
- dev_unicast_delete(fc->real_dev,
- fc->ctlr.data_src_addr, ETH_ALEN);
- dev_mc_delete(fc->real_dev, FIP_ALL_ENODE_MACS, ETH_ALEN, 0);
- rtnl_unlock();
-
- /* Free the per-CPU revieve threads */
+ /* Free the per-CPU receive threads */
fcoe_percpu_clean(lp);
/* Free existing skbs */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists