[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070723104826.GD22877@2ka.mipt.ru>
Date: Mon, 23 Jul 2007 14:48:26 +0400
From: Evgeniy Polyakov <johnpol@....mipt.ru>
To: Krishna Kumar <krkumar2@...ibm.com>
Cc: davem@...emloft.net, rdreier@...co.com, Robert.Olsson@...a.slu.se,
rick.jones2@...com, herbert@...dor.apana.org.au, gaagaan@...il.com,
kumarkr@...ux.ibm.com, peter.p.waskiewicz.jr@...el.com,
mcarlson@...adcom.com, jagana@...ibm.com,
general@...ts.openfabrics.org, netdev@...r.kernel.org,
tgraf@...g.ch, jeff@...zik.org, sri@...ibm.com, hadi@...erus.ca,
kaber@...sh.net, mchan@...adcom.com, xma@...ibm.com
Subject: Re: [PATCH 11/12 -Rev2] IPoIB xmit API addition
On Sun, Jul 22, 2007 at 02:36:49PM +0530, Krishna Kumar (krkumar2@...ibm.com) wrote:
> diff -ruNp org/drivers/infiniband/ulp/ipoib/ipoib_ib.c rev2/drivers/infiniband/ulp/ipoib/ipoib_ib.c
> --- org/drivers/infiniband/ulp/ipoib/ipoib_ib.c 2007-07-20 07:49:28.000000000 +0530
> +++ rev2/drivers/infiniband/ulp/ipoib/ipoib_ib.c 2007-07-22 00:08:37.000000000 +0530
> @@ -242,8 +242,9 @@ repost:
> static void ipoib_ib_handle_tx_wc(struct net_device *dev, struct ib_wc *wc)
> {
> struct ipoib_dev_priv *priv = netdev_priv(dev);
> + int i = 0, num_completions;
> + int tx_ring_index = priv->tx_tail & (ipoib_sendq_size - 1);
> unsigned int wr_id = wc->wr_id;
> - struct ipoib_tx_buf *tx_req;
> unsigned long flags;
>
> ipoib_dbg_data(priv, "send completion: id %d, status: %d\n",
> @@ -255,23 +256,57 @@ static void ipoib_ib_handle_tx_wc(struct
> return;
> }
>
> - tx_req = &priv->tx_ring[wr_id];
> + num_completions = wr_id - tx_ring_index + 1;
> + if (num_completions <= 0)
> + num_completions += ipoib_sendq_size;
Can this still be less than zero?
--
Evgeniy Polyakov
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists