IB/hfi1: Error path MAD response size is incorrect
authorMichael J. Ruhl <michael.j.ruhl@intel.com>
Fri, 28 Sep 2018 14:34:57 +0000 (07:34 -0700)
committerJason Gunthorpe <jgg@mellanox.com>
Mon, 1 Oct 2018 01:21:11 +0000 (19:21 -0600)
commit935c84ac649a147e1aad2c48ee5c5a1a9176b2d0
treeb62ffae009b24f8062846900adede5cbb02c6d15
parent721ad7e643f7002efa398838693f90284ea216d1
IB/hfi1: Error path MAD response size is incorrect

If a MAD packet has incorrect header information, the logic uses the reply
path to report the error.  The reply path expects *resp_len to be set
prior to return.  Unfortunately, *resp_len is set to 0 for this path.
This causes an incorrect response packet.

Fix by ensuring that the *resp_len is defaulted to the incoming packet
size (wc->bytes_len - sizeof(GRH)).

Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Michael J. Ruhl <michael.j.ruhl@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/hfi1/mad.c