From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 0038CA04B3;
	Tue, 28 Jan 2020 09:30:10 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id EB12C1C117;
	Tue, 28 Jan 2020 09:30:09 +0100 (CET)
Received: from mail-io1-f67.google.com (mail-io1-f67.google.com
 [209.85.166.67]) by dpdk.org (Postfix) with ESMTP id 73B0E1C0AA
 for <dev@dpdk.org>; Tue, 28 Jan 2020 09:30:08 +0100 (CET)
Received: by mail-io1-f67.google.com with SMTP id e7so13284158iof.11
 for <dev@dpdk.org>; Tue, 28 Jan 2020 00:30:08 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc:content-transfer-encoding;
 bh=pigJhRTUFtbnuRoIp6Cxccjgph9P/tlG2eDxTlndfw8=;
 b=E2ivERdl+Mn1iujUPlbB9kLJOgJz1BQFvbBgYVnSKfHMLeMiK0AGU3vJvac9otntnL
 9MYS01ISEgnWVZs1BA3bhBPBe6b4a2lrX1Zsgpf/JwcQn/ryHXPBQY9sgT8IbJha3l6C
 L8/HAYc7a6c+vclDOwsIu/g4noP52KDjgfaiqpwOXec10oytrS5XY+qdCgyyYQFJpRdC
 jnvzsFRMEP1AZMUQkE8gjXSlR0Nh9zq7kspAYZrNhY2pn+H+MoAnwJv+DgvXeDIsseO6
 UzMZGNrXMKnQfd2pKP/iX66mVhjoQwG46BXg387HPvmfRKu5RAGYbUw60hv7vflGCAN5
 o2gg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc:content-transfer-encoding;
 bh=pigJhRTUFtbnuRoIp6Cxccjgph9P/tlG2eDxTlndfw8=;
 b=R+z5Zqtu5V1sWtyTVMmUp559VMjoyZQT4algrImn5c5L1x0QLVRIcDeH4DhEh+Vf2n
 e96K4e7OqG8Uay5nvkP5eahuQ9Aq+iU9FAUbFtxf22ofJ/kbfZk+48372GNtitlyeP3f
 0fQJF5S820c8z1KSETzQWrg6C9segcmwWGwUjm2Owr1oKEwxf4qmdx7sjlLP3MsBrfcz
 0qlQUmygT24/baC0hpW9rVtKb08XqjiKPd7ZjlzeCy9XCKT7pYgmmQPN3fqCoX+3EBJz
 0tC5iTgcbKBaKa9Xk9ABP0l06G30WuALdfsiJz4nGt1uPaio0DmZFndcbrpOxJH466XY
 ocBA==
X-Gm-Message-State: APjAAAWfLXz2uxNBycekEEgnOyHjcF4cSmuF/p3yEeORL1blOwc9uqPe
 bKcUV1Jz1kANlH5YTuYCiqseEo58R2t3CU8Km/0=
X-Google-Smtp-Source: APXvYqy+9RYfxIsoDQRBOYJk+tWVSSqMJsWx/j1cNX6FpRqirIklwXjCmjttPi+2LhaHknUJRrOIos500hCFnxGVoOw=
X-Received: by 2002:a5e:8e4d:: with SMTP id r13mr14827389ioo.60.1580200207572; 
 Tue, 28 Jan 2020 00:30:07 -0800 (PST)
MIME-Version: 1.0
References: <1575806094-28391-1-git-send-email-anoobj@marvell.com>
 <1579344553-11428-1-git-send-email-anoobj@marvell.com>
 <CALBAE1ME1dXACabKzHVG-Dytc=rEoFsV+L6-mD01UWjg_R6gvw@mail.gmail.com>
 <MN2PR18MB2877C5C7BDE52E2A26F57483DF330@MN2PR18MB2877.namprd18.prod.outlook.com>
 <VE1PR04MB663917B778373D9D0621D77AE60C0@VE1PR04MB6639.eurprd04.prod.outlook.com>
 <MN2PR18MB287727F1E04BBBE64EC90ADCDF0C0@MN2PR18MB2877.namprd18.prod.outlook.com>
 <VE1PR04MB66396FE565324080681BCF36E60C0@VE1PR04MB6639.eurprd04.prod.outlook.com>
 <CALBAE1NsmN-wHvVuf5UuJt1tcZUf8CPnhQy6T1o9O7BQHiF5qw@mail.gmail.com>
 <VE1PR04MB663970EC584023A864D6102AE60B0@VE1PR04MB6639.eurprd04.prod.outlook.com>
 <CALBAE1OEZXCNjShB4RvUTRMyEurnD78e720ih5HUyRxb9rkbaQ@mail.gmail.com>
 <VE1PR04MB66396D37D1D29049792E1043E60B0@VE1PR04MB6639.eurprd04.prod.outlook.com>
 <MN2PR18MB28772086FD53753E428F9019DF0B0@MN2PR18MB2877.namprd18.prod.outlook.com>
In-Reply-To: <MN2PR18MB28772086FD53753E428F9019DF0B0@MN2PR18MB2877.namprd18.prod.outlook.com>
From: Jerin Jacob <jerinjacobk@gmail.com>
Date: Tue, 28 Jan 2020 13:59:51 +0530
Message-ID: <CALBAE1PUaoxN1Mjqbb4fN514Eio6SXgATWw2=Z4qgbzb8wOMbA@mail.gmail.com>
To: Anoob Joseph <anoobj@marvell.com>
Cc: Akhil Goyal <akhil.goyal@nxp.com>, Ferruh Yigit <ferruh.yigit@intel.com>, 
 Declan Doherty <declan.doherty@intel.com>,
 Thomas Monjalon <thomas@monjalon.net>, 
 Jerin Jacob Kollanukkaran <jerinj@marvell.com>,
 Narayana Prasad Raju Athreya <pathreya@marvell.com>, 
 Kiran Kumar Kokkilagadda <kirankumark@marvell.com>,
 Nithin Kumar Dabilpuram <ndabilpuram@marvell.com>, 
 Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>,
 Ankur Dwivedi <adwivedi@marvell.com>, 
 Archana Muniganti <marchana@marvell.com>,
 Tejasree Kondoj <ktejasree@marvell.com>, 
 Vamsi Krishna Attunuru <vattunuru@marvell.com>,
 Lukas Bartosik <lbartosik@marvell.com>, dpdk-dev <dev@dpdk.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Subject: Re: [dpdk-dev] [PATCH v2 00/15] add OCTEONTX2 inline IPsec support
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

On Mon, Jan 27, 2020 at 8:24 PM Anoob Joseph <anoobj@marvell.com> wrote:
>
> Hi Jerin, Akhil,
>
> Let me summarize the design changes from the discussions below.
>
> Currently, drivers/crypto/octeontx2/otx2_security.c defines all security =
ctx ops for the ethdev (idea was to add all crypto security ctx for lookasi=
de also there). That will be moved to drivers/net/octeontx2 as is. The rout=
ines which are doing qp_add & qp_remove would be moved to common (discussed=
 below). Otherwise, the rest should remain as is. If Jerin/Akhil wants furt=
her isolation, please do share specifics. Almost all functions in otx2_secu=
rity.c is dereferencing 'rte_eth_dev'. So having (void *) will not help.
>
> The functions in otx2_security.c is calling inline functions in otx2_ipse=
c_fp.h (which has lower level implementations of session create etc). This =
will remain as is in drivers/crypto/octeontx2 but would be called from driv=
ers/net/octeontx2/otx2_security.c.
>
> We will need to include otx2_cryptodev_qp.h (internal header in drivers/c=
rypto/octeontx2) since the crypto queue pair is required for outbound proce=
ssing. Since otx2_cryptodev_qp.h has dependency on rte_cryptodev.h, the eth=
dev file will have dependency on rte_cryptodev.h.
>
> I want all the maintainers (Akhil, Jerin & Ferruh) to ack the above behav=
ior so that I can proceed with the restructuring. (Currently issue is rte_e=
thdev.h getting included in a cryptodev PMD file. The case we are proposing=
 is the exact mirror of that)

I think, Following rework would be required.

1) Don't access rte_eth_dev symbols in driver/crypto/octeontx2
2) Don't access rte_crypto_dev symbols in drier/net/octeontx2
3) Communication between both drivers should both through "custom
structure"(say struct otx2_eth_sec or so for inline, otx2_crypto_sec
for look side)
defined in driver/common/octeonxt2 which holds data.
Processing function through "function pointer" registration provided
through in driver/common/octeonx2 as idev framework to avoid build
dependency.

I am not sure anything else can be done beyond the above.