From 34bab920a5a4c2538a66b929c581250e5e88eca6 Mon Sep 17 00:00:00 2001 From: Roland Dreier Date: Mon, 27 Sep 2010 17:51:24 -0700 Subject: [PATCH] --- yaml --- r: 217745 b: refs/heads/master c: 605841f5d263892d9254f09fcf265a26e0bede7e h: refs/heads/master i: 217743: f778c1fb89c9c0a9e8628cf28feb1d6d1d950053 v: v3 --- [refs] | 2 +- trunk/MAINTAINERS | 2 +- trunk/drivers/infiniband/ulp/ipoib/ipoib_ib.c | 14 +++----------- trunk/drivers/infiniband/ulp/ipoib/ipoib_main.c | 1 - 4 files changed, 5 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index 81878ce406ef..fa387f1a00c5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c3aa9b186b95025d4ba4e90d6140c9887dfaae0a +refs/heads/master: 605841f5d263892d9254f09fcf265a26e0bede7e diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index 668682d1f5fa..d133984bcd90 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -2951,7 +2951,7 @@ M: Roland Dreier M: Sean Hefty M: Hal Rosenstock L: linux-rdma@vger.kernel.org -W: http://www.openib.org/ +W: http://www.openfabrics.org/ Q: http://patchwork.kernel.org/project/linux-rdma/list/ T: git git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband.git S: Supported diff --git a/trunk/drivers/infiniband/ulp/ipoib/ipoib_ib.c b/trunk/drivers/infiniband/ulp/ipoib/ipoib_ib.c index dfa71903d6e4..ec6b4fbe25e4 100644 --- a/trunk/drivers/infiniband/ulp/ipoib/ipoib_ib.c +++ b/trunk/drivers/infiniband/ulp/ipoib/ipoib_ib.c @@ -223,7 +223,6 @@ static void ipoib_ib_handle_rx_wc(struct net_device *dev, struct ib_wc *wc) unsigned int wr_id = wc->wr_id & ~IPOIB_OP_RECV; struct sk_buff *skb; u64 mapping[IPOIB_UD_RX_SG]; - union ib_gid *dgid; ipoib_dbg_data(priv, "recv completion: id %d, status: %d\n", wr_id, wc->status); @@ -272,16 +271,6 @@ static void ipoib_ib_handle_rx_wc(struct net_device *dev, struct ib_wc *wc) ipoib_ud_dma_unmap_rx(priv, mapping); ipoib_ud_skb_put_frags(priv, skb, wc->byte_len); - /* First byte of dgid signals multicast when 0xff */ - dgid = &((struct ib_grh *)skb->data)->dgid; - - if (!(wc->wc_flags & IB_WC_GRH) || dgid->raw[0] != 0xff) - skb->pkt_type = PACKET_HOST; - else if (memcmp(dgid, dev->broadcast + 4, sizeof(union ib_gid)) == 0) - skb->pkt_type = PACKET_BROADCAST; - else - skb->pkt_type = PACKET_MULTICAST; - skb_pull(skb, IB_GRH_BYTES); skb->protocol = ((struct ipoib_header *) skb->data)->proto; @@ -292,6 +281,9 @@ static void ipoib_ib_handle_rx_wc(struct net_device *dev, struct ib_wc *wc) dev->stats.rx_bytes += skb->len; skb->dev = dev; + /* XXX get correct PACKET_ type here */ + skb->pkt_type = PACKET_HOST; + if (test_bit(IPOIB_FLAG_CSUM, &priv->flags) && likely(wc->csum_ok)) skb->ip_summed = CHECKSUM_UNNECESSARY; diff --git a/trunk/drivers/infiniband/ulp/ipoib/ipoib_main.c b/trunk/drivers/infiniband/ulp/ipoib/ipoib_main.c index 30d23334f967..b4b22576f12a 100644 --- a/trunk/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ b/trunk/drivers/infiniband/ulp/ipoib/ipoib_main.c @@ -1240,7 +1240,6 @@ static struct net_device *ipoib_add_port(const char *format, goto alloc_mem_failed; SET_NETDEV_DEV(priv->dev, hca->dma_device); - priv->dev->dev_id = port - 1; if (!ib_query_port(hca, port, &attr)) priv->max_ib_mtu = ib_mtu_enum_to_int(attr.max_mtu);