Commit b7f9c112 authored by Roland Dreier's avatar Roland Dreier

IB/mthca: Free correct MPT on error exit from mthca_fmr_alloc()

When mthca_fmr_alloc() returns an error, it should free the MPT at the
index key, not mr->ibmr.lkey, since the lkey has been mangled by
hw_index_to_key() and no longer is the real index.  This bug causes
corruption of the MPT table free bitmap when mthca_fmr_alloc() fails.
Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
parent ec229e5e
...@@ -686,7 +686,7 @@ err_out_table: ...@@ -686,7 +686,7 @@ err_out_table:
mthca_table_put(dev, dev->mr_table.mpt_table, key); mthca_table_put(dev, dev->mr_table.mpt_table, key);
err_out_mpt_free: err_out_mpt_free:
mthca_free(&dev->mr_table.mpt_alloc, mr->ibmr.lkey); mthca_free(&dev->mr_table.mpt_alloc, key);
return err; return err;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment