On 2019/8/24 9:25, santosh.shilimkar@xxxxxxxxxx wrote:
On 8/23/19 6:04 PM, Zhu Yanjun wrote:
From IB specific 7.6.5 SERVICE LEVEL, Service Level (SL)
is used to identify different flows within an IBA subnet.
It is carried in the local route header of the packet.
Before this commit, run "rds-info -I". The outputs are as
below:
"
RDS IB Connections:
LocalAddr RemoteAddr Tos SL LocalDev RemoteDev
192.2.95.3 192.2.95.1 2 0 fe80::21:28:1a:39 fe80::21:28:10:b9
192.2.95.3 192.2.95.1 1 0 fe80::21:28:1a:39 fe80::21:28:10:b9
192.2.95.3 192.2.95.1 0 0 fe80::21:28:1a:39 fe80::21:28:10:b9
"
After this commit, the output is as below:
"
RDS IB Connections:
LocalAddr RemoteAddr Tos SL LocalDev RemoteDev
192.2.95.3 192.2.95.1 2 2 fe80::21:28:1a:39 fe80::21:28:10:b9
192.2.95.3 192.2.95.1 1 1 fe80::21:28:1a:39 fe80::21:28:10:b9
192.2.95.3 192.2.95.1 0 0 fe80::21:28:1a:39 fe80::21:28:10:b9
"
The commit fe3475af3bdf ("net: rds: add per rds connection cache
statistics") adds cache_allocs in struct rds_info_rdma_connection
as below:
struct rds_info_rdma_connection {
...
__u32 rdma_mr_max;
__u32 rdma_mr_size;
__u8 tos;
__u32 cache_allocs;
};
The peer struct in rds-tools of struct rds_info_rdma_connection is as
below:
struct rds_info_rdma_connection {
...
uint32_t rdma_mr_max;
uint32_t rdma_mr_size;
uint8_t tos;
uint8_t sl;
uint32_t cache_allocs;
};
The difference between userspace and kernel is the member variable sl.
In the kernel struct, the member variable sl is missing. This will
introduce risks. So it is necessary to use this commit to avoid this
risk.
Fixes: fe3475af3bdf ("net: rds: add per rds connection cache
statistics")
CC: Joe Jin <joe.jin@xxxxxxxxxx>
CC: JUNXIAO_BI <junxiao.bi@xxxxxxxxxx>
Suggested-by: Gerd Rausch <gerd.rausch@xxxxxxxxxx>
Signed-off-by: Zhu Yanjun <yanjun.zhu@xxxxxxxxxx>
---
V1->V2: fix typos in commit logs.
---
I did ask you when ypu posted the patch about whether you did
backward compatibility tests for which you said, you did all the
tests and said "So do not worry about backward compatibility. This
commit will work well with older rds-tools2.0.5 and 2.0.6."
https://www.spinics.net/lists/netdev/msg574691.html
I was worried about exactly such issue as described in commit.
Sorry. My bad. I will make more work to let rds robust.
Thanks a lot for your Ack.
Zhu Yanjun
Anyways thanks for the fixup patch. Should be applied to stable
as well.
Acked-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
Regards,
Santosh