From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A7272A0503; Tue, 17 May 2022 19:40:02 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 46076415D7; Tue, 17 May 2022 19:39:59 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 053C940A7A for ; Tue, 17 May 2022 19:39:57 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 24HAikp4011455 for ; Tue, 17 May 2022 10:39:55 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-type; s=pfpt0220; bh=2Wv5c6H13siitY8epqx7fmkhSxe8Yv2WLCGG8rJfB84=; b=foN9M4lHUmU3W9hBlDKAfQbCHuVtqQn9RYXdendZmP3VQO9Pf1tkM6Wwyr+GcX1BabNu rBtHRWkhMxywOq3fBjihX35tKybmmGpqz0D3CETtINxuDyNpIepwcaYn2Aw6IgHDhHXg iPdm3qI+Y9UMbHcuvNjcy4DdKyigRh08Km/V2d5vuT+R8QPHWau98gf1eJ66mUNd3s/Z 6vbmiPX6JnS4D3DbgC/7zN1vpZOwFVJeinPJXj/7or8Ocbh3Gupq0xZsHv4mJTCCV61L iG80Ie8aexKuoY+FfKk3OSzrPhbfbaKl8+2fZQvzZpQJK92UmAs82jpmavc7wUT1Sr4f vQ== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3g4a7a1r2d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Tue, 17 May 2022 10:39:55 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Tue, 17 May 2022 10:39:53 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Tue, 17 May 2022 10:39:53 -0700 Received: from localhost.localdomain (unknown [10.29.52.211]) by maili.marvell.com (Postfix) with ESMTP id 71B593F70AE; Tue, 17 May 2022 10:39:52 -0700 (PDT) From: Harman Kalra To: , Jerin Jacob CC: Harman Kalra Subject: [PATCH 02/12] event/octeontx: fix SSO fastpath Date: Tue, 17 May 2022 23:09:31 +0530 Message-ID: <20220517173941.189330-2-hkalra@marvell.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20220517173941.189330-1-hkalra@marvell.com> References: <20220517173941.189330-1-hkalra@marvell.com> MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-GUID: yMbswnwjDGOy2pEhU6GwOQtKkzV7l0ZI X-Proofpoint-ORIG-GUID: yMbswnwjDGOy2pEhU6GwOQtKkzV7l0ZI X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.874,Hydra:6.0.486,FMLib:17.11.64.514 definitions=2022-05-17_03,2022-05-17_02,2022-02-23_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Segmentation fault is observed as soon as any dpdk application with ethdev event is launched. Handling the event types appropriately. Fixes: 8dc6c2f12ecf ("crypto/octeontx: add crypto adapter data path") Signed-off-by: Harman Kalra --- drivers/event/octeontx/ssovf_worker.h | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/drivers/event/octeontx/ssovf_worker.h b/drivers/event/octeontx/ssovf_worker.h index e6ee292688..1e906bf694 100644 --- a/drivers/event/octeontx/ssovf_worker.h +++ b/drivers/event/octeontx/ssovf_worker.h @@ -179,16 +179,20 @@ ssows_get_work(struct ssows *ws, struct rte_event *ev, const uint16_t flag) ev->event = sched_type_queue | (get_work0 & 0xffffffff); if (get_work1) { - if (ev->event_type == RTE_EVENT_TYPE_ETHDEV) - get_work1 = (uintptr_t)ssovf_octeontx_wqe_to_pkt( - get_work1, (ev->event >> 20) & 0x7F, flag, - ws->lookup_mem); - else if (ev->event_type == RTE_EVENT_TYPE_CRYPTODEV) + if (ev->event_type == RTE_EVENT_TYPE_ETHDEV) { + ev->mbuf = ssovf_octeontx_wqe_to_pkt( + get_work1, (ev->event >> 20) & 0x7F, flag, + ws->lookup_mem); + } else if (ev->event_type == RTE_EVENT_TYPE_CRYPTODEV) { get_work1 = otx_crypto_adapter_dequeue(get_work1); - ev->u64 = get_work1; - } else if (unlikely((get_work0 & 0xFFFFFFFF) == 0xFFFFFFFF)) { - ssovf_octeontx_wqe_free(get_work1); - return 0; + ev->u64 = get_work1; + } else { + if (unlikely((get_work0 & 0xFFFFFFFF) == 0xFFFFFFFF)) { + ssovf_octeontx_wqe_free(get_work1); + return 0; + } + ev->u64 = get_work1; + } } return !!get_work1; -- 2.18.0