aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/ehca/ehca_classes.h
diff options
context:
space:
mode:
authorStefan Roscher <ossrosch@linux.vnet.ibm.com>2008-10-22 15:52:31 -0700
committerRoland Dreier <rolandd@cisco.com>2008-10-22 15:52:31 -0700
commit19f4282149147b4a3e8c670373dc73ddd5d5facc (patch)
treee6b740a392f7c76dec479ec762c837b16d2e0651 /drivers/infiniband/hw/ehca/ehca_classes.h
parent0540bbbe455e123a1692d26205ad1a29983883b0 (diff)
downloadkernel_samsung_tuna-19f4282149147b4a3e8c670373dc73ddd5d5facc.zip
kernel_samsung_tuna-19f4282149147b4a3e8c670373dc73ddd5d5facc.tar.gz
kernel_samsung_tuna-19f4282149147b4a3e8c670373dc73ddd5d5facc.tar.bz2
IB/ehca: Fix reported max number of QPs and CQs in systems with >1 adapter
Because ehca adapters can differ in the maximum number of QPs and CQs we have to save the maximum number of these ressources per adapter and not globally per ehca driver. This fix introduces 2 new members to the shca structure to store the maximum value for QPs and CQs per adapter. The module parameters are now used as initial values for those variables. If a user selects an invalid number of CQs or QPs we don't print an error any longer, instead we will inform the user with a warning and set the values to the respective maximum supported by the HW. Signed-off-by: Stefan Roscher <stefan.roscher@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw/ehca/ehca_classes.h')
-rw-r--r--drivers/infiniband/hw/ehca/ehca_classes.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/ehca/ehca_classes.h b/drivers/infiniband/hw/ehca/ehca_classes.h
index 5d7b785..4df887a 100644
--- a/drivers/infiniband/hw/ehca/ehca_classes.h
+++ b/drivers/infiniband/hw/ehca/ehca_classes.h
@@ -128,6 +128,8 @@ struct ehca_shca {
/* MR pgsize: bit 0-3 means 4K, 64K, 1M, 16M respectively */
u32 hca_cap_mr_pgsize;
int max_mtu;
+ int max_num_qps;
+ int max_num_cqs;
atomic_t num_cqs;
atomic_t num_qps;
};