Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp593897pxb; Wed, 27 Jan 2021 16:09:02 -0800 (PST) X-Google-Smtp-Source: ABdhPJwEyGY7wdobgc9wNDoCkB9ioN2ouKENgV2HCZOu9a7PuvrsUcFH/rJX1qcJPwfcOvt7jSGe X-Received: by 2002:a17:906:94ce:: with SMTP id d14mr8574086ejy.121.1611792542103; Wed, 27 Jan 2021 16:09:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611792542; cv=none; d=google.com; s=arc-20160816; b=NFAIsSGJlIFUZAfrfe/78Z1KUvUC44RisUCmSQxRkxHqjLz5N+7qXVxjhwxopL2h7E OSZzNDQl+0RkNyX8zioAPwcFSNcELp/53J+C6I/3rLNgiKB5bAqa6j7Fi15tRS+SWMXf C9NN+DEw5tb4xU0imn9T8sYvr2+qdMpjkNc7oeVbnCls1L0uLzRSqyDvKtxuRPPTLvro He0EIZW48KZcSR09479TO1sfwOjwA5OkhL2tu8g+8UDmyup0RXy7/8kom/s4ZnlofW3K c/UA1b0eC9lZFNrW+15mvTo3RnoiCGMn1tMZwp/wtpcZJ1ElwRMZxRYbRQjHXO5cYNl5 npfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=YVejo5/kjrJMbBwv3la1Aa/6x2fvfvpcZDGNm2PVLdk=; b=U+wewURX15xKhug/aI+prJAcUHm9kuF6X8MJAgOCzYmGQwQZnnXmajohICHuJXUrSg JLYSo7Q8Y4Q+LfPCfP0uA/5YlECUd+JyiKAevu8bQKX/0NMiP9GJUpUGPs/p2O4xYHLZ tVtpQ0K1FRj5Htj6vBWcibGFU5VvYnRhEWRNnDET2ROsl3ELX3ZQ3ceGVkIdvzUSkjO9 2Bjhb3Nsl/5D6mir/XKoBWGAXl54rGqpk1IcwV02I9akxUHhmEbiFlBAzaxpSZoB+EPO 4Jmps9Dh5mZJY3ilgzA+zOCxBh7121q3j2cW5YDZKyhOPY8tln2s0xPDHW06woe2OPxV Fv3Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ISOyAq50; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id sd11si1464369ejb.584.2021.01.27.16.08.37; Wed, 27 Jan 2021 16:09:02 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ISOyAq50; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234348AbhA0Q5R (ORCPT + 99 others); Wed, 27 Jan 2021 11:57:17 -0500 Received: from mail.kernel.org ([198.145.29.99]:35038 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233825AbhA0QzO (ORCPT ); Wed, 27 Jan 2021 11:55:14 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 4316864D99; Wed, 27 Jan 2021 16:54:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1611766473; bh=D9YLBdJdTvUNtknF0Gfd+7SXSDNwVLy+RyPU5K0m1Go=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ISOyAq502Cz78bk8HmAYUdmTvgZNMOXRLMuYjduLnDxuguzbvGQGgf+sSEyb0N1cV fzSKKE2DFqadoUCHI2C9JCWBTjawgUo46jgvaqgBvHMnbf9GFvwUmWwweyWKSx5pj5 IAmxe/7Cyc+8A08/7I3fpUb8KzAgOnklc0xKI3PqC/dy8ETInOVHBxudW4/hxulEW1 BIy4r8AHvfPULqHRIAmDfbfL3k2wCulXcVQJZuE/9y1RVDwtg/n4zeIkNZe8JrrrpZ xxU0ezYStJ5XjQIF4moS2Jop2C3m+oYA0DTYotqmaGWsFh82pKxSCu8ki8hePxVHWo rQYbnNT8I6bBg== Date: Wed, 27 Jan 2021 16:54:24 +0000 From: Will Deacon To: Lakshmi Ramasubramanian Cc: zohar@linux.ibm.com, bauerman@linux.ibm.com, robh@kernel.org, takahiro.akashi@linaro.org, gregkh@linuxfoundation.org, catalin.marinas@arm.com, mpe@ellerman.id.au, james.morse@arm.com, sashal@kernel.org, benh@kernel.crashing.org, paulus@samba.org, frowand.list@gmail.com, vincenzo.frascino@arm.com, mark.rutland@arm.com, dmitry.kasatkin@gmail.com, jmorris@namei.org, serge@hallyn.com, pasha.tatashin@soleen.com, allison@lohutok.net, masahiroy@kernel.org, bhsharma@redhat.com, mbrugger@suse.com, hsinyi@chromium.org, tao.li@vivo.com, christophe.leroy@c-s.fr, prsriva@linux.microsoft.com, balajib@linux.microsoft.com, linux-integrity@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Subject: Re: [PATCH v15 10/10] arm64: Add IMA log information in kimage used for kexec Message-ID: <20210127165424.GB358@willie-the-truck> References: <20210115173017.30617-1-nramas@linux.microsoft.com> <20210115173017.30617-11-nramas@linux.microsoft.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210115173017.30617-11-nramas@linux.microsoft.com> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jan 15, 2021 at 09:30:17AM -0800, Lakshmi Ramasubramanian wrote: > Address and size of the buffer containing the IMA measurement log need > to be passed from the current kernel to the next kernel on kexec. > > Add address and size fields to "struct kimage_arch" for ARM64 platform > to hold the address and size of the IMA measurement log buffer. > > Update CONFIG_KEXEC_FILE to select CONFIG_HAVE_IMA_KEXEC, if CONFIG_IMA > is enabled, to indicate that the IMA measurement log information is > present in the device tree for ARM64. > > Co-developed-by: Prakhar Srivastava > Signed-off-by: Prakhar Srivastava > Signed-off-by: Lakshmi Ramasubramanian > Reviewed-by: Thiago Jung Bauermann > --- > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/kexec.h | 5 +++++ > 2 files changed, 6 insertions(+) > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index 1d466addb078..ea7f7fe3dccd 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -1094,6 +1094,7 @@ config KEXEC > config KEXEC_FILE > bool "kexec file based system call" > select KEXEC_CORE > + select HAVE_IMA_KEXEC if IMA > help > This is new version of kexec system call. This system call is > file based and takes file descriptors as system call argument > diff --git a/arch/arm64/include/asm/kexec.h b/arch/arm64/include/asm/kexec.h > index d24b527e8c00..2bd19ccb6c43 100644 > --- a/arch/arm64/include/asm/kexec.h > +++ b/arch/arm64/include/asm/kexec.h > @@ -100,6 +100,11 @@ struct kimage_arch { > void *elf_headers; > unsigned long elf_headers_mem; > unsigned long elf_headers_sz; > + > +#ifdef CONFIG_IMA_KEXEC > + phys_addr_t ima_buffer_addr; > + size_t ima_buffer_size; > +#endif Why do these need to be in the arch structure instead of 'struct kimage'? Will