From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0042.outbound.protection.outlook.com [104.47.42.42]) by dpdk.org (Postfix) with ESMTP id 0ADAE44CF for ; Tue, 16 Jan 2018 10:21:58 +0100 (CET) Received: from CY4PR03CA0107.namprd03.prod.outlook.com (10.171.242.176) by CY4PR03MB2695.namprd03.prod.outlook.com (10.173.43.138) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.407.7; Tue, 16 Jan 2018 09:21:57 +0000 Received: from BY2FFO11FD017.protection.gbl (2a01:111:f400:7c0c::194) by CY4PR03CA0107.outlook.office365.com (2603:10b6:910:4d::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.407.7 via Frontend Transport; Tue, 16 Jan 2018 09:21:57 +0000 Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11FD017.mail.protection.outlook.com (10.1.14.105) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.345.12 via Frontend Transport; Tue, 16 Jan 2018 09:21:56 +0000 Received: from [10.232.134.49] (B35197-11.ap.freescale.net [10.232.134.49]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id w0G9LqY8009190; Tue, 16 Jan 2018 02:21:53 -0700 To: "Gujjar, Abhinandan S" , "Doherty, Declan" , "Jacob, Jerin" CC: "dev@dpdk.org" , "Vangati, Narender" , "Rao, Nikhil" References: <1516017078-166766-1-git-send-email-abhinandan.gujjar@intel.com> <5612CB344B05EE4F95FC5B729939F780705FED56@PGSMSX102.gar.corp.intel.com> <5612CB344B05EE4F95FC5B729939F780705FEDDD@PGSMSX102.gar.corp.intel.com> <5612CB344B05EE4F95FC5B729939F780705FEF35@PGSMSX102.gar.corp.intel.com> From: Akhil Goyal Message-ID: Date: Tue, 16 Jan 2018 14:51:52 +0530 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <5612CB344B05EE4F95FC5B729939F780705FEF35@PGSMSX102.gar.corp.intel.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-EOPAttributedMessage: 0 X-Matching-Connectors: 131605681169590260; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(39860400002)(39380400002)(346002)(376002)(396003)(2980300002)(1110001)(1109001)(3190300001)(339900001)(24454002)(13464003)(189003)(199004)(23676004)(305945005)(356003)(53546011)(8676002)(31696002)(316002)(110136005)(2486003)(31686004)(83506002)(81156014)(68736007)(81166006)(64126003)(76176011)(229853002)(47776003)(230700001)(58126008)(8936002)(54906003)(50466002)(59450400001)(2950100002)(65826007)(104016004)(77096006)(105606002)(106466001)(53936002)(36756003)(4326008)(6246003)(97736004)(2906002)(67846002)(93886005)(65806001)(5660300001)(86362001)(498600001)(26005)(65956001)(6346003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR03MB2695; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD017; 1:pjnX7L0LFg68Ev2qmi4dZK9rIVgSBuUYVe1RTn2f0V1bwJLsMIFgBMqIXO7tEsj5IsdZ/EoFKgkbz3Meww+RS5moiofjuJ2MfdguLsy4U0OjwIrGCnOXeomA4wzYkvXs X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0658b410-cafb-4714-67f4-08d55cc29700 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(5600026)(4604075)(2017052603307); SRVR:CY4PR03MB2695; X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2695; 3:DqtNERry7UCYfaKVOo8xprCFHVAJrX7bqz8AxQwjY6oupGdRU+7QiN0TNpjAoMVvvwlPRwSfggLLuJ+pkCIZ0VzqLhM617vxfvh/W5g3dtXKevf0BIr1FN6uGrV62RN5CV3A/Pg1tw7aptJxcwsFOF4CNWDifkYcH8ppqBwtvLyCvQVpglX1f4RvOVPNA0gexE4+qjlX8RV9+7y7bgiRI9Sa3y+yY5PtPlN1AaxN5WjqBrheba0kQFjKAwGzwoT8omFrEXUj1w+dq5wcgwut8mPMRNWYEVlxoIMf2NG65w+1lsszXZsYNJis5tHUrjiBYbtsoF3VmJsEV5C/svYfzU6cN9AaqUNXPwhOboTgCjU=; 25:OGGLMY3ou7eYabJt6SgPAgQCamRLhOtjcm5zGKAT848pNw0Aruj4sWDwPUlnlfxu97Aat3AVsuAR5q6QJwu1FcqcPfwVx/8yuBF8a42hNRq9SSTomj4cjAZw+zgb8lx064sp/Hg761KHrtb/7WrocvOuugTtdgdJqGWOcHCGZVcxYebBW/mWVXknUog2++rVwh+lOxgDX+eBitWYfjTUidJb1czwtaZ8uNi6+89AMXJS8G5x/RjATWzxtOhgEpxYW+zeUUTlpI2p0prhFQpl6PIQqEc0XbJBWX6nzx4RxqtUMZCtNuND1ZYKQgNeg1iix9EvoCVyGj2hFBtdI1pSLw== X-MS-TrafficTypeDiagnostic: CY4PR03MB2695: X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2695; 31:h9CJc0XPI5JSOZVFdL1QwBI2S0YZZvy+gIeg2JFMXlqoNYQvXJkYDLyjsEV8QDNVe3adOfDn5EvM322S4CEd6IlGzKH02eBBEZhxH6MGcPrcqEITi9V7G/N/FteYAiHtka8FiFH2yUZiC0nhIHqhHwuiKLDXkg3/IXnz4Ifvd8rvn+VmzVUwFSXorEyDed7mC/x+pntzVTKhR/9uKZdNzyQU2eFpcCmAuN+oyNep+GU=; 4:T/UR3ROpM0WXj+bYK2UHjQlY69uimCC67aZZDVMiAWQgDUsiBOtbwBPAoa5GEnSix/ZCcApXfRxUNdtbI7ANXR2vTRKU9N2O/sZVUEUVxkJNpaH7RbK3A8PiuSMPrUoSPC+AZ4oKCQ7i0I99+KZo/SZ8vhDnVHd98vKNzTkCeJgmLsMe2W6r4wCsRIgTv+G6+0bklO9qbTrLN7jQwuUD2gr1Td/3drH5TsP+1WrvPt/LhGKZ7fUeJ8LK5wWykdWSkejfaSzd2nskEaHQ3/rAjCNX6dgYAU/aj5D8LoHxakucTR8+YIVZGgnvFp5BHtdWqeHU0N4xsjrjAgZditB3vWGZzh7xq+d4hGsorieQgOEPwMamf5ir5bg1+YoZRxCk X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192374486261705)(185117386973197)(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93001095)(3231023)(2400032)(944501161)(3002001)(6055026)(6096035)(201703131430075)(201703131448075)(201703131433075)(201703151042153)(20161123561025)(20161123556025)(20161123559100)(20161123563025)(20161123565025)(201708071742011); SRVR:CY4PR03MB2695; BCL:0; PCL:0; RULEID:(100000803101)(100110400095)(400006); SRVR:CY4PR03MB2695; X-Forefront-PRVS: 0554B1F54F X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjAzTUIyNjk1OzIzOmk5TzlmYVJqVk5SQVJBbWlyR1did040MjhD?= =?utf-8?B?bUtqTFp4dnFKaGptMW02OXJ1TkhZQXZxakduMEZRMEszdUFFVE5LeGdVamRC?= =?utf-8?B?Z25JMU1kSTRSeW1NMlZseDJiZ0szNFVRWTAwbTdudVZFcE9PZWl4WVRPcURR?= =?utf-8?B?d2JOcTFMMG9KeDlBUis0V1ZsOGltMWdNYWtudUQ4V0FHNUZNT3MycWNWZFJL?= =?utf-8?B?cDFSUmdsSUNCNmMwcEI3Z0V6Vkl2cC82WU4yT3NFUGhpZVdGUkdlcmZJWDU0?= =?utf-8?B?amYyUmRSdlhDeTRpb3NianZndk10UkpkdFhVUHpLMXdUemcrY0hKakVBVVpK?= =?utf-8?B?OStaOTVNZWVwS2c4YzBNd2pvZHRSVCtJWW5ybElxQW55Q05GZFZmbzNpUzBD?= =?utf-8?B?QVA4T0hlcm9iMHZQTlU0bWNSM2xycUZqa05ocHVDdlFwV1o2Y2pMNVhRUDNJ?= =?utf-8?B?TzRXNjZhTnNBQklQQ0gvaW11OVM1VnR0MHNjdEllaGNPeVRzNi96TDVEeFVs?= =?utf-8?B?RURHdXBMbUU2RXkzMU5LNUl1b2dtZjNneFVGWjYyczBEVTAzOVh6dnFGSXo0?= =?utf-8?B?aVZCNnFycTZRYjMxanhzVUkvak9jWGF1ZXZ1T2dGcGM1VGMwT3EwL0pKZkk3?= =?utf-8?B?Z3JYSEx5d3R5ejdOVlM5ZDQyR0lDZHU0V1hDOGNxd0F3aTQvVFhGWDFSbkY3?= =?utf-8?B?dUpKdWQxZXNpT0FZZkI4UkpBVFAvUTBUbXRzbnNlRThZUTNkdDc5YWtuN2tQ?= =?utf-8?B?SXk3QTJxZWNoMWQ3eG9aaUdzb1VGVGRCeVk5VTA2M3htcm00am1YRGZpd056?= =?utf-8?B?aHNQc2JXSTNVengyUWhGSDRNMU10cFVweTJMeHJleCtMY0E4bFpQb3FVZUtp?= =?utf-8?B?amxBZDVsOVhnSW5aQ3ZpTDlhb0JjR21GZDJ6WTd4SzdMN1pRK0lwNUV3bkxU?= =?utf-8?B?dTlqNWRQNDRvMmZJOE5tL3FqZVd1NExSYWNTWFJQNmJwRW5hNGcyK2dieHRP?= =?utf-8?B?azhLUGxsV3dCK0ZDcXQvQXFhVkMyK0NQUmhLMmdpR1E1V0xnbTFJR0s1ckp1?= =?utf-8?B?bjREbEp3T0FqdnYrU0hzRU12RnlWTitTbThUblNHNWxOMnVhcXJzYi9LZzEz?= =?utf-8?B?VmlZck9hY29MMERIZFdCc3hISVhUNndIaVoxckZGQWRXYTBXNmVSeEFVQ3h3?= =?utf-8?B?N1ZhUkFWTjQ2UUtHVmxVMkZZOVJ3YWNzalRsMyszMitaTDZBeFdRNjluRUxT?= =?utf-8?B?TjAvVUdKSHZ4c3lRQnRKczRyRzRiS2RCcHdkTmRURk9aZVJ2RUJPaWJ5bTNr?= =?utf-8?B?dnk0SHBuRitqdjloS0w5cUU1WDNVMXR4OGFWY29OdGhNVXdLeE9hMDZTeDUx?= =?utf-8?B?VVhHZ3lFWG9xNkpYS1VZL29XSVpyYUtqeTFpbnZqd3BYQnNBUjAyQ21wZWV0?= =?utf-8?B?VXZNclAvako4M0k1Q3BtWEhMUnVnTy91Q0VNSFgvQjFiRVVWS1ZCenpnQ0E4?= =?utf-8?B?RHdmYk9lUnJVWkNmTGVQY1pPMityRTdwL1BrZTN2VU42WFVCVmlOK0dRUEVk?= =?utf-8?B?VDdmblV0aHF6WHpDOEJCdGJrSWZvTzdCckJCaGhPUW0xdU14eUcxQ0hJb3Zy?= =?utf-8?B?Rkx1WEdhS3d2aDdscVF1OGVuM0lhNUNZMGtOWDhSY1hmTXpRRkIyM05OR3BJ?= =?utf-8?B?YmpaMGFGWkRiZGJ4a1JYL1QzM0UveG95ZklyWURLbm5hUWE2TmtUSEJWUW1M?= =?utf-8?B?bTFvY1U1U2h5UDJPc3d1UTl1OXJ1OHRHU2RLRGhrck54V0pzOWJJUGZUMkxZ?= =?utf-8?B?MlhVcjAreHFvR3hMcm5abkViUktkQzNGS3k0N2VkbUlaT1A4bWZWcnNNOGha?= =?utf-8?Q?U03zhc28DYo=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY4PR03MB2695; 6:/2ta6Z49m/YyUZGuqm79Sr034lJlp4UnSjqNjnKJP8+XNTLoxgDewgY/m8AfHTvucsblNr27y1qlMyGKw6dK5Gs40nNQNoy/yr1BqdyWXP5tR99OXlq+0QgnFqWP7S5XzSEP0Qn3Yb9zkOI7UaonZGqXSuhWkh4uPhtv77wL5NUNU5HpN68QSNe8PIOczPCYVKDxXdVYJFEGiWS4uVZugvTjqDJogjBQMG0E8RCIhNUlovoXgeShfXN9nNcZnmXIrmbFkndQQMFwLb0RtqnVMxw0iDYjk6clLVea8hphkvCukowM6YoMmm0oAPQrJkWVScBopH+WM+ha2p5xs6CuyMiQbC3ml6BdwS5XVB+fuQY=; 5:lcCgRUEsyw4M9aG9O20th2sy7C4KH8KG7U3FaNHcK6xm79tRrttum98jjnInfFcx32iLneMN0KyY2D8up/HEZPuhOll90WgTJ7PzQKxmlqPJ875ILz1YHSL9o/bDLojSEVI4/vlnwDUMpLVQ37g1s2oiwuLFjIpavNSnetm20pE=; 24:4g3yVcAosxk391RmQQOIQ5ejWbT9e/vV39TVprRbCGfuR8cNmTuwkE7emq3GIdxyhMeaPKgQpjV93foqTc3P2vaLvhTy4g4F8meGnVKgrVs=; 7:ZSGGdskkEcq/el2F4GwuGhuWCWuSamVUikXJsGKoLvbrqgwspJStkGsaie4aaScqf5nSSNp+ExG+e1ZzLJfR6C26+9BfiRM/2cEj5rVCJP7G6tYKGbAWLlCMXOfGva21QySp4KjBGM4zmysHYHvHUu11jKUY5ywdLmrytibyZngypgOC1uCRhULbpTqlss+uQ0JOe8Rz4a5HiyfnbWG/4ZYvmlO6GqnjsxTTYZkmYoHD38AkJRPiHRuCrBiji54d SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2018 09:21:56.7562 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0658b410-cafb-4714-67f4-08d55cc29700 X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR03MB2695 Subject: Re: [dpdk-dev] [PATCH 1/2] lib/cryptodev: add support to set session private data 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: Tue, 16 Jan 2018 09:21:59 -0000 On 1/16/2018 2:33 PM, Gujjar, Abhinandan S wrote: > Hi Akhil, > >> -----Original Message----- >> From: Akhil Goyal [mailto:akhil.goyal@nxp.com] >> Sent: Tuesday, January 16, 2018 12:56 PM >> To: Gujjar, Abhinandan S ; Doherty, Declan >> ; Jacob, Jerin >> >> Cc: dev@dpdk.org; Vangati, Narender ; Rao, >> Nikhil >> Subject: Re: [PATCH 1/2] lib/cryptodev: add support to set session private data >> >> Hi Abhinandan, >> On 1/16/2018 12:35 PM, Gujjar, Abhinandan S wrote: >>> Hi Akhil, >>> >>>> -----Original Message----- >>>> From: Akhil Goyal [mailto:akhil.goyal@nxp.com] >>>> Sent: Tuesday, January 16, 2018 11:55 AM >>>> To: Gujjar, Abhinandan S ; Doherty, >>>> Declan >>>> Cc: dev@dpdk.org; Vangati, Narender ; >>>> Rao, Nikhil >>>> Subject: Re: [PATCH 1/2] lib/cryptodev: add support to set session >>>> private data >>>> >>>> Hi Abhinandan, >>>> On 1/16/2018 11:39 AM, Gujjar, Abhinandan S wrote: >>>>>>> diff --git a/lib/librte_cryptodev/rte_crypto.h >>>>>>> b/lib/librte_cryptodev/rte_crypto.h >>>>>>> index bbc510d..3a98cbf 100644 >>>>>>> --- a/lib/librte_cryptodev/rte_crypto.h >>>>>>> +++ b/lib/librte_cryptodev/rte_crypto.h >>>>>>> @@ -62,6 +62,18 @@ enum rte_crypto_op_sess_type { >>>>>>> RTE_CRYPTO_OP_SECURITY_SESSION /**< Security session >> crypto >>>>>> operation */ >>>>>>> }; >>>>>>> >>>>>>> +/** Private data types for cryptographic operation >>>>>>> + * @see rte_crypto_op::private_data_type */ enum >>>>>>> +rte_crypto_op_private_data_type { >>>>>>> + RTE_CRYPTO_OP_PRIVATE_DATA_NONE, >>>>>>> + /**< No private data */ >>>>>>> + RTE_CRYPTO_OP_PRIVATE_DATA_OP, >>>>>>> + /**< Private data is part of rte_crypto_op and indicated by >>>>>>> + * private_data_offset */ >>>>>>> + RTE_CRYPTO_OP_PRIVATE_DATA_SESSION >>>>>>> + /**< Private data is available at session */ }; >>>>>>> + >>>>>> We may get away with this enum. If private_data_offset is "0", then >>>>>> we can check with the session if it has priv data or not. >>>>> Right now, Application uses 'rte_crypto_op_private_data_type' to >>>>> indicate rte_cryptodev_sym_session_set_private_data() >>>>> was called to set the private data. Otherwise, how do you indicate >>>>> there is a >>>> private data associated with the session? >>>>> Any suggestions? >>>> For session based flows, the first choice to store the private data >>>> should be in the session. So RTE_CRYPTO_OP_WITH_SESSION or >>>> RTE_CRYPTO_OP_SECURITY_SESSION can be used to call >>>> rte_cryptodev_sym_session_set_private_data or >>>> rte_security_session_set_private_data. >>> Case 1: private_data_offset is "0" and sess_type = >>> RTE_CRYPTO_OP_WITH_SESSION -> usual case Case 2: private_data_offset >>> is "0" and sess_type = RTE_CRYPTO_OP_WITH_SESSION + event case (access >>> private data) Differentiating between case 1 & 2 will be done by checking >> rte_crypto_op_private_data_type == >> RTE_CRYPTO_OP_PRIVATE_DATA_SESSION. >> >> Consider this: >> if (sess_type == RTE_CRYPTO_OP_WITH_SESSION && >> rte_cryptodev_sym_session_get_private_data == NULL) >> usual case. >> else if (sess_type = RTE_CRYPTO_OP_WITH_SESSION && >> rte_cryptodev_sym_session_get_private_data != NULL) >> event case. >> else if (sess_type == RTE_CRYPTO_OP_SESSIONLESS && >> private_data_offset != 0) >> event case for sessionless op. >> >> I hope all cases can be handled in this way. > Memory allocated for private data will be continuation of session memory. > I think, rte_cryptodev_sym_session_get_private_data() will return a valid pointer. > It could be pointer to private data, in case application has allocated mempool with session + private data. > It could be again a pointer to a location(may be next session), in case application has allocated mempool with session only. > Unless, there is a flag in the session data which will be set by rte_cryptodev_sym_session_set_private_data() > If this flag is not set, rte_cryptodev_sym_session_get_private_data() will return NULL. > I am not claiming, I have complete knowledge of different usage case of mempool setup for crypto. > I am wondering, whether I am missing anything here. Please let me know. It depends on the implementation of the get/set API. We can set NULL, if it is not filled in the set API. If it is set then we have a valid pointer. -Akhil