From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50040.outbound.protection.outlook.com [40.107.5.40]) by dpdk.org (Postfix) with ESMTP id 8EF248019 for ; Fri, 20 Apr 2018 13:34:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Nw6G9Z+zXJX4QVA5UeISfK+cEk5giC6U0AQXJfQLuVA=; b=MzYJJVAGxO22WMcTRxB5gYTVlQDCh9aubYm0E8Cmyt87h1FQHaFKTTIY8Cm0dmCpJ0Qbfv/TEZpBXhFKF4xB6NyjI9ycp5+IESZH5XBzTzATzNw7D4vVyK0sA26+C9+jdfiYds9QXa7P/7Vs6cO/0mwzKMrFhWqcj7GgqCJtT/E= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=akhil.goyal@nxp.com; Received: from [10.232.134.49] (14.142.187.166) by DB5PR04MB1381.eurprd04.prod.outlook.com (2a01:111:e400:58da::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.696.12; Fri, 20 Apr 2018 11:34:49 +0000 To: "Gujjar, Abhinandan S" , "jerin.jacob@caviumnetworks.com" , "hemant.agrawal@nxp.com" , "dev@dpdk.org" References: <1522824999-61614-1-git-send-email-abhinandan.gujjar@intel.com> <5ea61576-9124-266a-00e6-cb9f22a37f59@nxp.com> <5612CB344B05EE4F95FC5B729939F780706E5DA8@PGSMSX102.gar.corp.intel.com> Cc: "De Lara Guarch, Pablo" , "Doherty, Declan" , "Vangati, Narender" , "Rao, Nikhil" , "Eads, Gage" From: Akhil Goyal Message-ID: <37505d55-bdc3-78fb-009b-b38ba1cdbe66@nxp.com> Date: Fri, 20 Apr 2018 17:04:36 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <5612CB344B05EE4F95FC5B729939F780706E5DA8@PGSMSX102.gar.corp.intel.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: MAXPR0101CA0055.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a00:e::17) To DB5PR04MB1381.eurprd04.prod.outlook.com (2a01:111:e400:58da::15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7153060)(7193020); SRVR:DB5PR04MB1381; X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1381; 3:WkjnLmWiCJguVvcAOSbg0r+5D7GwpQRuy7mJkQE9UD28yFrSN6BUNx8Y4bhxP8jghhqJ0BAeSAWjYpPMhw1w9eE1xVPEZE3GmZgjBUN2va5xwHxxOA7R96fhc9bPYcd0gxDKw7zrsAqTMsBILocJ6nxh0XyRYF+2h8kRLMIlJrvIIv1pPwsPnuARz5sJ3v2YesJuV/SpxM4d9Cyj1lkWCbbY9yQOAkK9SN64pxsqQjDjzYGZ7QI0ozbCZBPOa1fs; 25:u3Hz2IzGqwieC6WmoG3e+Ay/RjGc6gCKYZNmS89gVaHfaiRimhK634a8955asTxqjemdDgCdiezMivufyG+BC8+JWtVLGqBjUnsztKBVLnTnf4qqvXeaREbGCHy28Azle2bb5wXkCSR/QjN5zpR/uFkCv9spduxnwR42SkSuqQHBI21MrLVK+ENXtz9emgk6W5Fd+bN3DwqWHRFT/NCgso1uS5/kOS/2/1s/AKzSwqoxHvfCaMmS6FLPGxDxXEw1g3aAW8yqDi83eEDEc8oUdvCnjgLT3WhGw+Bc9siBl/Erg0hcy6nD+bCaVMP2dOiQAWzunL3o5g81joVRKZsoUMpJrMfk62/ASqQH+fWFaz8=; 31:qsN1gV6tY/p+ftcifm3fOVdOyjk0DSRduMqGaMOz4+1qVaQfCBi5PKpq/TLoedRjHRaxzIprpWXWP2WvRFabJ81TA7n5li5/KTlRrIn2aagKecPDv1JrOJd8uHbmc1UHLT7c48vwo6oH553sLD0Ro4ktQMORwlBTsHmplapZ7BsnmojPv66FpPhzd/0syVzhAjISvKnUBBsjFStZmNwKH++SGHM8tnbvGGX+cDrqkl4= X-MS-TrafficTypeDiagnostic: DB5PR04MB1381: X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1381; 20:5nUziJOwDelv84ME48UNcHeIFNchbqAVCRQUYvgzjHYq4qV77DCaq7/AViNpAYE2OHnQGyC1Asg3AAOi9TUI0Sgzf1U+vC+WvxpsMi8OyB7//B0cfTBTjwz5eWv1+jn2297DC5Q0Nc8BjKwWu2Lhmo3HKiwapJsKLklg5E2TbbgKolIFl8ic0ZPJHDPI05fU0YZuxqn+ElmRbcLCuf20cS+jHYZMhgf0unnTwhDqiDqrhfrr6w8AdcG0HoKpvj8qaR07paU955OS3lx+ZdpSgzkWwNDHn1mvL4gNQQG3v+qmTYEWAKunExuY+JyDfAAmSnpdb6QcXh59JzCptHspkjER/1pGGMW84NblsJZjJdVBcAInKRRWwTw0UiF0JG4tiNqCJDz8Y8Z/GsXv03XodlA/l8Xpbe8SBDrz6wNGfbqyVLD5xHx1N9KgJ9L7Et3m/ksPbiNalZ8bavRvlpl19E0VMAgFCqMbyqhB9WgaABDj98hgfu2gWlGPDDRQU4wJ; 4:vJkhNbplJeCF6Sctm1PAEL72RZtoQlUS++63bXLgSzKRwJrS8AifPJOAD8qAEX0GQ4X6cdOdG1j5f/mQ9A5Oqzf72mzIyWUSjddkDOk8ckekEqRiL0pGvU5q6qRj5LUab88tyIxu3apE+6IN0vqU2gSCT3AXfh9x/xf+OUqxo/kRY+p3zXqUqykVqHrREnB2wRy1WtehDxSDoN3VopRVoZ/MHWrucHW4+MN53PFiYEA7ydH28qucyKv1F65WLPO6YeOdfJL6xtCb0tJcImTnUIdKm3lT+Rzu8toEhAH7aU2MH4wkTG/IgP8OAQ/8GUjyajTDEg3w1dF9xgE9kEtTw4rWWrYSoioeujXavJs4PBE= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(3231232)(944501327)(52105095)(93006095)(93001095)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011); SRVR:DB5PR04MB1381; BCL:0; PCL:0; RULEID:; SRVR:DB5PR04MB1381; X-Forefront-PRVS: 0648FCFFA8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6049001)(396003)(376002)(39860400002)(39380400002)(366004)(346002)(13464003)(77096007)(6666003)(476003)(16576012)(316002)(2201001)(65806001)(186003)(6246003)(53376002)(6116002)(25786009)(110136005)(3846002)(3260700006)(31696002)(53936002)(58126008)(67846002)(386003)(5890100001)(956004)(52116002)(86362001)(11346002)(44832011)(6306002)(2616005)(8676002)(7736002)(8936002)(2501003)(53546011)(446003)(81166006)(76176011)(6486002)(26005)(54906003)(229853002)(50466002)(65826007)(36756003)(16526019)(55236004)(65956001)(2906002)(5009440100003)(305945005)(966005)(5660300001)(478600001)(23746002)(4326008)(47776003)(64126003)(31686004)(230700001)(66066001)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR04MB1381; H:[10.232.134.49]; FPR:; SPF:None; LANG:en; MLV:nov; PTR:InfoNoRecords; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1; DB5PR04MB1381; 23:7yBnjhzlaysMltvm015ZiemHmWJt3j2SfMphj?= =?Windows-1252?Q?M1nhEU1B39P01spW+F03YvscWkHdMM64wuLuT8QST8a5MydyRDjQC/2A?= =?Windows-1252?Q?PJy3UmVfg9CHVhDdOernLu4uj87V0EQHLH0xtIODQ6IEhOc0SCubJmuk?= =?Windows-1252?Q?FWvYaid+VLc/92qeSrGJTk+CjHxQ3mzI6fEu2huHKSgUJxB2xiSQ9O4Q?= =?Windows-1252?Q?yXPZGAaV8e++zmBvPoSOzuOVDQekAKiFywoncRTYvs4RMNcIN6CWbptn?= =?Windows-1252?Q?5aClhK0R9Ykrn8qYhelClAngV+6xBoBnin2UABGCAKvxLbvILC6W2TO5?= =?Windows-1252?Q?efcpYuG9ddTwTtLTLj6U4ecIaNJBjDx7Qwy/JhE7fHgXXoVPhLeenXGF?= =?Windows-1252?Q?SLKiK6wpkgWncHcjMwfKh2sX9GfWsbangnTM4Elk6IssIzsENPZ4hknA?= =?Windows-1252?Q?pgWeKDHqUWZh/5JEt0q8ZKfc1V7XzMOATUG23JjbjcZNvLVpbF21s6Zh?= =?Windows-1252?Q?rrIhnohd6CkQdGGi+fS8QF4dUbV72ESAo8RXJnjQl0sJXCMuYZFYz6i/?= =?Windows-1252?Q?+7lIrevvHykINw8sKAh9Jx5BieOpWuqnLkOmyOdyYx/NTXz3rSSp7tX+?= =?Windows-1252?Q?CiTR3RaKJkfAK5TMbVHapx7CRb1je1oyqg+gQsImcTHfdCWK0Lcab1HN?= =?Windows-1252?Q?C5XpqVmRR1yAwIhfLO636FKBaJY0OBwrHbaOZfHAm2p1nSmytgAtmfa2?= =?Windows-1252?Q?g/RqXRvTaQVxMQHAN3wlnpohoBJoWOz8Tv0KomCQQx46HDIEzh/cSEnv?= =?Windows-1252?Q?QByL0CXQL9YO865Z/uuOLSrCCaGGfIZw8G4eGNLan7B5kKz5f7lRFN4b?= =?Windows-1252?Q?L1fWkfR9lGBGyv4OxVygCcW2ofhq8hrnDTG22+cQ6npRCoJvQZ7DVhJZ?= =?Windows-1252?Q?i7FbpflOi4ARnk5L6QVeoHdzgTNezR24KtsZ2euUVqMW74bRXWNlh2mv?= =?Windows-1252?Q?e37nMTAHOy1OQuqFmZVguwzdnXqxHAyXtZX64DcA+k/j14IQeBtNn6w9?= =?Windows-1252?Q?A3OkIzgIrs67nUiFspvFXjALTcvlwcrmA0vK4l8yUnm0o+hCjqtCpdby?= =?Windows-1252?Q?GRkVjEA2OxVF0VjFCgyttJSEibXu9ok4gIORPYZpy1t8BClgFDib4huD?= =?Windows-1252?Q?HSO2pzqyl7jTbj3KWRCe9pTVoZ8Dcu5/B7lkN/bLuv8n7Nt1AdYYvVgj?= =?Windows-1252?Q?NlVekovB7Z4s+biUZQR6bYQpLP8l8QsDziFBrGawFbLNVO+W24/E8iPe?= =?Windows-1252?Q?YIdgeKuUxn78nPVeoENwoyo4BU3UlfO5fLA/NAj1dvueqDpujuqJujqF?= =?Windows-1252?Q?qcDEOq2P7e4UJeA1FKbxriV+aY2vTqoBpD3wKFNzZCPpMf9yOLbd3kje?= =?Windows-1252?Q?8PeE7H7vh7zFrXsNeBFE+mr3OESaGJaxZu9YdXV3NOcnzemxsmHdHD/h?= =?Windows-1252?Q?TX5Wp+SqiOpFaMCX8xMLzOt5RTRwZXwBz+TSvrxFamteSINVR64j89Bx?= =?Windows-1252?Q?sp/wTwb0vAjRvTGn86WsuUuy6eYVzk7Eez2OwlVUspaT2oNVauYBu5Dk?= =?Windows-1252?Q?8r8/ktxFwfqxSkmx8+oEGdt7qnPRxjIQl/omZppNHq+?= X-Microsoft-Antispam-Message-Info: NPLXCnkGfIWQYgUmidX/Q7tbvLXWeYV7ZlBkXhCEppVweeJIN4d/Kwp1iMuQ5Ynq+mYqkvRB2i1m5EP4GxZ6oL0WLzmT034R3dBkJnlAlnwaQwA9wpKdrLOFE7f/gzofHau+dU7H0sDHEba7FJOI1hTEXcpiklUaMWO7/N5skUgQLDk/GRuMy2PFDibJ5KqY X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1381; 6:TTfcgTZyemxGSlew83sM0KPTZrFLS42jazlfBtDakknZOrIzvyRlStxpvtbehmP52y2IkzdFwV/rwvgqyitsbBYipzcWmtXp3fYh1MTZV5NHATHdrUZcdVK5SxLTRsSnghTnTLkB8LlVJQ09k1s5nZdet6vmDpxMELhP4b3JWSqEWf13JjSo+ALv5VHA5QidkYIMPRovTpDJABhuGI0st49LYOHJDqCRbO1TUTwBstBCMOzXTgvRhHHk+h8OjhTmHPU0LtUIDv6grWmPqiNrT/yf0KBmVaO/kzJr0bL0hT53wH/SwMKcivVBI5+FTZtYujnhpks6cSlGKOgZsk8rZJ0ct8g47dJT8yixHN+6RcHVFClniSH63cy4erwSu579ML0JlRZxrQIOty/0KctCCDvkfU3cwL2xQbOvJekL3A0dEM8StVw8j5NeJRHwm+nOEeK/wsns/A0AGG6N1DxPTA==; 5:F40pG5peCcuWtrjwrUHCp0MSy07QLEZzRQ5WNmUYoC/dgUQNOayiVeVClYG+qqLhOBg25P6lM+v/pZp/IhEHYO1YJAR1GjXVZFAIDqbLBiSYh4jvd53QK7QOSBxrEhqyqC/JdrCW+t01oMoQnwSdXRurfcauI4TzJG0Mn6cDEqI=; 24:/uUUY2iF0dsmnZSxaUh/wujmCWmzTcNkwrrVzAVBgdbcrOXkFQgi4KGwlJFdx6slb14zwP8Xz6xzwwuxH6xRi3m9pcAThHZmNCfclRUwBhY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB5PR04MB1381; 7:KnFyNYE1kGCUzYuFJjKM0NqVLEiIcrhgJPDZqQSDv+VXqD+eOdIx91U99TCqjj4jCNrhNdKEZMheFGhnanq/aBPyf69xu9AGlq+dVmk6Ym5aQGfok6xbU5n+WeLaI+ffxgJ2w+oV5excOemhqbYQ88JX8oqoXuot/VQIPQ55sW/96AES5yvgUZsUmPTk33tYfFfC79Mtyn8rF2oroY1Lmwx22GCm9JltkzORU+gY3OVEHNF5moALKKpC9ijajd+o X-MS-Office365-Filtering-Correlation-Id: 230c21b6-5a9e-4c23-1e5c-08d5a6b2bb20 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2018 11:34:49.4594 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 230c21b6-5a9e-4c23-1e5c-08d5a6b2bb20 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR04MB1381 Subject: Re: [dpdk-dev] [dpdk-dev, v1, 2/5] eventdev: add crypto adapter implementation X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Apr 2018 11:34:53 -0000 Hi Abhinandan/ Jerin, On 4/18/2018 11:51 AM, Gujjar, Abhinandan S wrote: > Hi Akhil, > > Please find the comments inline. > >> -----Original Message----- >> From: Akhil Goyal [mailto:akhil.goyal@nxp.com] >> Sent: Tuesday, April 17, 2018 7:48 PM >> To: Gujjar, Abhinandan S ; >> jerin.jacob@caviumnetworks.com; hemant.agrawal@nxp.com; dev@dpdk.org >> Cc: De Lara Guarch, Pablo ; Doherty, Declan >> ; Vangati, Narender >> ; Rao, Nikhil ; Eads, Gage >> >> Subject: Re: [dpdk-dev, v1, 2/5] eventdev: add crypto adapter implementation >> >> Hi Abhinandan, >> >> I have not reviewed the patch completely. But I have below query for further >> review. >> On 4/4/2018 12:26 PM, Abhinandan Gujjar wrote: >>> Signed-off-by: Abhinandan Gujjar >>> Signed-off-by: Nikhil Rao >>> Signed-off-by: Gage Eads >>> --- >> >> [..snip..] >>> + >>> +int __rte_experimental >>> +rte_event_crypto_adapter_queue_pair_add(uint8_t id, >>> + uint8_t cdev_id, >>> + int32_t queue_pair_id) >>> +{ >>> + struct rte_event_crypto_adapter *adapter; >>> + struct rte_eventdev *dev; >>> + struct crypto_device_info *dev_info; >>> + uint32_t cap; >>> + int ret; >>> + >>> + RTE_EVENT_CRYPTO_ADAPTER_ID_VALID_OR_ERR_RET(id, -EINVAL); >>> + >>> + if (!rte_cryptodev_pmd_is_valid_dev(cdev_id)) { >>> + RTE_EDEV_LOG_ERR("Invalid dev_id=%" PRIu8, cdev_id); >>> + return -EINVAL; >>> + } >>> + >>> + adapter = eca_id_to_adapter(id); >>> + if (adapter == NULL) >>> + return -EINVAL; >>> + >>> + dev = &rte_eventdevs[adapter->eventdev_id]; >>> + ret = rte_event_crypto_adapter_caps_get(adapter->eventdev_id, >>> + cdev_id, >>> + &cap); >>> + if (ret) { >>> + RTE_EDEV_LOG_ERR("Failed to get adapter caps dev %" PRIu8 >>> + "cdev %" PRIu8, id, cdev_id); >>> + return ret; >>> + } >>> + >>> + dev_info = &adapter->cdevs[cdev_id]; >>> + >>> + if (queue_pair_id != -1 && >>> + (uint16_t)queue_pair_id >= dev_info->dev->data->nb_queue_pairs) { >>> + RTE_EDEV_LOG_ERR("Invalid queue_pair_id %" PRIu16, >>> + (uint16_t)queue_pair_id); >>> + return -EINVAL; >>> + } >>> + >>> + if (cap & RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT) { >>> + RTE_FUNC_PTR_OR_ERR_RET( >>> + *dev->dev_ops->crypto_adapter_queue_pair_add, >>> + -ENOTSUP); >>> + if (dev_info->qpairs == NULL) { >>> + dev_info->qpairs = >>> + rte_zmalloc_socket(adapter->mem_name, >>> + dev_info->dev->data->nb_queue_pairs >> * >>> + sizeof(struct crypto_queue_pair_info), >>> + 0, adapter->socket_id); >>> + if (dev_info->qpairs == NULL) >>> + return -ENOMEM; >>> + } >>> + >>> + ret = (*dev->dev_ops->crypto_adapter_queue_pair_add)(dev, >>> + dev_info->dev, >>> + queue_pair_id); >> >> crypto_adapter_queue_pair_add is supposed to attach a queue >> (queue_pair_id) of cryptodev(dev_info->dev) to event device (dev). >> But how will the underlying implementation attach it to event device without >> knowing the eventdev queue_id. This information was coming in the RFC >> patches with the parameter (rte_event_crypto_queue_pair_conf). >> Why is this removed and if removed how will the driver attach the queue. >> I can see that rte_event is passed in the session private data but how can we >> attach the crypto queue with event dev queue? > > Yes, this was present in the first version of the RFC which is similar to eth rx adapter. > After couple of discussions, thread http://dpdk.org/dev/patchwork/patch/31752/), > it was changed. In eth rx adapter, eth queues are mapped to eventdev, whereas in crypto > adapter the sessions are mapped to eventdev. Since event info is present along with the > session, the get API has to be called in respective API to get the event information and > then map to eventdev. > I think the intent of that discussion was misunderstood from our end. But this is not going to work for hardware devices. Because in case of hardware implementation, the scheduling is done in hardware and hardware cannot call the get API to get the event information then map to event device. Actually the scheduling has happened before the crypto_op is dequeued from the event port. So there is no point of set/get private data in our case. We need to map the crypto queues to the event queue_ids at the time of queue_pair add API. In hardware scheduler, we map n(may be 1-8) crypto queues to m event queues(<= n). We can assign multiple sessions to any crypto queue pair, and after the crypto op is received by event queue, they are appropriately scheduled by hardware to event ports. Session based mapping to event queue cannot be supported. Our design is same as that of eth rx adapter. Akhil