RE: [PATH for-next] RDMA/siw: Fix setting active_{speed, width} attributes

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

 



-----"Potnuri Bharat Teja" <bharat@xxxxxxxxxxx> wrote: -----

>To: "Bernard Metzler" <BMT@xxxxxxxxxxxxxx>
>From: "Potnuri Bharat Teja" <bharat@xxxxxxxxxxx>
>Date: 02/17/2020 03:51PM
>Cc: "Kamal Heib" <kamalheib1@xxxxxxxxx>, "linux-rdma@xxxxxxxxxxxxxxx"
><linux-rdma@xxxxxxxxxxxxxxx>, "Jason Gunthorpe" <jgg@xxxxxxxx>, "Doug
>Ledford" <dledford@xxxxxxxxxx>
>Subject: [EXTERNAL] Re: [PATH for-next] RDMA/siw: Fix setting
>active_{speed, width} attributes
>
>On Monday, February 02/17/20, 2020 at 19:57:54 +0530, Bernard Metzler
>wrote:
>> -----"Kamal Heib" <kamalheib1@xxxxxxxxx> wrote: -----
>> 
>> >To: "Bernard Metzler" <BMT@xxxxxxxxxxxxxx>
>> >From: "Kamal Heib" <kamalheib1@xxxxxxxxx>
>> >Date: 02/17/2020 03:12PM
>> >Cc: linux-rdma@xxxxxxxxxxxxxxx, "Jason Gunthorpe" <jgg@xxxxxxxx>,
>> >"Doug Ledford" <dledford@xxxxxxxxxx>
>> >Subject: [EXTERNAL] Re: [PATH for-next] RDMA/siw: Fix setting
>> >active_{speed, width} attributes
>> >
>> >On Mon, Feb 17, 2020 at 10:13:21AM +0000, Bernard Metzler wrote:
>> >> -----"Kamal Heib" <kamalheib1@xxxxxxxxx> wrote: -----
>> >> 
>> >> >To: "Bernard Metzler" <BMT@xxxxxxxxxxxxxx>
>> >> >From: "Kamal Heib" <kamalheib1@xxxxxxxxx>
>> >> >Date: 02/16/2020 02:43PM
>> >> >Cc: linux-rdma@xxxxxxxxxxxxxxx, "Jason Gunthorpe"
><jgg@xxxxxxxx>,
>> >> >"Doug Ledford" <dledford@xxxxxxxxxx>
>> >> >Subject: [EXTERNAL] Re: [PATH for-next] RDMA/siw: Fix setting
>> >> >active_{speed, width} attributes
>> >> >
>> >> >On Thu, Feb 13, 2020 at 01:59:30PM +0000, Bernard Metzler
>wrote:
>> >> >> -----"Kamal Heib" <kamalheib1@xxxxxxxxx> wrote: -----
>> >> >> 
>> >> >> >To: linux-rdma@xxxxxxxxxxxxxxx
>> >> >> >From: "Kamal Heib" <kamalheib1@xxxxxxxxx>
>> >> >> >Date: 02/13/2020 02:07PM
>> >> >> >Cc: "Jason Gunthorpe" <jgg@xxxxxxxx>, "Doug Ledford"
>> >> >> ><dledford@xxxxxxxxxx>, "Bernard Metzler"
><bmt@xxxxxxxxxxxxxx>,
>> >> >"Kamal
>> >> >> >Heib" <kamalheib1@xxxxxxxxx>
>> >> >> >Subject: [EXTERNAL] [PATH for-next] RDMA/siw: Fix setting
>> >> >> >active_{speed, width} attributes
>> >> >> >
>> >> >> >Make sure to set the active_{speed, width} attributes to
>avoid
>> >> >> >reporting
>> >> >> >the same values regardless of the underlying device.
>> >> >> >
>> >> >> >Fixes: 303ae1cdfdf7 ("rdma/siw: application interface")
>> >> >> >Signed-off-by: Kamal Heib <kamalheib1@xxxxxxxxx>
>> >> >> >---
>> >> >> > drivers/infiniband/sw/siw/siw_verbs.c | 7 ++++---
>> >> >> > 1 file changed, 4 insertions(+), 3 deletions(-)
>> >> >> >
>> >> >> >diff --git a/drivers/infiniband/sw/siw/siw_verbs.c
>> >> >> >b/drivers/infiniband/sw/siw/siw_verbs.c
>> >> >> >index 73485d0da907..b1aaec912edb 100644
>> >> >> >--- a/drivers/infiniband/sw/siw/siw_verbs.c
>> >> >> >+++ b/drivers/infiniband/sw/siw/siw_verbs.c
>> >> >> >@@ -165,11 +165,12 @@ int siw_query_port(struct ib_device
>> >> >*base_dev,
>> >> >> >u8 port,
>> >> >> > 		   struct ib_port_attr *attr)
>> >> >> > {
>> >> >> > 	struct siw_device *sdev = to_siw_dev(base_dev);
>> >> >> >+	int rc;
>> >> >> > 
>> >> >> > 	memset(attr, 0, sizeof(*attr));
>> >> >> > 
>> >> >> >-	attr->active_speed = 2;
>> >> >> >-	attr->active_width = 2;
>> >> >> >+	rc = ib_get_eth_speed(base_dev, port, &attr->active_speed,
>> >> >> >+			 &attr->active_width);
>> >> >> > 	attr->gid_tbl_len = 1;
>> >> >> > 	attr->max_msg_sz = -1;
>> >> >> > 	attr->max_mtu = ib_mtu_int_to_enum(sdev->netdev->mtu);
>> >> >> >@@ -192,7 +193,7 @@ int siw_query_port(struct ib_device
>> >*base_dev,
>> >> >u8
>> >> >> >port,
>> >> >> > 	 * attr->subnet_timeout = 0;
>> >> >> > 	 * attr->init_type_repy = 0;
>> >> >> > 	 */
>> >> >> >-	return 0;
>> >> >> >+	return rc;
>> >> >> > }
>> >> >> > 
>> >> >> > int siw_get_port_immutable(struct ib_device *base_dev, u8
>> >port,
>> >> >> >-- 
>> >> >> >2.21.1
>> >> >> >
>> >> >> >
>> >> >> Hi Kamal, 
>> >> >
>> >> >Hi Bernard,
>> >> >
>> >> >> Many thanks for looking after this! So there definitely seem
>to 
>> >> >> be applications which are taking care of those values. So,
>good
>> >> >> to get my obvious laziness fixed.
>> >> >> 
>> >> >
>> >> >Sure :)
>> >> >
>> >> >> I tried your patch on a 40Gbs Ethernet link (Chelsio cxgb4
>> >driver).
>> >> >> Works in principle, but reported numbers are off. I am not
>> >saying
>> >> >> I would get right numbers when using Chelsio HW iWarp
>> >(iw_cxgb4),
>> >> >> but it's closer to reality (using ibv_devinfo <ibname> -vv)
>> >> >> 
>> >> >> iw_cxgb4 driver:
>> >> >> ...
>> >> >>    active_width:           4X (2)
>> >> >>    active_speed:           25.0 Gbps (32)
>> >> >> 
>> >> >> siw driver with your patch:
>> >> >> ...
>> >> >>    active_width:           4X (2)
>> >> >>    active_speed:           10.0 Gbps (8)
>> >> >> 
>> >> >> Any idea how we can improve that, maybe coming even
>> >> >> close to reality (40Gbs)?
>> >> >
>> >> >Could you please share the output of ethtool <if_name> for the
>> >> >underlying
>> >> >net device that used for both iw_cxgb4 and siw?
>> >> >
>> >> H Kamal,
>> >> 
>> >> Sure! Speed looks correct, and its also what I get
>> >> at maximum:
>> >> 
>> >> [bmt@spoke ~]$ ethtool enp1s0f4 
>> >> Settings for enp1s0f4:
>> >>         Supported ports: [ FIBRE ]
>> >>         Supported link modes:   40000baseSR4/Full 
>> >>         Supported pause frame use: Symmetric
>> >>         Supports auto-negotiation: Yes
>> >>         Supported FEC modes: None
>> >>         Advertised link modes:  40000baseSR4/Full 
>> >>         Advertised pause frame use: Symmetric
>> >>         Advertised auto-negotiation: Yes
>> >>         Advertised FEC modes: None
>> >>         Link partner advertised link modes:  40000baseSR4/Full 
>> >>         Link partner advertised pause frame use: Symmetric
>> >>         Link partner advertised auto-negotiation: Yes
>> >>         Link partner advertised FEC modes: None
>> >>         Speed: 40000Mb/s
>> >>         Duplex: Full
>> >>         Port: Direct Attach Copper
>> >>         PHYAD: 255
>> >>         Transceiver: internal
>> >>         Auto-negotiation: on
>> >> Cannot get wake-on-lan settings: Operation not permitted
>> >>         Current message level: 0x000000ff (255)
>> >>                                drv probe link timer ifdown ifup
>> >rx_err tx_err
>> >>         Link detected: yes
>> >>
>> >
>> >Hi Bernard,
>> >
>> >Well, this is the expected value for 40GbE, Because the reported
>> >value
>> >is 4X aggregation of FDR10. For more info please the table of
>speeds
>> >under [1].
>> >
>> >[1] -
>>
>>https://urldefense.proofpoint.com/v2/url?u=https-3A__en.wikipedia.or
>g
>>
>>_wiki_InfiniBand&d=DwIBAg&c=jf_iaSHvJObTbx-siA1ZOg&r=2TaYXQ0T-r8ZO1P
>P
>>
>>1alNwU_QJcRRLfmYTAgd3QCvqSc&m=Ay2tYZ7Z-SHKRw8UZDCk76kwlZzvkXhRMrO_0j
>k
>> >YjcY&s=D4Z0CAH5UVO95WHNnUozLzrqjxRQgVe-2lc8_jwVlhw&e= 
>> >
>> >Thanks,
>> >Kamal
>> >
>> Hi Kamal, so I have to do the math! 4 x 10Gbs = 40Gbs.
>> So it is all correct as reported by ibv_devinfio
>> (and somehow strange what the iw_cxgb4 makes out of it).
>Hi Bernard,
>Are you running siw and iw_cxgb4 on the same port or different ports?
>if not same, Is the port running iw_cxgb4 connected with 100G cable?
>If 40G cable is conencted to iw_cxgb4 as well then its reporting
>wrong.
>
This is a single port 40Gbs setup. All my fault:
For iw_cxgb4, I looked at the reported values for the second
port, which is not physically connected but reported PORT_DOWN
and 4 x 25Gbs.
The connected port 1 has 4 x 10Gbs for both siw and iw_cxgb4.
Sorry about the confusion!

So its all good.

Thanks
Bernard.




[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