From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6A990C8303D for ; Fri, 4 Jul 2025 04:24:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 38D0944015B; Fri, 4 Jul 2025 00:23:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3650A440154; Fri, 4 Jul 2025 00:23:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 22D6044015B; Fri, 4 Jul 2025 00:23:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 1099E440154 for ; Fri, 4 Jul 2025 00:23:39 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id CB2AE16159F for ; Fri, 4 Jul 2025 04:23:38 +0000 (UTC) X-FDA: 83625288516.25.6F46854 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by imf11.hostedemail.com (Postfix) with ESMTP id A9F8940002 for ; Fri, 4 Jul 2025 04:23:36 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="QU84ST+/"; spf=pass (imf11.hostedemail.com: domain of kanchana.p.sridhar@intel.com designates 198.175.65.17 as permitted sender) smtp.mailfrom=kanchana.p.sridhar@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751603016; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=cI2a78gzOaiFMKbRUK+R3Ki+VJFi4uE+TXQL9tcHGuQ=; b=ccBL5G2nRrZLUM0HgrG7ZkRh8YnDLPaRwnQ5fmzkVlY9FNzyBAspi1QKiUEmGiEVUe+UDz Xn1moGyHzR3rFtnUWNiAW8fotH92rvp5sFIdL875ggqMfx/blCb6mBR7OGHd797y6j1uNg grytVeJCXyqtI4Om4l4zZfPkYpTzZHs= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="QU84ST+/"; spf=pass (imf11.hostedemail.com: domain of kanchana.p.sridhar@intel.com designates 198.175.65.17 as permitted sender) smtp.mailfrom=kanchana.p.sridhar@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751603016; a=rsa-sha256; cv=none; b=ckvwQQiTtWxWv4UHIA6U5IRgf4VR7qqzW1yACuRnzJXhSRJAL1cdEfPhUx+Dt2dcMQXk9X DVmKwGiLIfpjyo3sIOqiURJSR+SmoOu34Nft+vxQ3a6116vD79gCRYUbFMgg0w2GrZJxVn ktqmLgmaBeSWyhpEn3v+7RRdo/Lu1B4= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1751603017; x=1783139017; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Kmk+iJsQT2Exsw/kR1m8SAtMwjqShpsgO63jDQplw8s=; b=QU84ST+/W0BNYiLSyeEIZYt2AFx/DLRxbwwqVXP7Wufewoji07onqDVd oCfZ+cYqfp69hD7qrjcJpsMQRLbnPmvBcnKSv8xgqxVz2ysayArngi6Xc 20TMZFroATC5Mgu0Jbo+fKfQ3TxdRiEz54SSZ+D62JLDIvPd/LeA2SpXk z74/F39jKaItek/CJ8zQZmH5fLUHrb/7fd2sa/yMkYFlRVymwk3F956Hq ofvQRLVdKkYxwY+yCmjxkcG5fHcXPQcQu6S83RUxb0qdiGuh0UK7ntV9J Cy6PHGVeF/HvJoy6w08x7nilGfk4eP3Lp+NtJL0EFJKz71/qrk+L2KTKf Q==; X-CSE-ConnectionGUID: 7y74v0UVQECmPdhmCRy3gw== X-CSE-MsgGUID: cvjHk7NrRXacPUVxYZzw6g== X-IronPort-AV: E=McAfee;i="6800,10657,11483"; a="53909100" X-IronPort-AV: E=Sophos;i="6.16,286,1744095600"; d="scan'208";a="53909100" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Jul 2025 21:23:26 -0700 X-CSE-ConnectionGUID: Er3bdchGTuG5T5PevgL8YA== X-CSE-MsgGUID: +jHzUwczSc+qv779WCs0GQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.16,286,1744095600"; d="scan'208";a="153968696" Received: from jf5300-b11a338t.jf.intel.com ([10.242.51.115]) by orviesa006.jf.intel.com with ESMTP; 03 Jul 2025 21:23:25 -0700 From: Kanchana P Sridhar To: linux-kernel@vger.kernel.org, linux-mm@kvack.org, hannes@cmpxchg.org, yosry.ahmed@linux.dev, nphamcs@gmail.com, chengming.zhou@linux.dev, usamaarif642@gmail.com, ryan.roberts@arm.com, 21cnbao@gmail.com, ying.huang@linux.alibaba.com, akpm@linux-foundation.org, senozhatsky@chromium.org, linux-crypto@vger.kernel.org, herbert@gondor.apana.org.au, davem@davemloft.net, clabbe@baylibre.com, ardb@kernel.org, ebiggers@google.com, surenb@google.com, kristen.c.accardi@intel.com, vinicius.gomes@intel.com Cc: wajdi.k.feghali@intel.com, vinodh.gopal@intel.com, kanchana.p.sridhar@intel.com Subject: [PATCH v10 12/25] crypto: acomp - Add "void *kernel_data" in "struct acomp_req" for kernel users. Date: Thu, 3 Jul 2025 21:23:10 -0700 Message-Id: <20250704042323.10318-13-kanchana.p.sridhar@intel.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20250704042323.10318-1-kanchana.p.sridhar@intel.com> References: <20250704042323.10318-1-kanchana.p.sridhar@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: 54o3cpjtpqsyn81omff4kzm8uzp66rxn X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: A9F8940002 X-HE-Tag: 1751603016-309112 X-HE-Meta: U2FsdGVkX199Hp5y/vL3fHaKST9Txc9dDbAaG8Q/lQo6k7aCJKpEZlYsXkYCuJK2LmJZN6D//J+WbuTaVyHLKu66cG5iivaX3/0k4DnRh0UU5vp5OqgrfyYWakVyqt+Ee/gG5qv8JIiWOrsCkiqL6xNjAiSW1ZuN61TmsrImQdzmd4Ng8IsAGgDZZjQ3s3Y+I3fxvsxvAn930hEE8AYFouZXiba3dC+KVjKuVSEzhFhVyyuiWfgrlJLE9aMBEhGOUyi9sGEORzIWwUOZ7GB7c/yZzr9ZIo/7y9k9MLzyv2BUbR/BEdAqOGJEUDmnjgvkpvRd2hE6H7nYBqVZ0xekR7o7L6eJFMKsCVh8ThBa9EKqO6JmmWCG7PEu25++Fx2wrUdzXBSYTTG/wsEM3916+ZB49ziyPMPFhyBaz2odMLn1H/xdydLjI6490CIN2BfhIcEbdddAakECZa0WxpLzo2tCerO/ZzJqlYB4lAj5FPddXfDAPNPwYUDLipCPbSiX9JfokzPO/QqjwRnO+3Cvj3CZyVOqhqDMrZlp1ZzvhbmJ3McsAojP5rDy9GL1RcZEOU9jDYEv3628HXa4imXYLIrgcEvjeITW/69Le72Mm56HGIucYIjK05/p/DPl9/WC+DYwp1cT6AL0EscpG0JUmDAZVshyv2MR3+HK0pZAEfHHzqJV5uKOUXekz2WjQWdrp3ofET6VHJlkYNh2cvaa15GcCiMO1X4jpUdMzG/HMvy7FQL4m7nP8NB2O3lTmtsdqOCyxwPAqpnp2WVmVJ15mKGHI9Zi+b3Jc4HjdlI5VF9J1DE/1SXDBgT7lJUaO55oAR8blOxFD2WZwQmBIKYgCFjRrwKsjkwAYpKFELvmYg/tCCA7RlYu/AvR91+lDCvPWVPeebsMnFHbRpM/3yT5gP05y3HKFK9Usy2KCl7xjgGFk01YLGPE9dfYvxRsOd4LcjofAougDJmx87gE+r7 8HghleMk o/NPweuYLl23RH+sboIQkPtQJ/D0215uAOUS/ZYqeopMLbW7QXG6a3rqJ8CD0p7mrvmokcjtCC79cVKiOYxmQ7aenh6ikKQUc0yEvS5d8LJRTSptF7oHe3yERjfmT8ykPCXFUmvdS4VThb5f2KVSuZEQ46AlMh1iwD0rBiFIWQKTi7SQo5h9vMrggy3clbwwzyRDMVPXa9dq4fjw8iEYQmoQhtbYUM1UguVyH X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: This commit adds a "void *kernel_data" member in "struct acomp_req": @kernel_data: Private API kernel code data for kernel users This allows kernel modules such as zswap and zram to input driver data without interfering with existing usage of acomp_req->base.data. Since acomp_request_set_params() is the main interface for kernel users to initialize the acomp_req members, this routine sets acomp_req->kernel_data to NULL. Kernel users such as zswap will need to explicitly set acomp_req->kernel_data for interacting with crypto_acomp_[de]compress(). This usage model will be covered in a separate patch-series. Signed-off-by: Kanchana P Sridhar --- include/crypto/acompress.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/crypto/acompress.h b/include/crypto/acompress.h index 9eacb9fa375d7..0312322d2ca03 100644 --- a/include/crypto/acompress.h +++ b/include/crypto/acompress.h @@ -79,6 +79,7 @@ struct acomp_req_chain { * @dvirt: Destination virtual address * @slen: Size of the input buffer * @dlen: Size of the output buffer and number of bytes produced + * @kernel_data: Private API kernel code data for kernel users * @chain: Private API code data, do not use * @__ctx: Start of private context data */ @@ -95,6 +96,7 @@ struct acomp_req { unsigned int slen; unsigned int dlen; + void *kernel_data; struct acomp_req_chain chain; void *__ctx[] CRYPTO_MINALIGN_ATTR; @@ -354,6 +356,7 @@ static inline void acomp_request_set_params(struct acomp_req *req, req->dst = dst; req->slen = slen; req->dlen = dlen; + req->kernel_data = NULL; req->base.flags &= ~(CRYPTO_ACOMP_REQ_SRC_VIRT | CRYPTO_ACOMP_REQ_SRC_NONDMA | -- 2.27.0