<html><body>
<p>Hello Roland,<br>
<br>
Here is the new patch against 2.6.20-rc1 kernel. Please review it.<br>
<br>
diff -urpN ipoib/ipoib_multicast.c ipoib-link/ipoib_multicast.c<br>
--- ipoib/ipoib_multicast.c     2007-02-27 07:21:50.000000000 -0800<br>
+++ ipoib-link/ipoib_multicast.c        2007-02-27 07:52:10.000000000 -0800<br>
@@ -407,6 +407,11 @@ static int ipoib_mcast_join_complete(int<br>
                        queue_delayed_work(ipoib_workqueue,<br>
                                           &priv->mcast_task, 0);<br>
                mutex_unlock(&mcast_mutex);<br>
+               /*<br>
+                * broadcast join finished, enable carrier<br>
+                */<br>
+               if (unlikely(mcast == priv->broadcast))<br>
+                       netif_carrier_on(dev);<br>
                return 0;<br>
        }<br>
 <br>
@@ -596,7 +601,6 @@ void ipoib_mcast_join_task(struct work_s<br>
        ipoib_dbg_mcast(priv, "successfully joined all multicast groups\n");<br>
 <br>
        clear_bit(IPOIB_MCAST_RUN, &priv->flags);<br>
-       netif_carrier_on(dev);<br>
 }<br>
 <br>
 int ipoib_mcast_start_thread(struct net_device *dev)<br>
<br>
<i>(See attached file: ipoib-link.patch)</i><br>
<br>
Thanks<br>
Shirley Ma</body></html>