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 X-Spam-Level: X-Spam-Status: No, score=-16.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2EE82C433E0 for ; Tue, 2 Mar 2021 17:51:34 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id EE31164F1A for ; Tue, 2 Mar 2021 17:51:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344206AbhCBRlc (ORCPT ); Tue, 2 Mar 2021 12:41:32 -0500 Received: from mail.kernel.org ([198.145.29.99]:34494 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1448635AbhCBPNn (ORCPT ); Tue, 2 Mar 2021 10:13:43 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 41E9A64F45; Tue, 2 Mar 2021 15:07:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1614697622; bh=rwonpNq25JJj2ufF7OMZquyMz1mCqMW/pVBOD+XZGeE=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=IbR7Nas9nddr99wRToXJtsaaw0+ZBA+nayu/qO2gT92v7eaxf4RbiDALoIqlHjrPN GsgqMqCgO8hGvC1cPYmrpU2wu2bgcElgHcTgcEtuEYow6LDJyUucn4A8X8+45CElos BEqMXhLVt3pYy9yudfkZovrLhdjjFQ7yNshcvAVarmZV7/LJa30+5M4E8wEpCybUiZ a7UOu2fWXDEFEsHOB05S6n3hUA/HSBCbRlZUi0JNA6sTBuXjvProClnWbj0IcCSjrc Xa2HQ1VlhLpj2HjUcDRHJMRdin610qXlR2fMklyVPlVlDdnqn/DNZgQ3JyLuV7rJgh 7qOedsvTemGFQ== Received: by mail-lj1-f169.google.com with SMTP id u18so10705291ljd.3; Tue, 02 Mar 2021 07:07:02 -0800 (PST) X-Gm-Message-State: AOAM531Gvj3EfuEAoV9iexqWXZG0vRJtXzJY9Y8WNstbfJPD5fDxGfGI eaZW8oVHBpWzrtrmFDIxoXgo9ens+l9cShzJbA== X-Google-Smtp-Source: ABdhPJxOtEVEY247zJz1Zjl4hZ6/xkyL6IjN+Q/OTQt+J/K7OkDS0hD7whg467iJYOsJ9IQW2v48KL9mVR3Zfm7IszQ= X-Received: by 2002:a17:906:c405:: with SMTP id u5mr11900896ejz.341.1614697620328; Tue, 02 Mar 2021 07:07:00 -0800 (PST) MIME-Version: 1.0 References: <20210221174930.27324-1-nramas@linux.microsoft.com> In-Reply-To: <20210221174930.27324-1-nramas@linux.microsoft.com> From: Rob Herring Date: Tue, 2 Mar 2021 09:06:47 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v19 00/13] Carry forward IMA measurement log on kexec on ARM64 To: Lakshmi Ramasubramanian Cc: Mimi Zohar , Thiago Jung Bauermann , "AKASHI, Takahiro" , Greg Kroah-Hartman , Will Deacon , Joe Perches , Catalin Marinas , Michael Ellerman , Stephen Rothwell , James Morse , Sasha Levin , Benjamin Herrenschmidt , Paul Mackerras , Frank Rowand , vincenzo.frascino@arm.com, Mark Rutland , dmitry.kasatkin@gmail.com, James Morris , "Serge E. Hallyn" , Pavel Tatashin , Allison Randal , Masahiro Yamada , Matthias Brugger , Hsin-Yi Wang , tao.li@vivo.com, Christophe Leroy , Prakhar Srivastava , balajib@linux.microsoft.com, linux-integrity@vger.kernel.org, "linux-kernel@vger.kernel.org" , linux-arm-kernel , devicetree@vger.kernel.org, linuxppc-dev Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Feb 21, 2021 at 11:49 AM Lakshmi Ramasubramanian wrote: > > On kexec file load Integrity Measurement Architecture (IMA) subsystem > may verify the IMA signature of the kernel and initramfs, and measure > it. The command line parameters passed to the kernel in the kexec call > may also be measured by IMA. A remote attestation service can verify > a TPM quote based on the TPM event log, the IMA measurement list, and > the TPM PCR data. This can be achieved only if the IMA measurement log > is carried over from the current kernel to the next kernel across > the kexec call. > > powerpc already supports carrying forward the IMA measurement log on > kexec. This patch set adds support for carrying forward the IMA > measurement log on kexec on ARM64. > > This patch set moves the platform independent code defined for powerpc > such that it can be reused for other platforms as well. A chosen node > "linux,ima-kexec-buffer" is added to the DTB for ARM64 to hold > the address and the size of the memory reserved to carry > the IMA measurement log. > > This patch set has been tested for ARM64 platform using QEMU. > I would like help from the community for testing this change on powerpc. > Thanks. > > This patch set is based on > commit f31e3386a4e9 ("ima: Free IMA measurement buffer after kexec syscall") > in https://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git > "ima-kexec-fixes" branch. > > Changelog: > > v19 > - Moved ELF related fields from "struct kimage_arch" for x86, arm64, > and powerpc architectures to "struct kimage". > > v18 > - Added a parameter to of_kexec_alloc_and_setup_fdt() for the caller > to specify additional space needed for the FDT buffer > - Renamed arm64 and powerpc ELF buffer address field in > "struct kimage_arch" to elf_load_addr to match x86_64 name. > - Removed of_ima_add_kexec_buffer() and instead directly set > ima_buffer_addr and ima_buffer_size in ima_add_kexec_buffer() > - Moved FDT_EXTRA_SPACE definition from include/linux/of.h to > drivers/of/kexec.c > > v17 > - Renamed of_kexec_setup_new_fdt() to of_kexec_alloc_and_setup_fdt(), > and moved memory allocation for the new FDT to this function. > > v16 > - Defined functions to allocate and free buffer for FDT for powerpc > and arm64. > - Moved ima_buffer_addr and ima_buffer_size fields from > "struct kimage_arch" in powerpc to "struct kimage" > v15 > - Included Rob's patches in the patch set, and rebased > the changes to "next-integrity" branch. > - Allocate memory for DTB, on arm64, using kmalloc() instead of > vmalloc() to keep it consistent with powerpc implementation. > - Call of_kexec_setup_new_fdt() from setup_new_fdt_ppc64() and > remove setup_new_fdt() in the same patch to keep it bisect safe. > > v14 > - Select CONFIG_HAVE_IMA_KEXEC for CONFIG_KEXEC_FILE, for powerpc > and arm64, if CONFIG_IMA is enabled. > - Use IS_ENABLED() macro instead of "#ifdef" in remove_ima_buffer(), > ima_get_kexec_buffer(), and ima_free_kexec_buffer(). > - Call of_kexec_setup_new_fdt() from setup_new_fdt_ppc64() and > remove setup_new_fdt() in "arch/powerpc/kexec/file_load.c". > > v13 > - Moved the arch independent functions to drivers/of/kexec.c > and then refactored the code. > - Moved arch_ima_add_kexec_buffer() to > security/integrity/ima/ima_kexec.c > > v12 > - Use fdt_appendprop_addrrange() in setup_ima_buffer() > to setup the IMA measurement list property in > the device tree. > - Moved architecture independent functions from > "arch/powerpc/kexec/ima.c" to "drivers/of/kexec." > - Deleted "arch/powerpc/kexec/ima.c" and > "arch/powerpc/include/asm/ima.h". > > v11 > - Rebased the changes on the kexec code refactoring done by > Rob Herring in his "dt/kexec" branch > - Removed "extern" keyword in function declarations > - Removed unnecessary header files included in C files > - Updated patch descriptions per Thiago's comments > > v10 > - Moved delete_fdt_mem_rsv(), remove_ima_buffer(), > get_ima_kexec_buffer, and get_root_addr_size_cells() > to drivers/of/kexec.c > - Moved arch_ima_add_kexec_buffer() to > security/integrity/ima/ima_kexec.c > - Conditionally define IMA buffer fields in struct kimage_arch > > v9 > - Moved delete_fdt_mem_rsv() to drivers/of/kexec_fdt.c > - Defined a new function get_ima_kexec_buffer() in > drivers/of/ima_kexec.c to replace do_get_kexec_buffer() > - Changed remove_ima_kexec_buffer() to the original function name > remove_ima_buffer() > - Moved remove_ima_buffer() to drivers/of/ima_kexec.c > - Moved ima_get_kexec_buffer() and ima_free_kexec_buffer() > to security/integrity/ima/ima_kexec.c > > v8: > - Moved remove_ima_kexec_buffer(), do_get_kexec_buffer(), and > delete_fdt_mem_rsv() to drivers/of/fdt.c > - Moved ima_dump_measurement_list() and ima_add_kexec_buffer() > back to security/integrity/ima/ima_kexec.c > > v7: > - Renamed remove_ima_buffer() to remove_ima_kexec_buffer() and moved > this function definition to kernel. > - Moved delete_fdt_mem_rsv() definition to kernel > - Moved ima_dump_measurement_list() and ima_add_kexec_buffer() to > a new file namely ima_kexec_fdt.c in IMA > > v6: > - Remove any existing FDT_PROP_IMA_KEXEC_BUFFER property in the device > tree and also its corresponding memory reservation in the currently > running kernel. > - Moved the function remove_ima_buffer() defined for powerpc to IMA > and renamed the function to ima_remove_kexec_buffer(). Also, moved > delete_fdt_mem_rsv() from powerpc to IMA. > > v5: > - Merged get_addr_size_cells() and do_get_kexec_buffer() into a single > function when moving the arch independent code from powerpc to IMA > - Reverted the change to use FDT functions in powerpc code and added > back the original code in get_addr_size_cells() and > do_get_kexec_buffer() for powerpc. > - Added fdt_add_mem_rsv() for ARM64 to reserve the memory for > the IMA log buffer during kexec. > - Fixed the warning reported by kernel test bot for ARM64 > arch_ima_add_kexec_buffer() - moved this function to a new file > namely arch/arm64/kernel/ima_kexec.c > > v4: > - Submitting the patch series on behalf of the original author > Prakhar Srivastava > - Moved FDT_PROP_IMA_KEXEC_BUFFER ("linux,ima-kexec-buffer") to > libfdt.h so that it can be shared by multiple platforms. > > v3: > Breakup patches further into separate patches. > - Refactoring non architecture specific code out of powerpc > - Update powerpc related code to use fdt functions > - Update IMA buffer read related code to use of functions > - Add support to store the memory information of the IMA > measurement logs to be carried forward. > - Update the property strings to align with documented nodes > https://github.com/devicetree-org/dt-schema/pull/46 > > v2: > Break patches into separate patches. > - Powerpc related Refactoring > - Updating the docuemntation for chosen node > - Updating arm64 to support IMA buffer pass > > v1: > Refactoring carrying over IMA measuremnet logs over Kexec. This patch > moves the non-architecture specific code out of powerpc and adds to > security/ima.(Suggested by Thiago) > Add Documentation regarding the ima-kexec-buffer node in the chosen > node documentation > > v0: > Add a layer of abstraction to use the memory reserved by device tree > for ima buffer pass. > Add support for ima buffer pass using reserved memory for arm64 kexec. > Update the arch sepcific code path in kexec file load to store the > ima buffer in the reserved memory. The same reserved memory is read > on kexec or cold boot. > > Lakshmi Ramasubramanian (10): > kexec: Move ELF fields to struct kimage > arm64: Use ELF fields defined in 'struct kimage' > powerpc: Use ELF fields defined in 'struct kimage' > x86: Use ELF fields defined in 'struct kimage' > powerpc: Move ima buffer fields to struct kimage > powerpc: Enable passing IMA log to next kernel on kexec > powerpc: Move arch independent ima kexec functions to > drivers/of/kexec.c > kexec: Use fdt_appendprop_addrrange() to add ima buffer to FDT > powerpc: Delete unused function delete_fdt_mem_rsv() > arm64: Enable passing IMA log to next kernel on kexec > > Rob Herring (3): > of: Add a common kexec FDT setup function > arm64: Use common of_kexec_alloc_and_setup_fdt() > powerpc: Use common of_kexec_alloc_and_setup_fdt() > > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/kexec.h | 4 - > arch/arm64/kernel/machine_kexec_file.c | 194 +---------- > arch/powerpc/Kconfig | 2 +- > arch/powerpc/include/asm/ima.h | 30 -- > arch/powerpc/include/asm/kexec.h | 14 +- > arch/powerpc/kexec/Makefile | 7 - > arch/powerpc/kexec/elf_64.c | 30 +- > arch/powerpc/kexec/file_load.c | 183 +--------- > arch/powerpc/kexec/file_load_64.c | 21 +- > arch/powerpc/kexec/ima.c | 219 ------------ > arch/x86/include/asm/kexec.h | 5 - > arch/x86/kernel/crash.c | 14 +- > arch/x86/kernel/kexec-bzimage64.c | 2 +- > arch/x86/kernel/machine_kexec_64.c | 4 +- > drivers/of/Makefile | 6 + > drivers/of/kexec.c | 458 +++++++++++++++++++++++++ > include/linux/kexec.h | 8 + > include/linux/of.h | 7 + > security/integrity/ima/ima.h | 4 - > security/integrity/ima/ima_kexec.c | 9 +- > 21 files changed, 539 insertions(+), 683 deletions(-) > delete mode 100644 arch/powerpc/include/asm/ima.h > delete mode 100644 arch/powerpc/kexec/ima.c > create mode 100644 drivers/of/kexec.c I fixed up the Fixes tags and applied for 5.13. Rob 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 X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_PATCH,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2228EC433E6 for ; Tue, 2 Mar 2021 15:07:32 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 23D2864F1F for ; Tue, 2 Mar 2021 15:07:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 23D2864F1F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4DqgTs2ZmYz3cnQ for ; Wed, 3 Mar 2021 02:07:29 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=IbR7Nas9; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org (client-ip=198.145.29.99; helo=mail.kernel.org; envelope-from=robh@kernel.org; receiver=) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=IbR7Nas9; dkim-atps=neutral Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4DqgTN6tj6z30LC for ; Wed, 3 Mar 2021 02:07:04 +1100 (AEDT) Received: by mail.kernel.org (Postfix) with ESMTPSA id 3B2C564F46 for ; Tue, 2 Mar 2021 15:07:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1614697622; bh=rwonpNq25JJj2ufF7OMZquyMz1mCqMW/pVBOD+XZGeE=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=IbR7Nas9nddr99wRToXJtsaaw0+ZBA+nayu/qO2gT92v7eaxf4RbiDALoIqlHjrPN GsgqMqCgO8hGvC1cPYmrpU2wu2bgcElgHcTgcEtuEYow6LDJyUucn4A8X8+45CElos BEqMXhLVt3pYy9yudfkZovrLhdjjFQ7yNshcvAVarmZV7/LJa30+5M4E8wEpCybUiZ a7UOu2fWXDEFEsHOB05S6n3hUA/HSBCbRlZUi0JNA6sTBuXjvProClnWbj0IcCSjrc Xa2HQ1VlhLpj2HjUcDRHJMRdin610qXlR2fMklyVPlVlDdnqn/DNZgQ3JyLuV7rJgh 7qOedsvTemGFQ== Received: by mail-ed1-f47.google.com with SMTP id b13so16414257edx.1 for ; Tue, 02 Mar 2021 07:07:02 -0800 (PST) X-Gm-Message-State: AOAM533JhATHXj1VHqY1tU39g5AItAPUGec1gJKlx++PttDoMqNtCOn8 i3EpDCnOi5FqfYDjp35E7+5+VgsxajHh9MD41w== X-Google-Smtp-Source: ABdhPJxOtEVEY247zJz1Zjl4hZ6/xkyL6IjN+Q/OTQt+J/K7OkDS0hD7whg467iJYOsJ9IQW2v48KL9mVR3Zfm7IszQ= X-Received: by 2002:a17:906:c405:: with SMTP id u5mr11900896ejz.341.1614697620328; Tue, 02 Mar 2021 07:07:00 -0800 (PST) MIME-Version: 1.0 References: <20210221174930.27324-1-nramas@linux.microsoft.com> In-Reply-To: <20210221174930.27324-1-nramas@linux.microsoft.com> From: Rob Herring Date: Tue, 2 Mar 2021 09:06:47 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v19 00/13] Carry forward IMA measurement log on kexec on ARM64 To: Lakshmi Ramasubramanian Content-Type: text/plain; charset="UTF-8" X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , tao.li@vivo.com, Mimi Zohar , Paul Mackerras , vincenzo.frascino@arm.com, Frank Rowand , Sasha Levin , Stephen Rothwell , Masahiro Yamada , James Morris , "AKASHI, Takahiro" , linux-arm-kernel , Catalin Marinas , "Serge E. Hallyn" , devicetree@vger.kernel.org, Pavel Tatashin , Will Deacon , Prakhar Srivastava , Hsin-Yi Wang , Allison Randal , Christophe Leroy , Matthias Brugger , balajib@linux.microsoft.com, dmitry.kasatkin@gmail.com, "linux-kernel@vger.kernel.org" , James Morse , Greg Kroah-Hartman , Joe Perches , linux-integrity@vger.kernel.org, linuxppc-dev , Thiago Jung Bauermann Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Sun, Feb 21, 2021 at 11:49 AM Lakshmi Ramasubramanian wrote: > > On kexec file load Integrity Measurement Architecture (IMA) subsystem > may verify the IMA signature of the kernel and initramfs, and measure > it. The command line parameters passed to the kernel in the kexec call > may also be measured by IMA. A remote attestation service can verify > a TPM quote based on the TPM event log, the IMA measurement list, and > the TPM PCR data. This can be achieved only if the IMA measurement log > is carried over from the current kernel to the next kernel across > the kexec call. > > powerpc already supports carrying forward the IMA measurement log on > kexec. This patch set adds support for carrying forward the IMA > measurement log on kexec on ARM64. > > This patch set moves the platform independent code defined for powerpc > such that it can be reused for other platforms as well. A chosen node > "linux,ima-kexec-buffer" is added to the DTB for ARM64 to hold > the address and the size of the memory reserved to carry > the IMA measurement log. > > This patch set has been tested for ARM64 platform using QEMU. > I would like help from the community for testing this change on powerpc. > Thanks. > > This patch set is based on > commit f31e3386a4e9 ("ima: Free IMA measurement buffer after kexec syscall") > in https://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git > "ima-kexec-fixes" branch. > > Changelog: > > v19 > - Moved ELF related fields from "struct kimage_arch" for x86, arm64, > and powerpc architectures to "struct kimage". > > v18 > - Added a parameter to of_kexec_alloc_and_setup_fdt() for the caller > to specify additional space needed for the FDT buffer > - Renamed arm64 and powerpc ELF buffer address field in > "struct kimage_arch" to elf_load_addr to match x86_64 name. > - Removed of_ima_add_kexec_buffer() and instead directly set > ima_buffer_addr and ima_buffer_size in ima_add_kexec_buffer() > - Moved FDT_EXTRA_SPACE definition from include/linux/of.h to > drivers/of/kexec.c > > v17 > - Renamed of_kexec_setup_new_fdt() to of_kexec_alloc_and_setup_fdt(), > and moved memory allocation for the new FDT to this function. > > v16 > - Defined functions to allocate and free buffer for FDT for powerpc > and arm64. > - Moved ima_buffer_addr and ima_buffer_size fields from > "struct kimage_arch" in powerpc to "struct kimage" > v15 > - Included Rob's patches in the patch set, and rebased > the changes to "next-integrity" branch. > - Allocate memory for DTB, on arm64, using kmalloc() instead of > vmalloc() to keep it consistent with powerpc implementation. > - Call of_kexec_setup_new_fdt() from setup_new_fdt_ppc64() and > remove setup_new_fdt() in the same patch to keep it bisect safe. > > v14 > - Select CONFIG_HAVE_IMA_KEXEC for CONFIG_KEXEC_FILE, for powerpc > and arm64, if CONFIG_IMA is enabled. > - Use IS_ENABLED() macro instead of "#ifdef" in remove_ima_buffer(), > ima_get_kexec_buffer(), and ima_free_kexec_buffer(). > - Call of_kexec_setup_new_fdt() from setup_new_fdt_ppc64() and > remove setup_new_fdt() in "arch/powerpc/kexec/file_load.c". > > v13 > - Moved the arch independent functions to drivers/of/kexec.c > and then refactored the code. > - Moved arch_ima_add_kexec_buffer() to > security/integrity/ima/ima_kexec.c > > v12 > - Use fdt_appendprop_addrrange() in setup_ima_buffer() > to setup the IMA measurement list property in > the device tree. > - Moved architecture independent functions from > "arch/powerpc/kexec/ima.c" to "drivers/of/kexec." > - Deleted "arch/powerpc/kexec/ima.c" and > "arch/powerpc/include/asm/ima.h". > > v11 > - Rebased the changes on the kexec code refactoring done by > Rob Herring in his "dt/kexec" branch > - Removed "extern" keyword in function declarations > - Removed unnecessary header files included in C files > - Updated patch descriptions per Thiago's comments > > v10 > - Moved delete_fdt_mem_rsv(), remove_ima_buffer(), > get_ima_kexec_buffer, and get_root_addr_size_cells() > to drivers/of/kexec.c > - Moved arch_ima_add_kexec_buffer() to > security/integrity/ima/ima_kexec.c > - Conditionally define IMA buffer fields in struct kimage_arch > > v9 > - Moved delete_fdt_mem_rsv() to drivers/of/kexec_fdt.c > - Defined a new function get_ima_kexec_buffer() in > drivers/of/ima_kexec.c to replace do_get_kexec_buffer() > - Changed remove_ima_kexec_buffer() to the original function name > remove_ima_buffer() > - Moved remove_ima_buffer() to drivers/of/ima_kexec.c > - Moved ima_get_kexec_buffer() and ima_free_kexec_buffer() > to security/integrity/ima/ima_kexec.c > > v8: > - Moved remove_ima_kexec_buffer(), do_get_kexec_buffer(), and > delete_fdt_mem_rsv() to drivers/of/fdt.c > - Moved ima_dump_measurement_list() and ima_add_kexec_buffer() > back to security/integrity/ima/ima_kexec.c > > v7: > - Renamed remove_ima_buffer() to remove_ima_kexec_buffer() and moved > this function definition to kernel. > - Moved delete_fdt_mem_rsv() definition to kernel > - Moved ima_dump_measurement_list() and ima_add_kexec_buffer() to > a new file namely ima_kexec_fdt.c in IMA > > v6: > - Remove any existing FDT_PROP_IMA_KEXEC_BUFFER property in the device > tree and also its corresponding memory reservation in the currently > running kernel. > - Moved the function remove_ima_buffer() defined for powerpc to IMA > and renamed the function to ima_remove_kexec_buffer(). Also, moved > delete_fdt_mem_rsv() from powerpc to IMA. > > v5: > - Merged get_addr_size_cells() and do_get_kexec_buffer() into a single > function when moving the arch independent code from powerpc to IMA > - Reverted the change to use FDT functions in powerpc code and added > back the original code in get_addr_size_cells() and > do_get_kexec_buffer() for powerpc. > - Added fdt_add_mem_rsv() for ARM64 to reserve the memory for > the IMA log buffer during kexec. > - Fixed the warning reported by kernel test bot for ARM64 > arch_ima_add_kexec_buffer() - moved this function to a new file > namely arch/arm64/kernel/ima_kexec.c > > v4: > - Submitting the patch series on behalf of the original author > Prakhar Srivastava > - Moved FDT_PROP_IMA_KEXEC_BUFFER ("linux,ima-kexec-buffer") to > libfdt.h so that it can be shared by multiple platforms. > > v3: > Breakup patches further into separate patches. > - Refactoring non architecture specific code out of powerpc > - Update powerpc related code to use fdt functions > - Update IMA buffer read related code to use of functions > - Add support to store the memory information of the IMA > measurement logs to be carried forward. > - Update the property strings to align with documented nodes > https://github.com/devicetree-org/dt-schema/pull/46 > > v2: > Break patches into separate patches. > - Powerpc related Refactoring > - Updating the docuemntation for chosen node > - Updating arm64 to support IMA buffer pass > > v1: > Refactoring carrying over IMA measuremnet logs over Kexec. This patch > moves the non-architecture specific code out of powerpc and adds to > security/ima.(Suggested by Thiago) > Add Documentation regarding the ima-kexec-buffer node in the chosen > node documentation > > v0: > Add a layer of abstraction to use the memory reserved by device tree > for ima buffer pass. > Add support for ima buffer pass using reserved memory for arm64 kexec. > Update the arch sepcific code path in kexec file load to store the > ima buffer in the reserved memory. The same reserved memory is read > on kexec or cold boot. > > Lakshmi Ramasubramanian (10): > kexec: Move ELF fields to struct kimage > arm64: Use ELF fields defined in 'struct kimage' > powerpc: Use ELF fields defined in 'struct kimage' > x86: Use ELF fields defined in 'struct kimage' > powerpc: Move ima buffer fields to struct kimage > powerpc: Enable passing IMA log to next kernel on kexec > powerpc: Move arch independent ima kexec functions to > drivers/of/kexec.c > kexec: Use fdt_appendprop_addrrange() to add ima buffer to FDT > powerpc: Delete unused function delete_fdt_mem_rsv() > arm64: Enable passing IMA log to next kernel on kexec > > Rob Herring (3): > of: Add a common kexec FDT setup function > arm64: Use common of_kexec_alloc_and_setup_fdt() > powerpc: Use common of_kexec_alloc_and_setup_fdt() > > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/kexec.h | 4 - > arch/arm64/kernel/machine_kexec_file.c | 194 +---------- > arch/powerpc/Kconfig | 2 +- > arch/powerpc/include/asm/ima.h | 30 -- > arch/powerpc/include/asm/kexec.h | 14 +- > arch/powerpc/kexec/Makefile | 7 - > arch/powerpc/kexec/elf_64.c | 30 +- > arch/powerpc/kexec/file_load.c | 183 +--------- > arch/powerpc/kexec/file_load_64.c | 21 +- > arch/powerpc/kexec/ima.c | 219 ------------ > arch/x86/include/asm/kexec.h | 5 - > arch/x86/kernel/crash.c | 14 +- > arch/x86/kernel/kexec-bzimage64.c | 2 +- > arch/x86/kernel/machine_kexec_64.c | 4 +- > drivers/of/Makefile | 6 + > drivers/of/kexec.c | 458 +++++++++++++++++++++++++ > include/linux/kexec.h | 8 + > include/linux/of.h | 7 + > security/integrity/ima/ima.h | 4 - > security/integrity/ima/ima_kexec.c | 9 +- > 21 files changed, 539 insertions(+), 683 deletions(-) > delete mode 100644 arch/powerpc/include/asm/ima.h > delete mode 100644 arch/powerpc/kexec/ima.c > create mode 100644 drivers/of/kexec.c I fixed up the Fixes tags and applied for 5.13. Rob 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 X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1B15CC433E0 for ; Wed, 3 Mar 2021 14:57:43 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A8FE860201 for ; Wed, 3 Mar 2021 14:57:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A8FE860201 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Cxujvqi8g41jZyvJxSbKbv81fEdi6+AocHZIHyxSE70=; b=b3GM6KckbqRBTKZfZZAROx4D9 WyMGfy/Sb8Q2N0rZ0HidkBP6tP1km9uERfaoGCpfRPKKSdIpcu60NzLuoZB/olH2ydAL6kdclSkv/ snt6VXFFxgRqSVpeGZNiEd4xfaOOULFthtkOpawwxQeQQTml8ZxA2VBCFrBXe3ejKWy0H5IMswqpd PnbCqNqAfxxQkHNN2zzFYek2/RfaoUEYCEGLEE0yFOH1cJrLlceSysmrzKE7NGhLtACqI148HmUeq CJ29Fgttm4K1rn5vzIbZQnzG2q3E0ltIq8dM5JOR3Yl7AIE+BdI1nZg2XTm1sigBs5Crwje+/jS3T 6by4K/A0A==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lHStT-005Ewa-Gw; Wed, 03 Mar 2021 14:54:35 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lHSBC-0054IC-KT for linux-arm-kernel@desiato.infradead.org; Wed, 03 Mar 2021 14:08:46 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Type:Cc:To:Subject:Message-ID: Date:From:In-Reply-To:References:MIME-Version:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=ZHA1NMpZXziSmel4w4Mvchluc5Fuk4ARxaSmYtiNi28=; b=BxkK/yBVv3thZXKKUJbXcq2gdA JYyUcXmtGLW5LJnwCRBRs3z0SO2/Qq0XFTwEszIGMw6RlnGe4mUQASB2d6vxRsFi84okEyK6OjJqE IH9fLCneDwjdPXEtYw7aUFHye2r0cpe6PwWU2txRwQqJzlEMu121BheiX1DC3CMLlxa+r0UzPtehp +HPwkN+nm7+2zREAaEM/9gjXAeISFy7/QmzvE40o5vXbhuiXtNXzBXHz5DlvX0uAnILEtrI7GOuxb kpauP+q1O2KXDTqu3JPLfhLE17jdytmM0MJtPDdLdkme+J9NykoRIbO8ki9EI+b8JLHDr2Q64Qw53 uW6c0Kxw==; Received: from mail.kernel.org ([198.145.29.99]) by casper.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lH6c7-00HJkE-RN for linux-arm-kernel@lists.infradead.org; Tue, 02 Mar 2021 15:07:10 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id A663664F48 for ; Tue, 2 Mar 2021 15:07:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1614697623; bh=rwonpNq25JJj2ufF7OMZquyMz1mCqMW/pVBOD+XZGeE=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=jKT9j5MyHZy6rV0cCL0W3mqloIicaszKTYUOZciXrYNvDKp2TJJVwJbKehlZZ8vYB MSDAbBjdw986y7KuTA2jpizT4EDfgvY+WOPkkorqf5wAKoNheuSmkGcAh41F3qaPHZ /BFyZvAqlY0H0v9AOL5CEoVseG42A3QGyX9SlTz8x+01mIEMWqFQ7+e48+hkWQXSaY q7a/tIseBFEQKiEDbJSOoeH/q9tOy0HIWiUd2FlHGm/sHmyqYIwwAVbtYcwc20CQ1F 9LZ9nFRCE1vIXmKBaWpJFUXJxkb29rR0ioLE88iCILDG5GS02njvrdaRi2zWX7hFS1 7DgIuYQUKJ18g== Received: by mail-ej1-f54.google.com with SMTP id do6so35889337ejc.3 for ; Tue, 02 Mar 2021 07:07:02 -0800 (PST) X-Gm-Message-State: AOAM532F/fAl5grsplguGq3e5BrP5PLgJalr2lGO3mNp9QbcDZCSzE6g VTErfbxl2ACjz+3TsC9xLBAS3gEBQJ6z2FAi/A== X-Google-Smtp-Source: ABdhPJxOtEVEY247zJz1Zjl4hZ6/xkyL6IjN+Q/OTQt+J/K7OkDS0hD7whg467iJYOsJ9IQW2v48KL9mVR3Zfm7IszQ= X-Received: by 2002:a17:906:c405:: with SMTP id u5mr11900896ejz.341.1614697620328; Tue, 02 Mar 2021 07:07:00 -0800 (PST) MIME-Version: 1.0 References: <20210221174930.27324-1-nramas@linux.microsoft.com> In-Reply-To: <20210221174930.27324-1-nramas@linux.microsoft.com> From: Rob Herring Date: Tue, 2 Mar 2021 09:06:47 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v19 00/13] Carry forward IMA measurement log on kexec on ARM64 To: Lakshmi Ramasubramanian Cc: Mimi Zohar , Thiago Jung Bauermann , "AKASHI, Takahiro" , Greg Kroah-Hartman , Will Deacon , Joe Perches , Catalin Marinas , Michael Ellerman , Stephen Rothwell , James Morse , Sasha Levin , Benjamin Herrenschmidt , Paul Mackerras , Frank Rowand , vincenzo.frascino@arm.com, Mark Rutland , dmitry.kasatkin@gmail.com, James Morris , "Serge E. Hallyn" , Pavel Tatashin , Allison Randal , Masahiro Yamada , Matthias Brugger , Hsin-Yi Wang , tao.li@vivo.com, Christophe Leroy , Prakhar Srivastava , balajib@linux.microsoft.com, linux-integrity@vger.kernel.org, "linux-kernel@vger.kernel.org" , linux-arm-kernel , devicetree@vger.kernel.org, linuxppc-dev X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210302_150710_201711_CD788476 X-CRM114-Status: GOOD ( 46.18 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Sun, Feb 21, 2021 at 11:49 AM Lakshmi Ramasubramanian wrote: > > On kexec file load Integrity Measurement Architecture (IMA) subsystem > may verify the IMA signature of the kernel and initramfs, and measure > it. The command line parameters passed to the kernel in the kexec call > may also be measured by IMA. A remote attestation service can verify > a TPM quote based on the TPM event log, the IMA measurement list, and > the TPM PCR data. This can be achieved only if the IMA measurement log > is carried over from the current kernel to the next kernel across > the kexec call. > > powerpc already supports carrying forward the IMA measurement log on > kexec. This patch set adds support for carrying forward the IMA > measurement log on kexec on ARM64. > > This patch set moves the platform independent code defined for powerpc > such that it can be reused for other platforms as well. A chosen node > "linux,ima-kexec-buffer" is added to the DTB for ARM64 to hold > the address and the size of the memory reserved to carry > the IMA measurement log. > > This patch set has been tested for ARM64 platform using QEMU. > I would like help from the community for testing this change on powerpc. > Thanks. > > This patch set is based on > commit f31e3386a4e9 ("ima: Free IMA measurement buffer after kexec syscall") > in https://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git > "ima-kexec-fixes" branch. > > Changelog: > > v19 > - Moved ELF related fields from "struct kimage_arch" for x86, arm64, > and powerpc architectures to "struct kimage". > > v18 > - Added a parameter to of_kexec_alloc_and_setup_fdt() for the caller > to specify additional space needed for the FDT buffer > - Renamed arm64 and powerpc ELF buffer address field in > "struct kimage_arch" to elf_load_addr to match x86_64 name. > - Removed of_ima_add_kexec_buffer() and instead directly set > ima_buffer_addr and ima_buffer_size in ima_add_kexec_buffer() > - Moved FDT_EXTRA_SPACE definition from include/linux/of.h to > drivers/of/kexec.c > > v17 > - Renamed of_kexec_setup_new_fdt() to of_kexec_alloc_and_setup_fdt(), > and moved memory allocation for the new FDT to this function. > > v16 > - Defined functions to allocate and free buffer for FDT for powerpc > and arm64. > - Moved ima_buffer_addr and ima_buffer_size fields from > "struct kimage_arch" in powerpc to "struct kimage" > v15 > - Included Rob's patches in the patch set, and rebased > the changes to "next-integrity" branch. > - Allocate memory for DTB, on arm64, using kmalloc() instead of > vmalloc() to keep it consistent with powerpc implementation. > - Call of_kexec_setup_new_fdt() from setup_new_fdt_ppc64() and > remove setup_new_fdt() in the same patch to keep it bisect safe. > > v14 > - Select CONFIG_HAVE_IMA_KEXEC for CONFIG_KEXEC_FILE, for powerpc > and arm64, if CONFIG_IMA is enabled. > - Use IS_ENABLED() macro instead of "#ifdef" in remove_ima_buffer(), > ima_get_kexec_buffer(), and ima_free_kexec_buffer(). > - Call of_kexec_setup_new_fdt() from setup_new_fdt_ppc64() and > remove setup_new_fdt() in "arch/powerpc/kexec/file_load.c". > > v13 > - Moved the arch independent functions to drivers/of/kexec.c > and then refactored the code. > - Moved arch_ima_add_kexec_buffer() to > security/integrity/ima/ima_kexec.c > > v12 > - Use fdt_appendprop_addrrange() in setup_ima_buffer() > to setup the IMA measurement list property in > the device tree. > - Moved architecture independent functions from > "arch/powerpc/kexec/ima.c" to "drivers/of/kexec." > - Deleted "arch/powerpc/kexec/ima.c" and > "arch/powerpc/include/asm/ima.h". > > v11 > - Rebased the changes on the kexec code refactoring done by > Rob Herring in his "dt/kexec" branch > - Removed "extern" keyword in function declarations > - Removed unnecessary header files included in C files > - Updated patch descriptions per Thiago's comments > > v10 > - Moved delete_fdt_mem_rsv(), remove_ima_buffer(), > get_ima_kexec_buffer, and get_root_addr_size_cells() > to drivers/of/kexec.c > - Moved arch_ima_add_kexec_buffer() to > security/integrity/ima/ima_kexec.c > - Conditionally define IMA buffer fields in struct kimage_arch > > v9 > - Moved delete_fdt_mem_rsv() to drivers/of/kexec_fdt.c > - Defined a new function get_ima_kexec_buffer() in > drivers/of/ima_kexec.c to replace do_get_kexec_buffer() > - Changed remove_ima_kexec_buffer() to the original function name > remove_ima_buffer() > - Moved remove_ima_buffer() to drivers/of/ima_kexec.c > - Moved ima_get_kexec_buffer() and ima_free_kexec_buffer() > to security/integrity/ima/ima_kexec.c > > v8: > - Moved remove_ima_kexec_buffer(), do_get_kexec_buffer(), and > delete_fdt_mem_rsv() to drivers/of/fdt.c > - Moved ima_dump_measurement_list() and ima_add_kexec_buffer() > back to security/integrity/ima/ima_kexec.c > > v7: > - Renamed remove_ima_buffer() to remove_ima_kexec_buffer() and moved > this function definition to kernel. > - Moved delete_fdt_mem_rsv() definition to kernel > - Moved ima_dump_measurement_list() and ima_add_kexec_buffer() to > a new file namely ima_kexec_fdt.c in IMA > > v6: > - Remove any existing FDT_PROP_IMA_KEXEC_BUFFER property in the device > tree and also its corresponding memory reservation in the currently > running kernel. > - Moved the function remove_ima_buffer() defined for powerpc to IMA > and renamed the function to ima_remove_kexec_buffer(). Also, moved > delete_fdt_mem_rsv() from powerpc to IMA. > > v5: > - Merged get_addr_size_cells() and do_get_kexec_buffer() into a single > function when moving the arch independent code from powerpc to IMA > - Reverted the change to use FDT functions in powerpc code and added > back the original code in get_addr_size_cells() and > do_get_kexec_buffer() for powerpc. > - Added fdt_add_mem_rsv() for ARM64 to reserve the memory for > the IMA log buffer during kexec. > - Fixed the warning reported by kernel test bot for ARM64 > arch_ima_add_kexec_buffer() - moved this function to a new file > namely arch/arm64/kernel/ima_kexec.c > > v4: > - Submitting the patch series on behalf of the original author > Prakhar Srivastava > - Moved FDT_PROP_IMA_KEXEC_BUFFER ("linux,ima-kexec-buffer") to > libfdt.h so that it can be shared by multiple platforms. > > v3: > Breakup patches further into separate patches. > - Refactoring non architecture specific code out of powerpc > - Update powerpc related code to use fdt functions > - Update IMA buffer read related code to use of functions > - Add support to store the memory information of the IMA > measurement logs to be carried forward. > - Update the property strings to align with documented nodes > https://github.com/devicetree-org/dt-schema/pull/46 > > v2: > Break patches into separate patches. > - Powerpc related Refactoring > - Updating the docuemntation for chosen node > - Updating arm64 to support IMA buffer pass > > v1: > Refactoring carrying over IMA measuremnet logs over Kexec. This patch > moves the non-architecture specific code out of powerpc and adds to > security/ima.(Suggested by Thiago) > Add Documentation regarding the ima-kexec-buffer node in the chosen > node documentation > > v0: > Add a layer of abstraction to use the memory reserved by device tree > for ima buffer pass. > Add support for ima buffer pass using reserved memory for arm64 kexec. > Update the arch sepcific code path in kexec file load to store the > ima buffer in the reserved memory. The same reserved memory is read > on kexec or cold boot. > > Lakshmi Ramasubramanian (10): > kexec: Move ELF fields to struct kimage > arm64: Use ELF fields defined in 'struct kimage' > powerpc: Use ELF fields defined in 'struct kimage' > x86: Use ELF fields defined in 'struct kimage' > powerpc: Move ima buffer fields to struct kimage > powerpc: Enable passing IMA log to next kernel on kexec > powerpc: Move arch independent ima kexec functions to > drivers/of/kexec.c > kexec: Use fdt_appendprop_addrrange() to add ima buffer to FDT > powerpc: Delete unused function delete_fdt_mem_rsv() > arm64: Enable passing IMA log to next kernel on kexec > > Rob Herring (3): > of: Add a common kexec FDT setup function > arm64: Use common of_kexec_alloc_and_setup_fdt() > powerpc: Use common of_kexec_alloc_and_setup_fdt() > > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/kexec.h | 4 - > arch/arm64/kernel/machine_kexec_file.c | 194 +---------- > arch/powerpc/Kconfig | 2 +- > arch/powerpc/include/asm/ima.h | 30 -- > arch/powerpc/include/asm/kexec.h | 14 +- > arch/powerpc/kexec/Makefile | 7 - > arch/powerpc/kexec/elf_64.c | 30 +- > arch/powerpc/kexec/file_load.c | 183 +--------- > arch/powerpc/kexec/file_load_64.c | 21 +- > arch/powerpc/kexec/ima.c | 219 ------------ > arch/x86/include/asm/kexec.h | 5 - > arch/x86/kernel/crash.c | 14 +- > arch/x86/kernel/kexec-bzimage64.c | 2 +- > arch/x86/kernel/machine_kexec_64.c | 4 +- > drivers/of/Makefile | 6 + > drivers/of/kexec.c | 458 +++++++++++++++++++++++++ > include/linux/kexec.h | 8 + > include/linux/of.h | 7 + > security/integrity/ima/ima.h | 4 - > security/integrity/ima/ima_kexec.c | 9 +- > 21 files changed, 539 insertions(+), 683 deletions(-) > delete mode 100644 arch/powerpc/include/asm/ima.h > delete mode 100644 arch/powerpc/kexec/ima.c > create mode 100644 drivers/of/kexec.c I fixed up the Fixes tags and applied for 5.13. Rob _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel