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 C1A6CC7EE23 for ; Thu, 8 Jun 2023 11:41:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3267A6B0072; Thu, 8 Jun 2023 07:41:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2D6B28E0001; Thu, 8 Jun 2023 07:41:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 177346B0075; Thu, 8 Jun 2023 07:41:42 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 043F46B0072 for ; Thu, 8 Jun 2023 07:41:42 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C5A46AEAD4 for ; Thu, 8 Jun 2023 11:41:41 +0000 (UTC) X-FDA: 80879390802.16.A7A9C54 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by imf24.hostedemail.com (Postfix) with ESMTP id 9C4C8180018 for ; Thu, 8 Jun 2023 11:41:38 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=MeNItvVr; spf=none (imf24.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 134.134.136.100) smtp.mailfrom=kirill.shutemov@linux.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=1686224499; 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-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=tnLUQYNd7E5Subx04iqanP9RITf/lAANBnzMc2F47x0=; b=0viv+uQw4ame/1K9YBrI3BjnkSG0EIOGA8DOQSkHK4jxW+5ac1zxdv+FQ5MCuWGCjkaBkd FML+a3186+ztL6KNp5qMZPmzd2GyW5r2rt0B1wVG/PfL4rKqvT9OoyiJqzGW/hIeeNfusi rjBk2G0B/XLWuMLwbdSOAlkI5noI3vo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1686224499; a=rsa-sha256; cv=none; b=7Do94KAmePeSpOCVHCB9+M1WEU+tevIQVlNpJ0EcDhg2IEO+84Gej4usc5vZV9WW9IM3Fu s1kPisj1tWvRHNPM8WQBtkTxsDS1eaGxgtZXT4DI9ex4gCdqqY1CTTzKiLwc6HoB+PHUXp 50e63cHXQct89XDkFkJKbLptdYJbdzQ= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=MeNItvVr; spf=none (imf24.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 134.134.136.100) smtp.mailfrom=kirill.shutemov@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686224498; x=1717760498; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=JIEyUpAEAWl/6gc2W02IseOhPJ0I3+IVQSnr6ctlzmY=; b=MeNItvVrmiHYCW1HhDMJlTCa5uT91NVMjt7SnLW70aA1BC3VUx9BsYQR A2+rcaCthO9okMmnRAANatG3a4wZH0tp5GdWWhxakleP/M3NoD8j8PEKq vVl5Je1lwBkgpkUDIoUVpj2GAeTO0q+BCE9gwG+OXYdlxcUy99GjVwzlX zAip1VcKHKmXqxGb1JrR/IxC3HuIP47WS5JukPJqpBcPwZkqG2ocHMTCf IoymVq4MQElna7PTLrVS9Gzmxwl1JS0i2Q+IgVa1SA34QYpZmOfCTTEZk UaFW/5bFX+QSr5Eh2Wi+gUNRKss04hzsLrbY2AnnLdirp95CsqPG427zP Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10734"; a="423134635" X-IronPort-AV: E=Sophos;i="6.00,226,1681196400"; d="scan'208";a="423134635" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2023 04:41:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10734"; a="956672751" X-IronPort-AV: E=Sophos;i="6.00,226,1681196400"; d="scan'208";a="956672751" Received: from fgorter-mobl.ger.corp.intel.com (HELO box.shutemov.name) ([10.252.59.89]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jun 2023 04:41:31 -0700 Received: by box.shutemov.name (Postfix, from userid 1000) id D1D3C10A676; Thu, 8 Jun 2023 14:41:28 +0300 (+03) Date: Thu, 8 Jun 2023 14:41:28 +0300 From: "kirill.shutemov@linux.intel.com" To: "Huang, Kai" Cc: "kvm@vger.kernel.org" , "Hansen, Dave" , "david@redhat.com" , "bagasdotme@gmail.com" , "ak@linux.intel.com" , "Wysocki, Rafael J" , "linux-kernel@vger.kernel.org" , "Chatre, Reinette" , "Christopherson,, Sean" , "pbonzini@redhat.com" , "tglx@linutronix.de" , "linux-mm@kvack.org" , "Yamahata, Isaku" , "Luck, Tony" , "peterz@infradead.org" , "Shahar, Sagi" , "imammedo@redhat.com" , "Gao, Chao" , "Brown, Len" , "sathyanarayanan.kuppuswamy@linux.intel.com" , "Huang, Ying" , "Williams, Dan J" Subject: Re: [PATCH v11 08/20] x86/virt/tdx: Get information about TDX module and TDX-capable memory Message-ID: <20230608114128.vu75wlcojpyjak22@box.shutemov.name> References: <50386eddbb8046b0b222d385e56e8115ed566526.1685887183.git.kai.huang@intel.com> <20230608002725.xc25dantcwdxsuil@box.shutemov.name> <19ea7470e9d6fa698f9ad7caff3279873e530a0b.camel@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <19ea7470e9d6fa698f9ad7caff3279873e530a0b.camel@intel.com> X-Rspamd-Queue-Id: 9C4C8180018 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: 8k5ggyfep41f39ihpaeqzjifx5y6nsuk X-HE-Tag: 1686224498-535658 X-HE-Meta: U2FsdGVkX1/vhViSg++z2igRnts/k3on99ha4Yajpk8oCWrjhlXvpz6ZsV7AUCYFGEeaBgI+tfb5vmRMNSulQGZRifoaz2FPNRcd9KPuB7qrPrEcgtz+KrawcHKC6SK0Xd9ZCXusCl80sZKlu1wm++/gzFynJscj4/R+zPplFQqpfcYupqwl835YdF1VYpOiXSP7q82HVF7b/IK7hvqa51ccW5PUR2NxTvUXbIi5NV5D9mckwkUu5cELzu2esqBTQHbFEya7JrI1ECKeDXz5V84Xk/Idqn12psjY+X/BVXmtu7+VM8cIJpVmLISpQ7K+dwfrM8IedlUVIsvc0x7lNBVNBbXPCYAsFs6TYNMwoIYsd9qFNmjGzFe5y9WF+7ooZnM+DxFbiIIiI+/aCe7u7aKrlu0Rgc4+iIot07sYsaOEIkklP+91UpbTSRNorLzRzdbhY0n3R1kvH2aTeJaozR8qtVURy+HilnAgLg7H83OGglBsyl5wanMSNirPylqOQ5xP5y/hcWP4jrmfLNgIpE40nDO3s3wHN46GrYSaln6MQdDuXPnpVIhaxHGMqLTjhy6fHBlXHA7XEnW6W80TYqxH+F8Q3yJ4RJmnI9NbGtIXDi8J73EvcbFQFu0qCCJZaUr64+R25t+CAgjkVXNS+9Gi0fRtuEkJN2a95oJzPfh5m/7Pcpj0YLobBGH/tpaPMAGKnMAG8OvEc9FIctKfmuN1odgBpR5yMeePaZqQFPnnWfsxSXwKlrbxe25gYiLWJs7LkYT5mYlbn9K3VhwLw/5gZTAMgwA1gdulDvFr5fFTBthh2HxeYky66eJEQl4gt9C8ZKxPXum8ToUYlNQtxymIZ4WYbcrBd+IMGdGbXyjfnwtuu1wC2MppJvJSYbXDN26bd12qUsSHh5Qj6R1w/TarAqa9pFf143Q0AYqtJ7nErPe6ZHaYsT+yoNuyYr+0fb9PyjjKE8qG0L47q+8 ZJag/xTD 4JHSoaWojPBG2OOG8e8/8ImCLKkoLgjcsv9aH2WofKQVWYsWrPZdfP8sBrGspHLhSTpcu0m6aHsOLjhbx3p0mlFhXOgck9YbiNnCtuFaTqncjJzWUK+xsIMMUny6jaie/pVBoANDzMCwjnkISN26hUDm2aHIQOh3DEi0WCrTTb8TBua5kK0mbowp5cA== 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: On Thu, Jun 08, 2023 at 02:40:27AM +0000, Huang, Kai wrote: > On Thu, 2023-06-08 at 03:27 +0300, kirill.shutemov@linux.intel.com wrote: > > On Mon, Jun 05, 2023 at 02:27:21AM +1200, Kai Huang wrote: > > > For now both 'tdsysinfo_struct' and CMRs are only used during the module > > > initialization. But because they are both relatively big, declare them > > > inside the module initialization function but as static variables. > > > > This justification does not make sense to me. static variables will not be > > freed after function returned. They will still consume memory. > > > > I think you need to allocate/free memory dynamically, if they are too big > > for stack. > > > I do need to keep tdsysinfo_struct as it will be used by KVM too. Will you pass it down to KVM from this function? Will KVM use the struct after the function returns? > CMRs are not > used by KVM now but they might get used in the future, e.g., we may want to > expose them to /sys in the future. > > Also it takes more lines of code to do dynamic allocation. I'd prefer the code > simplicity. These structures take 1.5K of memory and the memory will be allocated for all machines that boots the kernel with TDX enabled, regardless if the machine has TDX or not. It seems very wasteful to me. -- Kiryl Shutsemau / Kirill A. Shutemov