[openib-general] [PATCH] agent: Fix agent_mad_send PCI mapping and gather address and length

Hal Rosenstock halr at voltaire.com
Wed Nov 10 06:28:11 PST 2004


On Wed, 2004-11-10 at 00:55, Roland Dreier wrote:
> It seems that MAD handling is still not quite right.  It seems in my
> set up that IPoIB is not seeing the response to its MCMember
> set... (it does look like the query is reaching the SM)

This is a separate issue from the ports not becoming active (DR handling
issue). I broke this part yesterday (not a good day at all :-( at either
r1184 and/or r1181 when I added what I thought was correct based on
Sean's emails (not dispatching additional error cases in
ib_mad_recv_done_handler (and then improperly thought I verified the
changes that things were still working)).

I can see now that this is wrong and have a fix for what stops IPoIB
from working. The problem was that the response was received by the MAD
layer but not dispatched due to the change(s) noted above.

So I am patching at least enough to get things operational for now.
Please confirm that it works for you. I will not touch things until I
hear that it does.

Also, it seems to me that no response needs to be handed to process_mad.
Does this optimization make sense ?

Sorry for the temporary inconvenience. I will try not to do this again.
It is no fun for anyone.

-- Hal

mad: In ib_mad_recv_done_handler, if process_mad returns SUCCESS but not
REPLY, received packet still needs to be dispatched

Index: mad.c
===================================================================
--- mad.c	(revision 1187)
+++ mad.c	(working copy)
@@ -1151,8 +1151,8 @@
 						port_priv->device,
 						port_priv->port_num))
 					response = NULL;
+				goto out;
 			}
-			goto out;
 		} 
 	}
 






More information about the general mailing list