RE: [PATCH infiniband-diags] ibdiag_common.c: In is_port_info_extended_supported, query PortInfo for port 0 when node is a switch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 
> 
> to be able to obtain CapabilityMask and CapabilityMask2 as these fields are not
> used on switch external ports (only on switch port 0)
> 
> Signed-off-by: Hal Rosenstock <hal@xxxxxxxxxxxx>

Thanks!

This and 

	Add support for QP1Dropped counter in PortCounters attribute

accepted,
Ira


> ---
>  src/ibdiag_common.c | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/src/ibdiag_common.c b/src/ibdiag_common.c index 9245146..c33cacc
> 100644
> --- a/src/ibdiag_common.c
> +++ b/src/ibdiag_common.c
> @@ -506,8 +506,18 @@ int is_port_info_extended_supported(ib_portid_t *
> dest, int port,
>  	uint8_t data[IB_SMP_DATA_SIZE] = { 0 };
>  	uint32_t cap_mask;
>  	uint16_t cap_mask2;
> +	int type, portnum;
> 
> -	if (!smp_query_via(data, dest, IB_ATTR_PORT_INFO, port, 0, srcport))
> +	if (!smp_query_via(data, dest, IB_ATTR_NODE_INFO, 0, 0, srcport))
> +		IBEXIT("node info query failed");
> +
> +	mad_decode_field(data, IB_NODE_TYPE_F, &type);
> +	if (type == IB_NODE_SWITCH)
> +		portnum = 0;
> +	else
> +		portnum = port;
> +
> +	if (!smp_query_via(data, dest, IB_ATTR_PORT_INFO, portnum, 0,
> +srcport))
>  		IBEXIT("port info query failed");
> 
>  	mad_decode_field(data, IB_PORT_CAPMASK_F, &cap_mask);
> --
> 2.8.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body
> of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at
> http://vger.kernel.org/majordomo-info.html
��.n��������+%������w��{.n�����{���fk��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux