This patch set implement several new features in SMC v2.1(https:// www.ibm.com/support/pages/node/7009315), including vendor unique experimental options, max connections per lgr negotiation, max links per lgr negotiation. v1 - v2: - rename field fce_v20 to fce_v2_base in struct smc_clc_first_contact_ext_v2x - use smc_get_clc_first_contact_ext in smc_connect _rdma_v2_prepare - adding comment about field vendor_oui in struct smc_clc_msg_smcd - remove comment about SMC_CONN_PER_LGR_MAX in smc_ clc_srv_v2x_features_validate - rename smc_clc_clnt_v2x_features_validate RFC v2 - v1: - more description in commit message - modify SMC_CONN_PER_LGR_xxx and SMC_LINKS_ADD_LNK_xxx macro defination and usage - rename field release_ver to release_nr - remove redundant release version check in client - explicitly set the rc value in smc_llc_cli/srv_add_link RFC v1 - RFC v2: - Remove ini pointer NULL check and fix code style in smc_clc_send_confirm_accept. - Optimize the max_conns check in smc_clc_xxx_v2x_features_validate. Guangguan Wang (6): net/smc: support smc release version negotiation in clc handshake net/smc: add vendor unique experimental options area in clc handshake net/smc: support smc v2.x features validate net/smc: support max connections per lgr negotiation net/smc: support max links per lgr negotiation in clc handshake net/smc: Extend SMCR v2 linkgroup netlink attribute include/uapi/linux/smc.h | 2 + net/smc/af_smc.c | 86 +++++++++++++++++------ net/smc/smc.h | 5 +- net/smc/smc_clc.c | 147 ++++++++++++++++++++++++++++++++------- net/smc/smc_clc.h | 53 ++++++++++++-- net/smc/smc_core.c | 13 +++- net/smc/smc_core.h | 25 +++++++ net/smc/smc_llc.c | 25 +++++-- 8 files changed, 299 insertions(+), 57 deletions(-) -- 2.24.3 (Apple Git-128)