Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp151660pxb; Fri, 15 Jan 2021 09:33:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJyfpnlM5fTFt9rpQeUYZEUD3czRgPDcMy11UrevPAwKkshOofA8pCY0pfWxIWvJ2Zg8uGQH X-Received: by 2002:a17:906:19c3:: with SMTP id h3mr9641254ejd.429.1610732030448; Fri, 15 Jan 2021 09:33:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610732030; cv=none; d=google.com; s=arc-20160816; b=RkZ00EKOCSG/gqj0kdskR+JmN1aqbVoBjJeMVoeOi6MAf078+ycdPHM/6nmOaZGJzI h48Jj3sUj+nuDwFF3cwkQeJSoxD6Q9ypSqTL8Cs0tF9qRcC3hMw7XcMypZ0lH21fcmjp a72wcLSp/KHIp97CeqUxNMzK2vFFTAl+XKceQx+ExW74oMqTVfJwqryazRsmw2lBgJqt 2NZAtLq7w95HC8ELzaLA7Qu+llS22f0D4JlGbndSgRPJ5Idd/SZSFSH+470GFbkrdZY/ MIeGfwt4kroP7A7ctUUk7Of5koSmdZGDhgbLgR48FZLpIoeJ4r0j17KcmvVnRj9UoNCS +kRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:dkim-filter; bh=1aotmbJQziKORS3Wqv9k380Z5OVfRIDlDlUpXWgDkCQ=; b=MMIwqeA9NpaAytzgeaosozXXpiacBSUwQoohiJZoLA/vULbLETO/Fm768ig7OMXZ7k dESgPs7YozOHDfX90F6eopGpBuU+dtHKvZFFOQg1fxx5oGKvpr+eW9uDjWmS4lgxPISq BgF7DfqDMXFjTSRhhJ1Q7bp5A2sE9uShBn/2eQkdlA7NwlH8MU8DWBkPc61H/H+ECSRv 9QC0fx7Ila/Y9xF8tvghuSMaqYbuNT6KctId5XZ5PAXSQFyz4esOVw+Ky3aaYyLW8fNT 3YOXMRthVsOA2JRsGTDnZkgWDcrqMZkrf6DUccQZen6N7MVLF/Au/4CGHGWuKYlQ/Mv5 4H3g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linux.microsoft.com header.s=default header.b="brt42/YQ"; 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=linux.microsoft.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w9si3422250edr.281.2021.01.15.09.33.21; Fri, 15 Jan 2021 09:33:50 -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=@linux.microsoft.com header.s=default header.b="brt42/YQ"; 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=linux.microsoft.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387722AbhAORbs (ORCPT + 99 others); Fri, 15 Jan 2021 12:31:48 -0500 Received: from linux.microsoft.com ([13.77.154.182]:56854 "EHLO linux.microsoft.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727876AbhAORbp (ORCPT ); Fri, 15 Jan 2021 12:31:45 -0500 Received: from localhost.localdomain (c-73-42-176-67.hsd1.wa.comcast.net [73.42.176.67]) by linux.microsoft.com (Postfix) with ESMTPSA id 573DE20B6C49; Fri, 15 Jan 2021 09:30:30 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 573DE20B6C49 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1610731831; bh=1aotmbJQziKORS3Wqv9k380Z5OVfRIDlDlUpXWgDkCQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=brt42/YQlIYys51K/dU8hS75f0odrbrz1DCtM1XqjsmDvrhNeWLi+EerVR+0yW+7j H5mfZm0kSWSAGDFouK2eZARqB+AdYAhJz0loy2ZH2Xoar8kvWQWDvgP6mfJXipbk0V JfJIT3HpnWWP/khUuVciH0kWltn/LtMKDO0+fWrI= From: Lakshmi Ramasubramanian To: zohar@linux.ibm.com, bauerman@linux.ibm.com, robh@kernel.org, takahiro.akashi@linaro.org, gregkh@linuxfoundation.org, will@kernel.org, catalin.marinas@arm.com, mpe@ellerman.id.au Cc: 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: [PATCH v15 10/10] arm64: Add IMA log information in kimage used for kexec Date: Fri, 15 Jan 2021 09:30:17 -0800 Message-Id: <20210115173017.30617-11-nramas@linux.microsoft.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210115173017.30617-1-nramas@linux.microsoft.com> References: <20210115173017.30617-1-nramas@linux.microsoft.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 }; extern const struct kexec_file_ops kexec_image_ops; -- 2.30.0