From nobody Mon May 6 11:56:18 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.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; Authentication-Results: mx.zohomail.com; spf=pass (zoho.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=1558637340; cv=none; d=zoho.com; s=zohoarc; b=H2tQfj6BW5XYnajX47U8B7iq3IMJj83P8jVj4C0lfMU2sHQ2mzp99KydFoxJiZgzFHTR7SpXpDRPKcyshIpYXkxLCff1EBMLpc9cie32AGXdNgrjvihvJMvI1T/AtKXwtSRbP8LalDevCweUSWsm5KlV5aAmoNU7ZzFf4If63Qs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1558637340; h=Content-Type:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To:ARC-Authentication-Results; bh=LVpYFJCmqbEW9mkYRBtOf1v/vQGkmLzaOzh5Rp6Ums4=; b=lcfHF0dh4jKYzvWr4Yz48ctueGmxMVPBmSUlcbzfhuuXoHS51pZuAgFH65/+dttbHE6lwDwAo7MtteBKap0vVyr6ZJJG1JdAn4/E6Ttp7/NCqrw967JtzwYNNlY7+Ge1CTp0GCvoZ6NFNB+oeDPH9195NsBEaHaZhcQ/caov67Y= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.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 1558637340477794.7405990322692; Thu, 23 May 2019 11:49:00 -0700 (PDT) Received: from localhost ([127.0.0.1]:41874 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hTslm-0005yu-8X for importer@patchew.org; Thu, 23 May 2019 14:48:50 -0400 Received: from eggs.gnu.org ([209.51.188.92]:42552) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hTsjh-00059M-Pn for qemu-devel@nongnu.org; Thu, 23 May 2019 14:46:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hTsjd-0006tM-UL for qemu-devel@nongnu.org; Thu, 23 May 2019 14:46:39 -0400 Received: from mail-wm1-f67.google.com ([209.85.128.67]:37333) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hTsjZ-0006By-SQ for qemu-devel@nongnu.org; Thu, 23 May 2019 14:46:34 -0400 Received: by mail-wm1-f67.google.com with SMTP id 7so6811949wmo.2 for ; Thu, 23 May 2019 11:46:19 -0700 (PDT) Received: from redhat.com (pool-173-76-105-71.bstnma.fios.verizon.net. [173.76.105.71]) by smtp.gmail.com with ESMTPSA id 8sm498070wmf.18.2019.05.23.11.46.16 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Thu, 23 May 2019 11:46:17 -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:mime-version :content-disposition; bh=LVpYFJCmqbEW9mkYRBtOf1v/vQGkmLzaOzh5Rp6Ums4=; b=Eg4kUhwtkGnv7t+NElEU+6PReLwxJXWNcbsVQxrwzQyHnjv6h9LLwUp/IvCYcPl9gc eXwkCNR+gek9NxA7ubgsRFq5d03zZr1g90T7oGJr9QEHMXlpgmr9rJKMkivl8fBx6OyJ VySqP0ghQPpUUEXEvXIf5dFZShCshi3tiugpHGuXY4O/a7IfaAaTcqs0nxbAUKckTexh x9/0c8Pi8ed01UcqHn40b7mZfn3jDowEoGHL5WJQdAJD6OByVwWMAouGq4HkyiV+XPL8 jbmKbsj8respPpAnGTtctG1tJylgMId1Bmnm62elbCOvxKoCTqsUnXAf5MOn195ZFAr3 VFEA== X-Gm-Message-State: APjAAAUzJFtZEmvsfP3IhYu6ZkWemYqmG+W+dSmFMzJ80h51bPAlfsef MrHoo6JDB4tR+JiRCKyreS/vTEx06IQ= X-Google-Smtp-Source: APXvYqwDbep5MkgkK3Ht0OCN7SeJn3ToURVeZlSqbSGLUZVxgr4jGsH68k/WsHz5BLzd/+Btk6OAiQ== X-Received: by 2002:a1c:f20c:: with SMTP id s12mr3080018wmc.151.1558637178491; Thu, 23 May 2019 11:46:18 -0700 (PDT) Date: Thu, 23 May 2019 14:46:14 -0400 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Message-ID: <20190523184518.22419-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline X-Mailer: git-send-email 2.17.1.1206.gb667731e2e.dirty X-Mutt-Fcc: =sent X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.85.128.67 Subject: [Qemu-devel] [PATCH] bios-tables-test: add diff allowed list X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Laurent Vivier , Igor Mammedov , Thomas Huth , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Expected table change is then handled like this: 1. add table to diff allowed list 2. change generating code (can be combined with 1) 3. maintainer runs a script to update expected + blows away allowed diff list Signed-off-by: Michael S. Tsirkin --- So I got tired of manual "remember to update AML files" reminders. With this an AML diff asserts unless it's explicitly allowed. Comments? tests/bios-tables-test-allowed-diff.h | 1 + tests/bios-tables-test.c | 20 +++++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 tests/bios-tables-test-allowed-diff.h diff --git a/tests/bios-tables-test-allowed-diff.h b/tests/bios-tables-test= -allowed-diff.h new file mode 100644 index 0000000000..dfb8523c8b --- /dev/null +++ b/tests/bios-tables-test-allowed-diff.h @@ -0,0 +1 @@ +/* List of comma-separated changed AML files to ignore */ diff --git a/tests/bios-tables-test.c b/tests/bios-tables-test.c index 11e07be093..93db1a7265 100644 --- a/tests/bios-tables-test.c +++ b/tests/bios-tables-test.c @@ -342,6 +342,23 @@ try_again: return exp_tables; } =20 +static bool test_acpi_find_diff_allowed(AcpiSdtTable *sdt) +{ + const gchar *allowed_diff_file[] =3D { +#include "bios-tables-test-allowed-diff.h" + NULL + }; + int offset =3D strlen(data_dir) + 1; + const gchar **f; + + for (f =3D allowed_diff_file; *f; ++f) { + if (!g_strcmp0(sdt->aml_file + offset, *f)) { + return true; + } + } + return false; +} + /* test the list of tables in @data->tables against reference tables */ static void test_acpi_asl(test_data *data) { @@ -396,7 +413,8 @@ static void test_acpi_asl(test_data *data) "see ASL difference."); } } - } + } + g_assert(test_acpi_find_diff_allowed(sdt)); } g_string_free(asl, true); g_string_free(exp_asl, true); --=20 MST