]> git.baikalelectronics.ru Git - kernel.git/commit
IB/mad: include GID/class when matching receives
authorJack Morgenstein <jackm@mellanox.co.il>
Wed, 29 Mar 2006 00:39:07 +0000 (16:39 -0800)
committerRoland Dreier <rolandd@cisco.com>
Thu, 30 Mar 2006 15:19:48 +0000 (07:19 -0800)
commit1ab66b422384ca6f56910330a0cfe8e8d0b2caa7
tree100d516324208e1a4a65b77e86bcbc94f5ef0db9
parent4fe9c70059dac6500953dd27efe7b2805bc915ec
IB/mad: include GID/class when matching receives

Received responses are currently matched against sent requests based
on TID only.  According to the spec, responses should match based on
the combination of TID, management class, and requester LID/GID.

Without the additional qualification, an agent that is responding to
two requests, both of which have the same TID, can match RMPP ACKs
with the incorrect transaction.  This problem can occur on the SM node
when responding to SA queries.

Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/core/mad.c
drivers/infiniband/core/mad_priv.h
drivers/infiniband/core/mad_rmpp.c