From nobody Mon Feb 9 11:06:31 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1616428757; cv=none; d=zohomail.com; s=zohoarc; b=gAEPhSOeaO3V3lJhj251IaiWnv416grPZDiap7Ejmk0IbyqAX7/XUIM80lTFqU91pdx5LRCSyUOV+9Q+Jy3PT3FaNhO1BQlzWyuCN42Dqt3HxfgdSmVdqCrCGNnD+N+unD2fSEsDU55vpfkduad//+CwfbDH+MV8itlTJjQ0vuo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1616428757; h=Content-Type:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=merc1D0xul3Ny+Jrf4XDcCdbekcd0CVvJdhC+IhKUGI=; b=EzyWaMJ8Sc2QEN3wcZnIDpZJWoGlSlZ93C0abm6hboNlNbYay51vnHfu3ZTGyCquktfr3hUy6XvxDnBtc0VEZwvultQZCk5AGgaoSGmk+cIUDQ1VLwuXRNz+qQFe4lp5IZ0ge9KeZPEV89WbZCf5cg8u6ddYCQ/3W30VNxOV+sY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1616428757444970.9685756511394; Mon, 22 Mar 2021 08:59:17 -0700 (PDT) Received: from localhost ([::1]:38370 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lOMxY-00042a-ES for importer@patchew.org; Mon, 22 Mar 2021 11:59:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38934) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lOMkJ-0005cQ-RG for qemu-devel@nongnu.org; Mon, 22 Mar 2021 11:45:35 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:21557) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1lOMkC-0007Kv-UC for qemu-devel@nongnu.org; Mon, 22 Mar 2021 11:45:35 -0400 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-522-fEIInjb8PXC5NeHR1jdZRw-1; Mon, 22 Mar 2021 11:45:22 -0400 Received: by mail-wr1-f71.google.com with SMTP id h30so26370706wrh.10 for ; Mon, 22 Mar 2021 08:45:22 -0700 (PDT) Received: from redhat.com ([2a10:800e:f0d3:0:b69b:9fb8:3947:5636]) by smtp.gmail.com with ESMTPSA id e17sm23852877wra.65.2021.03.22.08.45.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 22 Mar 2021 08:45:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1616427924; 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: in-reply-to:in-reply-to:references:references; bh=merc1D0xul3Ny+Jrf4XDcCdbekcd0CVvJdhC+IhKUGI=; b=JfV1DiySTiuQ4Cok5yD2r4fst2wBeBS6Q13B7RuQ6+B3FnX0JITHbO5MAvvvn5M1A8IN9S nkyV0iovVfU5rfPBUtHxdzbHuSOUfQRBKvEZ+S4QIqo1KCJJCIvL0WbSHS6tqneqzpkPYF hF9d5jyW4hc3qjHZX0mD/RPD6MfYe6U= X-MC-Unique: fEIInjb8PXC5NeHR1jdZRw-1 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:in-reply-to; bh=merc1D0xul3Ny+Jrf4XDcCdbekcd0CVvJdhC+IhKUGI=; b=V+I46StNzB7d0nM7EK2HmEkYM30ySLRk88OOpuyM88cVPeHHG7oX2vHnCb7aTRpqsY 6myULcmDoHfKMDZTlIIURjyXXYkvdT0o1qu86cRFA/yTsKfpNkqBQhZ0njet3y7iZ3h/ 5TYWp6xI2ZpjqQSH/4y63q9mqWQepKLZTg5GePyWz860kzbO1rEyf6wxxaaYfAUMEZih 9+dr+L7+EtkSLL+di0XTS9fnZbZJEdq3AC0sSZKjEj+487Xbo1vfyVpR6kgHEkho2Vd3 d081CKhVBE1avLChbFLV5BKf1HDNI+MNw7BlOq8GmKbTCWcrNy40MZjeWbWY2vjzExhd 39Eg== X-Gm-Message-State: AOAM5317901mpbkMITxlqllyHL1gvSrqSctcI58nk/T/jSEo5/sPwzMV 45Ez5wvfdA+4xWy+KjTjS+IajXqMJWYHGj0k6wckmtLtLD3jxSFgK9l5eq/N3wurgalDjYPPqqD R7q3Q3+BQ787uwgKRGRW3GeUtF0SmUHE1Njzj5w7x/4b7NSzM/NRWvOgusn1c X-Received: by 2002:a05:600c:4292:: with SMTP id v18mr423374wmc.23.1616427921525; Mon, 22 Mar 2021 08:45:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx3avifdnvlip5F/YWy/UMIOtTLtyeg56gDGEXxFaqtXmuaBYkeS+F3JKSXK+lzJMRsZTdn2Q== X-Received: by 2002:a05:600c:4292:: with SMTP id v18mr423352wmc.23.1616427921319; Mon, 22 Mar 2021 08:45:21 -0700 (PDT) Date: Mon, 22 Mar 2021 11:45:19 -0400 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Subject: [PULL 19/20] acpi: Set proper maximum size for "etc/acpi/rsdp" blob Message-ID: <20210322154417.524229-20-mst@redhat.com> References: <20210322154417.524229-1-mst@redhat.com> MIME-Version: 1.0 In-Reply-To: <20210322154417.524229-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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-Disposition: inline Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.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: Peter Maydell , David Hildenbrand , Richard Henderson , Alistair Francis , Shannon Zhao , Paolo Bonzini , Igor Mammedov , Laszlo Ersek Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: David Hildenbrand Let's also set a maximum size for "etc/acpi/rsdp", so the maximum size doesn't get implicitly set based on the initial table size. In my experiments, the table size was in the range of 22 bytes, so a single page (=3D=3D what we used until now) seems to be good enough. Now that we have defined maximum sizes for all currently used table types, let's assert that we catch usage with new tables that need a proper maximum size definition. Also assert that our initial size does not exceed the maximum size; while qemu_ram_alloc_internal() properly asserts that the initial RAMBlock size is <=3D its maximum size, the result might differ when the host page size is bigger than 4k. Suggested-by: Laszlo Ersek Cc: Alistair Francis Cc: Paolo Bonzini Cc: "Michael S. Tsirkin" Cc: Igor Mammedov Cc: Peter Maydell Cc: Shannon Zhao Cc: Marcel Apfelbaum Cc: Paolo Bonzini Cc: Richard Henderson Cc: Laszlo Ersek Signed-off-by: David Hildenbrand Message-Id: <20210304105554.121674-5-david@redhat.com> Reviewed-by: Laszlo Ersek Reviewed-by: Igor Mammedov Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/acpi/utils.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hw/acpi/utils.c b/hw/acpi/utils.c index f2d69a6d92..0c486ea29f 100644 --- a/hw/acpi/utils.c +++ b/hw/acpi/utils.c @@ -29,14 +29,19 @@ MemoryRegion *acpi_add_rom_blob(FWCfgCallback update, void *opaque, GArray *blob, const char *name) { - uint64_t max_size =3D 0; + uint64_t max_size; =20 /* Reserve RAM space for tables: add another order of magnitude. */ if (!strcmp(name, ACPI_BUILD_TABLE_FILE)) { max_size =3D 0x200000; } else if (!strcmp(name, ACPI_BUILD_LOADER_FILE)) { max_size =3D 0x10000; + } else if (!strcmp(name, ACPI_BUILD_RSDP_FILE)) { + max_size =3D 0x1000; + } else { + g_assert_not_reached(); } + g_assert(acpi_data_len(blob) <=3D max_size); =20 return rom_add_blob(name, blob->data, acpi_data_len(blob), max_size, -= 1, name, update, opaque, NULL, true); --=20 MST