Re: [PATCH v2] IB/core: sysfs.c: Fix PerfMgt ClassPortInfo handling
Reviewed-by: Christoph Lameter-- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v2] IB/core: sysfs.c: Fix PerfMgt ClassPortInfo handling
On 12/29/2015 7:21 AM, Or Gerlitz wrote: > On 12/29/2015 12:43 PM, Hal Rosenstock wrote: >> This handles issue pointed out by Matan Barak>> >> Fixes: 145d9c541032 ('IB/core: Display extended counter set if >> available') >> >> Signed-off-by: Hal Rosenstock > again, remove the blank line after the fixes tag. > > Also, I am not that the way Doug is setting the branch for pull would > preserve commit IDs when > the offending patch landed in Linus tree. If this is the case, we should > put your patch in 2nd pull > request and have the right commit ID there. Please check with Doug. Doug ? -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v2] IB/core: sysfs.c: Fix PerfMgt ClassPortInfo handling
On 12/29/2015 12:43 PM, Hal Rosenstock wrote: Port number is not part of ClassPortInfo attribute but is still needed as a parameter when invoking process_mad. Please remove the blank line above your 1st sentence. To properly handle this attribute, port_num is added as a parameter to get_counter_table and get_perf_mad was changed not to store port_num in the attribute itself when it's querying the ClassPortInfo attribute. This handles issue pointed out by Matan BarakFixes: 145d9c541032 ('IB/core: Display extended counter set if available') Signed-off-by: Hal Rosenstock again, remove the blank line after the fixes tag. Also, I am not that the way Doug is setting the branch for pull would preserve commit IDs when the offending patch landed in Linus tree. If this is the case, we should put your patch in 2nd pull request and have the right commit ID there. Please check with Doug. Acked-by: Matan Barak Acked-by: Ira Weiny --- Change from v1: Added fixes line to description So this patch makes mlx4 IB driver on Eth ports workable with the 4.5-rc1 proposed bits? -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v2] IB/core: sysfs.c: Fix PerfMgt ClassPortInfo handling
Port number is not part of ClassPortInfo attribute but is still needed as a parameter when invoking process_mad. To properly handle this attribute, port_num is added as a parameter to get_counter_table and get_perf_mad was changed not to store port_num in the attribute itself when it's querying the ClassPortInfo attribute. This handles issue pointed out by Matan BarakFixes: 145d9c541032 ('IB/core: Display extended counter set if available') Signed-off-by: Hal Rosenstock Acked-by: Matan Barak Acked-by: Ira Weiny --- Change from v1: Added fixes line to description diff --git a/drivers/infiniband/core/sysfs.c b/drivers/infiniband/core/sysfs.c index 539040f..2daf832 100644 --- a/drivers/infiniband/core/sysfs.c +++ b/drivers/infiniband/core/sysfs.c @@ -438,7 +438,8 @@ static int get_perf_mad(struct ib_device *dev, int port_num, int attr, in_mad->mad_hdr.method= IB_MGMT_METHOD_GET; in_mad->mad_hdr.attr_id = attr; - in_mad->data[41] = port_num;/* PortSelect field */ + if (attr != IB_PMA_CLASS_PORT_INFO) + in_mad->data[41] = port_num;/* PortSelect field */ if ((dev->process_mad(dev, IB_MAD_IGNORE_MKEY, port_num, NULL, NULL, @@ -714,11 +715,12 @@ err: * Figure out which counter table to use depending on * the device capabilities. */ -static struct attribute_group *get_counter_table(struct ib_device *dev) +static struct attribute_group *get_counter_table(struct ib_device *dev, +int port_num) { struct ib_class_port_info cpi; - if (get_perf_mad(dev, 0, IB_PMA_CLASS_PORT_INFO, + if (get_perf_mad(dev, port_num, IB_PMA_CLASS_PORT_INFO, , 40, sizeof(cpi)) >= 0) { if (cpi.capability_mask && IB_PMA_CLASS_CAP_EXT_WIDTH) @@ -776,7 +778,7 @@ static int add_port(struct ib_device *device, int port_num, goto err_put; } - p->pma_table = get_counter_table(device); + p->pma_table = get_counter_table(device, port_num); ret = sysfs_create_group(>kobj, p->pma_table); if (ret) goto err_put_gid_attrs; -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html