All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Samuel Ortiz <sameo@linux.intel.com>
Cc: Laurent Vivier <lvivier@redhat.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Thomas Huth <thuth@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	Ben Warren <ben@skyportsystems.com>,
	qemu-devel@nongnu.org, Shannon Zhao <shannon.zhaosl@gmail.com>,
	qemu-arm@nongnu.org,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Igor Mammedov <imammedo@redhat.com>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-arm] [PATCH v4 0/8] hw: acpi: RSDP fixes and refactoring
Date: Mon, 17 Dec 2018 20:10:57 -0500	[thread overview]
Message-ID: <20181217201034-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20181217104838.18957-1-sameo@linux.intel.com>

On Mon, Dec 17, 2018 at 11:48:30AM +0100, Samuel Ortiz wrote:
> This patch serie fixes a couple of RSDP checksum related issues:
> 
> - On RSDP rev2, we are not adding the extended checksum and computing
>   the checksum on the full table instead of the first 20 bytes.
> - On RSDP rev1, we are computing the checksum on 36 bytes instead of 20.
>   We're lucky enough that this is only adding zeroes to the checksum.
> 
> A guest Linux kernel does not seem to care about RSDP checksums, so
> those 2 fixes are mostly for correctness sake.
> Any machine type that generates rev2 RSDP will see its RSDP table
> modified but since x86 builds RSDP v1 and all ACPI tests only run on
> either pc or q35, the ACPI tests tables are not affected by this fix.
> 
> The serie also extends the ARM virt ACPI RSDP build routine to support
> both RSDP v1 and v2, in order to share this code between x86 and
> aarch64. While extending, we also convert the routine to the latest
> build_append_foo() API. The new implementation is a closer reflection of
> the ACPI spec itself, is endian agnostic and allows for getting rid of the
> AcpiRsdpDescriptor structure.


OK I queued this, so we can proceed to do incremental patches on top.

> V3 -> V4:
>   * Add missing Reviewed-Bys from Igor and Andrew.
>   * Removed unneeded white space addition.
>   * Added 16 bytes padding to revision 0 RSDP structures for legacy (2.2
>     and older) machine types.
>   * Fixed a missing break in an ACPI RSDP test switch.
> 
> V2 -> V3:
>   * Add Reviewed-Bys from Igor and Andrew.
>   * Check for valid RSDP and XSDT pointers depending on the revision.
>   * Use RSDP initial table len as offset for checksum and pointer
>     insertion.
>   * Do not explictly pass RSDP revision as the RSDP table parsing test
>     utility.
> 
> v1 -> v2:
>   * Add missing SOBs.
>   * Rephrase some commit messages according to the maintainer's input.
>   * Replace ACPI spec definitions with hard coded constants.
>   * Replace init_rsdp_data() helper with open coded rsdp variable init.
>   * Rename acpi_find_[rx]sdt_address to acpi_get_[rx]sdt_address.
> 
> Igor Mammedov (2):
>   hw: arm: acpi: Fix incorrect checksums in RSDP
>   hw: i386: Use correct RSDT length for checksum
> 
> Samuel Ortiz (6):
>   hw: acpi: The RSDP build API can return void
>   hw: arm: Carry RSDP specific data through AcpiRsdpData
>   hw: arm: Convert the RSDP build to the buid_append_foo() API
>   hw: arm: Support both legacy and current RSDP build
>   hw: acpi: Export and share the ARM RSDP build
>   hw: acpi: Remove AcpiRsdpDescriptor and fix tests
> 
>  include/hw/acpi/acpi-defs.h | 19 ++++-------
>  include/hw/acpi/aml-build.h |  2 ++
>  tests/acpi-utils.h          |  4 ++-
>  hw/acpi/aml-build.c         | 68 +++++++++++++++++++++++++++++++++++++
>  hw/arm/virt-acpi-build.c    | 40 +++++-----------------
>  hw/i386/acpi-build.c        | 46 +++++++++++--------------
>  tests/acpi-utils.c          | 46 ++++++++++++++++++++-----
>  tests/bios-tables-test.c    | 22 +++++++++---
>  tests/vmgenid-test.c        |  8 +++--
>  9 files changed, 168 insertions(+), 87 deletions(-)
> 
> -- 
> 2.19.2

WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Samuel Ortiz <sameo@linux.intel.com>
Cc: qemu-devel@nongnu.org, Laurent Vivier <lvivier@redhat.com>,
	Thomas Huth <thuth@redhat.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Richard Henderson <rth@twiddle.net>,
	Ben Warren <ben@skyportsystems.com>,
	Shannon Zhao <shannon.zhaosl@gmail.com>,
	qemu-arm@nongnu.org, Igor Mammedov <imammedo@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v4 0/8] hw: acpi: RSDP fixes and refactoring
Date: Mon, 17 Dec 2018 20:10:57 -0500	[thread overview]
Message-ID: <20181217201034-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20181217104838.18957-1-sameo@linux.intel.com>

On Mon, Dec 17, 2018 at 11:48:30AM +0100, Samuel Ortiz wrote:
> This patch serie fixes a couple of RSDP checksum related issues:
> 
> - On RSDP rev2, we are not adding the extended checksum and computing
>   the checksum on the full table instead of the first 20 bytes.
> - On RSDP rev1, we are computing the checksum on 36 bytes instead of 20.
>   We're lucky enough that this is only adding zeroes to the checksum.
> 
> A guest Linux kernel does not seem to care about RSDP checksums, so
> those 2 fixes are mostly for correctness sake.
> Any machine type that generates rev2 RSDP will see its RSDP table
> modified but since x86 builds RSDP v1 and all ACPI tests only run on
> either pc or q35, the ACPI tests tables are not affected by this fix.
> 
> The serie also extends the ARM virt ACPI RSDP build routine to support
> both RSDP v1 and v2, in order to share this code between x86 and
> aarch64. While extending, we also convert the routine to the latest
> build_append_foo() API. The new implementation is a closer reflection of
> the ACPI spec itself, is endian agnostic and allows for getting rid of the
> AcpiRsdpDescriptor structure.


