Roland Dreier <[EMAIL PROTECTED]> wrote on 05/23/2006 09:09:05 AM:

> Did you send the other 6 patches in this series?
Yes, I am splitting these patches.


> I was waiting to comment until I had all the patches, but there is one
> really bad thing here:
>
>  > +       IPOIB_NUM_SEND_WC         = 32,
>
>  > +void ipoib_ib_send_completion(struct ib_cq *cq, void *dev_ptr)
>  > +{
>  > +       struct net_device *dev = (struct net_device *) dev_ptr;
>  > +       struct ipoib_dev_priv *priv = netdev_priv(dev);
>  > +       struct ib_wc ibwc[IPOIB_NUM_SEND_WC];
>
> If I'm doing the math correctly, this function now uses more than 2K
> of stack, which is of course unacceptable.
>
> I don't think there's any way around keeping the wc array in the
> ipoib_dev_priv structure.
>
>  - R.

The stack is 4k, not 8K anymore. I think we can still use IPOIB_NUM_SEND_WC as 4. I modified mthca_XXX_post_send to remove lock totally before(since sender is exclusive), and found that lock didn't impact performance too much.

Thanks
Shirley Ma
IBM Linux Technology Center
15300 SW Koll Parkway
Beaverton, OR 97006-6063
Phone(Fax): (503) 578-7638



_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to