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.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 02292C433B4 for ; Thu, 1 Apr 2021 13:45:51 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (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 7B97B61263 for ; Thu, 1 Apr 2021 13:45:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7B97B61263 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:46936 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lRxdt-0005Fq-GL for qemu-devel@archiver.kernel.org; Thu, 01 Apr 2021 09:45:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46614) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lRxd4-0004h3-G9 for qemu-devel@nongnu.org; Thu, 01 Apr 2021 09:44:58 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:54077) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lRxcz-0005Tg-8N for qemu-devel@nongnu.org; Thu, 01 Apr 2021 09:44:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1617284691; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=X3QJDsEYu8Nucu3aYYsP9CEZPP67RKytJqml2aaYW0A=; b=XYqKkl1OYWjo8/R6UtBe4xy8Xh0GMD+LcURwYt2UXVHZWdSMO10ji8ff1Wgh4ZGAotQOzH 2DbD3x46iCrzl3HWjx79F7sb2Yl36C3W6zmKmq+IzPiAxOwsg/9SsZyVVeI5F2ZiTL76TA sP0bMVzBmfTU+u3d/wLrzXMzDS2hOkw= Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-240-4UkstZDVOc2JF9J5IPpxsQ-1; Thu, 01 Apr 2021 09:44:45 -0400 X-MC-Unique: 4UkstZDVOc2JF9J5IPpxsQ-1 Received: by mail-wm1-f72.google.com with SMTP id o9-20020a05600c4fc9b029010cea48b602so3115787wmq.0 for ; Thu, 01 Apr 2021 06:44:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=X3QJDsEYu8Nucu3aYYsP9CEZPP67RKytJqml2aaYW0A=; b=ejexShxY6piY1ok2D72N38GlBApyaV7msjKqXAYznBMoiE+K5MnlpEeiaM9NKadwH7 aQ0d6hg7ZNigAYGbApq3Qi6nhXYYiNev/xAq/MCfE8s919tynM0W6UKQ9hjKJjZL6Ukq q8JAn9q4MMYYgPCnVCAPyDnx0OVIkoldfRhdvjgWE318DVuw5hHd+HCyuqnm6l0gxgLC de4cKQMLEzH/E1/TE9IL0s1ZjHOf4hTso+H9xEK6oipNCxbx9Hn+zqQdgIMDoGr4MPC7 SIrZQZrc+hh9edchAxetTT8s7rs/bpXPCc0Naltlz5xqJOp7tZ0yQXMUlRidlsJiWyVV TybQ== X-Gm-Message-State: AOAM533Z5nqW5OQ8zlobyfBQE6mY6d/UPLSFbtbLI9jngA8rvPS7bRvT usJZXpNN9PmnWucL6GC1t7nkjPP3gUDsR9XmilPh0cto4LeMEKbkeCsMQ8yrFXCAG+TBhpl34eD L3ek1zyiP8Fmc9mw= X-Received: by 2002:a5d:658d:: with SMTP id q13mr9854413wru.388.1617284684558; Thu, 01 Apr 2021 06:44:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwdj898GprwloerKLNyTRm6YOiIReZKEWTdP0Wi6Mwvf9l9vGM2Two7t1aPjY3o2ojZYHeQzw== X-Received: by 2002:a5d:658d:: with SMTP id q13mr9854398wru.388.1617284684428; Thu, 01 Apr 2021 06:44:44 -0700 (PDT) Received: from redhat.com ([2a10:800e:f0d3:0:b69b:9fb8:3947:5636]) by smtp.gmail.com with ESMTPSA id l15sm8258841wme.43.2021.04.01.06.44.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Apr 2021 06:44:43 -0700 (PDT) Date: Thu, 1 Apr 2021 09:44:40 -0400 From: "Michael S. Tsirkin" To: Eric Devolder Subject: Re: [PATCH v2 0/7] acpi: Error Record Serialization Table, ERST, support for QEMU Message-ID: <20210401094342-mutt-send-email-mst@kernel.org> References: <1612817879-21511-1-git-send-email-eric.devolder@oracle.com> MIME-Version: 1.0 In-Reply-To: Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=mst@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=170.10.133.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "ehabkost@redhat.com" , "qemu-devel@nongnu.org" , "kwilk@oracle.com" , "pbonzini@redhat.com" , Boris Ostrovsky , "rth@twiddle.net" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" I tagged this for after the release. To help make sure I don't lose this by mistake please ping after the QEMU release. Thanks! On Mon, Mar 01, 2021 at 07:04:50PM +0000, Eric Devolder wrote: > Hi, > A friendly request to review and/or provide feedback on this patchset. > Thanks, > eric > ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ > From: Eric Devolder > Sent: Monday, February 8, 2021 2:58 PM > To: mst@redhat.com ; imammedo@redhat.com ; > marcel.apfelbaum@gmail.com ; pbonzini@redhat.com > ; rth@twiddle.net ; ehabkost@redhat.com > ; qemu-devel@nongnu.org > Cc: Boris Ostrovsky ; kwilk@oracle.com > > Subject: [PATCH v2 0/7] acpi: Error Record Serialization Table, ERST, support > for QEMU > > This patchset introduces support for the ACPI Error Record > Serialization Table, ERST. > > Linux uses the persistent storage filesystem, pstore, to record > information (eg. dmesg tail) upon panics and shutdowns. Pstore is > independent of, and runs before, kdump. In certain scenarios (ie. > hosts/guests with root filesystems on NFS/iSCSI where networking > software and/or hardware fails), pstore may contain the only > information available for post-mortem debugging. > > Two common storage backends for the pstore filesystem are ACPI ERST > and UEFI. Most BIOS implement ACPI ERST; however, ACPI ERST is not > currently supported in QEMU, and UEFI is not utilized in all guests. > By implementing ACPI ERST within QEMU, then the ACPI ERST becomes a > viable pstore storage backend for virtual machines (as it is now for > bare metal machines). > > Enabling support for ACPI ERST facilitates a consistent method to > capture kernel panic information in a wide range of guests: from > resource- constrained microvms to very large guests, and in > particular, in direct-boot environments (which would lack UEFI > run-time services). > > Note that Microsoft Windows also utilizes the ACPI ERST for certain > crash information, if available. > > The ACPI ERST persistent storage is contained within a single backing > file, with a default size of 64KiB. The size and filename of the > backing file can be obtained from QEMU parameters. > > The ACPI specification[1], in Chapter "ACPI Platform Error Interfaces > (APEI)", and specifically subsection "Error Serialization", outlines > a method for storing error records into persistent storage. > > [1] "Advanced Configuration and Power Interface Specification", > version 6.2, May 2017. > https://www.uefi.org/sites/default/files/resources/ACPI_6_2.pdf > > [2] "Unified Extensible Firmware Interface Specification", > version 2.8, March 2019. > https://uefi.org/sites/default/files/resources/UEFI_Spec_2_8_final.pdf > > Suggested-by: Konrad Wilk > Signed-off-by: Eric DeVolder > > --- > v2: 8feb2021 > - Added qtest/smoke test per Paolo Bonzini > - Split patch into smaller chunks, per Igo Mammedov > - Did away with use of ACPI packed structures, per Igo Mammedov > > v1: 26oct2020 > - initial post > > --- > Eric DeVolder (7): > ACPI ERST: bios-tables-test.c steps 1 and 2 > ACPI ERST: header file for erst > ACPI ERST: support for ACPI ERST feature > ACPI ERST: build step for ACPI ERST > ACPI ERST: support ERST for x86 guest > ACPI ERST: qtest for ERST > ACPI ERST: bios-tables-test.c step 5 > > hw/acpi/erst.c | 952 +++++++++++++++++++++++++++++++++++++++++++ > hw/acpi/meson.build | 1 + > hw/i386/acpi-build.c | 4 + > include/hw/acpi/erst.h | 77 ++++ > tests/data/acpi/microvm/ERST | 0 > tests/data/acpi/pc/ERST | Bin 0 -> 976 bytes > tests/data/acpi/q35/ERST | Bin 0 -> 976 bytes > tests/qtest/erst-test.c | 106 +++++ > tests/qtest/meson.build | 2 + > 9 files changed, 1142 insertions(+) > create mode 100644 hw/acpi/erst.c > create mode 100644 include/hw/acpi/erst.h > create mode 100644 tests/data/acpi/microvm/ERST > create mode 100644 tests/data/acpi/pc/ERST > create mode 100644 tests/data/acpi/q35/ERST > create mode 100644 tests/qtest/erst-test.c > > -- > 1.8.3.1 >