From: qemudev@loongson.cn
To: test-report@dpdk.org
Cc: Nithin Dabilpuram <ndabilpuram@marvell.com>, zhoumin@loongson.cn
Subject: |WARNING| pw136995-137008 [PATCH v3 01/14] common/cnxk: remove cn9k Inline IPsec FP opcode defines
Date: Thu, 22 Feb 2024 18:00:33 +0800 [thread overview]
Message-ID: <202402221000.41MA0XCL001002@localhost.localdomain> (raw)
In-Reply-To: <20240222100530.2266013-1-ndabilpuram@marvell.com>
Test-Label: loongarch-compilation
Test-Status: WARNING
http://dpdk.org/patch/136995
_apply patch failure_
Submitter: Nithin Dabilpuram <ndabilpuram@marvell.com>
Date: Thu, 22 Feb 2024 15:35:17 +0530
DPDK git baseline: Repo:dpdk-next-net-mrvl
Branch: for-next-net
CommitID: 92c0ad70caf3ed6f4b93de6ddaf7bc369737c049
Apply patch set 136995-137008 failed:
Checking patch drivers/common/cnxk/cnxk_security.c...
error: while searching for:
return !!sa->w2.s.valid;
}
static inline int
ipsec_xfrm_verify(struct rte_security_ipsec_xform *ipsec_xfrm,
struct rte_crypto_sym_xform *crypto_xfrm)
{
if (crypto_xfrm->next == NULL)
return -EINVAL;
if (ipsec_xfrm->direction == RTE_SECURITY_IPSEC_SA_DIR_INGRESS) {
if (crypto_xfrm->type != RTE_CRYPTO_SYM_XFORM_AUTH ||
crypto_xfrm->next->type != RTE_CRYPTO_SYM_XFORM_CIPHER)
return -EINVAL;
} else {
if (crypto_xfrm->type != RTE_CRYPTO_SYM_XFORM_CIPHER ||
crypto_xfrm->next->type != RTE_CRYPTO_SYM_XFORM_AUTH)
return -EINVAL;
}
return 0;
}
static int
onf_ipsec_sa_common_param_fill(struct roc_ie_onf_sa_ctl *ctl, uint8_t *salt,
uint8_t *cipher_key, uint8_t *hmac_opad_ipad,
struct rte_security_ipsec_xform *ipsec_xfrm,
struct rte_crypto_sym_xform *crypto_xfrm)
{
struct rte_crypto_sym_xform *auth_xfrm, *cipher_xfrm;
int rc, length, auth_key_len;
const uint8_t *key = NULL;
uint8_t ccm_flag = 0;
/* Set direction */
switch (ipsec_xfrm->direction) {
case RTE_SECURITY_IPSEC_SA_DIR_INGRESS:
ctl->direction = ROC_IE_SA_DIR_INBOUND;
auth_xfrm = crypto_xfrm;
cipher_xfrm = crypto_xfrm->next;
break;
case RTE_SECURITY_IPSEC_SA_DIR_EGRESS:
ctl->direction = ROC_IE_SA_DIR_OUTBOUND;
cipher_xfrm = crypto_xfrm;
auth_xfrm = crypto_xfrm->next;
break;
default:
return -EINVAL;
}
/* Set protocol - ESP vs AH */
switch (ipsec_xfrm->proto) {
case RTE_SECURITY_IPSEC_SA_PROTO_ESP:
ctl->ipsec_proto = ROC_IE_SA_PROTOCOL_ESP;
break;
case RTE_SECURITY_IPSEC_SA_PROTO_AH:
return -ENOTSUP;
default:
return -EINVAL;
}
/* Set mode - transport vs tunnel */
switch (ipsec_xfrm->mode) {
case RTE_SECURITY_IPSEC_SA_MODE_TRANSPORT:
ctl->ipsec_mode = ROC_IE_SA_MODE_TRANSPORT;
break;
case RTE_SECURITY_IPSEC_SA_MODE_TUNNEL:
ctl->ipsec_mode = ROC_IE_SA_MODE_TUNNEL;
break;
default:
return -EINVAL;
}
/* Set encryption algorithm */
if (crypto_xfrm->type == RTE_CRYPTO_SYM_XFORM_AEAD) {
length = crypto_xfrm->aead.key.length;
switch (crypto_xfrm->aead.algo) {
case RTE_CRYPTO_AEAD_AES_GCM:
ctl->enc_type = ROC_IE_ON_SA_ENC_AES_GCM;
ctl->auth_type = ROC_IE_ON_SA_AUTH_NULL;
memcpy(salt, &ipsec_xfrm->salt, 4);
key = crypto_xfrm->aead.key.data;
break;
case RTE_CRYPTO_AEAD_AES_CCM:
ctl->enc_type = ROC_IE_ON_SA_ENC_AES_CCM;
ctl->auth_type = ROC_IE_ON_SA_AUTH_NULL;
ccm_flag = 0x07 & ~ROC_CPT_AES_CCM_CTR_LEN;
*salt = ccm_flag;
memcpy(PLT_PTR_ADD(salt, 1), &ipsec_xfrm->salt, 3);
key = crypto_xfrm->aead.key.data;
break;
default:
return -ENOTSUP;
}
} else {
rc = ipsec_xfrm_verify(ipsec_xfrm, crypto_xfrm);
if (rc)
return rc;
switch (cipher_xfrm->cipher.algo) {
case RTE_CRYPTO_CIPHER_AES_CBC:
ctl->enc_type = ROC_IE_ON_SA_ENC_AES_CBC;
break;
case RTE_CRYPTO_CIPHER_AES_CTR:
ctl->enc_type = ROC_IE_ON_SA_ENC_AES_CTR;
break;
default:
return -ENOTSUP;
}
switch (auth_xfrm->auth.algo) {
case RTE_CRYPTO_AUTH_SHA1_HMAC:
ctl->auth_type = ROC_IE_ON_SA_AUTH_SHA1;
break;
default:
return -ENOTSUP;
}
auth_key_len = auth_xfrm->auth.key.length;
if (auth_key_len < 20 || auth_key_len > 64)
return -ENOTSUP;
key = cipher_xfrm->cipher.key.data;
length = cipher_xfrm->cipher.key.length;
ipsec_hmac_opad_ipad_gen(auth_xfrm, hmac_opad_ipad);
}
switch (length) {
case ROC_CPT_AES128_KEY_LEN:
ctl->aes_key_len = ROC_IE_SA_AES_KEY_LEN_128;
break;
case ROC_CPT_AES192_KEY_LEN:
ctl->aes_key_len = ROC_IE_SA_AES_KEY_LEN_192;
break;
case ROC_CPT_AES256_KEY_LEN:
ctl->aes_key_len = ROC_IE_SA_AES_KEY_LEN_256;
break;
default:
return -EINVAL;
}
memcpy(cipher_key, key, length);
if (ipsec_xfrm->options.esn)
ctl->esn_en = 1;
ctl->spi = rte_cpu_to_be_32(ipsec_xfrm->spi);
return 0;
}
int
cnxk_onf_ipsec_inb_sa_fill(struct roc_onf_ipsec_inb_sa *sa,
struct rte_security_ipsec_xform *ipsec_xfrm,
struct rte_crypto_sym_xform *crypto_xfrm)
{
struct roc_ie_onf_sa_ctl *ctl = &sa->ctl;
int rc;
rc = onf_ipsec_sa_common_param_fill(ctl, sa-
error: patch failed: drivers/common/cnxk/cnxk_security.c:618
error: drivers/common/cnxk/cnxk_security.c: patch does not apply
Checking patch drivers/common/cnxk/cnxk_security.h...
error: while searching for:
bool __roc_api cnxk_ot_ipsec_inb_sa_valid(struct roc_ot_ipsec_inb_sa *sa);
bool __roc_api cnxk_ot_ipsec_outb_sa_valid(struct roc_ot_ipsec_outb_sa *sa);
/* [CN9K, CN10K) */
int __roc_api
cnxk_onf_ipsec_inb_sa_fill(struct roc_onf_ipsec_inb_sa *sa,
struct rte_security_ipsec_xform *ipsec_xfrm,
struct rte_crypto_sym_xform *crypto_xfrm);
int __roc_api
cnxk_onf_ipsec_outb_sa_fill(struct roc_onf_ipsec_outb_sa *sa,
struct rte_security_ipsec_xform *ipsec_xfrm,
struct rte_crypto_sym_xform *crypto_xfrm);
bool __roc_api cnxk_onf_ipsec_inb_sa_valid(struct roc_onf_ipsec_inb_sa *sa);
bool __roc_api cnxk_onf_ipsec_outb_sa_valid(struct roc_onf_ipsec_outb_sa *sa);
/* [CN9K] */
int __roc_api
cnxk_on_ipsec_inb_sa_create(struct rte_security_ipsec_xform *ipsec,
error: patch failed: drivers/common/cnxk/cnxk_security.h:48
error: drivers/common/cnxk/cnxk_security.h: patch does not apply
Checking patch drivers/common/cnxk/roc_ie_on.h...
Checking patch drivers/common/cnxk/roc_nix_inl.h...
Checking patch drivers/common/cnxk/version.map...
Checking patch drivers/net/cnxk/cnxk_ethdev_devargs.c...
next parent reply other threads:[~2024-02-22 10:25 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20240222100530.2266013-1-ndabilpuram@marvell.com>
2024-02-22 10:00 ` qemudev [this message]
2024-02-22 10:06 ` |WARNING| pw136995 " checkpatch
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202402221000.41MA0XCL001002@localhost.localdomain \
--to=qemudev@loongson.cn \
--cc=ndabilpuram@marvell.com \
--cc=test-report@dpdk.org \
--cc=zhoumin@loongson.cn \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).