Ib/hfi1: Return actual operational VLs in port info query
__subn_get_opa_portinfo stores value returned by hfi1_get_ib_cfg() as operational vls. hfi1_get_ib_cfg() returns vls_operational field in hfi1_pportdata. The problem with this is that the value is always equal to vls_supported field in hfi1_pportdata. The logic to calculate operational_vls is to set value passed by FM (in __subn_set_opa_portinfo routine). If no value is passed then default value is stored in operational_vls. Field actual_vls_operational is calculated on the basis of buffer control table. Hence, modifying hfi1_get_ib_cfg() to return actual_operational_vls when used with HFI1_IB_CFG_OP_VLS parameter Reviewed-by: Mike Marciniszyn <mike.marciniszyn@intel.com> Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Patel Jay P <jay.p.patel@intel.com> Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
Родитель
4061f3a4da
Коммит
00f9203119
|
@ -9966,7 +9966,7 @@ int hfi1_get_ib_cfg(struct hfi1_pportdata *ppd, int which)
|
|||
goto unimplemented;
|
||||
|
||||
case HFI1_IB_CFG_OP_VLS:
|
||||
val = ppd->vls_operational;
|
||||
val = ppd->actual_vls_operational;
|
||||
break;
|
||||
case HFI1_IB_CFG_VL_HIGH_CAP: /* VL arb high priority table size */
|
||||
val = VL_ARB_HIGH_PRIO_TABLE_SIZE;
|
||||
|
|
Загрузка…
Ссылка в новой задаче