OK I queued this, so we can proceed to do incremental patches on top.

> V3 -> V4:
>   * Add missing Reviewed-Bys from Igor and Andrew.
>   * Removed unneeded white space addition.
>   * Added 16 bytes padding to revision 0 RSDP structures for legacy (2.2
>     and older) machine types.
>   * Fixed a missing break in an ACPI RSDP test switch.
> 
> V2 -> V3:
>   * Add Reviewed-Bys from Igor and Andrew.
>   * Check for valid RSDP and XSDT pointers depending on the revision.
>   * Use RSDP initial table len as offset for checksum and pointer
>     insertion.
>   * Do not explictly pass RSDP revision as the RSDP table parsing test
>     utility.
> 
> v1 -> v2:
>   * Add missing SOBs.
>   * Rephrase some commit messages according to the maintainer's input.
>   * Replace ACPI spec definitions with hard coded constants.
>   * Replace init_rsdp_data() helper with open coded rsdp variable init.
>   * Rename acpi_find_[rx]sdt_address to acpi_get_[rx]sdt_address.
> 
> Igor Mammedov (2):
>   hw: arm: acpi: Fix incorrect checksums in RSDP
>   hw: i386: Use correct RSDT length for checksum
> 
> Samuel Ortiz (6):
>   hw: acpi: The RSDP build API can return void
>   hw: arm: Carry RSDP specific data through AcpiRsdpData
>   hw: arm: Convert the RSDP build to the buid_append_foo() API
>   hw: arm: Support both legacy and current RSDP build
>   hw: acpi: Export and share the ARM RSDP build
>   hw: acpi: Remove AcpiRsdpDescriptor and fix tests
> 
>  include/hw/acpi/acpi-defs.h | 19 ++++-------
>  include/hw/acpi/aml-build.h |  2 ++
>  tests/acpi-utils.h          |  4 ++-
>  hw/acpi/aml-build.c         | 68 +++++++++++++++++++++++++++++++++++++
>  hw/arm/virt-acpi-build.c    | 40 +++++-----------------
>  hw/i386/acpi-build.c        | 46 +++++++++++--------------
>  tests/acpi-utils.c          | 46 ++++++++++++++++++++-----
>  tests/bios-tables-test.c    | 22 +++++++++---
>  tests/vmgenid-test.c        |  8 +++--
>  9 files changed, 168 insertions(+), 87 deletions(-)
> 
> -- 
> 2.19.2

  parent reply	other threads:[~2018-12-18  1:11 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-17 10:48 [Qemu-devel] [PATCH v4 0/8] hw: acpi: RSDP fixes and refactoring Samuel Ortiz
2018-12-17 10:48 ` Samuel Ortiz
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 1/8] hw: acpi: The RSDP build API can return void Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 2/8] hw: arm: acpi: Fix incorrect checksums in RSDP Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 3/8] hw: i386: Use correct RSDT length for checksum Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 4/8] hw: arm: Carry RSDP specific data through AcpiRsdpData Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 5/8] hw: arm: Convert the RSDP build to the buid_append_foo() API Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-17 10:48 ` [Qemu-devel] [PATCH v4 6/8] hw: arm: Support both legacy and current RSDP build Samuel Ortiz
2018-12-17 10:48   ` Samuel Ortiz
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 7/8] hw: acpi: Export and share the ARM " Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-17 12:20   ` [Qemu-arm] " Igor Mammedov
2018-12-17 12:20     ` Igor Mammedov
2018-12-17 13:49     ` [Qemu-arm] " Samuel Ortiz
2018-12-17 13:49       ` Samuel Ortiz
2018-12-17 15:35       ` Igor Mammedov
2018-12-17 16:46         ` Samuel Ortiz
2018-12-17 23:04           ` [Qemu-arm] " Michael S. Tsirkin
2018-12-17 23:04             ` Michael S. Tsirkin
2018-12-17 14:06   ` [Qemu-arm] " Samuel Ortiz
2018-12-17 14:06     ` Samuel Ortiz
2018-12-17 15:25     ` [Qemu-arm] " Igor Mammedov
2018-12-17 15:25       ` Igor Mammedov
2018-12-17 15:32       ` [Qemu-arm] " Samuel Ortiz
2018-12-17 15:32         ` Samuel Ortiz
2018-12-17 15:34   ` [Qemu-arm] [PATCH v5 " Samuel Ortiz
2018-12-17 15:34     ` [Qemu-devel] " Samuel Ortiz
2018-12-17 15:45     ` [Qemu-arm] " Andrew Jones
2018-12-17 15:45       ` Andrew Jones
2018-12-17 10:48 ` [Qemu-arm] [PATCH v4 8/8] hw: acpi: Remove AcpiRsdpDescriptor and fix tests Samuel Ortiz
2018-12-17 10:48   ` [Qemu-devel] " Samuel Ortiz
2018-12-18  1:10 ` Michael S. Tsirkin [this message]
2018-12-18  1:10   ` [Qemu-devel] [PATCH v4 0/8] hw: acpi: RSDP fixes and refactoring Michael S. Tsirkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181217201034-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=ben@skyportsystems.com \
    --cc=ehabkost@redhat.com \
    --cc=imammedo@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    --cc=sameo@linux.intel.com \
    --cc=shannon.zhaosl@gmail.com \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.