diff options
author | Alexander Schmidt <alexs@linux.vnet.ibm.com> | 2010-02-16 08:59:50 +0000 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2010-02-19 11:13:39 -0800 |
commit | 45e354e3f235ecb51e16576d6668c43cddbb6e68 (patch) | |
tree | 8bbcb9c6925d79460e2c13e5c9f9e0a0a4cece22 /drivers/infiniband/hw/ehca/ehca_sqp.c | |
parent | fa55e30bc35bf4ec5a7304a537c0ce5438e908e2 (diff) |
IB/ehca: Require in_wc in process_mad()
If the caller does not pass a valid in_wc to process_mad(), return MAD
failure status, as it is not possible to generate a valid MAD redirect
response (and redirects are the only MAD responses ehca generates).
Signed-off-by: Alexander Schmidt <alexs@linux.vnet.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw/ehca/ehca_sqp.c')
-rw-r--r-- | drivers/infiniband/hw/ehca/ehca_sqp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/ehca/ehca_sqp.c b/drivers/infiniband/hw/ehca/ehca_sqp.c index 8c1213f8916a..dba8f9f8b996 100644 --- a/drivers/infiniband/hw/ehca/ehca_sqp.c +++ b/drivers/infiniband/hw/ehca/ehca_sqp.c @@ -222,7 +222,7 @@ int ehca_process_mad(struct ib_device *ibdev, int mad_flags, u8 port_num, { int ret; - if (!port_num || port_num > ibdev->phys_port_cnt) + if (!port_num || port_num > ibdev->phys_port_cnt || !in_wc) return IB_MAD_RESULT_FAILURE; /* accept only pma request */ |