lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Thu, 23 Nov 2023 10:21:12 +0800
From: Wen Gu <guwen@...ux.alibaba.com>
To: shaozhengchao <shaozhengchao@...wei.com>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
 yuehaibing <yuehaibing@...wei.com>, "Libin (Huawei)"
 <huawei.libin@...wei.com>, Dust Li <dust.li@...ux.alibaba.com>,
 tonylu_linux <tonylu@...ux.alibaba.com>, "D. Wythe"
 <alibuda@...ux.alibaba.com>, guwen@...ux.alibaba.com
Subject: Re: [question] smc: how to enable SMC_LO feature



On 2023/11/21 20:14, shaozhengchao wrote:
> Hi Wen Gu:
> Currently, I am interested in the SMC_LOOPBACK feature proposed
> by you. Therefore, I use your patchset[1] to test the SMC_LO feature on
> my x86_64 environment and kernel is based on linux-next, commit: 5ba73bec5e7b.
> The test result shows that the smc_lo feature cannot be enabled. Here's
> my analysis:
> 
> 1. Run the following command to perform the test, and then capture
> packets on the lo device.
> - serv:  smc_run taskset -c <cpu> sockperf sr --tcp
> - clnt:  smc_run taskset -c <cpu> sockperf  tp --tcp --msg-size=64000 -i 127.0.0.1 -t 30
> 
> 2. Use Wireshark to open packets. It is found that the VCE port replies with
> SMC-R-Deline packets.
> [cid:image001.png@...A1CB4.F1052C30]
> 
> 3. Rx
> When smc_listen_work invokes smc_listen_v2_check, the VCE port returns
> a Decline packet because eid_cnt and flag.seid in the received packet are both 0.
> 
> 4. Tx
> In smc_clc_send_proposal,
> v2_ext->hdr.eid_cnt = smc_clc_eid_table.ueid_cnt;
> v2_ext->hdr.flag.seid = smc_clc_eid_table.seid_enabled;
> 
> When smc_clc_init, ueid_cnt=0, and in the x86_64 environment, seid_enabled is
> always equal to 0.
> 
> So, I must call smc_clc_ueid_add function to increase ueid count?
> But I don't see where operations can be added, may I missed something?
> 

Hi Zhengchao Shao,

Yes. When using SMC-D in non-s390 architecture (like x86 here), A common
UEID should be set. It can be set by following steps:

- Install smc-tools[1].

- Run # smcd ueid add <ueid> in loopback test environment.

   EID works as an ID to indicate the max communication space of SMC. When SEID is
   unavailable, an UEID is required.

- Then run the test.

Hope this works for you :)

[1] https://github.com/ibm-s390-linux/smc-tools

Regards,
Wen Gu

> Could you give me some advice? Thanks very much.
> 
> Zhengchao Shao
> 
> 
> [1]link: https://patchwork.kernel.org/project/netdevbpf/cover/1695568613-125057-1-git-send-email-guwen@linux.alibaba.com/
> 

Powered by blists - more mailing lists