From patchwork Mon Jan 30 20:18:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121766 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 7A49DC54EAA for ; Mon, 30 Jan 2023 20:26:43 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadD-00034Z-Uf; Mon, 30 Jan 2023 15:20:00 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad1-0002hv-9u for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:50 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacz-0006tM-R7 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109985; 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=XDBWJ9mEW9j0WY2a9bhXD9UTpCWsWPuWI1DDeEf3M6Q=; b=P5CDbHtp99I6/U4Uy47eBNvIv3Rp/n1BQJrHGZ0DK5BMPlCS837n7prjS9Z6tNeTqiqd+u ZYjDW5PEqsMAItV+jrcVr0TYEsZ9Y6ZWH0nw5AdGYuhtzMDZDfO27/ukULxfyruv3+4fiT xZIpMYXfKEeRQoQMSIEm511Cbqg67WY= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-76-qIj6oUjDPgyxF6qIrLRpNg-1; Mon, 30 Jan 2023 15:19:03 -0500 X-MC-Unique: qIj6oUjDPgyxF6qIrLRpNg-1 Received: by mail-ed1-f70.google.com with SMTP id o21-20020aa7dd55000000b004a245f58006so2751737edw.12 for ; Mon, 30 Jan 2023 12:18:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=XDBWJ9mEW9j0WY2a9bhXD9UTpCWsWPuWI1DDeEf3M6Q=; b=JkG+gdUNoz3FCInXtOF33YPrnOptfhOOSc3sdDrs5/g4AaC9bbx79Kt/XTSd580RQ8 gl2y3GoshunVjnbj6buM3qqdzXwsPS1BLJZAog1qlOpFfganDNkip+3WvQ4R+rrO+RYr Xl7DPSofk0bvXnBlrrbS0IbfrNSsTm+b/We2fGbSTI8BRhSEVeT7UlV3+sOAEdE3hn2B z1qLY4Yr4KXPggnajlZdQovKI3njCRD3wmyhbQdD4vYoeKtOoX6/pk0SBOB8olZ2FUuG HeCj5wbdyPsRoN8Cm5U4YjgPZo2cOt6we9Im3J74rZaPOg8TjvzpccjXdomtwOU0IyWp Q36A== X-Gm-Message-State: AFqh2ko8I30aKQHbbWJmvA7Sq6koh7860icNp1sj3YJIwWj4fW5tTw/z feODCPgDUL9Bf9bqxKJdSwHxStoRVCQjgwRaBOENBIGbMt7df/3+VlIxGLXuXx+P0N4axwU2lJR BTp8tcCKievYrzY6QrsK9F/lll/wAubKpRieGXjxq7LXh3GASyrafvd6MgycI X-Received: by 2002:a17:907:d38a:b0:86e:c9e2:6313 with SMTP id vh10-20020a170907d38a00b0086ec9e26313mr58990103ejc.32.1675109926195; Mon, 30 Jan 2023 12:18:46 -0800 (PST) X-Google-Smtp-Source: AMrXdXv1lM3+dCWiZKu8OVJTWSFg0Z51oPfdC2aQ1pYxrbJKSykj6ov+icEWRCVNPD7ej5CsTL4D2Q== X-Received: by 2002:a17:907:d38a:b0:86e:c9e2:6313 with SMTP id vh10-20020a170907d38a00b0086ec9e26313mr58990081ejc.32.1675109925981; Mon, 30 Jan 2023 12:18:45 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id lf9-20020a170906ae4900b007ae32daf4b9sm7341782ejb.106.2023.01.30.12.18.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:18:45 -0800 (PST) Date: Mon, 30 Jan 2023 15:18:43 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Vladimir Sementsov-Ogievskiy , Marcel Apfelbaum Subject: [PULL 01/56] shpc: disallow unplug when power indicator is blinking Message-ID: <20230130201810.11518-2-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Vladimir Sementsov-Ogievskiy Pressing attention button has special meaning when power indicator is blinking. Better just not do it. For example, trying to remove device immediately after hotplug leads to both commands succeded but device not actually unrealized. Same thing for PCIE hotplug was done in 81124b3c7a5dae "pcie: add power indicator blink check" Signed-off-by: Vladimir Sementsov-Ogievskiy Message-Id: <20221116214458.82090-1-vsementsov@yandex-team.ru> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/pci/shpc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hw/pci/shpc.c b/hw/pci/shpc.c index e71f3a7483..fca7f6691a 100644 --- a/hw/pci/shpc.c +++ b/hw/pci/shpc.c @@ -568,6 +568,13 @@ void shpc_device_unplug_request_cb(HotplugHandler *hotplug_dev, state = shpc_get_status(shpc, slot, SHPC_SLOT_STATE_MASK); led = shpc_get_status(shpc, slot, SHPC_SLOT_PWR_LED_MASK); + + if (led == SHPC_LED_BLINK) { + error_setg(errp, "Hot-unplug failed: " + "guest is busy (power indicator blinking)"); + return; + } + if (state == SHPC_STATE_DISABLED && led == SHPC_LED_OFF) { shpc_free_devices_in_slot(shpc, slot); shpc_set_status(shpc, slot, 1, SHPC_SLOT_STATUS_MRL_OPEN); From patchwork Mon Jan 30 20:18:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121748 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 764D7C636CD for ; Mon, 30 Jan 2023 20:21:47 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacD-0002EE-Ba; Mon, 30 Jan 2023 15:18:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacB-0002DJ-VO for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:18:56 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacA-0006oN-ID for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:18:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109934; 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=FpkP3BwdICaXbL7Cls9z3SxAYHNj+Y8K4nCKPcKNOvs=; b=P/US0KmcT4Ypj74Kh1ODQtKZS26Ar467sMR87VL60znAQXSt/ppicfO74a+9WdFEEBX10j GDaZ2JoG01TjUE5pYtukAEmxGV4VVL/uiehhjHj5cMA+6VuYGzsI5IE0IJom2spoTuA4o8 imV7bePWluwq//NcAfGbvCFXcT25ztM= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-142-X1GyaDimMLCYmfSqyOjOdg-1; Mon, 30 Jan 2023 15:18:52 -0500 X-MC-Unique: X1GyaDimMLCYmfSqyOjOdg-1 Received: by mail-ed1-f70.google.com with SMTP id q20-20020a056402519400b0049e5b8c71b3so8944148edd.17 for ; Mon, 30 Jan 2023 12:18:51 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=FpkP3BwdICaXbL7Cls9z3SxAYHNj+Y8K4nCKPcKNOvs=; b=YzCiqYClJMpweTggfVaVHuUnDsTk8VmW8Jug2gk0ACIvYEumDzCjTXdcMFmfj4V/RA ehgmGmZORDESspI3gho22aqOei3syUfzHartikrqvTGWh1UuHMvQOzLs1toqN+xDj6/g mXwJBukRYw+y/jp9KvPWyKtAYuBhWhVaCB2WYRR1J1IHhj/6PqJuZLfe8+LRe6YuqBfR HE4ltSVwEoMLIBLv+KCdoHNiqAp7R76lUMD8J1R5zsC4HZjEGxe/Ak6Lad7jxYjqQQrg bx4modjLnB9mJY7C2s3lUdydin1R6XgZnosfpv+KrI48V9Y7TAc3qr2cimQaoUjId6o5 K1iA== X-Gm-Message-State: AO0yUKXbaM+KYYUteAzkJCwFMZnK9yQK4KHlFyh/bBVko2n26ILskhMP 9RT3kb6dkPsFeIjTzBv+aHaolB71S2IKUrmgx3mDLT3+srwI1IcIxg5Sbkc7hABY6X3Utvtq+N6 WGttHDabwwBrocjKdd+OhHZ+SDZrV3z4el81r6RXVzvIAa8CHQnJDRkxWwzrQ X-Received: by 2002:a17:907:2989:b0:883:5b33:e019 with SMTP id eu9-20020a170907298900b008835b33e019mr9195976ejc.61.1675109930339; Mon, 30 Jan 2023 12:18:50 -0800 (PST) X-Google-Smtp-Source: AK7set+ficdhsfJLgsn4ETRcorWzo96hGHD1//1QBMuCz15fzRJU+tzaBu1tpUK6kS/V2evyMH2/4A== X-Received: by 2002:a17:907:2989:b0:883:5b33:e019 with SMTP id eu9-20020a170907298900b008835b33e019mr9195953ejc.61.1675109930065; Mon, 30 Jan 2023 12:18:50 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id op27-20020a170906bcfb00b0084cb4d37b8csm7422715ejb.141.2023.01.30.12.18.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:18:49 -0800 (PST) Date: Mon, 30 Jan 2023 15:18:46 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Bernhard Beschow , Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 02/56] hw/i386/acpi-build: Remove unused attributes Message-ID: <20230130201810.11518-3-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Bernhard Beschow Ammends commit 3db119da7915 'pc: acpi: switch to AML API composed DSDT'. Signed-off-by: Bernhard Beschow Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Igor Mammedov Message-Id: <20230121151941.24120-2-shentey@gmail.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 127c4e2d50..8c333973f9 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -117,8 +117,6 @@ typedef struct AcpiMiscInfo { #ifdef CONFIG_TPM TPMVersion tpm_version; #endif - const unsigned char *dsdt_code; - unsigned dsdt_size; } AcpiMiscInfo; typedef struct FwCfgTPMConfig { From patchwork Mon Jan 30 20:18:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121801 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 0EBF6C636CD for ; Mon, 30 Jan 2023 20:32:50 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacH-0002Eo-F4; Mon, 30 Jan 2023 15:19:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacG-0002Eg-0N for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:00 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacE-0006oe-7K for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:18:59 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109937; 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=jaPYbY+TOTXG6farNIfDPH9H5HcURYebioCLnFhwY6c=; b=EtHDHJL8YyZwQ0O3dF9KLG5GMUiL2Gz/aXaP/AeWaliKvbv6OEY7V5skfysefvgsyME2yB fYXiTRG8Owc0FKlCrgvN75/+tYe9VGsRg7ylGR+GKydEvKb1fZGfKiD2S6DerWQqjedj1y HKQK980sEYha1nyA91fDRXFLsQi1Jw8= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-483-p81tQEqeOs6uwKazaG_xxw-1; Mon, 30 Jan 2023 15:18:56 -0500 X-MC-Unique: p81tQEqeOs6uwKazaG_xxw-1 Received: by mail-ed1-f71.google.com with SMTP id w3-20020a056402268300b00487e0d9b53fso9008915edd.10 for ; Mon, 30 Jan 2023 12:18:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=jaPYbY+TOTXG6farNIfDPH9H5HcURYebioCLnFhwY6c=; b=XJb9GI7eb0cTgReDtyBTVWcmPhUmczFAV6k8qNWFaoHZRbH5ReLj9JYAkBudofzl0W hEyPYuyyM7JqZ4utCEvqX/iy3Aya5X0yMwJGiRFWdl7KeIQr409p0E4bqAl4VhowJeE3 bAB0YTW1+ZVeMhf5uRLRairoXcI81iuyaoXgvKGOW/lra/4nWKTBkbXigjGY+r2TXIQU Zkm5NJjUiZN5RTvFztjm5EWwtNaAo3drblKYU5IC4bxWC+OxaK7ZjZ53TQXFLu/dTkXl bKepK2YJftouNc6crJ+QlCfWwRtBdsMPHNAjDY+ySdEWzoi+y3JjQzya9/UWcyCTyVEc 7SXQ== X-Gm-Message-State: AO0yUKWnxdnVZ4dQNbSdf6GEnggvmgN7Dm4u9MF54aulQbnl6vvoqKb9 yYSTkjMqQXaLA6cuDTQbRRi7AtkqwaZsBqTFSYFugFNQHuLBDmkBR/2zij1Pabb0UqibTPuZX7V YYoPn3SYK2plSfOaUvnGAIhBFkF8E28ikfolbufiSO8pFHTFbrWHhiUzflKAn X-Received: by 2002:a17:906:6a14:b0:88b:f8e5:3318 with SMTP id qw20-20020a1709066a1400b0088bf8e53318mr336487ejc.38.1675109934098; Mon, 30 Jan 2023 12:18:54 -0800 (PST) X-Google-Smtp-Source: AK7set8k3YCElWAXor9uGCJQrYnAM+CbaIO+msnlt/iRWCxphbenF2IoFhJb2GP3L0fZBq8P6cwnaA== X-Received: by 2002:a17:906:6a14:b0:88b:f8e5:3318 with SMTP id qw20-20020a1709066a1400b0088bf8e53318mr336453ejc.38.1675109933816; Mon, 30 Jan 2023 12:18:53 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id t12-20020a1709063e4c00b0088a9e083318sm1046908eji.168.2023.01.30.12.18.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:18:53 -0800 (PST) Date: Mon, 30 Jan 2023 15:18:50 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Bernhard Beschow , Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 03/56] hw/isa/isa-bus: Turn isa_build_aml() into qbus_build_aml() Message-ID: <20230130201810.11518-4-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Bernhard Beschow Frees isa-bus.c from implicit ACPI dependency. While at it, resolve open coding of qbus_build_aml() in piix3 and ich9. Signed-off-by: Bernhard Beschow Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Igor Mammedov Message-Id: <20230121151941.24120-3-shentey@gmail.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/acpi/acpi_aml_interface.h | 3 +++ include/hw/isa/isa.h | 1 - hw/acpi/acpi_interface.c | 10 ++++++++++ hw/i2c/smbus_ich9.c | 5 +---- hw/i386/acpi-microvm.c | 3 ++- hw/isa/isa-bus.c | 10 ---------- hw/isa/lpc_ich9.c | 5 +---- hw/isa/piix3.c | 5 +---- 8 files changed, 18 insertions(+), 24 deletions(-) diff --git a/include/hw/acpi/acpi_aml_interface.h b/include/hw/acpi/acpi_aml_interface.h index 436da069d6..11748a8866 100644 --- a/include/hw/acpi/acpi_aml_interface.h +++ b/include/hw/acpi/acpi_aml_interface.h @@ -3,6 +3,7 @@ #include "qom/object.h" #include "hw/acpi/aml-build.h" +#include "hw/qdev-core.h" #define TYPE_ACPI_DEV_AML_IF "acpi-dev-aml-interface" typedef struct AcpiDevAmlIfClass AcpiDevAmlIfClass; @@ -46,4 +47,6 @@ static inline void call_dev_aml_func(DeviceState *dev, Aml *scope) } } +void qbus_build_aml(BusState *bus, Aml *scope); + #endif diff --git a/include/hw/isa/isa.h b/include/hw/isa/isa.h index 6c8a8a92cb..25acd5c34c 100644 --- a/include/hw/isa/isa.h +++ b/include/hw/isa/isa.h @@ -86,7 +86,6 @@ bool isa_realize_and_unref(ISADevice *dev, ISABus *bus, Error **errp); ISADevice *isa_create_simple(ISABus *bus, const char *name); ISADevice *isa_vga_init(ISABus *bus); -void isa_build_aml(ISABus *bus, Aml *scope); /** * isa_register_ioport: Install an I/O port region on the ISA bus. diff --git a/hw/acpi/acpi_interface.c b/hw/acpi/acpi_interface.c index c668d361f6..8637ff18fc 100644 --- a/hw/acpi/acpi_interface.c +++ b/hw/acpi/acpi_interface.c @@ -2,6 +2,7 @@ #include "hw/acpi/acpi_dev_interface.h" #include "hw/acpi/acpi_aml_interface.h" #include "qemu/module.h" +#include "qemu/queue.h" void acpi_send_event(DeviceState *dev, AcpiEventStatusBits event) { @@ -12,6 +13,15 @@ void acpi_send_event(DeviceState *dev, AcpiEventStatusBits event) } } +void qbus_build_aml(BusState *bus, Aml *scope) +{ + BusChild *kid; + + QTAILQ_FOREACH(kid, &bus->children, sibling) { + call_dev_aml_func(DEVICE(kid->child), scope); + } +} + static void register_types(void) { static const TypeInfo acpi_dev_if_info = { diff --git a/hw/i2c/smbus_ich9.c b/hw/i2c/smbus_ich9.c index ee50ba1f2c..52ba77f3fc 100644 --- a/hw/i2c/smbus_ich9.c +++ b/hw/i2c/smbus_ich9.c @@ -97,13 +97,10 @@ static void ich9_smbus_realize(PCIDevice *d, Error **errp) static void build_ich9_smb_aml(AcpiDevAmlIf *adev, Aml *scope) { - BusChild *kid; ICH9SMBState *s = ICH9_SMB_DEVICE(adev); BusState *bus = BUS(s->smb.smbus); - QTAILQ_FOREACH(kid, &bus->children, sibling) { - call_dev_aml_func(DEVICE(kid->child), scope); - } + qbus_build_aml(bus, scope); } static void ich9_smb_class_init(ObjectClass *klass, void *data) diff --git a/hw/i386/acpi-microvm.c b/hw/i386/acpi-microvm.c index fb09185cbd..a075360d85 100644 --- a/hw/i386/acpi-microvm.c +++ b/hw/i386/acpi-microvm.c @@ -26,6 +26,7 @@ #include "exec/memory.h" #include "hw/acpi/acpi.h" +#include "hw/acpi/acpi_aml_interface.h" #include "hw/acpi/aml-build.h" #include "hw/acpi/bios-linker-loader.h" #include "hw/acpi/generic_event_device.h" @@ -129,7 +130,7 @@ build_dsdt_microvm(GArray *table_data, BIOSLinker *linker, sb_scope = aml_scope("_SB"); fw_cfg_add_acpi_dsdt(sb_scope, x86ms->fw_cfg); - isa_build_aml(ISA_BUS(isabus), sb_scope); + qbus_build_aml(BUS(isabus), sb_scope); build_ged_aml(sb_scope, GED_DEVICE, x86ms->acpi_dev, GED_MMIO_IRQ, AML_SYSTEM_MEMORY, GED_MMIO_BASE); acpi_dsdt_add_power_button(sb_scope); diff --git a/hw/isa/isa-bus.c b/hw/isa/isa-bus.c index 1bee1a47f1..f155b80010 100644 --- a/hw/isa/isa-bus.c +++ b/hw/isa/isa-bus.c @@ -24,7 +24,6 @@ #include "hw/sysbus.h" #include "sysemu/sysemu.h" #include "hw/isa/isa.h" -#include "hw/acpi/acpi_aml_interface.h" static ISABus *isabus; @@ -188,15 +187,6 @@ ISADevice *isa_vga_init(ISABus *bus) } } -void isa_build_aml(ISABus *bus, Aml *scope) -{ - BusChild *kid; - - QTAILQ_FOREACH(kid, &bus->parent_obj.children, sibling) { - call_dev_aml_func(DEVICE(kid->child), scope); - } -} - static void isabus_bridge_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index 8d541e2b54..1fba3c210c 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -813,7 +813,6 @@ static void ich9_send_gpe(AcpiDeviceIf *adev, AcpiEventStatusBits ev) static void build_ich9_isa_aml(AcpiDevAmlIf *adev, Aml *scope) { Aml *field; - BusChild *kid; ICH9LPCState *s = ICH9_LPC_DEVICE(adev); BusState *bus = BUS(s->isa_bus); Aml *sb_scope = aml_scope("\\_SB"); @@ -835,9 +834,7 @@ static void build_ich9_isa_aml(AcpiDevAmlIf *adev, Aml *scope) aml_append(sb_scope, field); aml_append(scope, sb_scope); - QTAILQ_FOREACH(kid, &bus->children, sibling) { - call_dev_aml_func(DEVICE(kid->child), scope); - } + qbus_build_aml(bus, scope); } static void ich9_lpc_class_init(ObjectClass *klass, void *data) diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c index 283b971ec4..a9cb39bf21 100644 --- a/hw/isa/piix3.c +++ b/hw/isa/piix3.c @@ -306,7 +306,6 @@ static void pci_piix3_realize(PCIDevice *dev, Error **errp) static void build_pci_isa_aml(AcpiDevAmlIf *adev, Aml *scope) { Aml *field; - BusChild *kid; Aml *sb_scope = aml_scope("\\_SB"); BusState *bus = qdev_get_child_bus(DEVICE(adev), "isa.0"); @@ -322,9 +321,7 @@ static void build_pci_isa_aml(AcpiDevAmlIf *adev, Aml *scope) aml_append(sb_scope, field); aml_append(scope, sb_scope); - QTAILQ_FOREACH(kid, &bus->children, sibling) { - call_dev_aml_func(DEVICE(kid->child), scope); - } + qbus_build_aml(bus, scope); } static void pci_piix3_class_init(ObjectClass *klass, void *data) From patchwork Mon Jan 30 20:18:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121745 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 844A0C54EAA for ; Mon, 30 Jan 2023 20:20:51 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacW-0002GD-1m; Mon, 30 Jan 2023 15:19:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacP-0002Ff-8C for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:14 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacN-0006p7-Qb for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109947; 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=RaykUdmYG7lWtZZWRxiRmGZWR8mEpfOcqXuCFGPAZyA=; b=H0Ye4w5QVsbKJX5HOMu/2OIw0ghrrdvWVU6k+rAf5XtH2yQVqQuDZecXiysQgKuOBzaEe+ s0Zxt0BR/0PVsJPdkURFQzH/cQHtE1biL0a6Viof/LHTNY1dYp8jfltoXPrmGrQIjn4Ty5 LNrOVaUY+9OnmLw0QH8e+Cywga15mnA= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-561-IzxoTOmwONGRIPn9kmC7oA-1; Mon, 30 Jan 2023 15:18:59 -0500 X-MC-Unique: IzxoTOmwONGRIPn9kmC7oA-1 Received: by mail-ed1-f71.google.com with SMTP id y21-20020a056402359500b0049e171c4ad0so8881841edc.6 for ; Mon, 30 Jan 2023 12:18:59 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=RaykUdmYG7lWtZZWRxiRmGZWR8mEpfOcqXuCFGPAZyA=; b=20HlhmOk92HiuyNmzVER6OGKmluD1Op4MO+FHnGWQd1NMjwIsU514/CySkf/I3NLsH BiuKIKNW/mo8pPhQmsFdI/7b3Nw9ogIlmNswwH2RyVJMZuFJNIUQVLYWO1my2AlUST3Q OSrfY9oRUOu9loal1Vheve5ycClQEEs4qC3LKo58YwjHbbSyVr3gW1pnetJ7ZlOGMrBk PMyKlX4VaU+3pallBN2b8AzkV/6x7Q37PlR6di2MPeEg4sXJUktUD9K1R9mFnFJTx0rj VNfMCGgTRbjy0lOL3+JZzZ08UYoDimFE9AW0qgsD2H68PK8SJ5EctASXWuIMzwJ8IWIJ 8iog== X-Gm-Message-State: AO0yUKUjh/PPUSiH5JR8CTeLiHrt6eZTv4XVEKYc1+EyVrs/Blow8f1O 1X5JbZB6ECF6aZsgWLmhXqUzDjMjJYKrHQZvHTgYyC2LNt5R6EPdjUwZdA2jn5xVdS2tcAluU2R Ir0j7Y+Nqwh8AYRFvzneieZFzf3yV6/yb2WS58mtpsKnSeY/j9jMCsC4TSYf+ X-Received: by 2002:a05:6402:4505:b0:4a0:8bcc:3cbc with SMTP id ez5-20020a056402450500b004a08bcc3cbcmr24073874edb.25.1675109937586; Mon, 30 Jan 2023 12:18:57 -0800 (PST) X-Google-Smtp-Source: AK7set9lUqAX961AwrtwfLom5uF55M1F7bRWhCq6d86ExzmZxucE5dlsnrnK97chE1dTsKvLjIvZ7g== X-Received: by 2002:a05:6402:4505:b0:4a0:8bcc:3cbc with SMTP id ez5-20020a056402450500b004a08bcc3cbcmr24073853edb.25.1675109937333; Mon, 30 Jan 2023 12:18:57 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id q8-20020a056402032800b004a24b8b58cbsm1599595edw.16.2023.01.30.12.18.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:18:56 -0800 (PST) Date: Mon, 30 Jan 2023 15:18:54 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Bernhard Beschow , Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , Marcel Apfelbaum , Igor Mammedov , Ani Sinha , Aurelien Jarno Subject: [PULL 04/56] hw/acpi/piix4: No need to #include "hw/southbridge/piix.h" Message-ID: <20230130201810.11518-5-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Bernhard Beschow hw/acpi/piix4 has its own header with its structure definition etc. Ammends commit 2bfd0845f0 'hw/acpi/piix4: move PIIX4PMState into separate piix4.h header'. Signed-off-by: Bernhard Beschow Reviewed-by: Philippe Mathieu-Daudé Message-Id: <20230121151941.24120-4-shentey@gmail.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/acpi/piix4.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index 0a81f1ad93..2ab4930f11 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -21,7 +21,6 @@ #include "qemu/osdep.h" #include "hw/i386/pc.h" -#include "hw/southbridge/piix.h" #include "hw/irq.h" #include "hw/isa/apm.h" #include "hw/i2c/pm_smbus.h" From patchwork Mon Jan 30 20:18:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121738 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id F256BC636CD for ; Mon, 30 Jan 2023 20:19:46 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacO-0002FN-3l; Mon, 30 Jan 2023 15:19:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacM-0002FF-QG for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:06 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacL-0006ov-5l for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:06 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109944; 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=e4xKW55WbzZUUTC4V0V5YkoGjBGQKM6cbuIn9hbt55U=; b=H4eYMtQBey57I1HUorh0psjYuuUclcUnjgovCllODQE3kkA/FOn6Qi7K1mOy+8fzcB7Nyu dACkeArBiMnyxm0WNR+Z1UYzm+9SCRN07fI71IeoE61lrovEEcRj2oABGXPsPaWPkziUPk bUasqDYiSV7YYi9NEgX2a+TRXfIAWEk= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-611-nis30A_VM0GT0Q_Jsc0RLg-1; Mon, 30 Jan 2023 15:19:02 -0500 X-MC-Unique: nis30A_VM0GT0Q_Jsc0RLg-1 Received: by mail-ej1-f72.google.com with SMTP id d14-20020a170906c20e00b00889f989d8deso1895350ejz.15 for ; Mon, 30 Jan 2023 12:19:02 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=e4xKW55WbzZUUTC4V0V5YkoGjBGQKM6cbuIn9hbt55U=; b=z3RPQW0TV7Wc+jbguKh/DJByGtql4HPORiXxqFYOdDuGVkUU7ZgVQE6fz3lxIx3Qut tLy7w1pBWcG8Enx22/rs9XC0duO6IZfWxUILW2ChmMuuIXWEDHVZXilHSi3Ugif5by08 HpyH6SWhzottJHcVxol0S1giTZrwZcPCvqbaW1y5Dg2QyrtqgiUV88SqqbvJTp+nc+Km nK/Zj+Ocm8pTojEDM1BScumpI9RydLj6m/f35AYDF1XN8Lbi4PYYU3Ti7uig9BTuiaC3 mzPVtAiCz5mvZ+Q/wEw9ZmtiygYWyiF7pfmOzhyO9uiOOIxKhW66zae/UYwivcVLjJvy pxGQ== X-Gm-Message-State: AFqh2ko67bMJ5KD/+aSf8S4x/JIGwX15rF+uzkSONpVjmizhIc+wki3T x/CU0UICNkUB/VjZ7zr/1hP1eCqVVcGgS5p1Clg3oMtbT8M6iNIm0wzk/wSteKesVTop+jjLNOm 0tzEBEPfdyGZLr0+uru9rqDt803TfSQTk+VmAK6mK1j6x7c8r1Sc0pn78zycs X-Received: by 2002:a05:6402:24a0:b0:499:b4ce:b26e with SMTP id q32-20020a05640224a000b00499b4ceb26emr63825440eda.40.1675109940937; Mon, 30 Jan 2023 12:19:00 -0800 (PST) X-Google-Smtp-Source: AMrXdXvUdQizZS4ssO/7BMoOfup5U4UvFTEjFGr5mdIkVdqozPrSjtfygTtWiusSJ3tDibPtCx+m8w== X-Received: by 2002:a05:6402:24a0:b0:499:b4ce:b26e with SMTP id q32-20020a05640224a000b00499b4ceb26emr63825416eda.40.1675109940675; Mon, 30 Jan 2023 12:19:00 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id ed10-20020a056402294a00b004a236384909sm3000690edb.10.2023.01.30.12.18.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:00 -0800 (PST) Date: Mon, 30 Jan 2023 15:18:57 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Bernhard Beschow , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 05/56] hw/acpi/acpi_dev_interface: Remove unused parameter from AcpiDeviceIfClass::madt_cpu Message-ID: <20230130201810.11518-6-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Bernhard Beschow The only function ever assigned to AcpiDeviceIfClass::madt_cpu is pc_madt_cpu_entry() which doesn't use the AcpiDeviceIf parameter. Signed-off-by: Bernhard Beschow Reviewed-by: Igor Mammedov Message-Id: <20230121151941.24120-5-shentey@gmail.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/acpi/acpi_dev_interface.h | 3 +-- include/hw/i386/pc.h | 6 ++---- hw/acpi/acpi-x86-stub.c | 5 ++--- hw/acpi/cpu.c | 3 +-- hw/i386/acpi-common.c | 7 +++---- 5 files changed, 9 insertions(+), 15 deletions(-) diff --git a/include/hw/acpi/acpi_dev_interface.h b/include/hw/acpi/acpi_dev_interface.h index ea6056ab92..a1648220ff 100644 --- a/include/hw/acpi/acpi_dev_interface.h +++ b/include/hw/acpi/acpi_dev_interface.h @@ -52,8 +52,7 @@ struct AcpiDeviceIfClass { /* */ void (*ospm_status)(AcpiDeviceIf *adev, ACPIOSTInfoList ***list); void (*send_event)(AcpiDeviceIf *adev, AcpiEventStatusBits ev); - void (*madt_cpu)(AcpiDeviceIf *adev, int uid, - const CPUArchIdList *apic_ids, GArray *entry, + void (*madt_cpu)(int uid, const CPUArchIdList *apic_ids, GArray *entry, bool force_enabled); }; #endif diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 88a120bc23..66e3d059ef 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -9,7 +9,6 @@ #include "hw/block/flash.h" #include "hw/i386/x86.h" -#include "hw/acpi/acpi_dev_interface.h" #include "hw/hotplug.h" #include "qom/object.h" #include "hw/i386/sgx-epc.h" @@ -193,9 +192,8 @@ bool pc_system_ovmf_table_find(const char *entry, uint8_t **data, void pc_system_parse_ovmf_flash(uint8_t *flash_ptr, size_t flash_size); /* hw/i386/acpi-common.c */ -void pc_madt_cpu_entry(AcpiDeviceIf *adev, int uid, - const CPUArchIdList *apic_ids, GArray *entry, - bool force_enabled); +void pc_madt_cpu_entry(int uid, const CPUArchIdList *apic_ids, + GArray *entry, bool force_enabled); /* sgx.c */ void pc_machine_init_sgx_epc(PCMachineState *pcms); diff --git a/hw/acpi/acpi-x86-stub.c b/hw/acpi/acpi-x86-stub.c index 3df1e090f4..d0d399d26b 100644 --- a/hw/acpi/acpi-x86-stub.c +++ b/hw/acpi/acpi-x86-stub.c @@ -2,9 +2,8 @@ #include "hw/i386/pc.h" #include "hw/i386/acpi-build.h" -void pc_madt_cpu_entry(AcpiDeviceIf *adev, int uid, - const CPUArchIdList *apic_ids, GArray *entry, - bool force_enabled) +void pc_madt_cpu_entry(int uid, const CPUArchIdList *apic_ids, + GArray *entry, bool force_enabled) { } diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index 4e580959a2..19c154d78f 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -355,7 +355,6 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts, char *cphp_res_path = g_strdup_printf("%s." CPUHP_RES_DEVICE, res_root); Object *obj = object_resolve_path_type("", TYPE_ACPI_DEVICE_IF, NULL); AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_GET_CLASS(obj); - AcpiDeviceIf *adev = ACPI_DEVICE_IF(obj); cpu_ctrl_dev = aml_device("%s", cphp_res_path); { @@ -666,7 +665,7 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts, /* build _MAT object */ assert(adevc && adevc->madt_cpu); - adevc->madt_cpu(adev, i, arch_ids, madt_buf, + adevc->madt_cpu(i, arch_ids, madt_buf, true); /* set enabled flag */ aml_append(dev, aml_name_decl("_MAT", aml_buffer(madt_buf->len, (uint8_t *)madt_buf->data))); diff --git a/hw/i386/acpi-common.c b/hw/i386/acpi-common.c index 4aaafbdd7b..52e5c1439a 100644 --- a/hw/i386/acpi-common.c +++ b/hw/i386/acpi-common.c @@ -33,9 +33,8 @@ #include "acpi-build.h" #include "acpi-common.h" -void pc_madt_cpu_entry(AcpiDeviceIf *adev, int uid, - const CPUArchIdList *apic_ids, GArray *entry, - bool force_enabled) +void pc_madt_cpu_entry(int uid, const CPUArchIdList *apic_ids, + GArray *entry, bool force_enabled) { uint32_t apic_id = apic_ids->cpus[uid].arch_id; /* Flags – Local APIC Flags */ @@ -112,7 +111,7 @@ void acpi_build_madt(GArray *table_data, BIOSLinker *linker, build_append_int_noprefix(table_data, 1 /* PCAT_COMPAT */, 4); /* Flags */ for (i = 0; i < apic_ids->len; i++) { - adevc->madt_cpu(adev, i, apic_ids, table_data, false); + adevc->madt_cpu(i, apic_ids, table_data, false); if (apic_ids->cpus[i].arch_id > 254) { x2apic_mode = true; } From patchwork Mon Jan 30 20:19:01 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121747 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 40DD1C54EAA for ; Mon, 30 Jan 2023 20:21:21 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacW-0002GJ-Ve; Mon, 30 Jan 2023 15:19:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacU-0002Fm-AP for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:14 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacO-0006pA-92 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109947; 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=SU5etPY8Ng5bl2mlfl+wFqwf9p2Zpd9ct1Xf0Z7l6hg=; b=ErOtiTyAHcsKFypUb3/PTgUJIaxlUqFp2aVX4Q7rL4o/YzzE+ZuGByOHDBHuNjrKSu1dYW JdeL7ez+gmmfru8dr3mYZzOyR+d1nh7YejWEFiIv1dz7VKDNvTi7IpTmVxLRmGkvhDWaHF c03oYKlI3NVXOLQmjIuaeq9lqlpXW1c= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-435-mhBZGUMLMWCG0XWNoE1qIw-1; Mon, 30 Jan 2023 15:19:05 -0500 X-MC-Unique: mhBZGUMLMWCG0XWNoE1qIw-1 Received: by mail-ed1-f70.google.com with SMTP id o21-20020aa7dd55000000b004a245f58006so2752202edw.12 for ; Mon, 30 Jan 2023 12:19:05 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=SU5etPY8Ng5bl2mlfl+wFqwf9p2Zpd9ct1Xf0Z7l6hg=; b=3nqUZZX5j4yskGimyiWtmKTd8aiEkLemEajk53eXgupy3QcTUMoEvZzMXXFAzbNsZW K1k5OVi2M8w9eqobShYQIPQ38U1L/3Vmi7tK/0+t4LiU95fEJ5cfpwgH5JkYf+NZWLjB 9c2jMfrgJ6fjxfkevf+leCdL2G2q3i1ipr+PFKcLNepehV/F03P+nbbidjZVkX6Ed861 MsV12Tk7Wc3n9AfRoMSMNjHvcgPdwdNyHTo43z0LkZ2dj++xTfRSxNHvwWzASGjSxBDz lLQlA4/5EwsuEJ+Rlx0oEBLbozEBlF4ri1jBEQspBy4FBObKYPDw5JSXCZihCeIEYtTc FUrg== X-Gm-Message-State: AO0yUKW+3DzBPBFJUUVNxQ1/1A8V5LvQyOSYkjOOf0pM2RN8JK5jW3uD 7q5cHCvzQQydBjbdBbydLD6M0DSPSK02SElh3bAetpl2FuDnSZpFRJTaDX1XI1y+658GtBHHU9k fmEnlVGnsFzSlh484S3+56/7Je/gz2o+t39eUQFGcE9hdRm4XH8EzZINgV7b+ X-Received: by 2002:a17:907:75ee:b0:878:683c:f0d1 with SMTP id jz14-20020a17090775ee00b00878683cf0d1mr14967407ejc.38.1675109944262; Mon, 30 Jan 2023 12:19:04 -0800 (PST) X-Google-Smtp-Source: AK7set+gCjFhSIK0HVwJDXRWdPdoEOZr0NZNPB6tWHAftDCdh1Bsqg9/aCjBr3IsWvWQuDNt40214g== X-Received: by 2002:a17:907:75ee:b0:878:683c:f0d1 with SMTP id jz14-20020a17090775ee00b00878683cf0d1mr14967397ejc.38.1675109943956; Mon, 30 Jan 2023 12:19:03 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id lf16-20020a170907175000b008787134a939sm7404950ejc.18.2023.01.30.12.19.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:03 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:01 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Akihiko Odaki , Philippe =?utf-8?q?Mathieu-Daud?= =?utf-8?q?=C3=A9?= , Alex =?utf-8?q?Benn=C3=A9e?= Subject: [PULL 06/56] vhost-user: Correct a reference of TARGET_AARCH64 Message-ID: <20230130201810.11518-7-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Akihiko Odaki Presumably TARGET_ARM_64 should be a mistake of TARGET_AARCH64. Signed-off-by: Akihiko Odaki Message-Id: <20230109063130.81296-1-akihiko.odaki@daynix.com> Fixes: 27598393a2 ("Lift max memory slots limit imposed by vhost-user") Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Alex Bennée Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/virtio/vhost-user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index d9ce0501b2..6c79da953b 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -48,7 +48,7 @@ * hardware plaform. */ #if defined(TARGET_X86) || defined(TARGET_X86_64) || \ - defined(TARGET_ARM) || defined(TARGET_ARM_64) + defined(TARGET_ARM) || defined(TARGET_AARCH64) #include "hw/acpi/acpi.h" #define VHOST_USER_MAX_RAM_SLOTS ACPI_MAX_RAM_SLOTS From patchwork Mon Jan 30 20:19:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121741 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 3BB51C54EAA for ; Mon, 30 Jan 2023 20:20:21 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMace-0002Ic-Er; Mon, 30 Jan 2023 15:19:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacX-0002GY-4u for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:17 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacU-0006pT-6a for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109950; 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=2g5ysF7CAHTyvaXDtnVWs2/BqxrqcBQDQxiGugZ8DgE=; b=DFZ3ZeywGTK5FOOBaG2N/aqibmK9/R2Nnw/hdVGq8XWJnm5rc7MI9NcrrcojltyiUWoJdJ Badw93P+kAz/Rk6e9B3Zl4MkKsFRfTkHUgVjUui11XGf3XlnYIkSGee4R46dBPeCqi6mHw 4AHS40h/YUqQ9t6XuyIoUOC4k1csuAA= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-331-xspxYTnaNTemFkosYEZZ1w-1; Mon, 30 Jan 2023 15:19:09 -0500 X-MC-Unique: xspxYTnaNTemFkosYEZZ1w-1 Received: by mail-ej1-f71.google.com with SMTP id d14-20020a170906c20e00b00889f989d8deso1895516ejz.15 for ; Mon, 30 Jan 2023 12:19:08 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=2g5ysF7CAHTyvaXDtnVWs2/BqxrqcBQDQxiGugZ8DgE=; b=B4YGBXlG8RPMNWPNrEEtV4nboLfQ4ylLIB80QwDQJ0ZLL+1bwGdw5GYVuHcJkBFi3l aWBil2BaljBRpCaJ55Qm2YPFA34Ltx1rfD4i2mGLdXjJed7t/f/YDXjfD2BsXrDzrT8w QBZrZoJtuvQjRUxYB1UqlcF3uEX6tlEl9sTqo+uylhQvAgJvy+AoJCu574ZS1iGPhg/R y/IcjJzR5GAR+6/X0NToCEnf82d4+8TTDnwMbjLDrH806tOytt5Fd/+glMW1OzXugrv2 BkAj+cPGTeFcCK4w85n+49JDa2arQvVfn4ZE0KxzzU54ZANWZO7cLNILY3EEq06Qc46w vcWg== X-Gm-Message-State: AO0yUKXTxHjt38Fv6mcREwQqkMEhwh2jd+wtF1AoIhbCC1APYgIVg0rR NQHV+384ZlvE+k5THOok99BBrTd+jTsQ75cWICY21SMp+exQCkGPW//cu6b4dcupToBCquRP8eK QdVwAOhzktwGL3VmDM+jDRAoX6/Lt2nXzO4GwNognAdhr+DhoFbGRVkTW4I/k X-Received: by 2002:a17:906:ee8a:b0:884:c6d8:e291 with SMTP id wt10-20020a170906ee8a00b00884c6d8e291mr12007732ejb.57.1675109947530; Mon, 30 Jan 2023 12:19:07 -0800 (PST) X-Google-Smtp-Source: AK7set9QzP3EAcrInRNBFyo4LNVjrB5mPKe90POlfgTs8XdMJrrUqnPn7RlGf7lTsCRTOJdgTm8E6Q== X-Received: by 2002:a17:906:ee8a:b0:884:c6d8:e291 with SMTP id wt10-20020a170906ee8a00b00884c6d8e291mr12007699ejb.57.1675109947240; Mon, 30 Jan 2023 12:19:07 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id k2-20020a170906970200b008775b8a5a5fsm7247292ejx.198.2023.01.30.12.19.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:06 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:04 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Philippe =?utf-8?q?Mathieu-Dau?= =?utf-8?q?d=C3=A9?= , BALATON Zoltan , Richard Henderson , Bernhard Beschow , Mark Cave-Ayland , =?utf-8?b?SGVydsOp?= Poussineau , qemu-ppc@nongnu.org Subject: [PULL 07/56] hw/pci-host: Use register definitions from PCI standard Message-ID: <20230130201810.11518-8-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Philippe Mathieu-Daudé No need to document magic values when the definition names from "standard-headers/linux/pci_regs.h" are self-explicit. Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20230105173702.56610-1-philmd@linaro.org> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: BALATON Zoltan Reviewed-by: Richard Henderson Reviewed-by: Bernhard Beschow --- hw/pci-host/grackle.c | 2 +- hw/pci-host/raven.c | 6 +++--- hw/pci-host/uninorth.c | 33 +++++++++++---------------------- 3 files changed, 15 insertions(+), 26 deletions(-) diff --git a/hw/pci-host/grackle.c b/hw/pci-host/grackle.c index 8cf318cb80..8e589ff2c9 100644 --- a/hw/pci-host/grackle.c +++ b/hw/pci-host/grackle.c @@ -91,7 +91,7 @@ static void grackle_init(Object *obj) static void grackle_pci_realize(PCIDevice *d, Error **errp) { - d->config[0x09] = 0x01; + d->config[PCI_CLASS_PROG] = 0x01; } static void grackle_pci_class_init(ObjectClass *klass, void *data) diff --git a/hw/pci-host/raven.c b/hw/pci-host/raven.c index 5b00b4e462..cdfb62ac2e 100644 --- a/hw/pci-host/raven.c +++ b/hw/pci-host/raven.c @@ -330,9 +330,9 @@ static void raven_realize(PCIDevice *d, Error **errp) char *filename; int bios_size = -1; - d->config[0x0C] = 0x08; // cache_line_size - d->config[0x0D] = 0x10; // latency_timer - d->config[0x34] = 0x00; // capabilities_pointer + d->config[PCI_CACHE_LINE_SIZE] = 0x08; + d->config[PCI_LATENCY_TIMER] = 0x10; + d->config[PCI_CAPABILITY_LIST] = 0x00; memory_region_init_rom_nomigrate(&s->bios, OBJECT(s), "bios", BIOS_SIZE, &error_fatal); diff --git a/hw/pci-host/uninorth.c b/hw/pci-host/uninorth.c index e3abe3c0f9..e4c1abd871 100644 --- a/hw/pci-host/uninorth.c +++ b/hw/pci-host/uninorth.c @@ -276,12 +276,9 @@ static void pci_unin_internal_init(Object *obj) static void unin_main_pci_host_realize(PCIDevice *d, Error **errp) { - /* cache_line_size */ - d->config[0x0C] = 0x08; - /* latency_timer */ - d->config[0x0D] = 0x10; - /* capabilities_pointer */ - d->config[0x34] = 0x00; + d->config[PCI_CACHE_LINE_SIZE] = 0x08; + d->config[PCI_LATENCY_TIMER] = 0x10; + d->config[PCI_CAPABILITY_LIST] = 0x00; /* * Set kMacRISCPCIAddressSelect (0x48) register to indicate PCI @@ -296,30 +293,22 @@ static void unin_main_pci_host_realize(PCIDevice *d, Error **errp) static void unin_agp_pci_host_realize(PCIDevice *d, Error **errp) { - /* cache_line_size */ - d->config[0x0C] = 0x08; - /* latency_timer */ - d->config[0x0D] = 0x10; - /* capabilities_pointer - d->config[0x34] = 0x80; */ + d->config[PCI_CACHE_LINE_SIZE] = 0x08; + d->config[PCI_LATENCY_TIMER] = 0x10; + /* d->config[PCI_CAPABILITY_LIST] = 0x80; */ } static void u3_agp_pci_host_realize(PCIDevice *d, Error **errp) { - /* cache line size */ - d->config[0x0C] = 0x08; - /* latency timer */ - d->config[0x0D] = 0x10; + d->config[PCI_CACHE_LINE_SIZE] = 0x08; + d->config[PCI_LATENCY_TIMER] = 0x10; } static void unin_internal_pci_host_realize(PCIDevice *d, Error **errp) { - /* cache_line_size */ - d->config[0x0C] = 0x08; - /* latency_timer */ - d->config[0x0D] = 0x10; - /* capabilities_pointer */ - d->config[0x34] = 0x00; + d->config[PCI_CACHE_LINE_SIZE] = 0x08; + d->config[PCI_LATENCY_TIMER] = 0x10; + d->config[PCI_CAPABILITY_LIST] = 0x00; } static void unin_main_pci_host_class_init(ObjectClass *klass, void *data) From patchwork Mon Jan 30 20:19:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121746 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id EA60BC636CD for ; Mon, 30 Jan 2023 20:20:52 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacg-0002J3-8K; Mon, 30 Jan 2023 15:19:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacX-0002Gj-8c for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:23 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacU-0006ph-W7 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109954; 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=0/dOoJvzG9odeo4jTr8/g/DKOuCic1QRPN2s5bAH5YI=; b=XttoI7FouER5vQdyKxxoUCCf4X0yT6FUAJw0Jl/qSnIQ8G8p47tkYuiU5P7eEeNgnGk+fe xBem30K869WUp0thHRneBTEC8YP/BDmUhDLYYQwYF/E+kKieQiilCmqLEFbyxR1B3Mau9C h3xU8FLM18vguY5VNY5xbOy06PsUTPQ= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-302-UrCLPXM2Moa6mHwUHD73HA-1; Mon, 30 Jan 2023 15:19:13 -0500 X-MC-Unique: UrCLPXM2Moa6mHwUHD73HA-1 Received: by mail-ed1-f69.google.com with SMTP id j10-20020a05640211ca00b0049e385d5830so9056051edw.22 for ; Mon, 30 Jan 2023 12:19:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=0/dOoJvzG9odeo4jTr8/g/DKOuCic1QRPN2s5bAH5YI=; b=3pUElFsGiY859+sVJGOilxvysUm6wrzNBS984okgh0XzBRR+skZqjw2UtIKIQcLKin AEwJHSdoTbQ+XZn223DTjZNMSB6jHGEXJjZ3jSwotX/sLgZZTf6n4gFVkv914AmEC8b3 3wZzEi1aHYLDuzPk6Rpheckc/fmHAIDPatz+eOBJYOtaB2XT93eaXBVeceyGli0WmvPt S2INwGqmXQ/H6lccTKYQcO399IH9BnJF7XNWbzCa5B1b5ENwdCyJAjBOXX5B8cd7LLil Jh7eJluOTm4m8JUtEd+BaZNF6MTNRkv7blm1mS1zM7I6Ut5/ili/i73Y9AlbvTE9ZtEt iCJA== X-Gm-Message-State: AO0yUKWq6eGz6h0rf3HrWPbiBFKRDfcZXQ3hTUUCXQQRg64v6NXuRqPK uJTfkLZx4NUapQG7IqGnq/WMQOPUAeSN6+NeujfFx3Xh2kr/bPkZk1uZ/kQlQeqtXb1r/Sc+PIA 7okURK2KqTPz9jv2F2sRr0o/U7e9qqz3zctZxTh0EADe40rJD9769f9tLELTd X-Received: by 2002:a17:906:13c6:b0:878:605e:dbe7 with SMTP id g6-20020a17090613c600b00878605edbe7mr18067726ejc.3.1675109951275; Mon, 30 Jan 2023 12:19:11 -0800 (PST) X-Google-Smtp-Source: AK7set8G5c6Dif7sTPlMCDjSUNOHx0ULwcTQ5s8ic5oi01DEswAgsJnvtwqehsXYqQKIeR+vQeNEfA== X-Received: by 2002:a17:906:13c6:b0:878:605e:dbe7 with SMTP id g6-20020a17090613c600b00878605edbe7mr18067699ejc.3.1675109951025; Mon, 30 Jan 2023 12:19:11 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id w23-20020a1709064a1700b008860045df76sm3306225eju.105.2023.01.30.12.19.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:10 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:07 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , "Dr. David Alan Gilbert" , Thomas Huth , David Daney , Dr.David@redhat.com, Alan@redhat.com, Gilbert@redhat.com, <@redhat.com, Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , Eduardo Habkost , Marcel Apfelbaum , Yanan Wang Subject: [PULL 08/56] virtio-rng-pci: fix migration compat for vectors Message-ID: <20230130201810.11518-9-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: "Dr. David Alan Gilbert" Fixup the migration compatibility for existing machine types so that they do not enable msi-x. Symptom: (qemu) qemu: get_pci_config_device: Bad config data: i=0x34 read: 84 device: 98 cmask: ff wmask: 0 w1cmask:0 qemu: Failed to load PCIDevice:config qemu: Failed to load virtio-rng:virtio qemu: error while loading state for instance 0x0 of device '0000:00:03.0/virtio-rng' qemu: load of migration failed: Invalid argument Note: This fix will break migration from 7.2->7.2-fixed with this patch bz: https://bugzilla.redhat.com/show_bug.cgi?id=2155749 Fixes: 9ea02e8f1 ("virtio-rng-pci: Allow setting nvectors, so we can use MSI-X") Signed-off-by: Dr. David Alan Gilbert Message-Id: <20230109105809.163975-1-dgilbert@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Thomas Huth Acked-by: David Daney Fixes: 9ea02e8f1 ("virtio-rng-pci: Allow setting nvectors, so we can use MSI-X")
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé --- hw/core/machine.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/core/machine.c b/hw/core/machine.c index 616f3a207c..f7761baab5 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -46,6 +46,7 @@ const size_t hw_compat_7_2_len = G_N_ELEMENTS(hw_compat_7_2); GlobalProperty hw_compat_7_1[] = { { "virtio-device", "queue_reset", "false" }, + { "virtio-rng-pci", "vectors", "0" }, }; const size_t hw_compat_7_1_len = G_N_ELEMENTS(hw_compat_7_1); From patchwork Mon Jan 30 20:19:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121775 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 8A861C54EAA for ; Mon, 30 Jan 2023 20:27:28 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacg-0002J6-EF; Mon, 30 Jan 2023 15:19:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaca-0002HF-JF for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:23 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacY-0006rj-R8 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109958; 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=LB98aNlG5vR9wuhrC4m7cx7P3QS/+WwtJNeC3Few8bE=; b=Hafk66yzu99nhTafJCjPMGiZmtx/5D4xrTvCIZQY24VEOokeyoW7FoLXhCYzDa6ZOr0Sk+ 9dB2PJkczJDWZ7d5J56jtNPh4QmuMIj3qtL3wIU9sStUf46qgjrxDNfiNN14XkpW5cJ9X+ kUmE6Iwe59w++Wa9LhHB4GNA4F926/U= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-313-LXUV-DNMN1W8zDwCz3Bhhw-1; Mon, 30 Jan 2023 15:19:16 -0500 X-MC-Unique: LXUV-DNMN1W8zDwCz3Bhhw-1 Received: by mail-ed1-f71.google.com with SMTP id t26-20020aa7d71a000000b004a244cc7ee8so2815493edq.2 for ; Mon, 30 Jan 2023 12:19:16 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=LB98aNlG5vR9wuhrC4m7cx7P3QS/+WwtJNeC3Few8bE=; b=hc4632n7uTapgFNqpUgehRTvN7tlF6tDx6SG+pa2OS22CNpCXgYQeLmISom5RTOT8B l67muYi7U+7KGQDic6rCuNf8PhzrFuj1hf5FmBr1Jci/yQPOIK/zP6imsgtPCJ/8pdHs p4pUPaKTTSFoBAF6eZcNDas91ODvXVMvyvYuy/yX9E4KVbAsbRbhFUM9xnBxQqFWsqnK AyxfHYvHlWBlY4QGGHtd/bLO76jMv7+I00ysoxRa0WQI3SZFmIj9RmlzfMtTgrOnJ2pm YBqlV4vEiW0LxWG4hXaYF0NqUwtYU8+Mv+oyQf+k2eTQQDaKkfKVdMGWvnI4N7zX4HCH z0ug== X-Gm-Message-State: AFqh2kocNlgFGFJJT8GMoLZncqxiWA6ZrCZd0g0ZNwzlCYb8wxP9GPQl TM2FsZgqSa60DxHKrEWkP+8APqwU/nybCH2JDQUTXvjQFs4Dnl/rYCHvCAazUH8paKwSmeMXMXi CH+DOK9+Rmw2msLddCETs5XNgdIM3WxrUssN+GXOnijxFHpdUdzzxmZOTaLFO X-Received: by 2002:a17:907:b17:b0:873:699f:e87c with SMTP id h23-20020a1709070b1700b00873699fe87cmr51921866ejl.71.1675109954844; Mon, 30 Jan 2023 12:19:14 -0800 (PST) X-Google-Smtp-Source: AMrXdXu2/eKWS++r/HYwWl8O8hQ7/yUjz/D07iL5C6jLQEiMIwz/iCMiu4vIztmNCgZEg/3LkmOVHA== X-Received: by 2002:a17:907:b17:b0:873:699f:e87c with SMTP id h23-20020a1709070b1700b00873699fe87cmr51921845ejl.71.1675109954531; Mon, 30 Jan 2023 12:19:14 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id c7-20020a170906d18700b00871f66bf354sm7241011ejz.204.2023.01.30.12.19.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:14 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:11 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Peter Xu , Jason Wang , Paolo Bonzini , David Hildenbrand , Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , Marcel Apfelbaum Subject: [PULL 09/56] intel-iommu: Document iova_tree Message-ID: <20230130201810.11518-10-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Peter Xu It seems not super clear on when iova_tree is used, and why. Add a rich comment above iova_tree to track why we needed the iova_tree, and when we need it. Also comment for the map/unmap messages, on how they're used and implications (e.g. unmap can be larger than the mapped ranges). Suggested-by: Jason Wang Signed-off-by: Peter Xu Message-Id: <20230109193727.1360190-1-peterx@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/exec/memory.h | 26 ++++++++++++++++++++++++ include/hw/i386/intel_iommu.h | 38 ++++++++++++++++++++++++++++++++++- 2 files changed, 63 insertions(+), 1 deletion(-) diff --git a/include/exec/memory.h b/include/exec/memory.h index c37ffdbcd1..2e602a2fad 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -129,6 +129,32 @@ struct IOMMUTLBEntry { /* * Bitmap for different IOMMUNotifier capabilities. Each notifier can * register with one or multiple IOMMU Notifier capability bit(s). + * + * Normally there're two use cases for the notifiers: + * + * (1) When the device needs accurate synchronizations of the vIOMMU page + * tables, it needs to register with both MAP|UNMAP notifies (which + * is defined as IOMMU_NOTIFIER_IOTLB_EVENTS below). + * + * Regarding to accurate synchronization, it's when the notified + * device maintains a shadow page table and must be notified on each + * guest MAP (page table entry creation) and UNMAP (invalidation) + * events (e.g. VFIO). Both notifications must be accurate so that + * the shadow page table is fully in sync with the guest view. + * + * (2) When the device doesn't need accurate synchronizations of the + * vIOMMU page tables, it needs to register only with UNMAP or + * DEVIOTLB_UNMAP notifies. + * + * It's when the device maintains a cache of IOMMU translations + * (IOTLB) and is able to fill that cache by requesting translations + * from the vIOMMU through a protocol similar to ATS (Address + * Translation Service). + * + * Note that in this mode the vIOMMU will not maintain a shadowed + * page table for the address space, and the UNMAP messages can cover + * more than the pages that used to get mapped. The IOMMU notifiee + * should be able to take care of over-sized invalidations. */ typedef enum { IOMMU_NOTIFIER_NONE = 0, diff --git a/include/hw/i386/intel_iommu.h b/include/hw/i386/intel_iommu.h index 46d973e629..89dcbc5e1e 100644 --- a/include/hw/i386/intel_iommu.h +++ b/include/hw/i386/intel_iommu.h @@ -109,7 +109,43 @@ struct VTDAddressSpace { QLIST_ENTRY(VTDAddressSpace) next; /* Superset of notifier flags that this address space has */ IOMMUNotifierFlag notifier_flags; - IOVATree *iova_tree; /* Traces mapped IOVA ranges */ + /* + * @iova_tree traces mapped IOVA ranges. + * + * The tree is not needed if no MAP notifier is registered with current + * VTD address space, because all guest invalidate commands can be + * directly passed to the IOMMU UNMAP notifiers without any further + * reshuffling. + * + * The tree OTOH is required for MAP typed iommu notifiers for a few + * reasons. + * + * Firstly, there's no way to identify whether an PSI (Page Selective + * Invalidations) or DSI (Domain Selective Invalidations) event is an + * MAP or UNMAP event within the message itself. Without having prior + * knowledge of existing state vIOMMU doesn't know whether it should + * notify MAP or UNMAP for a PSI message it received when caching mode + * is enabled (for MAP notifiers). + * + * Secondly, PSI messages received from guest driver can be enlarged in + * range, covers but not limited to what the guest driver wanted to + * invalidate. When the range to invalidates gets bigger than the + * limit of a PSI message, it can even become a DSI which will + * invalidate the whole domain. If the vIOMMU directly notifies the + * registered device with the unmodified range, it may confuse the + * registered drivers (e.g. vfio-pci) on either: + * + * (1) Trying to map the same region more than once (for + * VFIO_IOMMU_MAP_DMA, -EEXIST will trigger), or, + * + * (2) Trying to UNMAP a range that is still partially mapped. + * + * That accuracy is not required for UNMAP-only notifiers, but it is a + * must-to-have for notifiers registered with MAP events, because the + * vIOMMU needs to make sure the shadow page table is always in sync + * with the guest IOMMU pgtables for a device. + */ + IOVATree *iova_tree; }; struct VTDIOTLBEntry { From patchwork Mon Jan 30 20:19:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121763 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 27B8FC636CD for ; Mon, 30 Jan 2023 20:24:00 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadf-0004Nz-Vx; Mon, 30 Jan 2023 15:20:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadT-0003RB-Gq for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:16 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadQ-00076S-BV for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:15 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110010; 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=UAwSvHSOl+UoCWd5gVq+4zPfPKuJ/FxuHvkI36xoePk=; b=hyejNH1MkH3I4gctVQzmEgL3cR1k79yUOInzoIJtY4yGuY91FdZYVVZvpXO15QjlqSJQ3R gFHizw2PQKCFhPZwAOyJrTyh4Nf3jDktKEwLEUbHcVVlGKwmRyQA620/XPZ/VcDJcybYNn 5o6T47CAIREZ/cQ0HoIcmiW1YBjN8CU= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-299-ulUkELp9My-vNQlZ2ATScQ-1; Mon, 30 Jan 2023 15:20:08 -0500 X-MC-Unique: ulUkELp9My-vNQlZ2ATScQ-1 Received: by mail-ed1-f72.google.com with SMTP id t26-20020aa7d71a000000b004a244cc7ee8so2816827edq.2 for ; Mon, 30 Jan 2023 12:20:08 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=UAwSvHSOl+UoCWd5gVq+4zPfPKuJ/FxuHvkI36xoePk=; b=MaOpSVcs7Iegi+U08cDcyEevJPe0zIeNa67DIavt9rraD14Yc0og32a5RQBZStX30I CPyfcs/eE3O4uHtlBevTTeDEr1x6ordgVC/pIF3xqh+vXPOCyV1+LypCGHqbZomvbTRN jJFcUbF4vUZQ6UrUQRRwAEennpWDoP3Bl+qPUEA/PcYSCXJjG2wO4xVfkrCC/Fk9LUJI 2JTNdyYCCGAcN7VUMGxkcVnTpU90TsnSvimScsOGzjpqflCpGSUIJ+fYaNxsjcrPUEje fOMKoyW6r1nGo+945UQa5BDp0mQc4/1NW4V+Lrhlb8gqBwN4/L7CUgWYbPfSsDF0StVo BQrQ== X-Gm-Message-State: AO0yUKVK3AZKogE6NnQUd+josIT5oUAgzcRyruEFgpVS8V1QnWY5IHjH wFNF7WLbf1UWWeU2jiK8+St8cyaR/G2aK/Z82sgCKaetuG0PdVwW5FfEQBWONFKE7HhC41GCeyj 9+TuiSOuIC2t6HfGxno525LDd42rG2zmJcgs99jmntkGa0BW41ykIrcTac25L X-Received: by 2002:a17:906:b7ca:b0:878:814d:bc99 with SMTP id fy10-20020a170906b7ca00b00878814dbc99mr16014110ejb.66.1675110004022; Mon, 30 Jan 2023 12:20:04 -0800 (PST) X-Google-Smtp-Source: AK7set8WEbaok4QRm+tfQUwP43WlgpJvFsOb3kX+Eo92Am5pQD1LgLnseQotKea5csNMeOlgTHprHg== X-Received: by 2002:a17:906:b7ca:b0:878:814d:bc99 with SMTP id fy10-20020a170906b7ca00b00878814dbc99mr16014075ejb.66.1675110003753; Mon, 30 Jan 2023 12:20:03 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id gn19-20020a1709070d1300b008512e1379dbsm7505598ejc.171.2023.01.30.12.20.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:03 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:59 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , "Jason A. Donenfeld" , x86@kernel.org, Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , "H . Peter Anvin" , Borislav Petkov , Eric Biggers , Eric Biggers , Mathias Krause , Sergio Lopez , Paolo Bonzini , Richard Henderson , Eduardo Habkost , Marcel Apfelbaum , Gerd Hoffmann Subject: [PULL 10/56] x86: don't let decompressed kernel image clobber setup_data Message-ID: <20230130201810.11518-11-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: "Jason A. Donenfeld" The setup_data links are appended to the compressed kernel image. Since the kernel image is typically loaded at 0x100000, setup_data lives at `0x100000 + compressed_size`, which does not get relocated during the kernel's boot process. The kernel typically decompresses the image starting at address 0x1000000 (note: there's one more zero there than the compressed image above). This usually is fine for most kernels. However, if the compressed image is actually quite large, then setup_data will live at a `0x100000 + compressed_size` that extends into the decompressed zone at 0x1000000. In other words, if compressed_size is larger than `0x1000000 - 0x100000`, then the decompression step will clobber setup_data, resulting in crashes. Visually, what happens now is that QEMU appends setup_data to the kernel image: kernel image setup_data |--------------------------||----------------| 0x100000 0x100000+l1 0x100000+l1+l2 The problem is that this decompresses to 0x1000000 (one more zero). So if l1 is > (0x1000000-0x100000), then this winds up looking like: kernel image setup_data |--------------------------||----------------| 0x100000 0x100000+l1 0x100000+l1+l2 d e c o m p r e s s e d k e r n e l |-------------------------------------------------------------| 0x1000000 0x1000000+l3 The decompressed kernel seemingly overwriting the compressed kernel image isn't a problem, because that gets relocated to a higher address early on in the boot process, at the end of startup_64. setup_data, however, stays in the same place, since those links are self referential and nothing fixes them up. So the decompressed kernel clobbers it. Fix this by appending setup_data to the cmdline blob rather than the kernel image blob, which remains at a lower address that won't get clobbered. This could have been done by overwriting the initrd blob instead, but that poses big difficulties, such as no longer being able to use memory mapped files for initrd, hurting performance, and, more importantly, the initrd address calculation is hard coded in qboot, and it always grows down rather than up, which means lots of brittle semantics would have to be changed around, incurring more complexity. In contrast, using cmdline is simple and doesn't interfere with anything. The microvm machine has a gross hack where it fiddles with fw_cfg data after the fact. So this hack is updated to account for this appending, by reserving some bytes. Fixup-by: Michael S. Tsirkin Cc: x86@kernel.org Cc: Philippe Mathieu-Daudé Cc: H. Peter Anvin Cc: Borislav Petkov Cc: Eric Biggers Signed-off-by: Jason A. Donenfeld Message-Id: <20221230220725.618763-1-Jason@zx2c4.com> Message-ID: <20230128061015-mutt-send-email-mst@kernel.org> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Tested-by: Eric Biggers Tested-by: Mathias Krause --- include/hw/i386/microvm.h | 5 ++-- include/hw/nvram/fw_cfg.h | 9 +++++++ hw/i386/microvm.c | 15 +++++++---- hw/i386/x86.c | 52 +++++++++++++++++++++------------------ hw/nvram/fw_cfg.c | 9 +++++++ 5 files changed, 59 insertions(+), 31 deletions(-) diff --git a/include/hw/i386/microvm.h b/include/hw/i386/microvm.h index fad97a891d..e8af61f194 100644 --- a/include/hw/i386/microvm.h +++ b/include/hw/i386/microvm.h @@ -50,8 +50,9 @@ */ /* Platform virtio definitions */ -#define VIRTIO_MMIO_BASE 0xfeb00000 -#define VIRTIO_CMDLINE_MAXLEN 64 +#define VIRTIO_MMIO_BASE 0xfeb00000 +#define VIRTIO_CMDLINE_MAXLEN 64 +#define VIRTIO_CMDLINE_TOTAL_MAX_LEN ((VIRTIO_CMDLINE_MAXLEN + 1) * 16) #define GED_MMIO_BASE 0xfea00000 #define GED_MMIO_BASE_MEMHP (GED_MMIO_BASE + 0x100) diff --git a/include/hw/nvram/fw_cfg.h b/include/hw/nvram/fw_cfg.h index 2e503904dc..990dcdbb2e 100644 --- a/include/hw/nvram/fw_cfg.h +++ b/include/hw/nvram/fw_cfg.h @@ -139,6 +139,15 @@ void fw_cfg_add_bytes_callback(FWCfgState *s, uint16_t key, void *data, size_t len, bool read_only); +/** + * fw_cfg_read_bytes_ptr: + * @s: fw_cfg device being modified + * @key: selector key value for new fw_cfg item + * + * Reads an existing fw_cfg data pointer. + */ +void *fw_cfg_read_bytes_ptr(FWCfgState *s, uint16_t key); + /** * fw_cfg_add_string: * @s: fw_cfg device being modified diff --git a/hw/i386/microvm.c b/hw/i386/microvm.c index 170a331e3f..29f30dd6d3 100644 --- a/hw/i386/microvm.c +++ b/hw/i386/microvm.c @@ -378,7 +378,8 @@ static void microvm_fix_kernel_cmdline(MachineState *machine) MicrovmMachineState *mms = MICROVM_MACHINE(machine); BusState *bus; BusChild *kid; - char *cmdline; + char *cmdline, *existing_cmdline; + size_t len; /* * Find MMIO transports with attached devices, and add them to the kernel @@ -387,7 +388,8 @@ static void microvm_fix_kernel_cmdline(MachineState *machine) * Yes, this is a hack, but one that heavily improves the UX without * introducing any significant issues. */ - cmdline = g_strdup(machine->kernel_cmdline); + existing_cmdline = fw_cfg_read_bytes_ptr(x86ms->fw_cfg, FW_CFG_CMDLINE_DATA); + cmdline = g_strdup(existing_cmdline); bus = sysbus_get_default(); QTAILQ_FOREACH(kid, &bus->children, sibling) { DeviceState *dev = kid->child; @@ -411,9 +413,12 @@ static void microvm_fix_kernel_cmdline(MachineState *machine) } } - fw_cfg_modify_i32(x86ms->fw_cfg, FW_CFG_CMDLINE_SIZE, strlen(cmdline) + 1); - fw_cfg_modify_string(x86ms->fw_cfg, FW_CFG_CMDLINE_DATA, cmdline); - + len = strlen(cmdline); + if (len > VIRTIO_CMDLINE_TOTAL_MAX_LEN + strlen(existing_cmdline)) { + fprintf(stderr, "qemu: virtio mmio cmdline too large, skipping\n"); + } else { + memcpy(existing_cmdline, cmdline, len + 1); + } g_free(cmdline); } diff --git a/hw/i386/x86.c b/hw/i386/x86.c index 78cc131926..eaff4227bd 100644 --- a/hw/i386/x86.c +++ b/hw/i386/x86.c @@ -50,6 +50,7 @@ #include "hw/intc/i8259.h" #include "hw/rtc/mc146818rtc.h" #include "target/i386/sev.h" +#include "hw/i386/microvm.h" #include "hw/acpi/cpu_hotplug.h" #include "hw/irq.h" @@ -813,12 +814,18 @@ void x86_load_linux(X86MachineState *x86ms, const char *kernel_filename = machine->kernel_filename; const char *initrd_filename = machine->initrd_filename; const char *dtb_filename = machine->dtb; - const char *kernel_cmdline = machine->kernel_cmdline; + char *kernel_cmdline; SevKernelLoaderContext sev_load_ctx = {}; enum { RNG_SEED_LENGTH = 32 }; - /* Align to 16 bytes as a paranoia measure */ - cmdline_size = (strlen(kernel_cmdline) + 16) & ~15; + /* + * Add the NUL terminator, some padding for the microvm cmdline fiddling + * hack, and then align to 16 bytes as a paranoia measure + */ + cmdline_size = (strlen(machine->kernel_cmdline) + 1 + + VIRTIO_CMDLINE_TOTAL_MAX_LEN + 16) & ~15; + /* Make a copy, since we might append arbitrary bytes to it later. */ + kernel_cmdline = g_strndup(machine->kernel_cmdline, cmdline_size); /* load the kernel header */ f = fopen(kernel_filename, "rb"); @@ -959,12 +966,6 @@ void x86_load_linux(X86MachineState *x86ms, initrd_max = x86ms->below_4g_mem_size - acpi_data_size - 1; } - fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_ADDR, cmdline_addr); - fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_SIZE, strlen(kernel_cmdline) + 1); - fw_cfg_add_string(fw_cfg, FW_CFG_CMDLINE_DATA, kernel_cmdline); - sev_load_ctx.cmdline_data = (char *)kernel_cmdline; - sev_load_ctx.cmdline_size = strlen(kernel_cmdline) + 1; - if (protocol >= 0x202) { stl_p(header + 0x228, cmdline_addr); } else { @@ -1091,27 +1092,24 @@ void x86_load_linux(X86MachineState *x86ms, exit(1); } - setup_data_offset = QEMU_ALIGN_UP(kernel_size, 16); - kernel_size = setup_data_offset + sizeof(SetupData) + dtb_size; - kernel = g_realloc(kernel, kernel_size); - - - setup_data = (SetupData *)(kernel + setup_data_offset); + setup_data_offset = cmdline_size; + cmdline_size += sizeof(SetupData) + dtb_size; + kernel_cmdline = g_realloc(kernel_cmdline, cmdline_size); + setup_data = (void *)kernel_cmdline + setup_data_offset; setup_data->next = cpu_to_le64(first_setup_data); - first_setup_data = prot_addr + setup_data_offset; + first_setup_data = cmdline_addr + setup_data_offset; setup_data->type = cpu_to_le32(SETUP_DTB); setup_data->len = cpu_to_le32(dtb_size); - load_image_size(dtb_filename, setup_data->data, dtb_size); } - if (!legacy_no_rng_seed) { - setup_data_offset = QEMU_ALIGN_UP(kernel_size, 16); - kernel_size = setup_data_offset + sizeof(SetupData) + RNG_SEED_LENGTH; - kernel = g_realloc(kernel, kernel_size); - setup_data = (SetupData *)(kernel + setup_data_offset); + if (!legacy_no_rng_seed && protocol >= 0x209) { + setup_data_offset = cmdline_size; + cmdline_size += sizeof(SetupData) + RNG_SEED_LENGTH; + kernel_cmdline = g_realloc(kernel_cmdline, cmdline_size); + setup_data = (void *)kernel_cmdline + setup_data_offset; setup_data->next = cpu_to_le64(first_setup_data); - first_setup_data = prot_addr + setup_data_offset; + first_setup_data = cmdline_addr + setup_data_offset; setup_data->type = cpu_to_le32(SETUP_RNG_SEED); setup_data->len = cpu_to_le32(RNG_SEED_LENGTH); qemu_guest_getrandom_nofail(setup_data->data, RNG_SEED_LENGTH); @@ -1122,6 +1120,12 @@ void x86_load_linux(X86MachineState *x86ms, fw_cfg_add_bytes(fw_cfg, FW_CFG_KERNEL_DATA, kernel, kernel_size); } + fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_ADDR, cmdline_addr); + fw_cfg_add_i32(fw_cfg, FW_CFG_CMDLINE_SIZE, cmdline_size); + fw_cfg_add_bytes(fw_cfg, FW_CFG_CMDLINE_DATA, kernel_cmdline, cmdline_size); + sev_load_ctx.cmdline_data = (char *)kernel_cmdline; + sev_load_ctx.cmdline_size = cmdline_size; + fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_ADDR, prot_addr); fw_cfg_add_i32(fw_cfg, FW_CFG_KERNEL_SIZE, kernel_size); sev_load_ctx.kernel_data = (char *)kernel; @@ -1134,7 +1138,7 @@ void x86_load_linux(X86MachineState *x86ms, * kernel on the other side of the fw_cfg interface matches the hash of the * file the user passed in. */ - if (!sev_enabled()) { + if (!sev_enabled() && first_setup_data) { SetupDataFixup *fixup = g_malloc(sizeof(*fixup)); memcpy(setup, header, MIN(sizeof(header), setup_size)); diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c index a00881bc64..432754eda4 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -741,6 +741,15 @@ void fw_cfg_add_bytes(FWCfgState *s, uint16_t key, void *data, size_t len) fw_cfg_add_bytes_callback(s, key, NULL, NULL, NULL, data, len, true); } +void *fw_cfg_read_bytes_ptr(FWCfgState *s, uint16_t key) +{ + int arch = !!(key & FW_CFG_ARCH_LOCAL); + + key &= FW_CFG_ENTRY_MASK; + assert(key < fw_cfg_max_entry(s)); + return s->entries[arch][key].data; +} + void fw_cfg_add_string(FWCfgState *s, uint16_t key, const char *value) { size_t sz = strlen(value) + 1; From patchwork Mon Jan 30 20:20:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121752 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 8862CC54EAA for ; Mon, 30 Jan 2023 20:22:31 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMae2-0005I8-BR; Mon, 30 Jan 2023 15:20:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadU-0003UJ-Sv for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:17 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadS-00077Q-CF for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:15 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110013; 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=Eu0hV6kZQ0nIbCmro5EDIhlPYBwmSBFdi8AyK9fUVtU=; b=TJYDf4fx7/BOh8DBubGqoIt4hPtbGLS9u1F3hfbtWix0n5Ub5TfAjWGinIm/JjaC5WR7y5 xS8U0IhaKagiJ8ysyWPgPigwe8y2wV/tMAso7wJfJAsiAO7l6Ir0ocxSThB0SkV00QK5Fh WgGi7x8AcQa7PGM83f+4GU8guwgti3s= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-592-QFDVLjzoOUK7c7vPL-VKOg-1; Mon, 30 Jan 2023 15:20:12 -0500 X-MC-Unique: QFDVLjzoOUK7c7vPL-VKOg-1 Received: by mail-ed1-f70.google.com with SMTP id bq13-20020a056402214d00b004a25d8d7593so834696edb.0 for ; Mon, 30 Jan 2023 12:20:11 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Eu0hV6kZQ0nIbCmro5EDIhlPYBwmSBFdi8AyK9fUVtU=; b=G5h+IezOSpNDA8Hh8QqHCDLL2KRd2WSU1p+GKFTRYEB58kJgjpNcVElAmZ0X7QfOpM vCjSjgwWz8LX07Ix0GEfSNEJ5VtPzsGw3zxa45rXqKUQrQ1N1PJyOnr+skUNw76SyCDJ d55YUskbDRxmdBg49VZE4MYw4XWP6uzaXYUJI06/7PE5y3afAYT4iWZW4zbdWGZjbDQ/ 5vBx5GqPHl5MQiHWmFnqR0JD5+iym1W8+JoPAOwJJxjDRWJLyCffd1a8cR8FWKN1sb+D NrK7iUDXcrXRP+yZKHMT3FO9znjQwrGFrFrSBYQYYpU97Qx7aKhhAddytMIhM9Iketjp 8kwQ== X-Gm-Message-State: AFqh2kr8mwSfxyDzrPxnRjpTQe7CRZRF8L/VoO+DBLCHT4i1MLwmvbS3 lg7sYkoyKL5fvvfHyI7NrygdnBtemXeExQ3iSzHvySN8Mdai8Wcxb/+QteNH6JmLTF6ksX+DDnn +oP+C8CFvt4w0bLJXcXSRJrYSeUGwllh38+aR8YOnZrN2k61cbV8R/7E4CNWi X-Received: by 2002:a05:6402:43c5:b0:499:b5fc:e56f with SMTP id p5-20020a05640243c500b00499b5fce56fmr59559570edc.19.1675110010418; Mon, 30 Jan 2023 12:20:10 -0800 (PST) X-Google-Smtp-Source: AMrXdXvt5kVMdlXceeX5vhX6q7XBKrFk8EEn2d+vasA7afIBo7olJ4Wb/5CHn9K0tNoTPwa+flt/4w== X-Received: by 2002:a05:6402:43c5:b0:499:b5fc:e56f with SMTP id p5-20020a05640243c500b00499b5fce56fmr59559545edc.19.1675110010146; Mon, 30 Jan 2023 12:20:10 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id c10-20020a056402100a00b00483dd234ac6sm7266260edu.96.2023.01.30.12.20.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:09 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:06 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Thomas Huth , Laurent Vivier , Paolo Bonzini Subject: [PULL 11/56] tests: qtest: print device_add error before failing test Message-ID: <20230130201810.11518-12-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-2-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/libqtest.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c index 6b2216cb20..d658222a19 100644 --- a/tests/qtest/libqtest.c +++ b/tests/qtest/libqtest.c @@ -1435,6 +1435,10 @@ void qtest_qmp_device_add_qdict(QTestState *qts, const char *drv, resp = qtest_qmp(qts, "{'execute': 'device_add', 'arguments': %p}", args); g_assert(resp); g_assert(!qdict_haskey(resp, "event")); /* We don't expect any events */ + if (qdict_haskey(resp, "error")) { + fprintf(stderr, "error: %s\n", + qdict_get_str(qdict_get_qdict(resp, "error"), "desc")); + } g_assert(!qdict_haskey(resp, "error")); qobject_unref(resp); } From patchwork Mon Jan 30 20:19:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121742 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 7063BC636CD for ; Mon, 30 Jan 2023 20:20:29 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacx-0002Oy-G6; Mon, 30 Jan 2023 15:19:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMack-0002K9-Oe for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:35 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacj-0006s8-E9 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109968; 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=JLoKCDlkuDoYykNnQSuCp1f9UhyqQKcBeBFBNwxf4ik=; b=C+rHG1HETKYd1h+rK1HOweyhPFT/BVC+ZKqi6HwP4DCTfBW73lcXwggoAMfWBBe2T1STUo OFk2xcejHAOJP2nm97pM8xIFEnC9tQZOB5H1RVoyG7OForWWeLxh5guAXRjHnEBmn3OcMU XzgKLsQv2qmOeWR2Crfv7eYSj021Ghg= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-673-5uHcXql-NWSOjwVvEj5oWw-1; Mon, 30 Jan 2023 15:19:27 -0500 X-MC-Unique: 5uHcXql-NWSOjwVvEj5oWw-1 Received: by mail-ed1-f72.google.com with SMTP id w16-20020a056402129000b004a1f1a2e79dso6793093edv.23 for ; Mon, 30 Jan 2023 12:19:27 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=JLoKCDlkuDoYykNnQSuCp1f9UhyqQKcBeBFBNwxf4ik=; b=DczElZU94qUE0gu4G9C+UxBXWsHZc44JznzeqoHBocNrNpJYlk1EsrvDVLUlPN+KQv x8Q/9f7yXMxUe46zjvB70s5Uu0W7XyDUmQNi9Kiekn7teeurHkuidYIinz5B8UwxWKsN juh9DH4oS8syjgI5E+Z9mp5MpMDR/jIJbNnPjYYuZovayTBFlI72cvvLcQI46hFUXww4 YVzhi2NXj6OnGr8NJDIgp7JVfC5PfVDAKQUkmv7qG7UrG7IzpR79E9P1yBbuhuNuszMr QA00rd3SvH1LGAnM1YRetwTBAaV9qKTsOxkQFH/zdUQBKjmIDaPFIgrlhTFZbrXYd7rg W/Ew== X-Gm-Message-State: AO0yUKXiSFObMDhNEbSD7c0BPjgBUR6jLF8fV61+NSjtkDfx919XlzBR mmNTQ6ZiUXA4gg6H7urfX2GKm7tZFSWFukQQ+o3T/5+BQYLWHjAny0RPDcgs7TD6M1z8Mx3meYO nsdO0TnUPyyTSa8yh4Q0J0nag5PKyOJMQeHFDJ+lh/s5j455oWFNlWyJCQvXa X-Received: by 2002:a17:906:c2d3:b0:87b:3d29:2982 with SMTP id ch19-20020a170906c2d300b0087b3d292982mr13698445ejb.11.1675109965491; Mon, 30 Jan 2023 12:19:25 -0800 (PST) X-Google-Smtp-Source: AK7set9t6e86aXUmeo9vELatNmVIZHZil98varbuaLwM/jVY880lft9DP8G6hxOUUjBCDkFuPQKwJA== X-Received: by 2002:a17:906:c2d3:b0:87b:3d29:2982 with SMTP id ch19-20020a170906c2d300b0087b3d292982mr13698429ejb.11.1675109965187; Mon, 30 Jan 2023 12:19:25 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id 11-20020a170906318b00b0088a161c232esm710690ejy.172.2023.01.30.12.19.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:24 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:22 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 12/56] tests: acpi: cleanup arguments to make them more readable Message-ID: <20230130201810.11518-13-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov no functional change Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-3-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 8608408213..08b8aee76b 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -951,8 +951,7 @@ static void test_acpi_q35_tcg_bridge(void) data.variant = ".bridge"; data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); - test_acpi_one("-device pci-bridge,chassis_nr=1", - &data); + test_acpi_one("-device pci-bridge,chassis_nr=1", &data); free_test_data(&data); } @@ -962,14 +961,12 @@ static void test_acpi_q35_multif_bridge(void) .machine = MACHINE_Q35, .variant = ".multi-bridge", }; - test_acpi_one("-device pcie-root-port,id=pcie-root-port-0," - "multifunction=on," - "port=0x0,chassis=1,addr=0x2,bus=pcie.0 " - "-device pcie-root-port,id=pcie-root-port-1," - "port=0x1,chassis=2,addr=0x3.0x1,bus=pcie.0 " - "-device virtio-balloon,id=balloon0," - "bus=pcie.0,addr=0x4.0x2", - &data); + test_acpi_one( + " -device virtio-balloon,id=balloon0,addr=0x4.0x2" + " -device pcie-root-port,id=rp0,multifunction=on," + "port=0x0,chassis=1,addr=0x2" + " -device pcie-root-port,id=rp1,port=0x1,chassis=2,addr=0x3.0x1", + &data); free_test_data(&data); } From patchwork Mon Jan 30 20:19:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121739 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 72C0BC636D3 for ; Mon, 30 Jan 2023 20:20:02 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMacx-0002Ou-Fn; Mon, 30 Jan 2023 15:19:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacp-0002NM-0L for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:38 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacn-0006sM-GB for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109972; 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=nDSIlJyBLrtXOgfJXXEQveCbeBC55haTRswoh2r9x2Q=; b=JtyORxMFNiV+1cvnoAwJfjoT4FBmMpu6RlZ7YSTevLXWFCDkqiC/M8fibtLlStUzD7OGHu d12Wt/mIQtoao2caOFaR5zkBdZth7M+ndTykBk0g5i+ia7ewShLmlyVtIAg0/2IcXzlxO3 grvW4STvKnEdJkDbKcE8SIz/iJ/2+3E= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-47-jChwPK7xNJ-ZYPhnFRtceg-1; Mon, 30 Jan 2023 15:19:30 -0500 X-MC-Unique: jChwPK7xNJ-ZYPhnFRtceg-1 Received: by mail-ej1-f72.google.com with SMTP id du14-20020a17090772ce00b0087108bbcfa6so8115277ejc.7 for ; Mon, 30 Jan 2023 12:19:30 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=nDSIlJyBLrtXOgfJXXEQveCbeBC55haTRswoh2r9x2Q=; b=fEu/x2Zuo7WzH6fNM/KLtWgB3qndRGqPiO/qLVD3zNGtFSEKk41DSgWCdmifPZdOpq WUnpv1vUGL5zU5t25F7nPhZVn0hoKXhOXpf+FcyTuWhxTS4C0ENi5iJnEWe7toxtKJ7b JvcFMlVXxtt37ruEUS8qoky5G84pgnBt4/7vgv5AvDhmD6kXox+EP7mC+nItDXlkmrO5 h62RWS7jMHVEfPZ3/v5W8A1Of9eDS8kzviLPfGgqHyPwAOJh7nPfVi3cYy0YG0K33FZR BqO5SHU7m7HOPgQuVRxSId7yg3wzESQkKJYeMwhIfXmGJlVKfb9Y45zD2H8MvrP7IN7R 4GIw== X-Gm-Message-State: AFqh2kqESyIxgGRZifqO9qGQDAEfXp2repJoR3cIiSahnbi6qD0s9ZN6 RWetp7lD3q0B8loxF2gjgXHjztGFYd5U+dzeZcYY/wZVGiOGmu3UOC+jXKcjWBWMorvNIhXGExQ HAXIRN+z1F5PfHYX5Q9/Gfu7jB2H6QuWVgPolIKkPjgX09h7IDNjPuiXOgBTe X-Received: by 2002:a17:907:7e9c:b0:86e:2c11:9bca with SMTP id qb28-20020a1709077e9c00b0086e2c119bcamr72074463ejc.30.1675109968674; Mon, 30 Jan 2023 12:19:28 -0800 (PST) X-Google-Smtp-Source: AMrXdXvvsHjBGbVs7m6K56RiUBjQHoUKWs5ETdot71Q5pvdHOL5Oy9o+ZWFLk5D4AAkgFTyQlzWN5A== X-Received: by 2002:a17:907:7e9c:b0:86e:2c11:9bca with SMTP id qb28-20020a1709077e9c00b0086e2c119bcamr72074439ejc.30.1675109968339; Mon, 30 Jan 2023 12:19:28 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id hq15-20020a1709073f0f00b00770812e2394sm7341169ejc.160.2023.01.30.12.19.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:27 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:25 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 13/56] tests: acpi: whitelist DSDT blobs for tests that use pci-bridges Message-ID: <20230130201810.11518-14-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-4-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..2602a57c9b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,5 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/q35/DSDT.multi-bridge", +"tests/data/acpi/pc/DSDT.bridge", +"tests/data/acpi/pc/DSDT.roothp", +"tests/data/acpi/pc/DSDT.hpbridge", From patchwork Mon Jan 30 20:19:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121750 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 4DF33C636D6 for ; Mon, 30 Jan 2023 20:22:25 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadK-0003GM-UC; Mon, 30 Jan 2023 15:20:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacu-0002OO-6L for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:40 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacs-0006sX-Fr for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109976; 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=BFv4HMpAKNy2b/DeuNoIEFMDSgeBw7AfH4tNqKztItM=; b=gDKA93/JzTIqHol90Hoo88b68Q2CT0QVnlvpntpOJZrq+kE7u6T2H+FbHqVXUManE9MCIU Y8/baud+O8kbKhUPiijb5gqf9OEMkyY7Xhh5usLdWGYbplw4/+t+0dG5JrHrmcQtcIqP+Q lxX/1DrvAASOX0zefVLKiGm7cq4NCys= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-343-9RpOkZeFMBSHscPSQ5y6xA-1; Mon, 30 Jan 2023 15:19:34 -0500 X-MC-Unique: 9RpOkZeFMBSHscPSQ5y6xA-1 Received: by mail-ej1-f69.google.com with SMTP id du14-20020a17090772ce00b0087108bbcfa6so8115337ejc.7 for ; Mon, 30 Jan 2023 12:19:34 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=BFv4HMpAKNy2b/DeuNoIEFMDSgeBw7AfH4tNqKztItM=; b=yK8SQ19CHldpTmbuBMvnvWgPMUD0xLkFmqP2w3DQFWj1k4to1pKLO7wqQsJgQwnCog UqSoyE16GhNQyXDUu+PAwa0NklYxRtuZFCSDjnJYyrZ7l2pBNAvF00dZEJscV9MAeb8x 4DOjsd1B0os3twWWr3VMwpBDZo+wdVtX7CClevQ9XxLDiZMHPdenNjz1GHW5hxQWHTTB ekE06Ff1IQP57Pc8VZT0hkF2Dh1YJwFbL28qMnmEVM/dEipQ0hl580S/GZ7eES70FLz+ gzPg16vrMbvyZ2naeimxYWvfOnFysUw/kb+g4TmTeQ1ER4AkiTZ+R8mFLnkRN25xuqE7 66Pg== X-Gm-Message-State: AO0yUKWH4qWg/GBkm3qEGrjFSfWLQG1Wh+ONejlc1OGpC5kN9Xx6Sdhy Ggkp5Ipzlb9TTI3IhRw8C8W+OXFgJRwyPteiRhj7d/rXuZ3NuXLAFkLaRTgDDp+zTo6WDC4qxOZ CySksxtFRkGLLWmyvKUL+dcsDbZfTlnf5zaog7e5Kof+euNzLEH6TLWpmvxpl X-Received: by 2002:a17:907:6d8a:b0:87b:da70:974 with SMTP id sb10-20020a1709076d8a00b0087bda700974mr1005931ejc.58.1675109971510; Mon, 30 Jan 2023 12:19:31 -0800 (PST) X-Google-Smtp-Source: AK7set+e9yRj58c6MjoGYf9L73LvHybeRsUdDIlHn1WHwZAhGSnXTXx+i84eWiA5Yl9+ujh8csHbew== X-Received: by 2002:a17:907:6d8a:b0:87b:da70:974 with SMTP id sb10-20020a1709076d8a00b0087bda700974mr1005910ejc.58.1675109971295; Mon, 30 Jan 2023 12:19:31 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id x25-20020a170906711900b00878b89075adsm6597579ejj.51.2023.01.30.12.19.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:30 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:28 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 14/56] tests: acpi: extend pcihp with nested bridges Message-ID: <20230130201810.11518-15-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov add nested bridges/root-ports to pcihp tests, to make sure follow up patches don't break nested enumeration of bridges in DSDT. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-5-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 08b8aee76b..6a99b10384 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -863,7 +863,8 @@ static void test_acpi_piix4_tcg_bridge(void) data.variant = ".bridge"; data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); - test_acpi_one("-device pci-bridge,chassis_nr=1", &data); + test_acpi_one("-device pci-bridge,chassis_nr=1 " + "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data); free_test_data(&data); } @@ -877,7 +878,8 @@ static void test_acpi_piix4_no_root_hotplug(void) data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); test_acpi_one("-global PIIX4_PM.acpi-root-pci-hotplug=off " - "-device pci-bridge,chassis_nr=1", &data); + "-device pci-bridge,chassis_nr=1 " + "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data); free_test_data(&data); } @@ -891,7 +893,8 @@ static void test_acpi_piix4_no_bridge_hotplug(void) data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off " - "-device pci-bridge,chassis_nr=1", &data); + "-device pci-bridge,chassis_nr=1 " + "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data); free_test_data(&data); } @@ -965,8 +968,14 @@ static void test_acpi_q35_multif_bridge(void) " -device virtio-balloon,id=balloon0,addr=0x4.0x2" " -device pcie-root-port,id=rp0,multifunction=on," "port=0x0,chassis=1,addr=0x2" - " -device pcie-root-port,id=rp1,port=0x1,chassis=2,addr=0x3.0x1", + " -device pcie-root-port,id=rp1,port=0x1,chassis=2,addr=0x3.0x1" + " -device pcie-root-port,id=rp2,port=0x0,chassis=3,bus=rp1,addr=0.0" + " -device pci-bridge,bus=rp2,chassis_nr=4,id=br1" + " -device pcie-root-port,id=rphptgt1,port=0x0,chassis=5,addr=2.1" + " -device pcie-root-port,id=rphptgt2,port=0x0,chassis=6,addr=2.2" + " -device pcie-root-port,id=rphptgt3,port=0x0,chassis=7,addr=2.3", &data); + free_test_data(&data); } From patchwork Mon Jan 30 20:19:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121740 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 1FD03C54EAA for ; Mon, 30 Jan 2023 20:20:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadG-0003DC-7R; Mon, 30 Jan 2023 15:20:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacu-0002OP-Ds for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:40 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacs-0006sd-II for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109977; 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=Q0rxnnUB1aT3IYYdI+AWMX9bKPKZ+0StSob+APL/4bE=; b=X+Qq9duzEliOkldcg6JpsmS/vm0JJJqlDKSudWYhfR8OwX1t6Xx+uDcqXMUEOC1MTtPq64 ldThVoPCunkZ6WUs5YB5YINCSvBn40CptQsqskzr4N+F8G5ja2G3/H2qPjl/oxCvwSCSxt I39A28z0QbJwT2VdxZsIkVjALLz2gAg= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-219-2hyg1dGWP_-IWv1hpsMKKw-1; Mon, 30 Jan 2023 15:19:36 -0500 X-MC-Unique: 2hyg1dGWP_-IWv1hpsMKKw-1 Received: by mail-ed1-f69.google.com with SMTP id w3-20020a056402268300b00487e0d9b53fso9010050edd.10 for ; Mon, 30 Jan 2023 12:19:36 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Q0rxnnUB1aT3IYYdI+AWMX9bKPKZ+0StSob+APL/4bE=; b=m/suWcAonQXzYqnZ7ZdbUZrTJDwJLZTrVKqIpCKviqwaCqhW1TMyrxWBJQhX7H+6fM VHhC7bZ41VPubcK14OWoybNJwSZcMKqDfpPyZPzZYvsN4DYWYQow+HBkz5oDpZWD8c+3 hS6hyMBv+0zlb13MCBt4jUWlYwebWsXe052eee4ohD9D0YB6xxQMDH4Q9XM0+VLvGJWx iKFfzcRufNM6OBE3dtICXDL9m80Gd63Qj3Kbza6F3xZOl+J5smCH2Sq7AtrD6qv/wb0/ ZmeJN5fBL8mvvd9ScynUA+q+Y1x+aBR56DyjTaPgpEPO1ypmuzscADIYE1dOUkb/ab7/ ik5A== X-Gm-Message-State: AO0yUKU3sKVtAeER3TDV9xj/GAkSy5IOvJdhTNXBNNdrRuBC6SjE3rT9 /uYC59Ct9Ed53XE0gFPwnAHuThfe9+GKd9h6rZ2xNtMC4UMRF43qHGSos/n0oBqaRP/C8YunvAK ECgrtiFCQ/fBKK+bipIhdgT6dzMjtKhv3qhvawUYFh3jiJ9NUolASn2F5XPnh X-Received: by 2002:a17:906:2255:b0:883:3c7d:944e with SMTP id 21-20020a170906225500b008833c7d944emr841737ejr.9.1675109975177; Mon, 30 Jan 2023 12:19:35 -0800 (PST) X-Google-Smtp-Source: AK7set9yn/72iyiXyIW5L66/pPOg875XvCF5f051sDhM0EZc8fbRhoeZPhUfxWH1jkjoV7xRvmv73w== X-Received: by 2002:a17:906:2255:b0:883:3c7d:944e with SMTP id 21-20020a170906225500b008833c7d944emr841721ejr.9.1675109974920; Mon, 30 Jan 2023 12:19:34 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id kx8-20020a170907774800b0087221268e49sm2394795ejc.186.2023.01.30.12.19.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:34 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:31 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 15/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-16-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov add extra nested bridges/root ports to blobs so it would be posible to check how follow up patches would affect it. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-6-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 4 ---- tests/data/acpi/pc/DSDT.bridge | Bin 9532 -> 12608 bytes tests/data/acpi/pc/DSDT.roothp | Bin 6656 -> 9732 bytes tests/data/acpi/q35/DSDT.multi-bridge | Bin 8630 -> 12301 bytes 4 files changed, 4 deletions(-) diff --git a/tests/data/acpi/pc/DSDT.bridge b/tests/data/acpi/pc/DSDT.bridge index 75016fd4b72aae544658e51c06a2940da31c81da..d1b019754bb03fa7d815ab57304ddb2376a4c8af 100644 GIT binary patch delta 153 zcmdnvbs&k$CD$rprJH)ru3^cR4nzD~mD#0L(Zn ArT_o{ delta 67 zcmV-J0KEUeV!TQUL{mgmJS6}C0c5cXcMA-QmjPT~Q$k-5f|miajSFi60z$=;`wfP( Z2@k6a2p>>GPE-JJ0h8Y_7qd<#@(RdT6?p&v diff --git a/tests/data/acpi/pc/DSDT.roothp b/tests/data/acpi/pc/DSDT.roothp index 545512adfa0f9af81a7fafd353679f64f75e501e..14473ab4c91d68af88fff45e703f572c387d0af7 100644 GIT binary patch delta 137 zcmZoLY4PE533dr#QDb0W{I-#+oSUb431duruv5H1*J8%a-Q3?9nfsdGC3Zd z{G8XA)hXE3hjH@^-v8VZj81-`zAj;YApy>wp^Q+53m5ZdBfff0K}T7T2-5=Y>I_DP jwqOH;&F94rGBRpTo+v5D6{i<$U=bhS>=!b5y<{K&C!r|o delta 55 zcmZqiX)xh(33dr#kYZq9WZ%eD&dufjI3_;WDPF++@#bFc?~F{ohbFi4CT`B>+r&M2 LqN>E?&8mR_$Sx8n diff --git a/tests/data/acpi/q35/DSDT.multi-bridge b/tests/data/acpi/q35/DSDT.multi-bridge index 3dba4d84369f1f2850fbdc771072519d34f58072..f045438b4e794406316418074c6d319261bfcd9e 100644 GIT binary patch delta 2396 zcmZ|R&2rLU6b9fV1R4UAzqCLp368Fuu|nw&UD+1sqAFH{Zt66SE8MwtSb!{WTy({_ z?=3jacm?jc|p2))*Ftr_b@&8YT?Q@uhip} z#y=|!SlLK#^D1Nc+r7+mcuHu-@`LxOKKSLg590SpaAV?pe)@Cy$9-srAHY1HKl_1W zDjbv0^0<0Fe`@-zE?YP!%{ua54)x`=d-s9vl!C!&OF!!kPSFIAz?+!2P7i@?pxCkv zC6NyJd?85?NvO!Se2FF#lZdG#(voD7B$8B-j$C zC6SgilQfaEitI{@&BP{RD~YsZm}H1#RAf(DvP`l>vPvQ?IVL$GIThKLmQ^OJL{^nV zTJlWtMDi-qm6igN0+E7}NK27Pkw{TR4y2{Tq(r2oB+^o5QYKPXkt1nwm^efnC6Sgj zCTm32RODD%)|spmSyvKisW7P!si;U#TB=N{M5;<6Ej1=JA~hB1OUnk64I&##A}w_$ zbs}{Y8A!_}lT9Lmx)WnRT63On0QF0w)Y?63>*Dd!;x{7nT&O9 z;kR1ByQ}PEY#TUqc`#vsyB{SM4pCBo0k(8Xnm9zsAq=n$Q!>*QQ@?{zZZgim4Qb)S z=E)OQ?Zg>&!IsAvmhHwFw!ucl8P@H^8TP^U!Wk6$`^c<87UomBXPJNNma#l)lai!J==@zCu& gfw?XDw`=c0zt;^l9Bp?(g|D{bSMBiC^6j0`U&gLNmH+?% delta 97 zcmeB8*yhaT66_MPO_70t@xex}Mma8Ty_oo5r+5Kpy~)$%?8RI-gAEPhIpQ5%f_NAh wm>4*mf?a(WC%=`8pIoh=%54diVq{>Ryjr1sv!z}PBb!u!vtJ0q X-Patchwork-Id: 13121768 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 9B8A3C636CD for ; Mon, 30 Jan 2023 20:26:43 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadR-0003J0-Cz; Mon, 30 Jan 2023 15:20:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacz-0002ak-Gz for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:48 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacx-0006t7-Go for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:45 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109982; 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=WkluPFfN6Y0CEC5X/uT1vS+uu0muJwK9Vs7OtIF0wSo=; b=KvsofX9bo3j/5dkPE5SbdhLSNfIRRmPOF/a51ItLs1wEslJt3MqMw0EZipznCk/QrjOsvt UlmTLSmMEzRW4xzk4Vwbcpqie3IKflP7NXjXV0EjDiBZQIWoH0TTMApMbmoSVFcg/kTyKb CVy1xajpu/yzHpnd1aaaotWUGYp0bVs= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-454-5lbOwJDDODyMpjuVo8v27g-1; Mon, 30 Jan 2023 15:19:41 -0500 X-MC-Unique: 5lbOwJDDODyMpjuVo8v27g-1 Received: by mail-ed1-f70.google.com with SMTP id m23-20020aa7c2d7000000b004a230f52c81so3854388edp.11 for ; Mon, 30 Jan 2023 12:19:39 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=WkluPFfN6Y0CEC5X/uT1vS+uu0muJwK9Vs7OtIF0wSo=; b=QWTFMqKD1STkeAK+50YeF0QQD/UqFmyGuBfRzYoWqkWbPgpW3QF3ZfrzoaYeqdSFz9 n/iAY1KkE3+zV7uY1swWF4CY4uH22HihGknEbb5WhrievlMq8jLtgW3JqEK2dWitBPKH IWt1d2lcPPMmV7pqyGKryESwDOm2yUEmzQuza+q0FHcgCI8k0zj+wPDSy2axitBbMw5b Dx+fWnw0r29MyKEm7SP2zAgU7VD/q1MwC4Lh327A+8iTRT6mOYs6QpQL74TSG0H5JLo2 47KczzIAz3D78FmIcxt/DwKC0hcuMKXBfNfQCUNZwlmqZWpNLcSAOfiV2ww6bIdNIX99 BQ6g== X-Gm-Message-State: AO0yUKWjTN0MfEBMr+7124w3/MocEaW0QVvLafFf00rXYHrHvLoWXg8M wRU4yOKtCuAXJCMRa0B82jjR89Qu6m5NAI4xZOspTi+PPAeJLphIsO4EysN+ytD/5Abw0tyiCxx 6pK2TQBeYDQvfh5uNz0pMoifSuVrpZqV4EBWswyjE4Dqwj6XAKWz0YCENphts X-Received: by 2002:a05:6402:538d:b0:4a2:4abb:8d2b with SMTP id ew13-20020a056402538d00b004a24abb8d2bmr4482631edb.6.1675109978279; Mon, 30 Jan 2023 12:19:38 -0800 (PST) X-Google-Smtp-Source: AK7set+OUZoHRK6+ImiG2bH1+Bp3w+TkeeE8BgNYMKqh0/Ui5pD6q91sH39xXf8ZVFExipJ2i4OheA== X-Received: by 2002:a05:6402:538d:b0:4a2:4abb:8d2b with SMTP id ew13-20020a056402538d00b004a24abb8d2bmr4482615edb.6.1675109978049; Mon, 30 Jan 2023 12:19:38 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id op27-20020a170906bcfb00b0084bfd56fb3bsm7297330ejb.162.2023.01.30.12.19.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:37 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:35 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 16/56] tests: acpi: cleanup use_uefi argument usage Message-ID: <20230130201810.11518-17-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov 'use_uefi' is used for the flag is a part of 'test_data *data' argument that is passed to the same functions, which makes use_uefi argument redundant. Drop it and use 'data::uefi_*' directly, instead. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-7-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 35 +++++++++++++++------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 6a99b10384..cb95f687fe 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -748,9 +748,9 @@ static void test_smbios_structs(test_data *data, SmbiosEntryPointType ep_type) } } -static void test_acpi_load_tables(test_data *data, bool use_uefi) +static void test_acpi_load_tables(test_data *data) { - if (use_uefi) { + if (data->uefi_fl1 && data->uefi_fl2) { /* use UEFI */ g_assert(data->scan_len); data->rsdp_addr = acpi_find_rsdp_address_uefi(data->qts, data->ram_start, data->scan_len); @@ -766,12 +766,11 @@ static void test_acpi_load_tables(test_data *data, bool use_uefi) test_acpi_fadt_table(data); } -static char *test_acpi_create_args(test_data *data, const char *params, - bool use_uefi) +static char *test_acpi_create_args(test_data *data, const char *params) { char *args; - if (use_uefi) { + if (data->uefi_fl1 && data->uefi_fl2) { /* use UEFI */ /* * TODO: convert '-drive if=pflash' to new syntax (see e33763be7cd3) * when arm/virt boad starts to support it. @@ -809,11 +808,10 @@ static char *test_acpi_create_args(test_data *data, const char *params, static void test_acpi_one(const char *params, test_data *data) { char *args; - bool use_uefi = data->uefi_fl1 && data->uefi_fl2; - args = test_acpi_create_args(data, params, use_uefi); + args = test_acpi_create_args(data, params); data->qts = qtest_init(args); - test_acpi_load_tables(data, use_uefi); + test_acpi_load_tables(data); if (getenv(ACPI_REBUILD_EXPECTED_AML)) { dump_aml_files(data, true); @@ -826,7 +824,7 @@ static void test_acpi_one(const char *params, test_data *data) * Bug on uefi-test-tools to provide entry point: * https://bugs.launchpad.net/qemu/+bug/1821884 */ - if (!use_uefi) { + if (!(data->uefi_fl1 && data->uefi_fl2)) { SmbiosEntryPointType ep_type = test_smbios_entry_point(data); test_smbios_structs(data, ep_type); } @@ -1904,10 +1902,9 @@ static void test_acpi_piix4_oem_fields(void) data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); - args = test_acpi_create_args(&data, - OEM_TEST_ARGS, false); + args = test_acpi_create_args(&data, OEM_TEST_ARGS); data.qts = qtest_init(args); - test_acpi_load_tables(&data, false); + test_acpi_load_tables(&data); test_oem_fields(&data); qtest_quit(data.qts); free_test_data(&data); @@ -1924,10 +1921,9 @@ static void test_acpi_q35_oem_fields(void) data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); - args = test_acpi_create_args(&data, - OEM_TEST_ARGS, false); + args = test_acpi_create_args(&data, OEM_TEST_ARGS); data.qts = qtest_init(args); - test_acpi_load_tables(&data, false); + test_acpi_load_tables(&data); test_oem_fields(&data); qtest_quit(data.qts); free_test_data(&data); @@ -1942,9 +1938,9 @@ static void test_acpi_microvm_oem_fields(void) test_acpi_microvm_prepare(&data); args = test_acpi_create_args(&data, - OEM_TEST_ARGS",acpi=on", false); + OEM_TEST_ARGS",acpi=on"); data.qts = qtest_init(args); - test_acpi_load_tables(&data, false); + test_acpi_load_tables(&data); test_oem_fields(&data); qtest_quit(data.qts); free_test_data(&data); @@ -1964,10 +1960,9 @@ static void test_acpi_virt_oem_fields(void) }; char *args; - args = test_acpi_create_args(&data, - "-cpu cortex-a57 "OEM_TEST_ARGS, true); + args = test_acpi_create_args(&data, "-cpu cortex-a57 "OEM_TEST_ARGS); data.qts = qtest_init(args); - test_acpi_load_tables(&data, true); + test_acpi_load_tables(&data); test_oem_fields(&data); qtest_quit(data.qts); free_test_data(&data); From patchwork Mon Jan 30 20:19:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121743 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 9CD1AC636CD for ; Mon, 30 Jan 2023 20:20:33 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadb-0003nN-2S; Mon, 30 Jan 2023 15:20:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad0-0002hs-UN for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:50 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMacz-0006tJ-E5 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109984; 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=OKOxG4S89v1obpj9TdPdrFOeAdpqYXMWWo36nPaCZEQ=; b=YF7ikbspRS4dP0pRONfU6d12NFXJvh1wWUPw4l7ezBlW5/+yX2YNriXJKb+g8X1esd24v+ Hdy+z+BCkeEsZdIbNX7Hkk6Hz6dXFCXk7WQ/KQaxWoI4Rue7odyNpyoWzwRPoQWuBP3Ur0 poFmoebco/DOzP4pcV/fnGxGl0GjG5E= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-50-vyMG81RSMci7LBmIWKVQ8Q-1; Mon, 30 Jan 2023 15:19:43 -0500 X-MC-Unique: vyMG81RSMci7LBmIWKVQ8Q-1 Received: by mail-ej1-f69.google.com with SMTP id ti11-20020a170907c20b00b00886244203fcso3073410ejc.2 for ; Mon, 30 Jan 2023 12:19:42 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=OKOxG4S89v1obpj9TdPdrFOeAdpqYXMWWo36nPaCZEQ=; b=lWpN1xbn4tG+mcjIrEouPq+BAqGaKwGFbASsG+J72Tt/lgyxpbOj4fnysKCELf4teZ XxN+bfuaJfcnFGf4oKyqy3petRy4dDxS2if2569bp62BRMXUS85TirdrZ/hfp4w8TdLs dcQVV0KJPrbHdYLg2zDdtM9Q2RHi21m8QellW50qVRaksSiru2IAmW4gdNfy/+JJPI4M xfGad+pOacIcO8E3eOwvAT1Eohj+Z2VF84NhY/+ERVoTouQ0gV3ez2igWbIB5jt9W+pY 84bAIv5k4aLqsN+syQJ7ajC9suAqFPtZu2UbkK+AHSgyehEGIr0Ldu3HkNG7mwsuGcbK WPzg== X-Gm-Message-State: AFqh2kqlqcIjZJtlrKC+4qvcAUQy/fUT9hMFASG6RZPxAYFy1E9kjzl+ MUtb4eHoycfX+w0QjD7z/fjNNjARTwZXz6kSdklbVFzXLDri2ikhiWGFcsin4ErB+k/P/DETHsA 6oiWyxR5Ck2PbxbeLoe0Uio2T+7dNTnb8yzC102TDyoWtSi6lkyxhMPv2wjO5 X-Received: by 2002:aa7:dbd0:0:b0:49e:351b:5ab3 with SMTP id v16-20020aa7dbd0000000b0049e351b5ab3mr45128547edt.6.1675109981333; Mon, 30 Jan 2023 12:19:41 -0800 (PST) X-Google-Smtp-Source: AMrXdXuI37+AynnFMls1JtG1WZgONYCGgutpYRXYWMedbhm8i3Ge9iUYSMKyMRG+XA0h1nZMQDnQhw== X-Received: by 2002:aa7:dbd0:0:b0:49e:351b:5ab3 with SMTP id v16-20020aa7dbd0000000b0049e351b5ab3mr45128529edt.6.1675109981031; Mon, 30 Jan 2023 12:19:41 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id m15-20020a056402050f00b0049ef70a2894sm7356118edv.38.2023.01.30.12.19.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:40 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:38 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Marcel Apfelbaum Subject: [PULL 17/56] pci_bridge: remove whitespace Message-ID: <20230130201810.11518-18-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-8-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/pci-bridge/pci_bridge_dev.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c index 3435df8d73..4b2696ea7f 100644 --- a/hw/pci-bridge/pci_bridge_dev.c +++ b/hw/pci-bridge/pci_bridge_dev.c @@ -186,7 +186,6 @@ static Property pci_bridge_dev_properties[] = { res_reserve.mem_pref_32, -1), DEFINE_PROP_SIZE("pref64-reserve", PCIBridgeDev, res_reserve.mem_pref_64, -1), - DEFINE_PROP_END_OF_LIST(), }; From patchwork Mon Jan 30 20:19:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121778 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id EEA9DC636CD for ; Mon, 30 Jan 2023 20:28:16 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadV-0003Wx-W1; Mon, 30 Jan 2023 15:20:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad5-0002it-1l for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:51 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad3-0006to-MO for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:50 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109988; 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=BH5qRItfw3u2qE2O9ry4MjENhkBipRofcV3nZ6Eu30w=; b=c//3VxSeTmyv/S3Q767u0BPDXiabi511sdy2fysRPiwslksP19wyHMUPpfBPM/AcMcSPXJ 24lwQk35IoQ8g58CjBXBs2tt5xMzXytp81h8iYE7o+yqSFD+ECOdi8i8NOWtt6prxEZ+ii V8Nl2CLQGWbrSFnB+0gUAQkSRpvuOX4= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-384-EZGKIb33PUOViP2m6ke8zg-1; Mon, 30 Jan 2023 15:19:46 -0500 X-MC-Unique: EZGKIb33PUOViP2m6ke8zg-1 Received: by mail-ej1-f69.google.com with SMTP id hq7-20020a1709073f0700b0086fe36ed3d0so8055414ejc.3 for ; Mon, 30 Jan 2023 12:19:46 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=BH5qRItfw3u2qE2O9ry4MjENhkBipRofcV3nZ6Eu30w=; b=gHjStH/dqwClq8EGzA9i9CV3wTojwK+WEC6Nf0vjH+r/08EUH8ywZAN7Cn0cd9hqyg HsAbnCOTwUAbNGW71igyzXlg2omoDtfsMWUD0EG8MAtkL8wkGfozFe/0saD72qwQTGN6 D4jL5cRRp4Qx8LVHxzDcG5Zzrq1krdbyDEVcB/G1WnJL9hKnWYVz0QdZSyGBpsJh7FgX zM1eEeC+cyOHakt+aXwrXEtIGof3hZZQpXl5znWCbPi+xk22X9vcMnqf7sSpwfQJfWD2 a3vx7kwc2R8PTFmDV5qw/YkmhwR4hOSJdrXl1bEgfM80UGplhxi83po3IZDW3b+vhFT/ ZKjQ== X-Gm-Message-State: AO0yUKXv89V6TemUSon8KRks3VwfKkwlHh4la1hez/tL9x846Ts34HmA 1yjwEi6OFmm0qPmEj1STINuwrcaUEno+5U5o2J3N0iFC/yHzY226hvpSshPZBBI90v7IO1p6L0t Bf0S+WDvS0UxYayzR2ESGAjxCbTDxv//dUtgM06NXngb3syquLXvH9M6jiX3h X-Received: by 2002:a17:907:c26:b0:878:53a5:70a1 with SMTP id ga38-20020a1709070c2600b0087853a570a1mr25440717ejc.50.1675109984911; Mon, 30 Jan 2023 12:19:44 -0800 (PST) X-Google-Smtp-Source: AK7set8wLSlnuYb0jjK2QGvrOzXa8jDZYvSm4MmUh+U7e5uOIQ8PM6G+zi5WO6PMm+ZxTnh8a69ukA== X-Received: by 2002:a17:907:c26:b0:878:53a5:70a1 with SMTP id ga38-20020a1709070c2600b0087853a570a1mr25440684ejc.50.1675109984641; Mon, 30 Jan 2023 12:19:44 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id n2-20020a170906164200b0086a4bb74cf7sm7404127ejd.212.2023.01.30.12.19.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:44 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:41 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 18/56] x86: acpi: pcihp: clean up duplicate bridge_in_acpi assignment Message-ID: <20230130201810.11518-19-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-9-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 1 - 1 file changed, 1 deletion(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 8c333973f9..8ba34d8fde 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -464,7 +464,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, call_dev_aml_func(DEVICE(pdev), dev); - bridge_in_acpi = cold_plugged_bridge && pcihp_bridge_en; if (bridge_in_acpi) { /* * device is coldplugged bridge, From patchwork Mon Jan 30 20:19:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121802 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id CFD24C54EAA for ; Mon, 30 Jan 2023 20:32:51 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadd-00042E-Nq; Mon, 30 Jan 2023 15:20:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad7-0002np-9C for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad5-0006u4-FK for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109990; 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=KKRu7aE4HH84foy8wjGs6K2K20mXYm64Vub2yI3hbsU=; b=PHO/0G0ZiC6351NzPmxitK+O+0VfdxNrF1qgFBcoxpBLSUZu4YC6vNf74jiA3EU84c0WMG vI5pAsEP1/WIcZndb8hfiVPTL/x8AzArFcMOFNeFncMSu4eAy4dgdwcVKOPxIkOyJX97aa m5o6tIg2Sa6HQrbfLo+95TFegFO2olg= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-35-r86bkvm_MVi3mDvAyufhFw-1; Mon, 30 Jan 2023 15:19:49 -0500 X-MC-Unique: r86bkvm_MVi3mDvAyufhFw-1 Received: by mail-ed1-f71.google.com with SMTP id f11-20020a056402354b00b0049e18f0076dso8880011edd.15 for ; Mon, 30 Jan 2023 12:19:49 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=KKRu7aE4HH84foy8wjGs6K2K20mXYm64Vub2yI3hbsU=; b=POn9z2VCMGcVCbPYk6hrZyckeTvQqWrlszPyyM8Qgm3F4Ik0xNI71qyzuxhcT81M95 z0e1LF8fYpdOk3TgXkWqyP6O7tHToPOLQS3k55psxxOXuHHk5Wv71kZYDWCDoyrfREL5 7olkAId9IgXUFZPSu981xFv2crfZEC4XVEgIE+PsNU05BgZ/W/f+jtytgLK0bGkQ2daC aqjoHflZdUHstMUpuWJ4KNLznc1ViUdpC1AUnavBLRQDk9tQMUALwQniF/zOgJ9G/x6h bpteSvU/pCGBhd72EMpG87JWVDvR2YFdicmde82IEDnY4nyu625WkMkra6ycfp6+Rgj6 5iJQ== X-Gm-Message-State: AFqh2kpuA8I46OE9HakF6XJ4q5epy3IdSMsH6rsriVtSTPciat8bNm3Q vpLHfyn24riu3jtgKP23gdAwurWiVxanqJ9Yxmzqq1ioRtJd3ealaoUAtMweLRGHWZ4aIfN7IWv vOyzDuXfmlfLEGJOGWI5g6gQPq1RvtTSlUPO39bKvwAzUoifUztGRpNALfcNB X-Received: by 2002:a17:906:5214:b0:7c0:f2c5:ac3d with SMTP id g20-20020a170906521400b007c0f2c5ac3dmr49108820ejm.15.1675109988037; Mon, 30 Jan 2023 12:19:48 -0800 (PST) X-Google-Smtp-Source: AMrXdXsb5p3SBwcb9z7JPXwQSClupppA1knS4A+I7XaVKySb68KOMZxyTKjmnX2qAycWmyem6f9sNQ== X-Received: by 2002:a17:906:5214:b0:7c0:f2c5:ac3d with SMTP id g20-20020a170906521400b007c0f2c5ac3dmr49108801ejm.15.1675109987754; Mon, 30 Jan 2023 12:19:47 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id t2-20020a170906948200b0087bdb44bbc0sm5598611ejx.32.2023.01.30.12.19.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:47 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:44 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 19/56] pci: acpi hotplug: rename x-native-hotplug to x-do-not-expose-native-hotplug-cap Message-ID: <20230130201810.11518-20-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov When ACPI PCI hotplug for Q35 was introduced (6.1), it was implemented by hiding HPC capability on PCIE slot. That however led to a number of regressions and to fix it, it was decided to keep HPC cap exposed in ACPI PCI hotplug case and force guest in ACPI PCI hotplug mode by other means [1]. That reduced meaning of x-native-hotplug to a compat knob [2] for broken 6.1 machine type. Rename property to match its current purpose. 1) 211afe5c69 (hw/i386/acpi-build: Deny control on PCIe Native Hot-plug in _OSC) 2) c318bef762 (hw/acpi/ich9: Add compat prop to keep HPC bit set for 6.1 machine type) Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-10-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/pci/pcie_port.h | 3 ++- hw/i386/pc_q35.c | 5 +++-- hw/pci-bridge/gen_pcie_root_port.c | 7 ++++++- hw/pci/pcie.c | 6 +++--- hw/pci/pcie_port.c | 3 ++- 5 files changed, 16 insertions(+), 8 deletions(-) diff --git a/include/hw/pci/pcie_port.h b/include/hw/pci/pcie_port.h index fd484afb30..6c40e3733f 100644 --- a/include/hw/pci/pcie_port.h +++ b/include/hw/pci/pcie_port.h @@ -63,7 +63,8 @@ struct PCIESlot { /* Indicates whether any type of hot-plug is allowed on the slot */ bool hotplug; - bool native_hotplug; + /* broken ACPI hotplug compat knob to preserve 6.1 ABI intact */ + bool hide_native_hotplug_cap; QLIST_ENTRY(PCIESlot) next; }; diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 83c57c6eb1..66cd718b70 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -257,8 +257,9 @@ static void pc_q35_init(MachineState *machine) NULL); if (!keep_pci_slot_hpc && acpi_pcihp) { - object_register_sugar_prop(TYPE_PCIE_SLOT, "x-native-hotplug", - "false", true); + object_register_sugar_prop(TYPE_PCIE_SLOT, + "x-do-not-expose-native-hotplug-cap", + "true", true); } /* irq lines */ diff --git a/hw/pci-bridge/gen_pcie_root_port.c b/hw/pci-bridge/gen_pcie_root_port.c index 20099a8ae3..1ce4e7beba 100644 --- a/hw/pci-bridge/gen_pcie_root_port.c +++ b/hw/pci-bridge/gen_pcie_root_port.c @@ -87,7 +87,12 @@ static void gen_rp_realize(DeviceState *dev, Error **errp) return; } - if (grp->res_reserve.io == -1 && s->hotplug && !s->native_hotplug) { + /* + * reserving IO space led to worse issues in 6.1, when this hunk was + * introduced. (see commit: 211afe5c69b59). Keep this broken for 6.1 + * machine type ABI compatibility only + */ + if (s->hide_native_hotplug_cap && grp->res_reserve.io == -1 && s->hotplug) { grp->res_reserve.io = GEN_PCIE_ROOT_DEFAULT_IO_RANGE; } int rc = pci_bridge_qemu_reserve_cap_init(d, 0, diff --git a/hw/pci/pcie.c b/hw/pci/pcie.c index 68a62da0b5..924fdabd15 100644 --- a/hw/pci/pcie.c +++ b/hw/pci/pcie.c @@ -611,11 +611,11 @@ void pcie_cap_slot_init(PCIDevice *dev, PCIESlot *s) PCI_EXP_SLTCAP_ABP); /* - * Enable native hot-plug on all hot-plugged bridges unless - * hot-plug is disabled on the slot. + * Expose native hot-plug on all bridges if hot-plug is enabled on the slot. + * (unless broken 6.1 ABI is enforced for compat reasons) */ if (s->hotplug && - (s->native_hotplug || DEVICE(dev)->hotplugged)) { + (!s->hide_native_hotplug_cap || DEVICE(dev)->hotplugged)) { pci_long_test_and_set_mask(dev->config + pos + PCI_EXP_SLTCAP, PCI_EXP_SLTCAP_HPS | PCI_EXP_SLTCAP_HPC); diff --git a/hw/pci/pcie_port.c b/hw/pci/pcie_port.c index 687e4e763a..65a397ad23 100644 --- a/hw/pci/pcie_port.c +++ b/hw/pci/pcie_port.c @@ -173,7 +173,8 @@ static Property pcie_slot_props[] = { DEFINE_PROP_UINT8("chassis", PCIESlot, chassis, 0), DEFINE_PROP_UINT16("slot", PCIESlot, slot, 0), DEFINE_PROP_BOOL("hotplug", PCIESlot, hotplug, true), - DEFINE_PROP_BOOL("x-native-hotplug", PCIESlot, native_hotplug, true), + DEFINE_PROP_BOOL("x-do-not-expose-native-hotplug-cap", PCIESlot, + hide_native_hotplug_cap, false), DEFINE_PROP_END_OF_LIST() }; From patchwork Mon Jan 30 20:19:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121770 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id B73BEC636CD for ; Mon, 30 Jan 2023 20:26:59 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadW-0003ZX-Ga; Mon, 30 Jan 2023 15:20:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadA-0002oX-Em for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMad9-0006uG-1B for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:19:56 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109994; 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=yoc4PeYKa4uMfa8YZNqso6vpVCYwL/ByH6Sg8tE0xSo=; b=bVDiv1pknjd97q3jCSPyM4C+do809T3GWf17yLcLGu3kJuPYwTyRx/LTTFdktxvAXQFMnq 054X4p7zG8Giec84zCXe2XsLjc/acwM5phc3tuDpNYqh+82EVV1W//PzXQBM8yUiSCTW6A FCjfO3Yifm5nFrpeulzMOCJYiSmmbTo= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-650-idkVzVS6Mlmm7MJ2wUrL8A-1; Mon, 30 Jan 2023 15:19:53 -0500 X-MC-Unique: idkVzVS6Mlmm7MJ2wUrL8A-1 Received: by mail-ej1-f71.google.com with SMTP id kt9-20020a1709079d0900b00877f4df5aceso8155024ejc.21 for ; Mon, 30 Jan 2023 12:19:53 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=yoc4PeYKa4uMfa8YZNqso6vpVCYwL/ByH6Sg8tE0xSo=; b=YBBqk30HRi0W4ydYH4AHU75o2/TXh7fqC0EJ/EbDK5+Rje2Z3O0lBZ5kvPvIX67i0C /5SIwF+vnNb5srw3FiMN9vaJEv2Ckl+mSqXjBEgdB9TiXg2OXsaCZNI7SKyrF87Urgg0 2ye31r/Yfs5ln4eFndwV/g7gU6umpseqDwRGwW7z2eq82unKj9Ovc1sUN9M4+5YDJM7g uH3KzPugCyDD+JXgRBpcYk35jsPCGiE4bvxxE+1HXwz1xlVByWxj/+/Y9jmwxp29JWOU OSud9nOHNj7MRVujHF8NPAjjnag9uqcHZRE2iU//V1IOlO5G4rEJNzhWkdh9Rn013ICa lkFg== X-Gm-Message-State: AO0yUKVdBV8jl0+XNrqEIS1RrVGZmKlufFtFQuylf4Ydb0K4JQgUeFz8 sGqZ2wlKn7hzipQyIXblt9kS02JGntHhGIXr24VeT4bpyC5Di2tbx06gw197SFIkw1cEkNju6xs ujnqDSkJRUQAl97eTzyIoPCu/hCKXontTVoi6LSznNt8clqRJ1smDvL+VHoYg X-Received: by 2002:a17:906:9719:b0:878:79a4:26b6 with SMTP id k25-20020a170906971900b0087879a426b6mr16828646ejx.74.1675109991615; Mon, 30 Jan 2023 12:19:51 -0800 (PST) X-Google-Smtp-Source: AK7set9E4axD0UDYEN22x41qx7ylBD5SIw2Zg80Wczr0WFT7BL40zz+c4NHY5IcGpmGhrpAFxbDtig== X-Received: by 2002:a17:906:9719:b0:878:79a4:26b6 with SMTP id k25-20020a170906971900b0087879a426b6mr16828623ejx.74.1675109991392; Mon, 30 Jan 2023 12:19:51 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id d1-20020aa7d681000000b0049be07c9ff5sm7343218edr.4.2023.01.30.12.19.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:50 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:48 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Marcel Apfelbaum , Philippe =?utf-8?q?Mathieu-D?= =?utf-8?q?aud=C3=A9?= , Aurelien Jarno , Ani Sinha Subject: [PULL 20/56] pcihp: piix4: do not call acpi_pcihp_reset() when ACPI PCI hotplug is disabled Message-ID: <20230130201810.11518-21-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov piix4_pm_reset() is calling acpi_pcihp_reset() when ACPI PCI hotplug is disabled, which leads to assigning BSEL properties to bridges on path acpi_set_bsel() ... if (qbus_is_hotpluggable(BUS(bus))) { // above happens to be true by default (though it's SHPC hotplug handler) // set BSEL } At the moment the issue is masked by the fact that we use not only BSEL, to decide if we should generated hoplug AML but also pcihp_bridge_en knob. However the later patches will drop dependency on pcihp_bridge_en, and use only BSEL exclusively to decide if hotplug AML for slots should be built, which exposes issue. We should not ever call acpi_pcihp_reset() if ACPI PCI hotplug is disabled, make it so. PS: * Q35 does the right thing (i.e. it calls acpi_pcihp_reset only when pcihp is enabled) * the issue also makes acpi_pcihp_update() logic run on SHPC enabled bridges, which seems to be harmless Fixes: 3d7e78aa777 ("Introduce a new flag for i440fx to disable PCI hotplug on the root bus") Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-11-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/acpi/piix4.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index 2ab4930f11..724294b378 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -304,7 +304,9 @@ static void piix4_pm_reset(DeviceState *dev) acpi_update_sci(&s->ar, s->irq); pm_io_space_update(s); - acpi_pcihp_reset(&s->acpi_pci_hotplug, !s->use_acpi_root_pci_hotplug); + if (s->use_acpi_hotplug_bridge || s->use_acpi_root_pci_hotplug) { + acpi_pcihp_reset(&s->acpi_pci_hotplug, !s->use_acpi_root_pci_hotplug); + } } static void piix4_pm_powerdown_req(Notifier *n, void *opaque) From patchwork Mon Jan 30 20:19:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121767 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id CFE9DC636D7 for ; Mon, 30 Jan 2023 20:26:43 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMade-00049X-KZ; Mon, 30 Jan 2023 15:20:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadE-0003Ah-RO for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:00 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadD-0006uU-3P for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:00 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675109998; 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=2FzpFZUOzYqsVB74DHdam1waxerdjBb53bUIdTG9m9w=; b=JtiE0/rwD+tX04HPUZmIxuyMKCWNVVSkq3eh0lH2hP1wRVQ8MvJ33sgPtUzn8XlB9wQl4S /KGslO8Sb3FSVcyVUBtFdOXm5XzicNn9+8bWrmAYMCb68W+rzWTC5v2VDQtgXYmJqdxUs/ bdeiU3oClzOlgvNRotbDiNO3qTsIh/k= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-507-EYc_zOWhPcmvOfMHKF8xhw-1; Mon, 30 Jan 2023 15:19:56 -0500 X-MC-Unique: EYc_zOWhPcmvOfMHKF8xhw-1 Received: by mail-ed1-f71.google.com with SMTP id z6-20020aa7cf86000000b0049f95687b88so8965509edx.4 for ; Mon, 30 Jan 2023 12:19:56 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=2FzpFZUOzYqsVB74DHdam1waxerdjBb53bUIdTG9m9w=; b=a9x3S8AOYE/oVfXIwvnroAkSYSC+N59fucm5fAT7mJfH9HRQeSVyRL+uCbB6MX1V86 hoXWUzvNvpDh7C0ExA962CFdQt5KGBswXjzBsgq3LKXraT+76TXwi4u/E7NcPP/wjAIu Qxrmc9J2fO6REKp9oyhzF7qCxUd/WromfBsVt/lx+u9OOm4JrCyRxeYjiSrS4FCZItUg uR2tqaPiwzUc3eJrrdnFZVOPAVHFkl5uwAsOgrGfPeFLGsMnDc96Z8RkWjxQQgcOReu6 KtleHPhm6VJOOYAem4N+WCW/ARTfbfnnLeOFMfcywobLmWCYery7Koim1YI22jl6sOQR VWIA== X-Gm-Message-State: AFqh2kpyHmOet6bw7vNb9u/Ua0KjQ918p2hZZhaaz06LRJ0Z32CdBLHU SIcfY9klDfcXh8j/1HHgI4gV4LDs/B/B05E0+R8uY+fiXa5/jnw7SJ1oDjxNMRb0LaRZXqYk6gw tfrIvLzPC6fwPIlPLD/9EQojCITTo3Wsd9gsLtDzE74Ls3I9n43TS1ZLDx7oa X-Received: by 2002:a17:907:6c16:b0:86f:5636:4712 with SMTP id rl22-20020a1709076c1600b0086f56364712mr61330745ejc.7.1675109995051; Mon, 30 Jan 2023 12:19:55 -0800 (PST) X-Google-Smtp-Source: AMrXdXtcb+gMHXuYqkEVaagPeASiXT0mnjYGlzbWGHl29MGvIiwJJKav2MOHKqMFj2yTwJxtWvtwWw== X-Received: by 2002:a17:907:6c16:b0:86f:5636:4712 with SMTP id rl22-20020a1709076c1600b0086f56364712mr61330722ejc.7.1675109994734; Mon, 30 Jan 2023 12:19:54 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id p2-20020a1709060e8200b008786675d086sm7226106ejf.29.2023.01.30.12.19.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:54 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:51 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 21/56] pci: acpihp: assign BSEL only to coldplugged bridges Message-ID: <20230130201810.11518-22-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov ACPI PCI hotplug would broken after bridge hotplug and then migration if hotplugged bridge were specified on target at command line. Currently it's not possible since, 'hotplugged' property was made read-only for some time now. The issue would happen due to BSEL being assigned to all bridges during 1st 'reset': source seq: 1. start 'pc' machine => sets BSEL to 0 on pci.0 (host-bridge) 2. hotplug bridge, no bsel is assigned (so far is ok) target seq: 1. start 'pc' machine with -S -device pci-bridge,id=hp_br,hotplugged=on BSEL gets assigned to as follows hp_br: 0 pci.0: 1 as result hotplug requests with migrated AML generated on source would be misdirected to 'hp_br' instead of intended pci.0 While it's not issue at the moment, it's based on implicit assumptions * 'hotplugged' property is read-only * 1st reset happens before QEMU drops into monitor mode which lets add hotplugged on source bridges as hotplugged ones (anything added at that stage counts as hotplugged (yet another assumption)) All of it looks too fragile to me, so lets restrict BSEL only to cold-plugged bridges explicitly. Migration wise it shouldn't break anything since assignment order stays the same: * user can't specify 'hotplugged=on' on CLI * user can't specify 'hotplugged=off' at monitor stage or later on older QEMU versions where 'hotplugged' is RW, hotplug is broken after migration anyways and we cannot do anything to fix that. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-12-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/acpi/pcihp.c | 35 ++++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/hw/acpi/pcihp.c b/hw/acpi/pcihp.c index 99a898d9ae..5dc7377411 100644 --- a/hw/acpi/pcihp.c +++ b/hw/acpi/pcihp.c @@ -85,31 +85,40 @@ static int acpi_pcihp_get_bsel(PCIBus *bus) } } -/* Assign BSEL property to all buses. In the future, this can be changed - * to only assign to buses that support hotplug. - */ +typedef struct { + unsigned bsel_alloc; + bool has_bridge_hotplug; +} BSELInfo; + +/* Assign BSEL property only to buses that support hotplug. */ static void *acpi_set_bsel(PCIBus *bus, void *opaque) { - unsigned *bsel_alloc = opaque; + BSELInfo *info = opaque; unsigned *bus_bsel; + DeviceState *br = bus->qbus.parent; + bool is_bridge = IS_PCI_BRIDGE(br); + /* hotplugged bridges can't be described in ACPI ignore them */ if (qbus_is_hotpluggable(BUS(bus))) { - bus_bsel = g_malloc(sizeof *bus_bsel); + if (!is_bridge || (!br->hotplugged && info->has_bridge_hotplug)) { + bus_bsel = g_malloc(sizeof *bus_bsel); - *bus_bsel = (*bsel_alloc)++; - object_property_add_uint32_ptr(OBJECT(bus), ACPI_PCIHP_PROP_BSEL, - bus_bsel, OBJ_PROP_FLAG_READ); + *bus_bsel = info->bsel_alloc++; + object_property_add_uint32_ptr(OBJECT(bus), ACPI_PCIHP_PROP_BSEL, + bus_bsel, OBJ_PROP_FLAG_READ); + } } - return bsel_alloc; + return info; } -static void acpi_set_pci_info(void) +static void acpi_set_pci_info(bool has_bridge_hotplug) { static bool bsel_is_set; Object *host = acpi_get_i386_pci_host(); PCIBus *bus; - unsigned bsel_alloc = ACPI_PCIHP_BSEL_DEFAULT; + BSELInfo info = { .bsel_alloc = ACPI_PCIHP_BSEL_DEFAULT, + .has_bridge_hotplug = has_bridge_hotplug }; if (bsel_is_set) { return; @@ -123,7 +132,7 @@ static void acpi_set_pci_info(void) bus = PCI_HOST_BRIDGE(host)->bus; if (bus) { /* Scan all PCI buses. Set property to enable acpi based hotplug. */ - pci_for_each_bus_depth_first(bus, acpi_set_bsel, NULL, &bsel_alloc); + pci_for_each_bus_depth_first(bus, acpi_set_bsel, NULL, &info); } } @@ -287,7 +296,7 @@ void acpi_pcihp_reset(AcpiPciHpState *s, bool acpihp_root_off) if (acpihp_root_off) { acpi_pcihp_disable_root_bus(); } - acpi_set_pci_info(); + acpi_set_pci_info(!s->legacy_piix); acpi_pcihp_update(s); } From patchwork Mon Jan 30 20:19:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121788 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A1BD4C636D3 for ; Mon, 30 Jan 2023 20:30:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadg-0004O4-0A; Mon, 30 Jan 2023 15:20:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadJ-0003IT-F6 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:06 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadG-0006uw-Jl for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:05 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110001; 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=ATHL4BpBWlmKIAM8BhIcfBqhKF1YwYVEjz9c7YNyRQ0=; b=flKzuC58/4WwXMKtdKoWu7efJ+gd7yQK06DqQfzMt6sWQMzoEfobfXEdSti2iMxO0C4Kqm Fxayf++nBrTOhkfs55OQ70ZUklO4H6osaPEeUl8vryv8O7u7zFVU/UosGajnbexpSNBIeL dkocgbwhCrN7gExodDKlkSKYcyv5OgY= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-102-XGjQu2QgPbqlF95jqkHYzQ-1; Mon, 30 Jan 2023 15:20:00 -0500 X-MC-Unique: XGjQu2QgPbqlF95jqkHYzQ-1 Received: by mail-ed1-f71.google.com with SMTP id t26-20020aa7d71a000000b004a244cc7ee8so2816623edq.2 for ; Mon, 30 Jan 2023 12:20:00 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ATHL4BpBWlmKIAM8BhIcfBqhKF1YwYVEjz9c7YNyRQ0=; b=HYfJ9E3NWTZ5JfzutiCrWd6IIMCdQ+eL+nMUzJR+Auq2D+eGMEfHC7/I3iJ0PslbCb isHXAkxlty3V+pFMQEYkE4XewNq71+0uYaDPMX40olucTbEpSSiEMSKCGzvmvlHLAKnC RlODJ5a8UknyGYNQO0x4Adl/5Rq+1masVoRVReJoZxr/yeArtGiydRScXSr9CcZzPcLc WzrrHvhlNZdIQ5wv/opkkSqNL0LkCEFBZYOeDxviF4Ahw0A3mTRXRnQUGmBPYvYMMnQ4 NbxgDNOZSzx8AY0jviwui9m/vLrYDy3fp+qM+CkpUBY3MFObeETJrZja9op/0+OSv4w9 TflA== X-Gm-Message-State: AFqh2kqMMQA2tL8gkyQ435AbUqgEGT9Sk9LiyhYJ5+C53raY7QbEoP87 0J8t8ui9HqI1/csY5OaYLliWXT0QrYXX4ZBDyp18HvkUekxRceDNj56/Cy0i8wlJnZnft7wxUAw 61IaWRnQ7N4GqJST4qIMsZeuQ9yf8utNlfHffkWTI8HMw9zdXad5PozHAY+vU X-Received: by 2002:a17:907:874f:b0:870:7769:a907 with SMTP id qo15-20020a170907874f00b008707769a907mr59844521ejc.9.1675109998682; Mon, 30 Jan 2023 12:19:58 -0800 (PST) X-Google-Smtp-Source: AMrXdXtWuQu+iMvDgcY8Mleo4Jmb9tjhRmYpoF9KYQXnc/lrREfGe3odRZ+xUKevP1KofiTjvf6+5g== X-Received: by 2002:a17:907:874f:b0:870:7769:a907 with SMTP id qo15-20020a170907874f00b008707769a907mr59844497ejc.9.1675109998329; Mon, 30 Jan 2023 12:19:58 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id t26-20020a17090616da00b007aee7ca1199sm7425583ejd.10.2023.01.30.12.19.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:19:57 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:55 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 22/56] x86: pcihp: fix invalid AML PCNT calls to hotplugged bridges Message-ID: <20230130201810.11518-23-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov When QEMU is started with hotplugged bridges (think migration): QEMU -S -monitor stdio \ -device pci-bridge,chassis_nr=1 \ -device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 (qemu) device_add pci-bridge,id=hpbr,bus=pci.1,addr=2.0,chassis_nr=3 (qemu) cont it will generate AML calls to hpbr's PCNT, which doesn't exists since it's hotplugged bridge. As result DSDT becomes malformed, with consequences that hotplug might stop working at best or crash guest OS at worst, when it attempts to call non existing PCNT method or during OS guest reboot when parsing DSDT again. IASL de-compiles malformed AML of above config DSDT as: + External (_SB_.PCI0.S18_.S10_.PCNT, MethodObj) // Warning: Unknown method, guessing 1 arguments + External (_SB_.PCI0.S18_.S19_.PCNT, MethodObj) // Warning: Unknown method, guessing 2 arguments ... BNUM = One DVNT (PCIU, One) DVNT (PCID, 0x03) - ^S08.PCNT () + ^S19.PCNT (^S10.PCNT (^S08.PCNT ())) } } With BSEL assignment limited only to coldplugged bridges [1], it should be possible to add PCNT call to a child bridge only if the child has BSEL property, otherwise ignore it since it's hotplugged. Which should fix the issue. 1) ("pci: acpihp: assign BSEL only to coldplugged bridges") Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-13-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 8ba34d8fde..1c51ab01fc 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -515,7 +515,8 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, /* Notify about child bus events in any case */ if (pcihp_bridge_en) { QLIST_FOREACH(sec, &bus->child, sibling) { - if (pci_bus_is_root(sec)) { + if (pci_bus_is_root(sec) || + !object_property_find(OBJECT(sec), ACPI_PCIHP_PROP_BSEL)) { continue; } From patchwork Mon Jan 30 20:19:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121762 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 3BE4EC636CD for ; Mon, 30 Jan 2023 20:23:52 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMae4-0005Y4-TW; Mon, 30 Jan 2023 15:20:52 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadL-0003Je-6Z for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:10 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadJ-00075S-7P for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:06 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110004; 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=yXWQTZnfl7smKeiYCB+FKOZKyFdPsirvtVMwzfQ1w+c=; b=ElFIJC1pymoM46T2eefpp4+0a7OZLShvG/MO68dzWr7fUXmPmlqQgVTL+w3MjW47EpkZG9 YoEiD27GJFd+xjXR12MyOtj8mfV+wpaHxJkhYZ6LxIJfAb35FKsAdJvGm7Y8HZmpV8c+J9 SPKqBTL2/GD3ECc6yPBBUZGNaaFbLy0= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-199-lG_yqiODNfSsMeF7oDnZIg-1; Mon, 30 Jan 2023 15:20:03 -0500 X-MC-Unique: lG_yqiODNfSsMeF7oDnZIg-1 Received: by mail-ed1-f72.google.com with SMTP id z18-20020a05640235d200b0049d84165065so8983965edc.18 for ; Mon, 30 Jan 2023 12:20:02 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=yXWQTZnfl7smKeiYCB+FKOZKyFdPsirvtVMwzfQ1w+c=; b=5T2cEDM0p9TuIN2RUbgWlLNo8pdr8OZPC810joHByEP3oBFN6zoiUJKXDStZKAP7MR wdHzYUPh1fx2RWQJx2PQyo9cvFNrDgLwWWIm9HyptOZSLuTeHwGwpnDKL3KtPWWyeUUf exgIbTamhC+EwwzecmIu8HXewdia6RXnLlgyOoEvXcJQ8LGWq4GLciHSmtRw1kMHyk5Y r64cufNkPHseAYpbx/YBgaDTupi3uP0SgDii3na0gPkPD4uS5wzUF1pxl3YuMtQudYJU nyMtMxeBItW3xuKooJk7ruaDKiUpVwFiO0vxXxvDZeiWTWv7vZmkzRBgYMEAGQXhUw+W +waQ== X-Gm-Message-State: AFqh2kqtdsVEfGZoimJULArSq/zZBGLaYWAtmZkMVt0mCq50YXm6kAT8 kGZBTWpfxgX8TYc1a2dTYOTdAMOIOy1hzLUSRZGOhFixd76XSDY5HxfEkQXqs49Oupq+3KCERm/ FBR/9Xnz0IG01uMxZp4v6fch6dmDwymOVQBsabw7s3J8K17vnZ2GNepBY3IwD X-Received: by 2002:a05:6402:2484:b0:497:233d:3ef5 with SMTP id q4-20020a056402248400b00497233d3ef5mr61046438eda.23.1675110001516; Mon, 30 Jan 2023 12:20:01 -0800 (PST) X-Google-Smtp-Source: AMrXdXsEMYVoMYtUUrFvEDQD3JCbnXYPQ0p6M3sMAmrE0fBEWyYqfkj3QkIRXxwjuz4RDiq6IbNQcg== X-Received: by 2002:a05:6402:2484:b0:497:233d:3ef5 with SMTP id q4-20020a056402248400b00497233d3ef5mr61046419eda.23.1675110001189; Mon, 30 Jan 2023 12:20:01 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id r24-20020aa7cfd8000000b00495c3573b36sm7390353edy.32.2023.01.30.12.19.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:00 -0800 (PST) Date: Mon, 30 Jan 2023 15:19:58 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Thomas Huth , Laurent Vivier , Paolo Bonzini Subject: [PULL 23/56] tests: boot_sector_test: avoid crashing if status is not available yet Message-ID: <20230130201810.11518-24-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov If test case was started in paused mode (-S CLI option) and then allowed to continue via QMP, boot_sector_test could assert on transient state with following error: assertion failed (qdict_get_try_str(qret, "status") == "running"): (NULL == "running") Instead of crashing test if 'status' is not available yet, skip check and repeat iteration again after TEST_DELAY has elapsed. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-14-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/boot-sector.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/qtest/boot-sector.c b/tests/qtest/boot-sector.c index 44a109abd8..d3f68018e7 100644 --- a/tests/qtest/boot-sector.c +++ b/tests/qtest/boot-sector.c @@ -160,7 +160,9 @@ void boot_sector_test(QTestState *qts) qrsp = qtest_qmp(qts, "{ 'execute': 'query-status' }"); qret = qdict_get_qdict(qrsp, "return"); g_assert_nonnull(qret); - g_assert_cmpstr(qdict_get_try_str(qret, "status"), ==, "running"); + if (qdict_get_try_str(qret, "status")) { + g_assert_cmpstr(qdict_get_try_str(qret, "status"), ==, "running"); + } qobject_unref(qrsp); g_usleep(TEST_DELAY); From patchwork Mon Jan 30 20:20:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121765 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id E1788C636CD for ; Mon, 30 Jan 2023 20:26:08 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMae7-0005n8-Bf; Mon, 30 Jan 2023 15:20:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadk-0004pt-Vo for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:38 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadj-0007Fl-Fz for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:32 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110030; 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=jY+AksjrJX7CqpiCRcQ/PHiwB0AL/642abvCG866J2c=; b=eynEm4DfKWCH0kEuLQmW9JfFNBgvYXUHrwbQF2ccFkkuPuJ8q4SB1hz+TVD6bcNs7CzkpK i6IUOOr7TIeDVSrBLwmHSyWt60y2eT2qI6z0eLJh+1zlppGWWvXdjd5fOurG3fNpkSJMKp GkJQuXmFypKZpDpH3vEqw72lN5MOHn4= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-647-sbtXdRDCNRS0MJuMT_L9xA-1; Mon, 30 Jan 2023 15:20:28 -0500 X-MC-Unique: sbtXdRDCNRS0MJuMT_L9xA-1 Received: by mail-ed1-f72.google.com with SMTP id g14-20020a056402090e00b0046790cd9082so8987543edz.21 for ; Mon, 30 Jan 2023 12:20:27 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=jY+AksjrJX7CqpiCRcQ/PHiwB0AL/642abvCG866J2c=; b=e1SLbpvTVWXBK1ufzVAbNij2BpmUdh/CV95p6FANIX5MtbkI/vTGy5bsFdqXQ/GW/z 4j/tcEC0SD8ARXJm3IMqiYVLkxGbvSGWHNZkOpu/2AQH6jvdyuTrE5BnKnF6MJYHDtGV 5Vi4nmXLnBqQqazE6PcBlrl/xiUEIHvhwmvvw3YlP2rVuYxFD1w2Vqzr/LoiYDwitllU RGkNOOaqo5knXErGrIa5ruBDjReF+igmWnFyyqNlvvpEd3KlIAS/3HXf4P09oFsIVMFp 2kyiQWBY8roy7qOeCMTjBvTHU6aYLIsDGkvWu8Ds2kxA9n3ZNwroiT/0xMfHb/H50cHD p6Sg== X-Gm-Message-State: AO0yUKU44jIIncgrDPIoOZnNxFqtHqrfsrxLtgKYEaTJYzFi0KLTt4Br 5KxxZrr1S0R7ngOez4c10h/lSlKce5+mXIZtQceg1/6/ihct5QZCY64+OjM8UreWvaqEpMJY6LG LQBFVFfldM8DlSAq+HijXP5KZcW/4n1COKmtx0KeAlz9nx7fRp4ewWChmus8I X-Received: by 2002:a17:906:1793:b0:888:a32d:b50 with SMTP id t19-20020a170906179300b00888a32d0b50mr5286866eje.40.1675110026552; Mon, 30 Jan 2023 12:20:26 -0800 (PST) X-Google-Smtp-Source: AK7set/IWa7sZY41wnuc1WE6PF+nRnuabbGHIsNjP8NN+2P7k/xS/0bNOe57K2oiGa4bDJlobKPedw== X-Received: by 2002:a17:906:1793:b0:888:a32d:b50 with SMTP id t19-20020a170906179300b00888a32d0b50mr5286844eje.40.1675110026324; Mon, 30 Jan 2023 12:20:26 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id fy37-20020a1709069f2500b0087fbf72175csm4948624ejc.103.2023.01.30.12.20.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:25 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:23 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 24/56] tests: acpi: extend bridge tests with hotplugged bridges Message-ID: <20230130201810.11518-25-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov with previous commit fixing malformed PCNT calls to hotplugged bridges, it should be possible add coldplug/hotplug test when describing PCI topology in DSDT without breeaking CI. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-15-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 48 ++++++++++++++++++++++++++++------ 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index cb95f687fe..b65e864a9c 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -805,12 +805,15 @@ static char *test_acpi_create_args(test_data *data, const char *params) return args; } -static void test_acpi_one(const char *params, test_data *data) +static void test_vm_prepare(const char *params, test_data *data) { - char *args; - - args = test_acpi_create_args(data, params); + char *args = test_acpi_create_args(data, params); data->qts = qtest_init(args); + g_free(args); +} + +static void process_acpi_tables(test_data *data) +{ test_acpi_load_tables(data); if (getenv(ACPI_REBUILD_EXPECTED_AML)) { @@ -830,7 +833,12 @@ static void test_acpi_one(const char *params, test_data *data) } qtest_quit(data->qts); - g_free(args); +} + +static void test_acpi_one(const char *params, test_data *data) +{ + test_vm_prepare(params, data); + process_acpi_tables(data); } static uint8_t base_required_struct_types[] = { @@ -861,8 +869,21 @@ static void test_acpi_piix4_tcg_bridge(void) data.variant = ".bridge"; data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); - test_acpi_one("-device pci-bridge,chassis_nr=1 " - "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data); + test_vm_prepare("-S" + " -device pci-bridge,chassis_nr=1" + " -device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2", &data); + + /* hotplugged bridges section */ + qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr", + "{'bus': 'pci.1', 'addr': '2.0', 'chassis_nr': 3 }"); + qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr_multifunc", + "{'bus': 'pci.1', 'addr': '0xf.1', 'chassis_nr': 4 }"); + qtest_qmp_device_add(data.qts, "pci-bridge", "hpbrhost", + "{'bus': 'pci.0', 'addr': '4.0', 'chassis_nr': 5 }"); + qtest_qmp_send(data.qts, "{'execute':'cont' }"); + qtest_qmp_eventwait(data.qts, "RESUME"); + + process_acpi_tables(&data); free_test_data(&data); } @@ -962,7 +983,7 @@ static void test_acpi_q35_multif_bridge(void) .machine = MACHINE_Q35, .variant = ".multi-bridge", }; - test_acpi_one( + test_vm_prepare("-S" " -device virtio-balloon,id=balloon0,addr=0x4.0x2" " -device pcie-root-port,id=rp0,multifunction=on," "port=0x0,chassis=1,addr=0x2" @@ -974,6 +995,17 @@ static void test_acpi_q35_multif_bridge(void) " -device pcie-root-port,id=rphptgt3,port=0x0,chassis=7,addr=2.3", &data); + /* hotplugged bridges section */ + qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr1", + "{'bus': 'br1', 'addr': '6.0', 'chassis_nr': 128 }"); + qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr2-multiif", + "{ 'bus': 'br1', 'addr': '2.2', 'chassis_nr': 129 }"); + qtest_qmp_device_add(data.qts, "pcie-pci-bridge", "hpbr3", + "{'bus': 'rp0', 'addr': '0.0' }"); + qtest_qmp_send(data.qts, "{'execute':'cont' }"); + qtest_qmp_eventwait(data.qts, "RESUME"); + + process_acpi_tables(&data); free_test_data(&data); } From patchwork Mon Jan 30 20:20:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121751 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 81B90C636CD for ; Mon, 30 Jan 2023 20:22:29 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafY-0007ip-Q5; Mon, 30 Jan 2023 15:22:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadx-0004yp-B7 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:47 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadv-0007M6-RW for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:45 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110042; 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=DIVmCJPRI4SCSb4H+VdxsAkmz8FsQBvlv4F1S/IqRQw=; b=PQaLzxNhOTAgxqZCa3sQhfDno3pJwkTnCTia4z4BoXxiyWOLvVcI0spfV4ogsmfgJ2bmMN UsrcAKKIZylcV/QiK6I2j+41ArhLs5OURuvoyjBGPBcYvBwJkKGpv7yWxdgxQqo/msuYLt YUhtXwpt6GeM0ngXQadglOnkKHdkWKA= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-255-auzJjdI2O9yA6u_4hr6aRg-1; Mon, 30 Jan 2023 15:20:33 -0500 X-MC-Unique: auzJjdI2O9yA6u_4hr6aRg-1 Received: by mail-ed1-f72.google.com with SMTP id y21-20020a056402359500b0049e171c4ad0so8884328edc.6 for ; Mon, 30 Jan 2023 12:20:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=DIVmCJPRI4SCSb4H+VdxsAkmz8FsQBvlv4F1S/IqRQw=; b=iRckSaV1h7DpPSaiS1dVpWSRWlFGD7nn6G7YaxRiBGSN+OR+p5vCgRcu4GDHMsw3lm FbataDBRP9eahZLqmzQoIYD9K9PvcVcD2yxEVl/Zud3ESPTvH23EZ362SHlUz+rGfwYi 59xGBMGv8ZbzOtfEYGxW3uSEl5WMlFMiZZPOgmqIaNXGIMDprpD1h6/IB+3uASZi+ZtU UpX+xIAiRS7dDPLuhx3b9JdgHmspLnK04nzY9Fb/E1vsRnSsR2eXJ6oY0eLPhYm/5End ax+++Cp+pSGu7Eq9keIty3DDmvwMoHkRDflihht20oG1twJg+4VjM5PlBLpY0YvuekR3 eSMQ== X-Gm-Message-State: AFqh2kpEloT4JxVvcEJq0757fbP1y/2zIvVcX4lYPRS0K3oWrSvJd9Ke jsD/rIRtJPte4MAu3jiQr6Q2MRFfHiy5jqfF296iplY9ggtezsZ9qLU0AbyXx07aDkwO0JWh0kC YP3siXSHUka+h1ZES33/yb+TvoynvlMpGt9gLt+2QfDwuKCFRucUBbPVocqLu X-Received: by 2002:a17:906:6b8d:b0:7c1:4d21:abb7 with SMTP id l13-20020a1709066b8d00b007c14d21abb7mr54091146ejr.54.1675110032123; Mon, 30 Jan 2023 12:20:32 -0800 (PST) X-Google-Smtp-Source: AMrXdXv5CVyu6CeA3ekpN69rk5SBKxvlINmVE5/hkCbrIKKsLDjgFMXioUjJ7R4HvAqWB8ON6I9RPA== X-Received: by 2002:a17:906:6b8d:b0:7c1:4d21:abb7 with SMTP id l13-20020a1709066b8d00b007c14d21abb7mr54091125ejr.54.1675110031902; Mon, 30 Jan 2023 12:20:31 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id gb39-20020a170907962700b0084d3acda5fasm7308714ejc.189.2023.01.30.12.20.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:31 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:28 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Thomas Huth , Laurent Vivier , Paolo Bonzini Subject: [PULL 25/56] tests: boot_sector_test(): make it multi-shot Message-ID: <20230130201810.11518-26-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov if the function is called the 2nd time within the same qtest session, it will prematurely return before boot sector is executed due to remaining signature. Follow up patch will add VM reboot to a test case and will call boot_sector_test() again within the same qtest env, which may lead to above issue. To fix it make sure signature in VM RAM is no more before exiting boot_sector_test(), so next time it's called it will wait boot sector is completed again. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-16-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/boot-sector.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/qtest/boot-sector.c b/tests/qtest/boot-sector.c index d3f68018e7..679ee17e2a 100644 --- a/tests/qtest/boot-sector.c +++ b/tests/qtest/boot-sector.c @@ -153,6 +153,8 @@ void boot_sector_test(QTestState *qts) signature_high = qtest_readb(qts, SIGNATURE_ADDR + 1); signature = (signature_high << 8) | signature_low; if (signature == SIGNATURE) { + /* wipe signature */ + qtest_writeb(qts, SIGNATURE_ADDR, 0x00); break; } From patchwork Mon Jan 30 20:20:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121772 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 6C8F7C54EAA for ; Mon, 30 Jan 2023 20:27:05 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadf-0004F9-2R; Mon, 30 Jan 2023 15:20:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadU-0003UK-Sv for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:17 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadS-00077W-Cl for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110013; 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=AohUTWfRo/Xw5AaCz9fE2dRmICs29JcF+Q2hBq98uEc=; b=QfG0cGzK7SUXOiRTXoACXzE3Uxh5oEhgrgsQlx5Q6Nym6BnVYGswF4BXPF7K66qyqok50l DtQ0d6gTDpOsVo6eLtBT3RVw/Ae8knImxuc9XrRetK76J9YyD3aSOOeYB+XZ8Cefm2KO4/ 8jAZyMq8O4NRxeV4J4OvkO2DVf/qR18= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-638-zBVTerWzPJmT-bDvG20TtQ-1; Mon, 30 Jan 2023 15:20:12 -0500 X-MC-Unique: zBVTerWzPJmT-bDvG20TtQ-1 Received: by mail-ej1-f71.google.com with SMTP id sa8-20020a170906eda800b0087875c99e6bso7454654ejb.22 for ; Mon, 30 Jan 2023 12:20:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=AohUTWfRo/Xw5AaCz9fE2dRmICs29JcF+Q2hBq98uEc=; b=z7+3jqoB2LLaML7JokrLrigTEKPdsrdh4OkZe5Yh6lMVqFtFDos8WostL9lXO2zhOp WxAPSUCJ1SiWxmWgDiQTVBGJpXr7kijamWr/aCL+hEr4g9AXWLvPUI2trRYLnS4oacND wde0xTcL6ssLa929r32RtcIPZWzkDu8P7mtb8YIwA262iIApuZtmrUOOg1oZSYQT+XID b3Dg1vtL4U2GoN4KWmJ/pjKCsPT3A0D7OxDmaDC2NYlCMPGGoZIwkDZM1UJykobYViL0 kbMW1Wc4EYg/uC+7JhMLlGXjT0usFk1aUVWoQcuTXsGYbyYW2rPvqDRwDZwWIrTVox+T Ws7g== X-Gm-Message-State: AO0yUKWJYSolloHyOPSNlToAwM5UpezG52y+ah9QUhYrHCaZaiXY1oSk gkWargBdFtuL/M/Ek87ciOtCnqyUwNWoYYNlQPEGiadGbpkVYL+NJ1+BRTXGeEhYSR9drK2ocD7 zWAokXi/00q45dTklOoE2kLfsYstmUYrM92HHZpmShToolCkSIwi8LpYujdUd X-Received: by 2002:a17:906:26d8:b0:878:47d2:6f3d with SMTP id u24-20020a17090626d800b0087847d26f3dmr19198620ejc.48.1675110010629; Mon, 30 Jan 2023 12:20:10 -0800 (PST) X-Google-Smtp-Source: AK7set/wfSQasBsFhGBhONWvg6roQHRm2YVXO9mzUT55T4z8yfQyWShrgWPmOWY2AzoJudkZLVPRXw== X-Received: by 2002:a17:906:26d8:b0:878:47d2:6f3d with SMTP id u24-20020a17090626d800b0087847d26f3dmr19198608ejc.48.1675110010422; Mon, 30 Jan 2023 12:20:10 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id ja3-20020a170907988300b008818d9e0bfesm4634465ejc.117.2023.01.30.12.20.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:09 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:07 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 26/56] tests: acpi: add reboot cycle to bridge test Message-ID: <20230130201810.11518-27-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov hotplugged bridges should not be described in DSDT, while it works on cold boot, some ACPPI PCI code are invoked during reboot. This patch will let us catch unexpected AML if hotplug checks are broken. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-17-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index b65e864a9c..a8c17461c8 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -812,7 +812,7 @@ static void test_vm_prepare(const char *params, test_data *data) g_free(args); } -static void process_acpi_tables(test_data *data) +static void process_acpi_tables_noexit(test_data *data) { test_acpi_load_tables(data); @@ -831,7 +831,11 @@ static void process_acpi_tables(test_data *data) SmbiosEntryPointType ep_type = test_smbios_entry_point(data); test_smbios_structs(data, ep_type); } +} +static void process_acpi_tables(test_data *data) +{ + process_acpi_tables_noexit(data); qtest_quit(data->qts); } @@ -883,6 +887,11 @@ static void test_acpi_piix4_tcg_bridge(void) qtest_qmp_send(data.qts, "{'execute':'cont' }"); qtest_qmp_eventwait(data.qts, "RESUME"); + process_acpi_tables_noexit(&data); + free_test_data(&data); + + /* check that reboot/reset doesn't change any ACPI tables */ + qtest_qmp_send(data.qts, "{'execute':'system_reset' }"); process_acpi_tables(&data); free_test_data(&data); } @@ -1005,6 +1014,11 @@ static void test_acpi_q35_multif_bridge(void) qtest_qmp_send(data.qts, "{'execute':'cont' }"); qtest_qmp_eventwait(data.qts, "RESUME"); + process_acpi_tables_noexit(&data); + free_test_data(&data); + + /* check that reboot/reset doesn't change any ACPI tables */ + qtest_qmp_send(data.qts, "{'execute':'system_reset' }"); process_acpi_tables(&data); free_test_data(&data); } From patchwork Mon Jan 30 20:20:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121744 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 4BE19C636CD for ; Mon, 30 Jan 2023 20:20:42 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadg-0004Pl-Dq; Mon, 30 Jan 2023 15:20:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMada-0003r5-0z for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:24 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadY-0007Av-DF for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:21 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110019; 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=qHK7YhyLFZo3ZJSLcPiq2m8TN1x87B4UCcwjnH53u8g=; b=VamUckHRNIScDaAifq1iSSXb45d1KzS8Gw4l+v3TNUeM0DDx+PmGU6lvkdgnDhon4rJXjN xwZZSF1fJharVtk18EoQtpGies3qNXO1zGinwzQdDPjKwS9ITAvcUsARpZ4EgYTq6REjB2 iz2JGDC6s1XAN13dLFN5nvUqBI7YynM= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-393-DuIKGhJJMYCqVieSLmXb8Q-1; Mon, 30 Jan 2023 15:20:16 -0500 X-MC-Unique: DuIKGhJJMYCqVieSLmXb8Q-1 Received: by mail-ej1-f71.google.com with SMTP id d10-20020a170906640a00b008787d18c373so7035336ejm.17 for ; Mon, 30 Jan 2023 12:20:16 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=qHK7YhyLFZo3ZJSLcPiq2m8TN1x87B4UCcwjnH53u8g=; b=XDrvQd9hj7INmqBq9/jbe4Iqhl3T86c6BoNj0YnZ88/uGo0b+sy/KFS1rf66eN+KOA OuiFeGRPKWUD5UIoyqegSQUBaChhq1Fyl7++lp6i8WJ4OWthQ5fn4Mkae5RaebMwXu5A 7OiOGMz4JvuY39SrK9h0+KUgr7GArRN2KUCESX+bXyNtjKq9TMwqbkHt5LhjAVEfo6nO I5Tm5+v3rZq9q33NC5+eGQTh2KBXm2cx6PZJupythZ1wZU0ZNVEirPL0l64Z5qF3tfeY VHdwxaNDqqEPdfj1E0PO/M5PS5pf7WobHOuwA9EIBu/WJcxNRmtFnLOtsTI3i0vkIEgC sYPg== X-Gm-Message-State: AO0yUKVd3bYn3D6u3mQDPLnFgE2HIf5gj/B3CH3RA/lQK8B90FhL05eW +o6Med0L+dosOD/PUM3U/+cjT+lYI+z45jgbKaMdpRtJqh+q7c051jinxnjkq0D2AR9W3YZe1ab KLL3w9tpwvL2loT3gkcEiMgVwKt22yznsheyT06BfPNj9MfOIJ1mfINO993mQ X-Received: by 2002:a17:906:1793:b0:888:a32d:b50 with SMTP id t19-20020a170906179300b00888a32d0b50mr5286048eje.40.1675110014912; Mon, 30 Jan 2023 12:20:14 -0800 (PST) X-Google-Smtp-Source: AK7set+XKwy82YLaukmycMtKAJVhmmto8lnHTm5LGIIxTycF9UmdvOERSUvLZeyygk9ioIiaOssD4w== X-Received: by 2002:a17:906:1793:b0:888:a32d:b50 with SMTP id t19-20020a170906179300b00888a32d0b50mr5286027eje.40.1675110014675; Mon, 30 Jan 2023 12:20:14 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id i4-20020a170906264400b0084d35ffbc20sm7351989ejc.68.2023.01.30.12.20.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:14 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:11 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 27/56] tests: acpi: whitelist DSDT before refactoring acpi based PCI hotplug machinery Message-ID: <20230130201810.11518-28-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-18-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..dea61d94f1 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,2 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT.hpbrroot", From patchwork Mon Jan 30 20:20:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121800 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 08010C636D3 for ; Mon, 30 Jan 2023 20:32:40 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadd-00042O-OG; Mon, 30 Jan 2023 15:20:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadb-0003rP-Hx for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:24 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMada-0007Bv-01 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:23 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110021; 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=KBz6wG5deB9Si5qL+2YtmJbELltQcc5eyzG12gn3s1s=; b=FImIFsSsro0sujPCSx0DDl3xleHiTrkdhyIa4IGX98skgEmM3o901PsdTom7lEBMlb0HRI 2UplhoSgFhK9JdyJymHLhUll1lC++358rfo02tX/yR7AZQy0Nv8whB0EH3TOkRqAlY/Pho E9KR4MWaaUYWEqyDmykzGq74G/tbjwk= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-442--tcn9OYZPxC0GgkFLyf_eQ-1; Mon, 30 Jan 2023 15:20:20 -0500 X-MC-Unique: -tcn9OYZPxC0GgkFLyf_eQ-1 Received: by mail-ej1-f69.google.com with SMTP id js21-20020a17090797d500b008858509ff2aso3236894ejc.4 for ; Mon, 30 Jan 2023 12:20:19 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=KBz6wG5deB9Si5qL+2YtmJbELltQcc5eyzG12gn3s1s=; b=po6qBJXK+3MyJBMa9XIWq2eWAFC/IwNutQsres2gcgziwoHqE0H/iPjxpH7689zia+ BtdSrUN+4Om++3YmAPrjI81XijzMat5Q5x2dhAO/LNbwLyuaZAfUB+XQdcvNvR8YvE7V Pp+Z2heo2gecVIZoIJ2R5RotXiQ78eT8gfvemXNgh1HjkD2U6lZsmV3oDutV6l54nz22 ocRTz+qldrVVWbCjdCBYee7FowJQFYp1sRerNjXT9kVbjqp60vZsW7wtywlISTB8jSuL pdUtuq82Y8cQANOon8XsG6vl1dYut5laO6dgv1TnbqhOInfJ+Ae+mqEJ0aRSn3yNAYmZ dqrw== X-Gm-Message-State: AO0yUKVqFHDp4GpsS8qQGMi3kMJw3zSKoeWaJNGQiLVhQCJpfsOkvW4J WYjbXN48gvDzjAprONjXnZd9tXJSL+83lBUr6O/AwU1xVO0MjuMMbayrffA5Jpw1fJMFXSxyzj7 ndxGdq4vfDIeKFpnEok+NmXv122ebfm3OqbiSfJN8/diq64eHmKhrjKE3YwuF X-Received: by 2002:a17:907:3f1f:b0:878:702c:bd86 with SMTP id hq31-20020a1709073f1f00b00878702cbd86mr873250ejc.74.1675110018361; Mon, 30 Jan 2023 12:20:18 -0800 (PST) X-Google-Smtp-Source: AK7set8JXnJ6Mz4wWZc3ZcrTcI59fWNnDJzgZmBc9Mw/kY2dnnhny63/YVgsVJmgVFqxk57UMSF6eg== X-Received: by 2002:a17:907:3f1f:b0:878:702c:bd86 with SMTP id hq31-20020a1709073f1f00b00878702cbd86mr873224ejc.74.1675110018083; Mon, 30 Jan 2023 12:20:18 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id t12-20020a1709063e4c00b0088a9e083318sm1048449eji.168.2023.01.30.12.20.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:17 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:15 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 28/56] pcihp: drop pcihp_bridge_en dependency when composing PCNT method Message-ID: <20230130201810.11518-29-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov .. and use only BSEL presence to decide on how PCNT should be composed. That simplifies possible combinations to consider, but mainly it makes PCIHP AML be governed only by BSEL, which is property of PCIBus (aka part of bridge) and as result it opens possibility to convert build_append_pci_bus_devices() into AcpiDevAmlIf::build_dev_aml callback to make bridges self describing. PS: used approach leaves unused PCNT, when ACPI hotplug is completely disabled but that's harmless and followup commits will get rid of it later. Scope (PCI0) ... Method (PCNT, 0, NotSerialized) { } ... } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-19-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 53 ++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 29 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 1c51ab01fc..27f2cc4180 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -494,39 +494,34 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, aml_append(parent_scope, notify_method); } - /* Append PCNT method to notify about events on local and child buses. - * Add this method for root bus only when hotplug is enabled since DSDT - * expects it. + /* + * Append PCNT method to notify about events on local and child buses. */ - if (bsel || pcihp_bridge_en) { - method = aml_method("PCNT", 0, AML_NOTSERIALIZED); + method = aml_method("PCNT", 0, AML_NOTSERIALIZED); - /* If bus supports hotplug select it and notify about local events */ - if (bsel) { - uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel)); + /* If bus supports hotplug select it and notify about local events */ + if (bsel) { + uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel)); - aml_append(method, aml_store(aml_int(bsel_val), aml_name("BNUM"))); - aml_append(method, aml_call2("DVNT", aml_name("PCIU"), - aml_int(1))); /* Device Check */ - aml_append(method, aml_call2("DVNT", aml_name("PCID"), - aml_int(3))); /* Eject Request */ - } - - /* Notify about child bus events in any case */ - if (pcihp_bridge_en) { - QLIST_FOREACH(sec, &bus->child, sibling) { - if (pci_bus_is_root(sec) || - !object_property_find(OBJECT(sec), ACPI_PCIHP_PROP_BSEL)) { - continue; - } - - aml_append(method, aml_name("^S%.02X.PCNT", - sec->parent_dev->devfn)); - } - } - - aml_append(parent_scope, method); + aml_append(method, aml_store(aml_int(bsel_val), aml_name("BNUM"))); + aml_append(method, aml_call2("DVNT", aml_name("PCIU"), + aml_int(1))); /* Device Check */ + aml_append(method, aml_call2("DVNT", aml_name("PCID"), + aml_int(3))); /* Eject Request */ } + + /* Notify about child bus events in any case */ + QLIST_FOREACH(sec, &bus->child, sibling) { + if (pci_bus_is_root(sec) || + !object_property_find(OBJECT(sec), ACPI_PCIHP_PROP_BSEL)) { + continue; + } + + aml_append(method, aml_name("^S%.02X.PCNT", sec->parent_dev->devfn)); + } + + aml_append(parent_scope, method); + qobject_unref(bsel); } From patchwork Mon Jan 30 20:20:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121764 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id DCA5AC636CD for ; Mon, 30 Jan 2023 20:25:49 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMadu-0004pc-1X; Mon, 30 Jan 2023 15:20:45 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMade-0004BW-Gv for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:26 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadc-0007Dw-VG for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110024; 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=tFTTc7WXuTD4mtGXod/PqPYVOn2MtwgkQJK+sIVXhuI=; b=FWzFHJ619bqPlfAfKncNk0CaOaNo6cXw1UezbZXoj4zDs0zKxYRFk0kbz4w3QQuEDUwLmi ebQMIo80kEAK4gqVdAbivR190QS0xj3Snw4mb6vUIJ6USoq0wHXp6WrhlYgfcK0K55YK0J ADMeRYmF1WoTrsNjqV7v3iPhtzcAiUg= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-663-6uV5MVaCNRyQl__CMZyqzg-1; Mon, 30 Jan 2023 15:20:23 -0500 X-MC-Unique: 6uV5MVaCNRyQl__CMZyqzg-1 Received: by mail-ed1-f71.google.com with SMTP id s3-20020a50ab03000000b0049ec3a108beso8936327edc.7 for ; Mon, 30 Jan 2023 12:20:22 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=tFTTc7WXuTD4mtGXod/PqPYVOn2MtwgkQJK+sIVXhuI=; b=sQ94aC8SZFz0DTGPkfziSFgqqGCXKM+L3r0xm6EOg2zmDmKtFBbq9ix7BaSOHJjpJx ePHPkwtAWp51VaZMU11h5vtxvWdc5tqaNNZ8diGqyujyjwT49gbvk0FZFVKUPY6SYsFN tsF4aF3H7TEzhvBV3E2SSCPzoEQ1CFQ152BI7uLn+ames3QsepKhORsrozPjeV3W48hb DxXdODanNL8X3Ir0qG/VlyCBXMN4Co2UUH2TM2Oia2a3hl6Pn3TtTaLPvxMFVtSDda6E nmNSRPWER68nQbZUykwuaLf7TdsnStEEQpYtxWv2qyc3znwcrlGfzkaGBXZyCfvI/3FZ h3dw== X-Gm-Message-State: AFqh2kp6F/PpBhn2PC6joMLaqJe6ipfEelmZjAwD/ZpgGdOTiAD/e9Kr Deetz6GVZ83F8Rgj/77Si0LMrmsSZZjE1DcAiLSpfY6DERpgxcdlVAifR45bZpgJC6meDSjTSw2 d3xcjALCBpd0o6aH3zLi+qgIGLr0Nt3UYQAA5d4UXSgzpRJOw2T+aAoo5s9iG X-Received: by 2002:a05:6402:ea8:b0:494:fae3:c0df with SMTP id h40-20020a0564020ea800b00494fae3c0dfmr54524967eda.12.1675110021547; Mon, 30 Jan 2023 12:20:21 -0800 (PST) X-Google-Smtp-Source: AMrXdXvB5fU6zYxP2DiZ9oXwqu9WxUwUTuEABNf6FC5HbatuVTHSJqasAZ26Z4LFMo62F+/0igJO4g== X-Received: by 2002:a05:6402:ea8:b0:494:fae3:c0df with SMTP id h40-20020a0564020ea800b00494fae3c0dfmr54524952eda.12.1675110021328; Mon, 30 Jan 2023 12:20:21 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id ko25-20020a170907987900b0086edf177209sm7441864ejc.78.2023.01.30.12.20.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:20 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:18 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 29/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-30-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov expected change: Scope (PCI0) ... Method (PCNT, 0, NotSerialized) { } ... } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-20-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 1 - tests/data/acpi/pc/DSDT.hpbrroot | Bin 3064 -> 3071 bytes 2 files changed, 1 deletion(-) diff --git a/tests/data/acpi/pc/DSDT.hpbrroot b/tests/data/acpi/pc/DSDT.hpbrroot index 578468f4f00a9373366c92926b512c192dd6675b..42d923ef3fcc17898955ff30a1dda1bfd7da0947 100644 GIT binary patch delta 42 ycmew%{$HHSCD X-Patchwork-Id: 13121749 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 81240C54EAA for ; Mon, 30 Jan 2023 20:22:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMae8-0005vo-0o; Mon, 30 Jan 2023 15:20:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadj-0004mO-Kq for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:32 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadg-0007Fc-Sj for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110028; 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=JjnCufhxxd9comUmhDEOHeCYqljOgt4/fuQgr1F6Ols=; b=EvHIDu1u08OCsi0mJEd67r5S8hF2XEPkf1KXwmD8bzJUr+MxxXqKdhXLAvcWnC830HJooA grzUjeYi2msFtt+HhHYbGsVOQOdDPwTuqQ72db/+z8nXnwFU/5PFscQTXZsEB+N9ONDfz0 pMeqFuRrYi2N7ScJw/yKPnmnl6DbqRk= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-583-y-xT7rHiNwGbk6qCLa5liA-1; Mon, 30 Jan 2023 15:20:26 -0500 X-MC-Unique: y-xT7rHiNwGbk6qCLa5liA-1 Received: by mail-ed1-f69.google.com with SMTP id y21-20020a056402359500b0049e171c4ad0so8884128edc.6 for ; Mon, 30 Jan 2023 12:20:26 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=JjnCufhxxd9comUmhDEOHeCYqljOgt4/fuQgr1F6Ols=; b=IKc0GWbDHeEYA/tP7o2TFjKcfoRN9D76rPyIeSNQBXyQG2tKco8h7fzjH/7vyAfFHt ox+zlN0hRRRjTyrDpL4q9ap9xX60KqbtpUiMg+oh4+x+XVXRrICp0RHmjjKH5cEgdBcs Nq04Umua8D0K3gett0cVxS4Jy7II4j1uNoE82ug4qtwr5A/NHDGC7Fu4XOx5lcKwD5Lt LRNmmQ7a8o+AkDHN7PT9wzygjcLvoRDPqsnlU9xxzF7dbkIM4l2ujHlvRf14+vSIARDW HkNNJo5ok04YNSoalDRhvjolC2Wa6JvPaRgtP38sPNCZ6t9MrjSX9Duc7ytUfj77yARZ F9jA== X-Gm-Message-State: AO0yUKVQpfE5toerxMfqUiU/Zch+4WwgUUveT5kmS2rbbVzcKMVmKSiw w8C3sxUASfOEe+baaHmdxansBEfwIigmBGAlm0ev55//fJK2ScPc53GiO+GYbQgsvPFoa61TG5c F4uBPoJM9QqxtMLb8FkSVh1L1i8r24xFaOZ9adYEn37G1khBFg6O/8ufEm0PK X-Received: by 2002:a17:906:3da:b0:887:d0e6:fa24 with SMTP id c26-20020a17090603da00b00887d0e6fa24mr6087661eja.76.1675110024766; Mon, 30 Jan 2023 12:20:24 -0800 (PST) X-Google-Smtp-Source: AK7set8r9XMaaxxU5cv5H/5dLAeyva/g8Cp2lLlDioPS0I+tHSL1PpsNLGpA9CeM17ZRuSLuxaphig== X-Received: by 2002:a17:906:3da:b0:887:d0e6:fa24 with SMTP id c26-20020a17090603da00b00887d0e6fa24mr6087649eja.76.1675110024511; Mon, 30 Jan 2023 12:20:24 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id g13-20020a17090613cd00b00782fbb7f5f7sm7340482ejc.113.2023.01.30.12.20.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:23 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:21 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 30/56] tests: acpi: whitelist DSDT before refactoring acpi based PCI hotplug machinery Message-ID: <20230130201810.11518-31-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-21-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 36 +++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..4be20b2cd1 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,37 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT", +"tests/data/acpi/pc/DSDT.bridge", +"tests/data/acpi/pc/DSDT.ipmikcs", +"tests/data/acpi/pc/DSDT.cphp", +"tests/data/acpi/pc/DSDT.memhp", +"tests/data/acpi/pc/DSDT.numamem", +"tests/data/acpi/pc/DSDT.nohpet", +"tests/data/acpi/pc/DSDT.dimmpxm", +"tests/data/acpi/pc/DSDT.acpihmat", +"tests/data/acpi/pc/DSDT.acpierst", +"tests/data/acpi/pc/DSDT.roothp", +"tests/data/acpi/pc/DSDT.hpbrroot", +"tests/data/acpi/pc/DSDT.hpbridge", +"tests/data/acpi/q35/DSDT", +"tests/data/acpi/q35/DSDT.tis.tpm2", +"tests/data/acpi/q35/DSDT.tis.tpm12", +"tests/data/acpi/q35/DSDT.bridge", +"tests/data/acpi/q35/DSDT.multi-bridge", +"tests/data/acpi/q35/DSDT.mmio64", +"tests/data/acpi/q35/DSDT.ipmibt", +"tests/data/acpi/q35/DSDT.cphp", +"tests/data/acpi/q35/DSDT.memhp", +"tests/data/acpi/q35/DSDT.numamem", +"tests/data/acpi/q35/DSDT.nohpet", +"tests/data/acpi/q35/DSDT.dimmpxm", +"tests/data/acpi/q35/DSDT.acpihmat", +"tests/data/acpi/q35/DSDT.acpierst", +"tests/data/acpi/q35/DSDT.applesmc", +"tests/data/acpi/q35/DSDT.pvpanic-isa", +"tests/data/acpi/q35/DSDT.ivrs", +"tests/data/acpi/q35/DSDT.viot", +"tests/data/acpi/q35/DSDT.cxl", +"tests/data/acpi/q35/DSDT.ipmismbus", +"tests/data/acpi/q35/DSDT.xapic", +"tests/data/acpi/q35/DSDT.acpihmat-noinitiator", +"tests/data/acpi/q35/DSDT.core-count2", From patchwork Mon Jan 30 20:20:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121753 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id B372DC636CD for ; Mon, 30 Jan 2023 20:23:07 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaeG-0006ah-Am; Mon, 30 Jan 2023 15:21:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadp-0004tT-7t for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:40 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadl-0007GA-Gg for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110032; 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=b9u5N65oc55e8DOwSph1DCZUKxvwxisHdLrYlc9DoLU=; b=CeySPzcxbRukftWOHlv5BpeHZEdzVETBYOBNJeBRhNRlKSsEML/RHBzuzCmuh1FJL7fk5u XEIG2XoOZHIYMrEvj1nydRalTIlTIFSXIrdRGqhcaRFOiWa0jDAjoAzSZZ8ZrYKytRFJuj dAwva3Ip/1HGFnEm4o7Oi2P4CLMoMSs= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-582-vv7QfAcTNxmF_pNZz7t3Uw-1; Mon, 30 Jan 2023 15:20:30 -0500 X-MC-Unique: vv7QfAcTNxmF_pNZz7t3Uw-1 Received: by mail-ej1-f72.google.com with SMTP id d14-20020a170906c20e00b00889f989d8deso1897617ejz.15 for ; Mon, 30 Jan 2023 12:20:30 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=b9u5N65oc55e8DOwSph1DCZUKxvwxisHdLrYlc9DoLU=; b=LgWS7tCwDAuVjDz3Y9YywNMFhdrOGvp+tjJ6tAR0CQs5BWjctMAKZ5ZJm3N1Lj80An Pi1FKb40idwEc05yDfSCr5FZr7Hsqw+2O8e1kfpTmJf5mYiFHlbgwX/fBrORRP3pIYG3 jj9qnH7Fnk9aXf43ho8zW33SponWkPq8XrhgLOGHho+L6gRFF2lZAXFhBfAqlIOX4Mcf NRkgYuWjCMBEVkIYYa0zUUyTsQfUS2ZNftixMCR9T2NfM9jyzb0QTlgYUMU2y+wVVeQz XdD1YbVbTuE5VTMK2v4lSh9Die66Q0kk+ERYKR2P3P+m61D9cbzoBTb8X8Y3eHLGKhQ/ UM9w== X-Gm-Message-State: AO0yUKXnEj2BTyWLrljmid+WA76A7Hf1Rm1SxbvVCPhSN2I8Ur3Z3MSf DMLsJ1hUogjUOIHhGDIibM3huZ38gC8ULKWmAb5pxgxN9sBzAHuU5Ekz5bJ+rPkH+3CJAZHfI28 GnFaMbjANFmHLEye4Uh5yFW6p4vlWry14+VQT+KoQmqy+98g824Vrz2xZDPFl X-Received: by 2002:a17:907:8e9b:b0:87a:542e:53b4 with SMTP id tx27-20020a1709078e9b00b0087a542e53b4mr16126062ejc.64.1675110028937; Mon, 30 Jan 2023 12:20:28 -0800 (PST) X-Google-Smtp-Source: AK7set/YYz+XskS5BMp0jtrTj9lhKNJioJ9YTx/HR5HkBfCMReTstisDiWEAyehm4279DRw1HTq4TA== X-Received: by 2002:a17:907:8e9b:b0:87a:542e:53b4 with SMTP id tx27-20020a1709078e9b00b0087a542e53b4mr16126036ejc.64.1675110028607; Mon, 30 Jan 2023 12:20:28 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id e13-20020a170906248d00b0087a9f699effsm6347998ejb.173.2023.01.30.12.20.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:27 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:24 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Paolo Bonzini , Richard Henderson , Eduardo Habkost , Marcel Apfelbaum Subject: [PULL 31/56] pcihp: compose PCNT callchain right before its user _GPE._E01 Message-ID: <20230130201810.11518-32-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov it's a stepping stone to making build_append_pci_bus_devices() suitable for AcpiDevAmlIfClass:build_dev_aml callback and lets further simplify it by separating PCNT generation from slots descriptions. It also makes PCNT callchain ASL much more readable since callchain not longer cluttered by slots descriptors. Plus, move will let next patch easily drop empty PCNT (pc/q35) when there is nothing hotpluggable. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-22-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 27f2cc4180..d434ad9189 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -388,7 +388,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, { Aml *dev, *notify_method = NULL, *method; QObject *bsel; - PCIBus *sec; int devfn; bsel = object_property_get_qobject(OBJECT(bus), ACPI_PCIHP_PROP_BSEL, NULL); @@ -494,12 +493,35 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, aml_append(parent_scope, notify_method); } + qobject_unref(bsel); +} + +static void build_append_notfication_callback(Aml *parent_scope, + const PCIBus *bus) +{ + Aml *method; + PCIBus *sec; + QObject *bsel; + + QLIST_FOREACH(sec, &bus->child, sibling) { + Aml *br_scope = aml_scope("S%.02X", sec->parent_dev->devfn); + if (pci_bus_is_root(sec) || + !object_property_find(OBJECT(sec), ACPI_PCIHP_PROP_BSEL)) { + continue; + } + build_append_notfication_callback(br_scope, sec); + aml_append(parent_scope, br_scope); + } + /* * Append PCNT method to notify about events on local and child buses. + * ps: hostbridge might not have hotplug (bsel) enabled but might have + * child bridges that do have bsel. */ method = aml_method("PCNT", 0, AML_NOTSERIALIZED); /* If bus supports hotplug select it and notify about local events */ + bsel = object_property_get_qobject(OBJECT(bus), ACPI_PCIHP_PROP_BSEL, NULL); if (bsel) { uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel)); @@ -521,7 +543,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, } aml_append(parent_scope, method); - qobject_unref(bsel); } @@ -1721,6 +1742,13 @@ build_dsdt(GArray *table_data, BIOSLinker *linker, aml_append(dsdt, sb_scope); if (pm->pcihp_bridge_en || pm->pcihp_root_en) { + Object *pci_host = acpi_get_i386_pci_host(); + PCIBus *bus = PCI_HOST_BRIDGE(pci_host)->bus; + + scope = aml_scope("\\_SB.PCI0"); + build_append_notfication_callback(scope, bus); + aml_append(dsdt, scope); + scope = aml_scope("_GPE"); { method = aml_method("_E01", 0, AML_NOTSERIALIZED); From patchwork Mon Jan 30 20:20:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121793 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 14766C636D7 for ; Mon, 30 Jan 2023 20:31:10 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMae5-0005c2-8w; Mon, 30 Jan 2023 15:20:53 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadr-0004tb-Bw for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:40 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadp-0007JM-RK for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110037; 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=5JjijdM1GMwOhp+4UE3xLbdkYOhGnIqO14eMmQr7xio=; b=cD7aEAkHZbL5EQSsgcrvFdRjL8wwnUPdq9hmzo8rN2Y+C+MI7I98NBoY0VTcwD8HY2rxxY YGuH9Nksn3Ol438n86ItWnRVzFn2qPHtGvY+d5O4KjvvGSrsb9cl8JzRqNVrgWHqdssorU tgiqUsp1JIy+VfsB+RCZOU11CrdEQL8= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-445-NMxep1GiOiOumjZQaR43Pw-1; Mon, 30 Jan 2023 15:20:35 -0500 X-MC-Unique: NMxep1GiOiOumjZQaR43Pw-1 Received: by mail-ed1-f69.google.com with SMTP id y21-20020a056402359500b0049e171c4ad0so8884392edc.6 for ; Mon, 30 Jan 2023 12:20:35 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5JjijdM1GMwOhp+4UE3xLbdkYOhGnIqO14eMmQr7xio=; b=cXBnS5mBtibzN6d7KCQT4XE2Fu08K+yLj2iMeeXoSa6u2zhrxl/FR/1LLH1TucdRTT C3pPhZGXy/UApBawcBhTte63PQ9acTxSB04wQLiYr/4euq9tkrpwl/Dc5+9UQbINv9ZY 30f4NNAoiQbRx34vIk196GA7fUn2RpkFTnBYF7jv6zGbcFSPZ04uyxU7ELcHevyW5uzm f+9rA9OwREva/SdL3Bb/hakYXQLbxMvEwX1OyBxRRsumH/M2G0ltHJBWcQslJ9VyGuqO irlDN8VwN6TZ5Tf0M86+ZL3CH7YTCMFok6VdhEkT4vT0iS9oU7WLeTIzlchtwucFLidS z8/g== X-Gm-Message-State: AO0yUKXmS60w25ggF6tecGSHyketwXXX1ZI82heoQmwrdTRpOkweUVQE Xy4jX/tcpa55Nj+QTvAeHwfxw39V7MRNL7IpCDJH+S6UUL6V93aHFr05PlXkiDPMvghPmeUkwSY mAEjsSoCuuStXYdSGzF2QdenrOSY12z+vVckEPBxyi2+vHzERDBlbM9ukB9S2 X-Received: by 2002:a05:6402:3511:b0:4a2:f18:6c9 with SMTP id b17-20020a056402351100b004a20f1806c9mr1037532edd.14.1675110032510; Mon, 30 Jan 2023 12:20:32 -0800 (PST) X-Google-Smtp-Source: AK7set8+4rdhdOZ9TrEraMKnKbpQ9pmZRWl98O8Y9e8L/MO1qKN7H/QFio0atCB8zIGnpLhMmfzANQ== X-Received: by 2002:a05:6402:3511:b0:4a2:f18:6c9 with SMTP id b17-20020a056402351100b004a20f1806c9mr1037506edd.14.1675110032190; Mon, 30 Jan 2023 12:20:32 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id p4-20020a056402500400b0049dfd6bdc25sm7343477eda.84.2023.01.30.12.20.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:31 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:28 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 32/56] pcihp: do not put empty PCNT in DSDT Message-ID: <20230130201810.11518-33-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov count number of PCNT methods that actually call Notify and if there aren't any, drop PCNT altogether. It mostly affects 'Q35' tests where there is no root-ports /bridges attached and 'PC' machine when ACPI PCI hotplug is completely disabled. Expected ASL change: - Method (PCNT, 0, NotSerialized) - { - } ... Method (_E01, 0, NotSerialized) // _Exx: Edge-Triggered GPE { - Acquire (\_SB.PCI0.BLCK, 0xFFFF) - \_SB.PCI0.PCNT () - Release (\_SB.PCI0.BLCK) } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-23-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index d434ad9189..6368fcefa3 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -496,12 +496,13 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, qobject_unref(bsel); } -static void build_append_notfication_callback(Aml *parent_scope, +static bool build_append_notfication_callback(Aml *parent_scope, const PCIBus *bus) { Aml *method; PCIBus *sec; QObject *bsel; + int nr_notifiers = 0; QLIST_FOREACH(sec, &bus->child, sibling) { Aml *br_scope = aml_scope("S%.02X", sec->parent_dev->devfn); @@ -509,7 +510,8 @@ static void build_append_notfication_callback(Aml *parent_scope, !object_property_find(OBJECT(sec), ACPI_PCIHP_PROP_BSEL)) { continue; } - build_append_notfication_callback(br_scope, sec); + nr_notifiers = nr_notifiers + + build_append_notfication_callback(br_scope, sec); aml_append(parent_scope, br_scope); } @@ -530,6 +532,7 @@ static void build_append_notfication_callback(Aml *parent_scope, aml_int(1))); /* Device Check */ aml_append(method, aml_call2("DVNT", aml_name("PCID"), aml_int(3))); /* Eject Request */ + nr_notifiers++; } /* Notify about child bus events in any case */ @@ -544,6 +547,7 @@ static void build_append_notfication_callback(Aml *parent_scope, aml_append(parent_scope, method); qobject_unref(bsel); + return !!nr_notifiers; } static Aml *aml_pci_pdsm(void) @@ -1742,20 +1746,26 @@ build_dsdt(GArray *table_data, BIOSLinker *linker, aml_append(dsdt, sb_scope); if (pm->pcihp_bridge_en || pm->pcihp_root_en) { + bool has_pcnt; + Object *pci_host = acpi_get_i386_pci_host(); PCIBus *bus = PCI_HOST_BRIDGE(pci_host)->bus; scope = aml_scope("\\_SB.PCI0"); - build_append_notfication_callback(scope, bus); - aml_append(dsdt, scope); + has_pcnt = build_append_notfication_callback(scope, bus); + if (has_pcnt) { + aml_append(dsdt, scope); + } scope = aml_scope("_GPE"); { method = aml_method("_E01", 0, AML_NOTSERIALIZED); - aml_append(method, - aml_acquire(aml_name("\\_SB.PCI0.BLCK"), 0xFFFF)); - aml_append(method, aml_call0("\\_SB.PCI0.PCNT")); - aml_append(method, aml_release(aml_name("\\_SB.PCI0.BLCK"))); + if (has_pcnt) { + aml_append(method, + aml_acquire(aml_name("\\_SB.PCI0.BLCK"), 0xFFFF)); + aml_append(method, aml_call0("\\_SB.PCI0.PCNT")); + aml_append(method, aml_release(aml_name("\\_SB.PCI0.BLCK"))); + } aml_append(scope, method); } aml_append(dsdt, scope); From patchwork Mon Jan 30 20:20:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121787 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A833CC636CD for ; Mon, 30 Jan 2023 20:30:16 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaeq-0006ta-4C; Mon, 30 Jan 2023 15:21:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadw-0004yG-3o for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:46 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMads-0007L6-OO for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110040; 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=fKhHRCCDfgzPAXJ57BMhhXk+9qsAx4Thc3xinxwKyKk=; b=bVMsnZUFciCPt8XSNUSSwdXZMPpCW/0NIXk5nfz7KdNGPz01frfPS5Dh6zkb6CMKiPq7j1 3tlMV4utLe+kM91OwHJdJTc6T4VDDubMCV10TH9+DlcOFItlkx6KkTugHH1dS7sw33z1Xn rJdxuHXbo3/dLJNehEEX54txOjcaVpU= Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-250-cxklFM73P0ma_kh3LO9bzQ-1; Mon, 30 Jan 2023 15:20:39 -0500 X-MC-Unique: cxklFM73P0ma_kh3LO9bzQ-1 Received: by mail-ed1-f69.google.com with SMTP id b6-20020aa7c906000000b004a25542075eso1911291edt.3 for ; Mon, 30 Jan 2023 12:20:38 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=fKhHRCCDfgzPAXJ57BMhhXk+9qsAx4Thc3xinxwKyKk=; b=a0Th/JyScfKZfbnuf4SDmaGiuk+Eds1FK0rxWd86o8ftpj9pER9H/2cl4ebrTSZByx v7q5aeTbMcrWWEB+C998Tzkf5zdhoAh5OhX8xJLWlurMudTy07tc7Rxd1osNVC7SccTY oBnsTh+eSb6Z0ZFYNzMEJcfS3yVeQuGLHyqmkXsTsCrowVPLJ+yly+XCtRrtLz9DclXH 5lP+j7wnS1IZMNAyhm1+i/7gegzBf/EsXsGeEeRHl9536CkWx0UkhBA/fH1wzD0kh4S/ UtBGxAOmLiaHKpJ3GUJzFvkt+Aifu7vnVt35wDKhSVEyTZZMCVZOZn/CccK/Tt7G0PAq uqtg== X-Gm-Message-State: AO0yUKXzy0Rp7fcJsjwo1lrGXO2MU9gjiFHKWcoANRqNNr5eo3fBEvhM /8qQNfiMnJhn+Kd8ggm0CKa1GgfaMQ8qCV2AW1WpoglVlCABoGZtJamBKWeUm7VSjnYP3PA2JV8 TBXLMwaihE0YFDNMjA/93EUJ4aa8FPokwFWwk5gM0tCJ/mJaqotBI41dwNvmX X-Received: by 2002:a17:907:6e90:b0:887:915d:7502 with SMTP id sh16-20020a1709076e9000b00887915d7502mr8563826ejc.31.1675110036784; Mon, 30 Jan 2023 12:20:36 -0800 (PST) X-Google-Smtp-Source: AK7set9bkq+xvDTz2X7kzq3EZOV8/4QLt2NzXPT5Q1vdc/W05bI+3PAZFZfLZuRAbAr7BDP9vopHOA== X-Received: by 2002:a17:907:6e90:b0:887:915d:7502 with SMTP id sh16-20020a1709076e9000b00887915d7502mr8563786ejc.31.1675110036321; Mon, 30 Jan 2023 12:20:36 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id g18-20020a170906595200b00888d593ce76sm1998627ejr.72.2023.01.30.12.20.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:35 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:32 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 33/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-34-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Expected changes: * pc/bridge testcase due to ("pcihp: compose PCNT callchain right before its user _GPE._E01") ... + Scope (\_SB.PCI0) + { + Scope (S18) + { + Scope (S08) + { + Method (PCNT, 0, NotSerialized) + { + BNUM = 0x02 + DVNT (PCIU, One) + DVNT (PCID, 0x03) + } + } Method (PCNT, 0, NotSerialized) { - BNUM = Zero + BNUM = One DVNT (PCIU, One) DVNT (PCID, 0x03) - ^S18.PCNT () + ^S08.PCNT () } } + + Method (PCNT, 0, NotSerialized) + { + BNUM = Zero + DVNT (PCIU, One) + DVNT (PCID, 0x03) + ^S18.PCNT () + } } Scope (_GPE) * due to ("pcihp: do not put empty PCNT in DSDT") in the most Q35 tests ... { Name (_ADR, 0x001F0003) // _ADR: Address } - - Method (PCNT, 0, NotSerialized) - { - } } } ... { Method (_E01, 0, NotSerialized) // _Exx: Edge-Triggered GPE { - Acquire (\_SB.PCI0.BLCK, 0xFFFF) - \_SB.PCI0.PCNT () - Release (\_SB.PCI0.BLCK) } } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-24-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 36 ------------------ tests/data/acpi/pc/DSDT | Bin 6458 -> 6470 bytes tests/data/acpi/pc/DSDT.acpierst | Bin 6418 -> 6430 bytes tests/data/acpi/pc/DSDT.acpihmat | Bin 7783 -> 7795 bytes tests/data/acpi/pc/DSDT.bridge | Bin 12608 -> 12634 bytes tests/data/acpi/pc/DSDT.cphp | Bin 6922 -> 6934 bytes tests/data/acpi/pc/DSDT.dimmpxm | Bin 8112 -> 8124 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 6418 -> 6430 bytes tests/data/acpi/pc/DSDT.hpbrroot | Bin 3071 -> 3064 bytes tests/data/acpi/pc/DSDT.ipmikcs | Bin 6530 -> 6542 bytes tests/data/acpi/pc/DSDT.memhp | Bin 7817 -> 7829 bytes tests/data/acpi/pc/DSDT.nohpet | Bin 6316 -> 6328 bytes tests/data/acpi/pc/DSDT.numamem | Bin 6464 -> 6476 bytes tests/data/acpi/pc/DSDT.roothp | Bin 9732 -> 9758 bytes tests/data/acpi/q35/DSDT | Bin 8310 -> 8252 bytes tests/data/acpi/q35/DSDT.acpierst | Bin 8327 -> 8269 bytes tests/data/acpi/q35/DSDT.acpihmat | Bin 9635 -> 9577 bytes tests/data/acpi/q35/DSDT.acpihmat-noinitiator | Bin 8589 -> 8531 bytes tests/data/acpi/q35/DSDT.applesmc | Bin 8356 -> 8298 bytes tests/data/acpi/q35/DSDT.bridge | Bin 11439 -> 11458 bytes tests/data/acpi/q35/DSDT.core-count2 | Bin 32450 -> 32392 bytes tests/data/acpi/q35/DSDT.cphp | Bin 8774 -> 8716 bytes tests/data/acpi/q35/DSDT.cxl | Bin 9636 -> 9578 bytes tests/data/acpi/q35/DSDT.dimmpxm | Bin 9964 -> 9906 bytes tests/data/acpi/q35/DSDT.ipmibt | Bin 8385 -> 8327 bytes tests/data/acpi/q35/DSDT.ipmismbus | Bin 8398 -> 8340 bytes tests/data/acpi/q35/DSDT.ivrs | Bin 8327 -> 8269 bytes tests/data/acpi/q35/DSDT.memhp | Bin 9669 -> 9611 bytes tests/data/acpi/q35/DSDT.mmio64 | Bin 9440 -> 9382 bytes tests/data/acpi/q35/DSDT.multi-bridge | Bin 12301 -> 12358 bytes tests/data/acpi/q35/DSDT.nohpet | Bin 8168 -> 8110 bytes tests/data/acpi/q35/DSDT.numamem | Bin 8316 -> 8258 bytes tests/data/acpi/q35/DSDT.pvpanic-isa | Bin 8411 -> 8353 bytes tests/data/acpi/q35/DSDT.tis.tpm12 | Bin 8916 -> 8858 bytes tests/data/acpi/q35/DSDT.tis.tpm2 | Bin 8942 -> 8884 bytes tests/data/acpi/q35/DSDT.viot | Bin 9419 -> 9361 bytes tests/data/acpi/q35/DSDT.xapic | Bin 35673 -> 35615 bytes 37 files changed, 36 deletions(-) diff --git a/tests/data/acpi/pc/DSDT b/tests/data/acpi/pc/DSDT index b688686dc3614f56582991c0974f6ef1964ee6ce..c99179b35254725daeebb416400b1b6f9f1d74c4 100644 GIT binary patch delta 51 zcmdmGbj*m$CDWCDp4a&GRf0H&DuV5fM2#(>Q|+&N54-3^m}@wPKL9iDuK z+i3GvzJJ`C!}#ktHwUX+WZdkh*1@GB;Kvc82htPZ>}eq2&KhiJ5ig(?Y+w;Dq7dNh f7s61$#WeZ8fjFm#CWOlfG9=Lflg2PAv-l6)2(#cWs{xbnFltGUA!z^r diff --git a/tests/data/acpi/pc/DSDT.cphp b/tests/data/acpi/pc/DSDT.cphp index 53eb0dd7d422e880a668cf3ea01b8b288004042a..659ad3d6b9026c090e0d8d8e21ece5df44249ec0 100644 GIT binary patch delta 51 zcmeA&n`Xx466_KpCe6UWxPBv-2QTNT(W8#CI;sqS9Ze|qn=j9R5j?n`N1UP#dOb(Dw F005}751ar1 delta 38 ucmdmEzrmi%CDsxPLG*^*2p!<4tBfI=PU~ zc(W|uA8rK^`2c6X5QYLqC%;f%moUGO0B6roMkvFDi+S@NzIx8hGn6kfPF}294FFm9 BAYA|e diff --git a/tests/data/acpi/q35/DSDT b/tests/data/acpi/q35/DSDT index 2771bcea89b531549557a19538606219a8e222b1..d68c472b460e4609a64ea67de3c4cebfca76164d 100644 GIT binary patch delta 49 zcmez7u*ZSRCDqa2sFR7`xZQ@nt))aI#jvl!h)*aDpWLKp<>(C*0P66_MvuE4;+D7ulWQI5+;Iwn5YDPF)udh=Ad)r{^UYyr-GAq)cc@$Lbx nB9`&428ImL$}#%PAXNd*o(4`n&ffq3BME@iN2?CD_ diff --git a/tests/data/acpi/q35/DSDT.core-count2 b/tests/data/acpi/q35/DSDT.core-count2 index 375aceed6b16528f7986fad46b045eba76af9760..0603db8cc63cfc562f83e55eaf5162e7c29bf4d1 100644 GIT binary patch delta 51 zcmX@~m$Bn7BbQ6COGrl@0|VoRja+AIxLl-S;)9*y1$-noKdhO>$Sc4T?;hYP!WQpp HV8{Rf*RK!t delta 109 zcmeD9%XsK7BbQ6COUR)*1_s6n8@bNbaCu9`#0NXY3ph({epoY$(OrZsz}YW^LBKxV pJ-}7OGTzm|kRe(*MxPm^D!|#(z{$ti`~QC=0g(D=btD0h3IKv5Auj*` diff --git a/tests/data/acpi/q35/DSDT.cphp b/tests/data/acpi/q35/DSDT.cphp index a0ecafc36c57c6d4791b511f3febe210713d253c..beeb83c33b385fc8b41d44f299b8d9ba7203d935 100644 GIT binary patch delta 49 zcmX@+(&NJA66_Mfqr||#_;VvypaPeRR7`xZQ@ntW-&MH0rDEcPo#F+Yr8aY`&SG>IVGD5f3tf66_LkP=SGgan?qzMmbJ5`Iz`%r+5Ls%~Rx_F}jPe1vvYKFbLSky9c<6 mSjM{=7&1gF$LKSI6a_eY8aVkld;kBBBmhz$t&SuBQUL&4{~kpE diff --git a/tests/data/acpi/q35/DSDT.ipmismbus b/tests/data/acpi/q35/DSDT.ipmismbus index 3f32dffdbf3cd7e3791155530cf89417d8f2ec90..6c5d1afe443d9261d3b93801711f8d5b267696f3 100644 GIT binary patch delta 48 zcmX@-IK`36CD(C*0P66_MvuE4;+D7ulWQI5+;Iwn5YDPF)udh=Ad)r{^UYyr-GAq)cc@$Lbx nB9`&428ImL$}#%PAXNd*o(4`n&ffq3BME@iN2?(3`;J66_MfYrw$3D7cZUQI5MwgfS*Q*ePD1Q+V<;IR_>;&dE3AiYKqpS7eE9 z0&@K2izolm194n9Cm)k9ntVl10m89SD4M)ZPeC@i$@N08p=CTryrWAH4%f@R`r4cAbYmGO IpVhAf00jg!7ytkO diff --git a/tests/data/acpi/q35/DSDT.nohpet b/tests/data/acpi/q35/DSDT.nohpet index b116947dacd4fe9b563ecc7e1510cdb2474011cb..9ff9983a80a7487470ccd02ce587200444675816 100644 GIT binary patch delta 49 zcmaE1zs{b^CDpumw2#g)j)%$GZo( nide?G8W=J}E63g4F Cg$w8a delta 105 zcmZ4Jc-xW7CDeV`_A&9nPVoYMcAFQeW>_A&9nPVoY+_L~>Vyd~0-XIq7zFI&-2+@j mEaP1b3>l)8WAvFpiUOQH4V-+Oz5oA55&)@>R!0&5sQ>^^$sO$g diff --git a/tests/data/acpi/q35/DSDT.viot b/tests/data/acpi/q35/DSDT.viot index 6b436f9cd95776c26bec09066eb621bf97219dc6..eeb40b360f7c1de93501e1ddcd7dab306a51113b 100644 GIT binary patch delta 48 zcmX@@Ink5LCD$Fl2~Uj?rfZDGG4*G;s29_Wu7LNdTliS{+FMqyhj-gB}zB diff --git a/tests/data/acpi/q35/DSDT.xapic b/tests/data/acpi/q35/DSDT.xapic index f47f09122287bdd20d7762d3d6dee6e05d944285..3aa86f07243f0449c7dc245650715d729744e3ee 100644 GIT binary patch delta 51 zcmcaPjcNWgCN7s?mk{}G1_nm&ja(_6TrN^E@xe~<0zQ(PD>`Q}@(S?8y9c<6u*JI? H7%~6=i=GYM delta 109 zcmbO~jp^nzCN7s?mypPA1_nm$ja(_6T;5VK@xe~<0?tyKD>`Q}x{I&{IQxY#2-wHF p2e^t@#=9CAGDIuK=re;<1vq;eIQckx|NoC908$^VjwAq50RX(s9~b}t diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index 4be20b2cd1..dfb8523c8b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1,37 +1 @@ /* List of comma-separated changed AML files to ignore */ -"tests/data/acpi/pc/DSDT", -"tests/data/acpi/pc/DSDT.bridge", -"tests/data/acpi/pc/DSDT.ipmikcs", -"tests/data/acpi/pc/DSDT.cphp", -"tests/data/acpi/pc/DSDT.memhp", -"tests/data/acpi/pc/DSDT.numamem", -"tests/data/acpi/pc/DSDT.nohpet", -"tests/data/acpi/pc/DSDT.dimmpxm", -"tests/data/acpi/pc/DSDT.acpihmat", -"tests/data/acpi/pc/DSDT.acpierst", -"tests/data/acpi/pc/DSDT.roothp", -"tests/data/acpi/pc/DSDT.hpbrroot", -"tests/data/acpi/pc/DSDT.hpbridge", -"tests/data/acpi/q35/DSDT", -"tests/data/acpi/q35/DSDT.tis.tpm2", -"tests/data/acpi/q35/DSDT.tis.tpm12", -"tests/data/acpi/q35/DSDT.bridge", -"tests/data/acpi/q35/DSDT.multi-bridge", -"tests/data/acpi/q35/DSDT.mmio64", -"tests/data/acpi/q35/DSDT.ipmibt", -"tests/data/acpi/q35/DSDT.cphp", -"tests/data/acpi/q35/DSDT.memhp", -"tests/data/acpi/q35/DSDT.numamem", -"tests/data/acpi/q35/DSDT.nohpet", -"tests/data/acpi/q35/DSDT.dimmpxm", -"tests/data/acpi/q35/DSDT.acpihmat", -"tests/data/acpi/q35/DSDT.acpierst", -"tests/data/acpi/q35/DSDT.applesmc", -"tests/data/acpi/q35/DSDT.pvpanic-isa", -"tests/data/acpi/q35/DSDT.ivrs", -"tests/data/acpi/q35/DSDT.viot", -"tests/data/acpi/q35/DSDT.cxl", -"tests/data/acpi/q35/DSDT.ipmismbus", -"tests/data/acpi/q35/DSDT.xapic", -"tests/data/acpi/q35/DSDT.acpihmat-noinitiator", -"tests/data/acpi/q35/DSDT.core-count2", From patchwork Mon Jan 30 20:20:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121780 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A9E31C636D3 for ; Mon, 30 Jan 2023 20:28:18 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaf9-0007aO-QO; Mon, 30 Jan 2023 15:21:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadx-000507-Uw for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:47 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadw-0007MC-7p for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:45 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110043; 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=y1SyP4TgCvHvCzg+aSuuJOZahNP431nsZLRTo97jEFo=; b=blo2cXe+EaqMfp8ee91hr7dpwFKQeVMxvGuFcwdHY/sv+6UW9dCnmcahK8QfNK2TSXVtDA mML3LgY2tgNn9M2mkUmxoojZeaZvsunDdqYoDEuAd+pPyJbmAxJGFFqHm61r2IJzohYgyp FaeNtXwBoWBG2cY5aVcEijnJZR31nvI= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-472-7l8UD97FNaiMzW7LH1w-vQ-1; Mon, 30 Jan 2023 15:20:41 -0500 X-MC-Unique: 7l8UD97FNaiMzW7LH1w-vQ-1 Received: by mail-ej1-f69.google.com with SMTP id ds1-20020a170907724100b008775bfcef62so8064188ejc.9 for ; Mon, 30 Jan 2023 12:20:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=y1SyP4TgCvHvCzg+aSuuJOZahNP431nsZLRTo97jEFo=; b=uXAtHyG05AbqJGYSd6APNOAu+dLqkLVPXgCyTOP5diqWiVuSW04bii2enmj3IPwBQt 1C9snosKuU2GLvnjynR81CZEkQ0FvQo1iWLm4XS+QI67iiqwDfscs9rtOLosFTDrclD2 Z4e6QUyQYjXGjkG1CWfmGseblpbbTfDTAGdSirMq26aeu/3qiz85XqCjcJjcnOa4pwkM OahPNw3hDelweCwqgGktpGhRORe0LQcZYWoIN3HaLVDbWRHvNZys9QyQ7vpWui5T6qRP CxXyPCGDe7CBvfWlPujXq5sSefXbph//oHQ/6ENqCqo+i9kT4oN7AlX3OtVMS6yDWJwz bvYA== X-Gm-Message-State: AO0yUKUuWfa0FOX2Aef/gGW9RLC4PhwBVNymm3bF7lEXhHfH/l2QY1co RMun5cdsKmWmcRGWdLznt30Mx+s5ZKgNQhbfBN7iLB6ie9fT49xAKrXEM79YJNKQl+7+EGymT2p OQxyqMOLUNwxNyQ5crqAcg0clSaw0NJgiCP893PbBBalPdIRXI1hA0bYg0KOf X-Received: by 2002:aa7:c754:0:b0:4a0:e234:5351 with SMTP id c20-20020aa7c754000000b004a0e2345351mr19229395eds.15.1675110040102; Mon, 30 Jan 2023 12:20:40 -0800 (PST) X-Google-Smtp-Source: AK7set8Tk+bcGz6lAfzS9Sm5P8vkHriu7YHRu5nFfdhPtOruVQFLLagBiHI78ZjnuOf6INmRWhk7CA== X-Received: by 2002:aa7:c754:0:b0:4a0:e234:5351 with SMTP id c20-20020aa7c754000000b004a0e2345351mr19229376eds.15.1675110039803; Mon, 30 Jan 2023 12:20:39 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id l23-20020a50d6d7000000b004a0b1d7e39csm7373170edj.51.2023.01.30.12.20.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:39 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:36 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 34/56] whitelist DSDT before adding endpoint devices to bridge testcases Message-ID: <20230130201810.11518-35-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-25-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..571f14fd59 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,5 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT.roothp", +"tests/data/acpi/pc/DSDT.hpbrroot", +"tests/data/acpi/q35/DSDT.bridge", +"tests/data/acpi/q35/DSDT.multi-bridge", From patchwork Mon Jan 30 20:20:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121777 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 8EAF8C54EAA for ; Mon, 30 Jan 2023 20:27:53 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafa-0007nW-CH; Mon, 30 Jan 2023 15:22:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae0-00058H-Oq for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:49 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMadz-0007Ma-2k for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:48 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110046; 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=GHFRXYwA21eo24z+E3B/zrLrvMQuWtK2WvOqY5eAuAQ=; b=gZOEKgeH0gq1i8Cyv0tyWEooYOSgZXgdPu/Nq1j0uvCbIAyICbXEZguiSDuWYu5yKjcTDd rRc7mGq1ziauAdc6MGc9kIXNm0jp56Wn7hXt/qbSoKXHyG73osb50DiaLNSOO5KAjMZ/fk euSrZVWjhw1EGPXl91iuwR2JyVt6yOQ= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-629-035nY9zJNA-vOjByX0xFqw-1; Mon, 30 Jan 2023 15:20:44 -0500 X-MC-Unique: 035nY9zJNA-vOjByX0xFqw-1 Received: by mail-ej1-f72.google.com with SMTP id ds1-20020a170907724100b008775bfcef62so8064295ejc.9 for ; Mon, 30 Jan 2023 12:20:44 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=GHFRXYwA21eo24z+E3B/zrLrvMQuWtK2WvOqY5eAuAQ=; b=25fwlDkT7m4XVWAIkvtXBpa17VW9mN0ia4tij5Uk3RE41ceDEWgX1FhkxxwRgEzLLL tn6B4dDJ/hapvsvbTVrEVTPa+mvzki7TOLX37SB4ixHIvZT8hpC+QdOnqrwIZmHCNlcO 1VEUsUrM3wRFu58CO+cKsPJ8v9ChiMynecni1yO4ir/tJUnJrM/TkpjMDhDAxgrx+WAM hAs3xJ+KmJi5SKgRYcOGqxgthEEPe7bjyu4x5ZI30E8FSGJEyrsLQ/+nUZaeIrNpy3LG HBKBfk9lqMLtra+IrF+8kdUVFmV9kXEOTx1u3QxXL99HChlL83fdoO95DDuGfu8VK3JZ ErXQ== X-Gm-Message-State: AFqh2kpQcNCUvEGRrXoO/MOiglJdOJf2Zzy3VFGWxVlaLUsd3rQPom78 nmiWab8QPODl2ydiQcRBAdy8Q+qUOjIE1fHVCIZ8zJf1VuK7KIMI8kZlY2N5FsngarXxYFXxos4 YzMWS+LVKg5xPXt+gudo5yiChkyBgc3Bwhxxae0CI13C2w6OpeTy8dyOwmPFC X-Received: by 2002:a17:907:29c4:b0:857:b916:94bd with SMTP id ev4-20020a17090729c400b00857b91694bdmr43202301ejc.60.1675110043454; Mon, 30 Jan 2023 12:20:43 -0800 (PST) X-Google-Smtp-Source: AMrXdXsYBimtcPhz2U5+G2vI6oV3xIjTjZpCsCTbSrsGCzWwW1hBoasNd9WrKWxhfaahEp0w1gOmgw== X-Received: by 2002:a17:907:29c4:b0:857:b916:94bd with SMTP id ev4-20020a17090729c400b00857b91694bdmr43202289ejc.60.1675110043224; Mon, 30 Jan 2023 12:20:43 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id v5-20020a1709061dc500b0088a694749f7sm1140549ejh.4.2023.01.30.12.20.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:42 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:40 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 35/56] tests: acpi: add endpoint devices to bridges Message-ID: <20230130201810.11518-36-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov to make sure that they are enumerated or ignored as expected Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-26-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test.c | 37 ++++++++++++++++++++++++++-------- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index a8c17461c8..22b22c403d 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -875,7 +875,9 @@ static void test_acpi_piix4_tcg_bridge(void) data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); test_vm_prepare("-S" " -device pci-bridge,chassis_nr=1" - " -device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2", &data); + " -device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2" + " -device pci-testdev,bus=pci.0,addr=5.0" + " -device pci-testdev,bus=pci.1", &data); /* hotplugged bridges section */ qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr", @@ -884,6 +886,10 @@ static void test_acpi_piix4_tcg_bridge(void) "{'bus': 'pci.1', 'addr': '0xf.1', 'chassis_nr': 4 }"); qtest_qmp_device_add(data.qts, "pci-bridge", "hpbrhost", "{'bus': 'pci.0', 'addr': '4.0', 'chassis_nr': 5 }"); + qtest_qmp_device_add(data.qts, "pci-testdev", "d1", "{'bus': 'pci.0' }"); + qtest_qmp_device_add(data.qts, "pci-testdev", "d2", "{'bus': 'pci.1' }"); + qtest_qmp_device_add(data.qts, "pci-testdev", "d3", "{'bus': 'hpbr', " + "'addr': '1.0' }"); qtest_qmp_send(data.qts, "{'execute':'cont' }"); qtest_qmp_eventwait(data.qts, "RESUME"); @@ -907,7 +913,9 @@ static void test_acpi_piix4_no_root_hotplug(void) data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); test_acpi_one("-global PIIX4_PM.acpi-root-pci-hotplug=off " "-device pci-bridge,chassis_nr=1 " - "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data); + "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 " + "-device pci-testdev,bus=pci.0 " + "-device pci-testdev,bus=pci.1", &data); free_test_data(&data); } @@ -922,7 +930,9 @@ static void test_acpi_piix4_no_bridge_hotplug(void) data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off " "-device pci-bridge,chassis_nr=1 " - "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data); + "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 " + "-device pci-testdev,bus=pci.0 " + "-device pci-testdev,bus=pci.1,addr=2.0", &data); free_test_data(&data); } @@ -937,7 +947,9 @@ static void test_acpi_piix4_no_acpi_pci_hotplug(void) data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); test_acpi_one("-global PIIX4_PM.acpi-root-pci-hotplug=off " "-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off " - "-device pci-bridge,chassis_nr=1", &data); + "-device pci-bridge,chassis_nr=1 " + "-device pci-testdev,bus=pci.0 " + "-device pci-testdev,bus=pci.1", &data); free_test_data(&data); } @@ -982,7 +994,9 @@ static void test_acpi_q35_tcg_bridge(void) data.variant = ".bridge"; data.required_struct_types = base_required_struct_types; data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types); - test_acpi_one("-device pci-bridge,chassis_nr=1", &data); + test_acpi_one("-device pci-bridge,chassis_nr=1,id=br1" + " -device pci-testdev,bus=pcie.0" + " -device pci-testdev,bus=br1", &data); free_test_data(&data); } @@ -1001,8 +1015,11 @@ static void test_acpi_q35_multif_bridge(void) " -device pci-bridge,bus=rp2,chassis_nr=4,id=br1" " -device pcie-root-port,id=rphptgt1,port=0x0,chassis=5,addr=2.1" " -device pcie-root-port,id=rphptgt2,port=0x0,chassis=6,addr=2.2" - " -device pcie-root-port,id=rphptgt3,port=0x0,chassis=7,addr=2.3", - &data); + " -device pcie-root-port,id=rphptgt3,port=0x0,chassis=7,addr=2.3" + " -device pci-testdev,bus=pcie.0,addr=2.4" + " -device pci-testdev,bus=pcie.0,addr=5.0" + " -device pci-testdev,bus=rp0,addr=0.0" + " -device pci-testdev,bus=br1", &data); /* hotplugged bridges section */ qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr1", @@ -1010,7 +1027,11 @@ static void test_acpi_q35_multif_bridge(void) qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr2-multiif", "{ 'bus': 'br1', 'addr': '2.2', 'chassis_nr': 129 }"); qtest_qmp_device_add(data.qts, "pcie-pci-bridge", "hpbr3", - "{'bus': 'rp0', 'addr': '0.0' }"); + "{'bus': 'rphptgt1', 'addr': '0.0' }"); + qtest_qmp_device_add(data.qts, "pcie-root-port", "hprp", + "{'bus': 'rphptgt2', 'addr': '0.0' }"); + qtest_qmp_device_add(data.qts, "pci-testdev", "hpnic", + "{'bus': 'rphptgt3', 'addr': '0.0' }"); qtest_qmp_send(data.qts, "{'execute':'cont' }"); qtest_qmp_eventwait(data.qts, "RESUME"); From patchwork Mon Jan 30 20:20:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121782 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 5EB87C636D6 for ; Mon, 30 Jan 2023 20:28:20 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafq-0008Jq-Ka; Mon, 30 Jan 2023 15:22:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae3-0005Vv-QS for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:51 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae2-0007Mt-4K for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:51 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110049; 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=PUTmNaNPrIBmL0zdKLv2LO9Pfe0+/5WWqxxFuqpAjXQ=; b=Ab8K2vlzcYivZxXNlJ6wSq+jzk/9Tvi8z2lEyqMKjLedxCp5r0Ndh1fLlYOnSN8i0MBPb3 EMnM7ba2jBPs1j4YKfrA931YaM2RWWXC+mvp9MWSXmQxukUg1zJLFBSKoPhhZ+UGBzsexp CnQawzX71oqEh/z9UtGi2qxCb55RrW4= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-659-D8f_ph28OEyGrxelD3f2hA-1; Mon, 30 Jan 2023 15:20:48 -0500 X-MC-Unique: D8f_ph28OEyGrxelD3f2hA-1 Received: by mail-ej1-f70.google.com with SMTP id gz8-20020a170907a04800b0087bd94a505fso5691446ejc.16 for ; Mon, 30 Jan 2023 12:20:48 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=PUTmNaNPrIBmL0zdKLv2LO9Pfe0+/5WWqxxFuqpAjXQ=; b=NcjSBidFPV2Sm+ZkQDBf8EGtAxk7sTqCn0fFNBm0ssiFI7yoheieFWjdRbF33TIOOT qh3TqOkNFOtEdtsNXDcG/2UPDtEORU+RwnBwWya7bboNpCXuHDAnGWzv7sgl+zjb83zj cady20TGoXOFsu87hgeYpzCCQoZ6A6V0s1QZaLw7u6alrLmOdATEuzF5BmmsfwOVwJWN kZ/aORLVplZbMV5M33LZpPkXfmTJzu/yRCVlBktde2s30Ol2qzbuWdBFBWzm+qz0kI/H 1wkee93slUtrhtqc5hPfHl+HoB5Y+rD1eHrIMEqwznp0xxRT1GE+il+BGxnuvVvJZLuV gtGw== X-Gm-Message-State: AFqh2kom7WDxvVy2yiSgXVZs95zfbxoqnPNKoq6KHkWGGGOGCnsafiAd J/jYVfZ2REYQ1BigHDTeLD3gSZt5t8xNEZHlxPB95E5XFJ4Mc4T9U+p+qpL/B30NOKjKoKlSiFx VyrtIy3DSzXNr27Krqc5thwy/N0Muf3/Zg14SOs1PQvOAbyYczkIDDIwm+6ua X-Received: by 2002:a05:6402:3709:b0:49e:baf:f6e9 with SMTP id ek9-20020a056402370900b0049e0baff6e9mr60608099edb.9.1675110046354; Mon, 30 Jan 2023 12:20:46 -0800 (PST) X-Google-Smtp-Source: AMrXdXvJjsNKC5cCBBzlGGZ5PZmaorwEBV5HOQbOQGDeU4dTrvyP1qB2NSa3DYv87TJS4fedmZAy5A== X-Received: by 2002:a05:6402:3709:b0:49e:baf:f6e9 with SMTP id ek9-20020a056402370900b0049e0baff6e9mr60608079edb.9.1675110046131; Mon, 30 Jan 2023 12:20:46 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id a6-20020a509b46000000b0049e65e4ff20sm7306963edj.14.2023.01.30.12.20.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:45 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:43 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 36/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-37-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov previous commit added endpoint devices to bridge testcases, which exposes extra non-hotpluggable slot in DSDT on bus where hotplug is not available. It should look like this (numbers may vary): + Device (S28) + { + Name (_ADR, 0x00050000) // _ADR: Address + } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-27-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 4 ---- tests/data/acpi/pc/DSDT.hpbrroot | Bin 3064 -> 3081 bytes tests/data/acpi/pc/DSDT.roothp | Bin 9758 -> 9775 bytes tests/data/acpi/q35/DSDT.bridge | Bin 11458 -> 11475 bytes tests/data/acpi/q35/DSDT.multi-bridge | Bin 12358 -> 12375 bytes 5 files changed, 4 deletions(-) diff --git a/tests/data/acpi/pc/DSDT.hpbrroot b/tests/data/acpi/pc/DSDT.hpbrroot index 578468f4f00a9373366c92926b512c192dd6675b..a71ed4fbaa14be655c28a5e03e50157b4476e480 100644 GIT binary patch delta 53 zcmew%-YLQ566_Mf$-}_Fcyc4xJx(r1rI`3&r+5KR#m%2M*_Z^QoA`r`4B|QB9bJNe Hs#q8RhyD!~ delta 35 qcmeB__#w{a66_N4gPVbYQFkNPJx(qM#hCbDr+5Jmh0UKh*_Z&l3JL`P diff --git a/tests/data/acpi/pc/DSDT.roothp b/tests/data/acpi/pc/DSDT.roothp index fe502ed97751950cc245d728c873065f062c76b2..d58f4d2f0adbb86f8f6403a1cf9b13e1cabed035 100644 GIT binary patch delta 58 zcmbQ|v)+fxCDaNm`jT&21d00Qm}$^ZZW diff --git a/tests/data/acpi/q35/DSDT.bridge b/tests/data/acpi/q35/DSDT.bridge index c38b121ad90ecb896a906a50340ad5bd7d5453f9..3a01bb196b047b875be07be28d07f3139716e82f 100644 GIT binary patch delta 56 zcmX>Uc{!5HCDM9f^W)*?4>q)j=ZJT73F2X3 MU}o6-Q0pNh002i2`~Uy| delta 40 wcmcZ{c_@<0CDa6N&`CD)hUqa1ewBV$Z_uv5H1JHzH_a;x|@2kNph0{{nL3+(^^ diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index 571f14fd59..dfb8523c8b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1,5 +1 @@ /* List of comma-separated changed AML files to ignore */ -"tests/data/acpi/pc/DSDT.roothp", -"tests/data/acpi/pc/DSDT.hpbrroot", -"tests/data/acpi/q35/DSDT.bridge", -"tests/data/acpi/q35/DSDT.multi-bridge", From patchwork Mon Jan 30 20:20:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121790 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 0C93DC636CD for ; Mon, 30 Jan 2023 20:30:23 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafB-0007cJ-0e; Mon, 30 Jan 2023 15:22:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae7-0005wL-IU for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:55 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae5-0007NK-Ud for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110053; 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=dqJJOFXJ1F6ud73ZvwSEnamljkwz4NnNuhBWrKRijHU=; b=Rwl5zPHo7UzZPtT2erIYCCtXp7c1O3upEM2oevdGgi1cpV7nEdLEDquaSL0S/PFuzD424G 7H1yCFWibW0MKO4+rRHKg1Nonnl/0aafD/0le/3cOXY9lxdN6xmaoGd7Yct+aElKiQiYGS +7Do7e4FJ/r16UpOFIPxofMk94NQ1YU= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-198-rvyVdBA7PfyIL4miIXOilQ-1; Mon, 30 Jan 2023 15:20:51 -0500 X-MC-Unique: rvyVdBA7PfyIL4miIXOilQ-1 Received: by mail-ed1-f70.google.com with SMTP id v8-20020a056402348800b0049e1913bd43so9071421edc.20 for ; Mon, 30 Jan 2023 12:20:51 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=dqJJOFXJ1F6ud73ZvwSEnamljkwz4NnNuhBWrKRijHU=; b=baZdla7WBAjQBnlwMKg4bnNeTWiaVYZa9k2co3PsLbDL3EhbHYDAIJRuOkBItMGSkN hCFMSOJnwCHqYfeFv4uNzsYTfLML1T9HMLwakuC5umTmeU+SpSuHFrFL5ulJtImFqh7m nPMACc7vYBZLQ6Q7rKpCXbzeZbEHl0Cqgd2cSTEtSEXf/Hkli7AdbsRDR80SgY/c/IIP KG1pCq1Rro850EDOGF2psEOc8LlFbsYuAzJOIUf6TSZE2t6HUmjIWxfaDdovCkGufCAi 7lCJBspFFLImsnnvSWzxhm3V3DHR9IYYnaQVfwEOHvIEaYxdFev65Iz5OoJz+8qxlpRW kmmA== X-Gm-Message-State: AO0yUKXN2OP0MZ0LPYbuqRqa6FPeGo+rsATvTLbyAtRo60wVr1H8ZBqu OMCPPgZHgfQTs6m0aJJxoy/HAMGA5fv3hMHVy10YrCtmlCdVytFRD5P5wCuNR+mrb9l8eKOIqmc 3LOSIgTJDCu0vbh4jY0u7iHeM5ngGxjay5AsfO+l8uphXw6fwbdZBOlwGMlpz X-Received: by 2002:a05:6402:3586:b0:4a2:4a89:2331 with SMTP id y6-20020a056402358600b004a24a892331mr5336573edc.29.1675110049765; Mon, 30 Jan 2023 12:20:49 -0800 (PST) X-Google-Smtp-Source: AK7set9KkvEyMb+QkSPXiOG5aRmzVxulF9EIePKVZVXQQtS+GrXxYnMegBCrccVtg2yabTsuM8NV7w== X-Received: by 2002:a05:6402:3586:b0:4a2:4a89:2331 with SMTP id y6-20020a056402358600b004a24a892331mr5336548edc.29.1675110049436; Mon, 30 Jan 2023 12:20:49 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id p15-20020a056402074f00b0046b471596e6sm7372246edy.57.2023.01.30.12.20.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:48 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:46 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 37/56] x86: pcihp: acpi: prepare slot ignore rule to work with self describing bridges Message-ID: <20230130201810.11518-38-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Before switching pci bridges to AcpiDevAmlIf interface, ensure that ignored slots are handled correctly. (existing rule works but only if bridge doesn't have AcpiDevAmlIf interface). While at it rewrite related comments to be less confusing (hopefully). Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-28-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 6368fcefa3..8045b20713 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -423,14 +423,22 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, hotpluggbale_slot = bsel && dc->hotpluggable && !cold_plugged_bridge; - /* - * allow describing coldplugged bridges in ACPI even if they are not - * on function 0, as they are not unpluggable, for all other devices - * generate description only for function 0 per slot, and for other - * functions if device on function provides its own AML - */ - if (func && !bridge_in_acpi && !get_dev_aml_func(DEVICE(pdev))) { - continue; + if (func) { + if (IS_PCI_BRIDGE(pdev)) { + /* + * Ignore only hotplugged PCI bridges on !0 functions, but + * allow describing cold plugged bridges on all functions + */ + if (DEVICE(pdev)->hotplugged) { + continue; + } + } else if (!get_dev_aml_func(DEVICE(pdev))) { + /* + * Ignore all other devices on !0 functions unless they + * have AML description (i.e have get_dev_aml_func() != 0) + */ + continue; + } } } else { /* From patchwork Mon Jan 30 20:20:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121792 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id C0BEEC636D3 for ; Mon, 30 Jan 2023 20:31:09 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafb-0007xO-PO; Mon, 30 Jan 2023 15:22:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae9-0006Bi-Rp for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMae8-0007NV-C9 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:20:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110055; 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=HtBhzdQl9NWj90vUcOz8feZPLufDe737QYeQGNXgpZc=; b=GTLSfTOfNBxeGLS41AJ6lc90ctdCJM3PHe1ftykteQy+kqYfw6XDDhsUdvDgqIPYWB0iEM x6LSmq8P4/n4uPPs/qodybGYvBcBCi23qIpcB5Jrjs7hakRMnCysvAt3Kzmw1t+f7144RC CvPV6BjzHEMGiD7PT/dYhi7qvI+Rxc0= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-614-pDAlDOUzOxOWp6LPaMlxvg-1; Mon, 30 Jan 2023 15:20:54 -0500 X-MC-Unique: pDAlDOUzOxOWp6LPaMlxvg-1 Received: by mail-ej1-f71.google.com with SMTP id bj15-20020a170906b04f00b0088ac85a6fc1so1375557ejb.1 for ; Mon, 30 Jan 2023 12:20:53 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=HtBhzdQl9NWj90vUcOz8feZPLufDe737QYeQGNXgpZc=; b=7AAWcPoB9y1al6DJxTdogJRy+xlOzuALsHLm72FnVJ/q4OXxK7vAgvlIGMSjTOzWeA DY5vJKSpiGfVIXHyeokKJyVHTp8V6BXH3/EOVGAU38FBNzvLZg2HxHwnWhrexwo2Gpbl nSLvoPCk2u/FYyp3igx/9TJD4PHsv5RNDVWsCYm0fck4slHKmzlCllJwp+v3PAKQaEOu EvAqfMvgWgNj/v4HC3vA2ruaOVOXiT61+ISTx+SLjOFzBzjcQdXHqgCSf0mvC40nnQZM d6pmvA+S96Yuv9Te6JDg9DT8X29pkfQuJh92PUGQItLggSijV8PZJ7qPDlIpnXQkUDZb 2/gA== X-Gm-Message-State: AO0yUKX5t6i9G0EQPkm86csW120ey6sgd1DNK0V0zcOU8AQ0i2YmBNDx mCHTnDmeHe0f/+QKSFxLTCzCRpmxDmb0Yiiz59FjnfDawGfshm1N9ZgeGLor2RAJnCdR52n0YC7 nYLGcODajJrM8SZdWvifcKom0m98iuMH6ErSufQ86GjE8bnRfDtmNi0Pn99rf X-Received: by 2002:a05:6402:353:b0:499:bf28:d9c6 with SMTP id r19-20020a056402035300b00499bf28d9c6mr809553edw.5.1675110052471; Mon, 30 Jan 2023 12:20:52 -0800 (PST) X-Google-Smtp-Source: AK7set+5zz2hSNo+hXyHpjY7LIF90Oz4ichJPFszsR+Q8q3hcc756APBgUBW7b/kXVhchr6gK415eQ== X-Received: by 2002:a05:6402:353:b0:499:bf28:d9c6 with SMTP id r19-20020a056402035300b00499bf28d9c6mr809533edw.5.1675110052224; Mon, 30 Jan 2023 12:20:52 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id m15-20020a056402050f00b0049ef70a2894sm7357312edv.38.2023.01.30.12.20.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:51 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:49 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Marcel Apfelbaum Subject: [PULL 38/56] pci: acpi: wire up AcpiDevAmlIf interface to generic bridge Message-ID: <20230130201810.11518-39-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov ... so that the concrete impl. won't has to duplicate it every time. By default it doesn't do anything unless leaf class defines and sets AcpiDevAmlIfClass::build_dev_aml handler. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-29-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/pci/pci_bridge.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hw/pci/pci_bridge.c b/hw/pci/pci_bridge.c index b2b180edd6..a1a1cc861e 100644 --- a/hw/pci/pci_bridge.c +++ b/hw/pci/pci_bridge.c @@ -36,6 +36,7 @@ #include "qemu/module.h" #include "qemu/range.h" #include "qapi/error.h" +#include "hw/acpi/acpi_aml_interface.h" /* PCI bridge subsystem vendor ID helper functions */ #define PCI_SSVID_SIZEOF 8 @@ -472,6 +473,10 @@ static const TypeInfo pci_bridge_type_info = { .parent = TYPE_PCI_DEVICE, .instance_size = sizeof(PCIBridge), .abstract = true, + .interfaces = (InterfaceInfo[]) { + { TYPE_ACPI_DEV_AML_IF }, + { }, + }, }; static void pci_bridge_register_types(void) From patchwork Mon Jan 30 20:20:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121799 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id C14BBC63797 for ; Mon, 30 Jan 2023 20:32:39 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafZ-0007kg-Bx; Mon, 30 Jan 2023 15:22:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeG-0006aR-5Q for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:05 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeC-0007Nk-G1 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110059; 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=ij+3HPf1ZAtU65GOMkJAJ0uDJndIykCDvf+CEjzkQGo=; b=GJhjxbrBaQWvtTnrKEC8M9uRSIxa9ZTo+iiGNC/kN1hHgSnNSjQ4b/KqCi3qLQ9eJOZCob wIZwz8YtdE0fsBQ9pRb22JX93AQGCe+36djIhhOiy/gcD+POgpbUbfymly4U4RWgB7FQYA neGJ75efreIbV228ZWxjmWCnkb6I1AI= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-144-rBelYcA8OwiJf-aVZriFSA-1; Mon, 30 Jan 2023 15:20:58 -0500 X-MC-Unique: rBelYcA8OwiJf-aVZriFSA-1 Received: by mail-ej1-f69.google.com with SMTP id kt9-20020a1709079d0900b00877f4df5aceso8156870ejc.21 for ; Mon, 30 Jan 2023 12:20:57 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ij+3HPf1ZAtU65GOMkJAJ0uDJndIykCDvf+CEjzkQGo=; b=g2CR6pzR7v+leojE6oX+wJbVCzxJ2Crd/RUuefwNEr109D4lmisMWweMxOWmIWvpMt SrRBessIAfnLBvkePu36m5flmsHfDcefrAFNJd55uu70HRUS2Rf5TIpeL+vxMMUAJlAz Wp9nLajZw3PUHZk3QP69ojB12Jq4u32QTJKmv+k6GLK56pvRPkdm3ZHeSFUQlsMAd5ZL rJMQWcykU50gAMADd1iEPC4nWqFl6D4Tgqzeo8UeaQSckVKNeS6nj6u2/GTuLLYAOjxJ MjsKy/38XwjcOwmArPedh7TvXZRi05wtGZS9ghtUbKewih2HatsujTjIvKYoQ95eLCaF 5cAQ== X-Gm-Message-State: AO0yUKUlcCXw2rqxXnW/BoYCRNmbSrfoc8RCdzQl8kU53LQTrNJG7NgD ioQZm/TOjiduBnPXWdY8Exa2JpoFMksGJvQw8mf33YQqqUd975sVqDQ4DrUAZxMozrw+S4bikRs ovv52sCfDo7M/ScZFayMKxDpfWgiLkgCqnbCp2caQRpWijl5ciXm2QE5qplT9 X-Received: by 2002:a05:6402:378b:b0:4a2:4abc:29be with SMTP id et11-20020a056402378b00b004a24abc29bemr4595065edb.35.1675110055918; Mon, 30 Jan 2023 12:20:55 -0800 (PST) X-Google-Smtp-Source: AK7set8lc6XOtTdvMLue9PzxW0RpAyNAxNLQVQTdMqlxOk/TBaECvujfPZ5Z/9XBCWXXPjvoM9dscA== X-Received: by 2002:a05:6402:378b:b0:4a2:4abc:29be with SMTP id et11-20020a056402378b00b004a24abc29bemr4595037edb.35.1675110055576; Mon, 30 Jan 2023 12:20:55 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id w25-20020aa7d299000000b0048789661fa2sm7238401edq.66.2023.01.30.12.20.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:55 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:52 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 39/56] pcihp: make bridge describe itself using AcpiDevAmlIfClass:build_dev_aml Message-ID: <20230130201810.11518-40-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov simplify build_append_pci_bus_devices() a bit by handling bridge specific logic in bridge dedicated AcpiDevAmlIfClass::build_dev_aml callback. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-30-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/acpi/pci.h | 4 ++++ hw/acpi/pci-bridge-stub.c | 20 ++++++++++++++++++++ hw/acpi/pci-bridge.c | 27 +++++++++++++++++++++++++++ hw/i386/acpi-build.c | 17 ++--------------- hw/pci/pci_bridge.c | 9 +++++++++ hw/acpi/Kconfig | 4 ++++ hw/acpi/meson.build | 4 +++- hw/i386/Kconfig | 1 + 8 files changed, 70 insertions(+), 16 deletions(-) create mode 100644 hw/acpi/pci-bridge-stub.c create mode 100644 hw/acpi/pci-bridge.c diff --git a/include/hw/acpi/pci.h b/include/hw/acpi/pci.h index b5deee0a9d..467a99461c 100644 --- a/include/hw/acpi/pci.h +++ b/include/hw/acpi/pci.h @@ -27,6 +27,7 @@ #define HW_ACPI_PCI_H #include "hw/acpi/bios-linker-loader.h" +#include "hw/acpi/acpi_aml_interface.h" typedef struct AcpiMcfgInfo { uint64_t base; @@ -36,4 +37,7 @@ typedef struct AcpiMcfgInfo { void build_mcfg(GArray *table_data, BIOSLinker *linker, AcpiMcfgInfo *info, const char *oem_id, const char *oem_table_id); Aml *aml_pci_device_dsm(void); + +void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus); +void build_pci_bridge_aml(AcpiDevAmlIf *adev, Aml *scope); #endif diff --git a/hw/acpi/pci-bridge-stub.c b/hw/acpi/pci-bridge-stub.c new file mode 100644 index 0000000000..9d78638c48 --- /dev/null +++ b/hw/acpi/pci-bridge-stub.c @@ -0,0 +1,20 @@ +/* + * QEMU ACPI PCI bridge stub + * + * Copyright (c) 2023 Red Hat, Inc. + * + * Author: + * Igor Mammedov + * + * SPDX-License-Identifier: GPL-2.0-or-later + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + */ + +#include "qemu/osdep.h" +#include "hw/acpi/pci.h" + +void build_pci_bridge_aml(AcpiDevAmlIf *adev, Aml *scope) +{ +} diff --git a/hw/acpi/pci-bridge.c b/hw/acpi/pci-bridge.c new file mode 100644 index 0000000000..5f3ee5157f --- /dev/null +++ b/hw/acpi/pci-bridge.c @@ -0,0 +1,27 @@ +/* + * QEMU ACPI PCI bridge + * + * Copyright (c) 2023 Red Hat, Inc. + * + * Author: + * Igor Mammedov + * + * SPDX-License-Identifier: GPL-2.0-or-later + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + */ + +#include "qemu/osdep.h" +#include "hw/acpi/pci.h" +#include "hw/pci/pci_bridge.h" +#include "hw/acpi/pcihp.h" + +void build_pci_bridge_aml(AcpiDevAmlIf *adev, Aml *scope) +{ + PCIBridge *br = PCI_BRIDGE(adev); + + if (object_property_find(OBJECT(&br->sec_bus), ACPI_PCIHP_PROP_BSEL)) { + build_append_pci_bus_devices(scope, pci_bridge_get_sec_bus(br)); + } +} diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 8045b20713..49181a55b1 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -383,8 +383,7 @@ static void build_append_pcihp_notify_entry(Aml *method, int slot) aml_append(method, if_ctx); } -static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, - bool pcihp_bridge_en) +void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) { Aml *dev, *notify_method = NULL, *method; QObject *bsel; @@ -406,7 +405,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, /* ACPI spec: 1.0b: Table 6-2 _ADR Object Bus Types, PCI type */ int adr = slot << 16 | func; bool hotpluggbale_slot = false; - bool bridge_in_acpi = false; bool cold_plugged_bridge = false; if (pdev) { @@ -418,7 +416,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, */ cold_plugged_bridge = IS_PCI_BRIDGE(pdev) && !DEVICE(pdev)->hotplugged; - bridge_in_acpi = cold_plugged_bridge && pcihp_bridge_en; hotpluggbale_slot = bsel && dc->hotpluggable && !cold_plugged_bridge; @@ -471,16 +468,6 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus, call_dev_aml_func(DEVICE(pdev), dev); - if (bridge_in_acpi) { - /* - * device is coldplugged bridge, - * add child device descriptions into its scope - */ - PCIBus *sec_bus = pci_bridge_get_sec_bus(PCI_BRIDGE(pdev)); - - build_append_pci_bus_devices(dev, sec_bus, pcihp_bridge_en); - } - if (hotpluggbale_slot) { aml_append(dev, aml_name_decl("_SUN", aml_int(slot))); /* add _EJ0 to make slot hotpluggable */ @@ -1704,7 +1691,7 @@ build_dsdt(GArray *table_data, BIOSLinker *linker, PCIBus *bus = PCI_HOST_BRIDGE(pci_host)->bus; Aml *scope = aml_scope("PCI0"); /* Scan all PCI buses. Generate tables to support hotplug. */ - build_append_pci_bus_devices(scope, bus, pm->pcihp_bridge_en); + build_append_pci_bus_devices(scope, bus); aml_append(sb_scope, scope); } } diff --git a/hw/pci/pci_bridge.c b/hw/pci/pci_bridge.c index a1a1cc861e..dd5af508f9 100644 --- a/hw/pci/pci_bridge.c +++ b/hw/pci/pci_bridge.c @@ -37,6 +37,7 @@ #include "qemu/range.h" #include "qapi/error.h" #include "hw/acpi/acpi_aml_interface.h" +#include "hw/acpi/pci.h" /* PCI bridge subsystem vendor ID helper functions */ #define PCI_SSVID_SIZEOF 8 @@ -468,10 +469,18 @@ int pci_bridge_qemu_reserve_cap_init(PCIDevice *dev, int cap_offset, return 0; } +static void pci_bridge_class_init(ObjectClass *klass, void *data) +{ + AcpiDevAmlIfClass *adevc = ACPI_DEV_AML_IF_CLASS(klass); + + adevc->build_dev_aml = build_pci_bridge_aml; +} + static const TypeInfo pci_bridge_type_info = { .name = TYPE_PCI_BRIDGE, .parent = TYPE_PCI_DEVICE, .instance_size = sizeof(PCIBridge), + .class_init = pci_bridge_class_init, .abstract = true, .interfaces = (InterfaceInfo[]) { { TYPE_ACPI_DEV_AML_IF }, diff --git a/hw/acpi/Kconfig b/hw/acpi/Kconfig index 1f7803fdab..e07d3204eb 100644 --- a/hw/acpi/Kconfig +++ b/hw/acpi/Kconfig @@ -39,6 +39,10 @@ config ACPI_PCIHP bool depends on ACPI +config ACPI_PCI_BRIDGE + bool + depends on ACPI && PCI && ACPI_PCIHP + config ACPI_HMAT bool depends on ACPI diff --git a/hw/acpi/meson.build b/hw/acpi/meson.build index 30054a8cdc..50b73129b4 100644 --- a/hw/acpi/meson.build +++ b/hw/acpi/meson.build @@ -19,6 +19,7 @@ acpi_ss.add(when: 'CONFIG_ACPI_HW_REDUCED', if_true: files('generic_event_device acpi_ss.add(when: 'CONFIG_ACPI_HMAT', if_true: files('hmat.c')) acpi_ss.add(when: 'CONFIG_ACPI_APEI', if_true: files('ghes.c'), if_false: files('ghes-stub.c')) acpi_ss.add(when: 'CONFIG_ACPI_PIIX4', if_true: files('piix4.c')) +acpi_ss.add(when: 'CONFIG_ACPI_PCI_BRIDGE', if_true: files('pci-bridge.c')) acpi_ss.add(when: 'CONFIG_ACPI_PCIHP', if_true: files('pcihp.c')) acpi_ss.add(when: 'CONFIG_ACPI_PCIHP', if_false: files('acpi-pci-hotplug-stub.c')) acpi_ss.add(when: 'CONFIG_ACPI_VIOT', if_true: files('viot.c')) @@ -30,9 +31,10 @@ if have_tpm acpi_ss.add(files('tpm.c')) endif softmmu_ss.add(when: 'CONFIG_ACPI', if_false: files('acpi-stub.c', 'aml-build-stub.c', 'ghes-stub.c', 'acpi_interface.c')) +softmmu_ss.add(when: 'CONFIG_ACPI_PCI_BRIDGE', if_false: files('pci-bridge-stub.c')) softmmu_ss.add_all(when: 'CONFIG_ACPI', if_true: acpi_ss) softmmu_ss.add(when: 'CONFIG_ALL', if_true: files('acpi-stub.c', 'aml-build-stub.c', 'acpi-x86-stub.c', 'ipmi-stub.c', 'ghes-stub.c', 'acpi-mem-hotplug-stub.c', 'acpi-cpu-hotplug-stub.c', 'acpi-pci-hotplug-stub.c', 'acpi-nvdimm-stub.c', - 'cxl-stub.c')) + 'cxl-stub.c', 'pci-bridge-stub.c')) diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig index c4fb5b49bd..1bf47b0b0b 100644 --- a/hw/i386/Kconfig +++ b/hw/i386/Kconfig @@ -58,6 +58,7 @@ config PC_ACPI select ACPI_X86 select ACPI_CPU_HOTPLUG select ACPI_MEMORY_HOTPLUG + select ACPI_PCI_BRIDGE select ACPI_VIOT select SMBUS_EEPROM select PFLASH_CFI01 From patchwork Mon Jan 30 20:20:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121769 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id E9665C636D3 for ; Mon, 30 Jan 2023 20:26:48 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaf8-0007TM-1t; Mon, 30 Jan 2023 15:21:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeO-0006bH-Ji for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:13 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeE-0007Nq-LJ for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110061; 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=ZlLKVcZYsf7y4OaAZIfw8803rOTS7kimKK0JT2HkT6A=; b=UdQTsUWDIdLfFNvM6T5d2kyp7CH6Gi0nRUKAcoO+Cl8OrDwwTywA2W0H/GDZdivCKSD94R wGhBkaZptyS0a/g4PoYNyoOEKHgYs4gngB+coaXp/iwJMi6t4wocgI1g7Y+EpQBgT01em/ kh+t+iElkPXtMewwaH1rnExiIE5o3jg= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-450-RT1JPj4cNKuE1C2HkKfszw-1; Mon, 30 Jan 2023 15:21:00 -0500 X-MC-Unique: RT1JPj4cNKuE1C2HkKfszw-1 Received: by mail-ej1-f71.google.com with SMTP id kt9-20020a1709079d0900b00877f4df5aceso8156944ejc.21 for ; Mon, 30 Jan 2023 12:21:00 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ZlLKVcZYsf7y4OaAZIfw8803rOTS7kimKK0JT2HkT6A=; b=e+rvZuG13eGQq6E88zUxvMxF0WFsVvREuaIFIUc1eWYb/ycHhM9PTjPSFS53vlImGL CyGnC4eZchXwvnexKKMPG/7ppWXoVDAq7GtdgWv5Q4tFhTtyznr7VL8GRgyYUci9G6Y1 Ew87KCk6mSq9fJrxbE/eTK8zf53O9STPWtaRIwnVAkkIefcIfbdOEZVeGHrueYbRxTHm oNHtzXa5po8kFdl6BUCSlkkjtjsbaR7pB0NfyXM1yneeVBXXxDendetIPrArmsxoalZu pBPsvpLFaBmm3s4efFey+A8z9hdlAVmxodvKmqnxKmnj+rvaWFMpxtuIu6sU0UpK0oR3 MtOA== X-Gm-Message-State: AO0yUKUcc2WqW5C0FGxTQU0Ii7FbQaYDaGvxdwEsMiwq8Tgl3qWncmRT /Ia3iiXahxs53nfWM+h68XyzcmQ7PaDpIxKGPwn6/J36NUbbkpLsvU1CJ2KDwMMa6ViR2I4WQ42 AFFgT8FN9ffag6kmDkf0oOrlNsk8++FY7/E9DLLeoaS210ZH0vGPam2BX1+xf X-Received: by 2002:a05:6402:22e2:b0:4a2:44d3:6d84 with SMTP id dn2-20020a05640222e200b004a244d36d84mr5688544edb.5.1675110058980; Mon, 30 Jan 2023 12:20:58 -0800 (PST) X-Google-Smtp-Source: AK7set8S6XSEHMYm6w5ZRNaLKdGl/vrorpHe+T2ab1OxM/dGvrjEvly8B4VZDuLCriXsO31m45Pujg== X-Received: by 2002:a05:6402:22e2:b0:4a2:44d3:6d84 with SMTP id dn2-20020a05640222e200b004a244d36d84mr5688524edb.5.1675110058713; Mon, 30 Jan 2023 12:20:58 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id ed10-20020a056402294a00b004a236384909sm3002773edb.10.2023.01.30.12.20.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:20:58 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:56 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Marcel Apfelbaum Subject: [PULL 40/56] pci: make sure =?utf-8?b?cGNpX2J1c19pc19leHByZXNzKCkg?= =?utf-8?b?d29uJ3QgZXJyb3Igb3V0IHdpdGggImRpc2NhcmRzIOKAmGNvbnN04oCZ?= qualifier" Message-ID: <20230130201810.11518-41-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov function doesn't need RW aceess to passed in bus pointer, make it const. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-31-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- include/hw/pci/pci.h | 2 +- hw/pci/pci.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index 85ee458cd2..d5a40cd058 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -270,7 +270,7 @@ typedef void (*pci_bus_dev_fn)(PCIBus *b, PCIDevice *d, void *opaque); typedef void (*pci_bus_fn)(PCIBus *b, void *opaque); typedef void *(*pci_bus_ret_fn)(PCIBus *b, void *opaque); -bool pci_bus_is_express(PCIBus *bus); +bool pci_bus_is_express(const PCIBus *bus); void pci_root_bus_init(PCIBus *bus, size_t bus_size, DeviceState *parent, const char *name, diff --git a/hw/pci/pci.c b/hw/pci/pci.c index 39a7bb32aa..208c16f450 100644 --- a/hw/pci/pci.c +++ b/hw/pci/pci.c @@ -483,7 +483,7 @@ static void pci_bus_uninit(PCIBus *bus) pci_host_bus_unregister(BUS(bus)->parent); } -bool pci_bus_is_express(PCIBus *bus) +bool pci_bus_is_express(const PCIBus *bus) { return object_dynamic_cast(OBJECT(bus), TYPE_PCIE_BUS); } From patchwork Mon Jan 30 20:20:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121776 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id F2EB7C636CD for ; Mon, 30 Jan 2023 20:27:51 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafe-0008EB-02; Mon, 30 Jan 2023 15:22:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeO-0006bN-Jk for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:13 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeI-0007OC-5z for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:07 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110065; 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=eCpquopnJL7ZS2jirS30C89chkKb2FpipvhkFmXO6g0=; b=ccBhwK5q7juoYyxo1XLQi76kl23OejTfXlKQKJ36bEUbyDUbPomIOuVNRLJfHYfKPnQjeM Jy1nWLSKNR31MSAQiUagXJ11nQt0njrKxbCbrOg6D/hpZpSm6bled/9ZTJzDyW2LHu0IpO r9QBIO2Ss9qe/nWrQspxrniecG1xGyw= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-576-fyLokezsOl2I3HnsRueRtw-1; Mon, 30 Jan 2023 15:21:04 -0500 X-MC-Unique: fyLokezsOl2I3HnsRueRtw-1 Received: by mail-ed1-f70.google.com with SMTP id m12-20020a056402430c00b0049e4ac58509so8982094edc.16 for ; Mon, 30 Jan 2023 12:21:03 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=eCpquopnJL7ZS2jirS30C89chkKb2FpipvhkFmXO6g0=; b=cf3syFmlESn84c+GhOhJUSUalqCiwXki8rlllAIh6rg9QBI56/l3dYEfbuuFCTIsZ5 STlG4+SfNUDXUr7lBsh5Y6G7gZ7CVVagdZrhk41IHaVPbpPzYggToTcXcCtjNp7T3RL5 5UYzlajtgwAvZcWB+FUFfh/M90m/q5TPtR3E8AwhmK1B5ZiJ11BQaI3shuOnrJSeVGkF 0tE2F69Hz0KGg6JfgmVXS+wnDjmCdlQHQ9NdmHCyJUodw85sz6gE7vvvbYxGli+vcTa/ DK4VgotxB8FBeHMqx6Qx3099bf7gbDU2gJjl4hSqpM2/bs1YM/1V1uX5Js8S+Mg8ZGnM 2msg== X-Gm-Message-State: AO0yUKU5aV+Pv9PW786Aj32vJpX6aQq4tX+W0gymABmCNsOA/gABDYUa 3m6Der9xJjT9CaV+xzaUP6djPdTbMYpLPBVjuyp5toho/hKkyL6FZogk/y6kN/vultFDjUJEGJQ Sbk0EcIEhELlqTmhJusn35qxZhdl3zujajimtkQf6OzyvolAwHJ1bogNDAAiU X-Received: by 2002:a17:906:be9:b0:883:258d:28fe with SMTP id z9-20020a1709060be900b00883258d28femr8386971ejg.12.1675110062337; Mon, 30 Jan 2023 12:21:02 -0800 (PST) X-Google-Smtp-Source: AK7set8MEo3h6i1JEaPJF1ZiJuqr6qF3EcHuaa+AKB0Wctp4N9TcvHDfjUhUeKKd2nm8VIt3ODlHXA== X-Received: by 2002:a17:906:be9:b0:883:258d:28fe with SMTP id z9-20020a1709060be900b00883258d28femr8386952ejg.12.1675110062054; Mon, 30 Jan 2023 12:21:02 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id gc13-20020a1709072b0d00b008867f1905f2sm3114419ejc.39.2023.01.30.12.21.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:01 -0800 (PST) Date: Mon, 30 Jan 2023 15:20:58 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 41/56] pcihp: isolate rule whether slot should be described in DSDT Message-ID: <20230130201810.11518-42-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-32-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 83 +++++++++++++++++++++++--------------------- 1 file changed, 43 insertions(+), 40 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 49181a55b1..b4c9ff4794 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -383,6 +383,42 @@ static void build_append_pcihp_notify_entry(Aml *method, int slot) aml_append(method, if_ctx); } +static bool is_devfn_ignored(const int devfn, const PCIBus *bus, + bool bus_has_hotplug) +{ + const PCIDevice *pdev = bus->devices[devfn]; + + if (pdev) { + if (PCI_FUNC(devfn)) { + if (IS_PCI_BRIDGE(pdev)) { + /* + * Ignore only hotplugged PCI bridges on !0 functions, but + * allow describing cold plugged bridges on all functions + */ + if (DEVICE(pdev)->hotplugged) { + return true; + } + } else if (!get_dev_aml_func(DEVICE(pdev))) { + /* + * Ignore all other devices on !0 functions unless they + * have AML description (i.e have get_dev_aml_func() != 0) + */ + return true; + } + } + } else { /* non populated slots */ + /* + * hotplug is supported only for non-multifunction device + * so generate device description only for function 0 + */ + if (!bus_has_hotplug || PCI_FUNC(devfn) || + (pci_bus_is_express(bus) && PCI_SLOT(devfn) > 0)) { + return true; + } + } + return false; +} + void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) { Aml *dev, *notify_method = NULL, *method; @@ -398,59 +434,26 @@ void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) } for (devfn = 0; devfn < ARRAY_SIZE(bus->devices); devfn++) { - DeviceClass *dc; PCIDevice *pdev = bus->devices[devfn]; int slot = PCI_SLOT(devfn); int func = PCI_FUNC(devfn); /* ACPI spec: 1.0b: Table 6-2 _ADR Object Bus Types, PCI type */ int adr = slot << 16 | func; - bool hotpluggbale_slot = false; - bool cold_plugged_bridge = false; + bool hotpluggbale_slot = true; + + if (is_devfn_ignored(devfn, bus, !!bsel)) { + continue; + } if (pdev) { - dc = DEVICE_GET_CLASS(pdev); - /* * Cold plugged bridges aren't themselves hot-pluggable. * Hotplugged bridges *are* hot-pluggable. */ - cold_plugged_bridge = IS_PCI_BRIDGE(pdev) && + bool cold_plugged_bridge = IS_PCI_BRIDGE(pdev) && !DEVICE(pdev)->hotplugged; - - hotpluggbale_slot = bsel && dc->hotpluggable && + hotpluggbale_slot = bsel && DEVICE_GET_CLASS(pdev)->hotpluggable && !cold_plugged_bridge; - - if (func) { - if (IS_PCI_BRIDGE(pdev)) { - /* - * Ignore only hotplugged PCI bridges on !0 functions, but - * allow describing cold plugged bridges on all functions - */ - if (DEVICE(pdev)->hotplugged) { - continue; - } - } else if (!get_dev_aml_func(DEVICE(pdev))) { - /* - * Ignore all other devices on !0 functions unless they - * have AML description (i.e have get_dev_aml_func() != 0) - */ - continue; - } - } - } else { - /* - * hotplug is supported only for non-multifunction device - * so generate device description only for function 0 - */ - if (bsel && !func) { - if (pci_bus_is_express(bus) && slot > 0) { - break; - } - /* mark it as empty hotpluggable slot */ - hotpluggbale_slot = true; - } else { - continue; - } } /* start to compose PCI device descriptor */ From patchwork Mon Jan 30 20:21:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121803 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id C6146C636D3 for ; Mon, 30 Jan 2023 20:33:08 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMahQ-0001tv-G3; Mon, 30 Jan 2023 15:24:20 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeR-0006bz-Ja for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:18 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeN-0007OL-OP for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:13 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110071; 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=QzxMyl4llw24Se1VUeY7NbL65Y4Zm5CqI4IBQd7BzjU=; b=XdOmYAUNlqXQw9998/lHvmY0xnfqbVTX1LzJlPmG2UPjjkEMg4XiNVFJV79sgKU0fQPVp2 NZokrUQQQEv+SufxmrWcGYX4jb6zNB8o7TXKTKnJJW4GEv5WEp3I+lmAauMEXtd9C2ZRdv k8l3Vz2JVDrSN0qmva7s4HTDkkBVD9Y= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-612-n0hrAosHOP6WS8-1M_SA0g-1; Mon, 30 Jan 2023 15:21:06 -0500 X-MC-Unique: n0hrAosHOP6WS8-1M_SA0g-1 Received: by mail-ed1-f71.google.com with SMTP id o21-20020aa7dd55000000b004a245f58006so2755437edw.12 for ; Mon, 30 Jan 2023 12:21:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=QzxMyl4llw24Se1VUeY7NbL65Y4Zm5CqI4IBQd7BzjU=; b=JgkT4irlvofn9p2tUieCai7Rc5j/YqMLJuJnTAEIrWw75MZ1M7IQwa5yUG0DdZXkZI 47Jhy19m//XUTQ/gmHkKYKfk69IlWxbvB2gVD1reLckPdAmPHrqW+QKRqrSQphqOJC28 T8e28K+j7wtUmJ8MVKPoBQUbqdVIkRibC+Ohb5XTzq2aKhJ0Z+aZUd69HGPBu8AJZCq5 /BrVRYgUi/+gIt2IH1LGHYRc6oEG7cuaCYHMxP0fasOrmX8TnSzDs/ILuMXkqQYZ9IIJ NtsPv9Q0O5y+9XtO8p/2ImhktKMknFvmkCu8TfD7LYLDoGhC5WtsIJkcQ1H5qBj5wBzc gPPQ== X-Gm-Message-State: AO0yUKUbn2tWUtNZT5kLibM5XGsauDOvnwjnj9VyEOvkvbyoqF76A7bm n59RJ/Qjvho5yUPuqK7X/rYsg3xYxcAlROKmvbSmbUbrX3PSzdwLvi4EtMdk63ud1xck8NXr68Q gp8aLUvo1DdcSYnkklkkvDStonvc9x2rIeEKjeeE4KqkGUl1aJGUtZfOZba7U X-Received: by 2002:a17:906:c14f:b0:879:4f94:41eb with SMTP id dp15-20020a170906c14f00b008794f9441ebmr18686001ejc.72.1675110065472; Mon, 30 Jan 2023 12:21:05 -0800 (PST) X-Google-Smtp-Source: AK7set8v54XGJhUCE0JYl9X8+p1RhEk9wA1bOOGfdGJ5lIIOBmiMm4Ud+x5e45yloWqVRHRqADoWVw== X-Received: by 2002:a17:906:c14f:b0:879:4f94:41eb with SMTP id dp15-20020a170906c14f00b008794f9441ebmr18685986ejc.72.1675110065270; Mon, 30 Jan 2023 12:21:05 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id i12-20020aa7dd0c000000b0045ce419ecffsm7302824edv.58.2023.01.30.12.21.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:04 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:02 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 42/56] tests: acpi: whitelist DSDT before decoupling PCI hotplug code from basic slots description Message-ID: <20230130201810.11518-43-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-33-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..1983fa596b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,15 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT", +"tests/data/acpi/pc/DSDT.acpierst", +"tests/data/acpi/pc/DSDT.acpihmat", +"tests/data/acpi/pc/DSDT.bridge", +"tests/data/acpi/pc/DSDT.cphp", +"tests/data/acpi/pc/DSDT.dimmpxm", +"tests/data/acpi/pc/DSDT.hpbridge", +"tests/data/acpi/pc/DSDT.ipmikcs", +"tests/data/acpi/pc/DSDT.memhp", +"tests/data/acpi/pc/DSDT.nohpet", +"tests/data/acpi/pc/DSDT.numamem", +"tests/data/acpi/pc/DSDT.roothp", +"tests/data/acpi/q35/DSDT.bridge", +"tests/data/acpi/q35/DSDT.multi-bridge", From patchwork Mon Jan 30 20:21:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121798 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A1B4BC636D6 for ; Mon, 30 Jan 2023 20:32:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMahV-0001vj-BJ; Mon, 30 Jan 2023 15:24:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeS-0006c7-76 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:18 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeO-0007OP-ES for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:14 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110071; 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=W+M6xZXrGjSGSNAi6gTmhEeD1/8TOi2IvGsD9BPSl7A=; b=COlfMXz1rBnMQPkrRE5QPH+2pcuvoII3a9zgqAZ8LrhNeaXuARWZMxDr1XRVdlvwQUkc3N 6Tr7ogruNjzzdQuZValMudBIXLzluk8yHX6WZTRY7Ee+i6OyAqdgTjk52ci3Cj7e+9V0Jr Pe3X+GV6YRpepE1l5o4OOvMQqCbivcA= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-449-R27_r16PNQ2BFayEdIc6OA-1; Mon, 30 Jan 2023 15:21:10 -0500 X-MC-Unique: R27_r16PNQ2BFayEdIc6OA-1 Received: by mail-ed1-f72.google.com with SMTP id h18-20020a05640250d200b0049e0e9382c2so9003935edb.13 for ; Mon, 30 Jan 2023 12:21:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=W+M6xZXrGjSGSNAi6gTmhEeD1/8TOi2IvGsD9BPSl7A=; b=Iajlt2Zvo20PGIuHiLEpjnDQ6eaHyortVQyBTX+Pe75azAsRF6CdIOhlnZwonMJ8ml LfFA6OzKnQyxx1isOpx0eXqCMthwrbSwZgqCyN40a4tBuzRoGgHb3WJafPFo3xD/0Scb zDhzEsoZ+GojzeCqNnMfbN8qWhybwCQzLGyiYyh9DN3iAJbUC+73iIERjdBVuhZ4kXQY tOxv08tiH5u9vkrWyp2pHg0X3FWRHn0Y/USfvqZo+X6STxlpQ1I1pvmtH8v5HTDv6PQf cl46cA1wYjxPKkZfRoYiMaEIkFox6wMG93eAzxDST3++l/RmNXLkf85JhgSzaSekyzWf P+xA== X-Gm-Message-State: AO0yUKX2oPAN5eSSTp8N/lrNFVNSLm4nUgqtoiNndUwDgvGQ/vAK4q3h izeBmAaRI3Ru48iMTAYhK1Gn8t0z1eTd8mgjH5ltv6pbcbo3FA/s53Hb2n9jSY6/vmLVEbv/lID YsH27eK7T+t6OZphQyn+qMDeKN2Znu1xVyWN4HSAYnRS0MRESs2L1j2lIhln4 X-Received: by 2002:a17:907:3f8b:b0:88a:673e:3669 with SMTP id hr11-20020a1709073f8b00b0088a673e3669mr3683529ejc.15.1675110068792; Mon, 30 Jan 2023 12:21:08 -0800 (PST) X-Google-Smtp-Source: AK7set/Hed31fOn44XcL7oPv8ZPECOxfsH8FHUCAL/O/mT+HPyGYOd1mdbLSYcrc2+0D18M922NdcA== X-Received: by 2002:a17:907:3f8b:b0:88a:673e:3669 with SMTP id hr11-20020a1709073f8b00b0088a673e3669mr3683496ejc.15.1675110068457; Mon, 30 Jan 2023 12:21:08 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id q18-20020a1709064c9200b0085ff3202ce7sm7366518eju.219.2023.01.30.12.21.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:07 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:05 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 43/56] pcihp: acpi: decouple hotplug and generic slots description Message-ID: <20230130201810.11518-44-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Split build_append_pci_bus_devices() onto generic part that builds AML descriptions only for populated slots which is applicable to both hotplug disabled and enabled bridges. And a hotplug only part that complements generic AML with hotplug depended bits (that depend on BSEL), like _SUN/_EJ0 entries, dynamic _DSM. Hotplug part, will generate full 'Device' descriptors for non-populated slots (like it used to be) and complementary 'Scope' descriptors for populated slots that are hotplug capable. i.e. something like this: - ... + Name (BSEL, 0x03) + Scope (S00) + { + Name (ASUN, Zero) + Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method + { + Local0 = Package (0x02) + { + BSEL, + ASUN + } + Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) + } + [ ... other hotplug depended bits ] + } While generic build_append_pci_bus_devices() still calls hotplug part at its end it doesn't really depend on any hotplug bits anymore and later both could be completely separated when it's necessary. Main benefit though is that both build_append_pci_bus_devices() and build_append_pcihp_slots() become more readable and it makes easier to modify them with less risk of affecting another part. Also it opens possibility to re-use generic part elsewhere (microvm, arm/virt). Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-34-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 121 +++++++++++++++++++++++++------------------ 1 file changed, 72 insertions(+), 49 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index b4c9ff4794..2077efbee4 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -383,35 +383,40 @@ static void build_append_pcihp_notify_entry(Aml *method, int slot) aml_append(method, if_ctx); } -static bool is_devfn_ignored(const int devfn, const PCIBus *bus, - bool bus_has_hotplug) +static bool is_devfn_ignored_generic(const int devfn, const PCIBus *bus) { const PCIDevice *pdev = bus->devices[devfn]; - if (pdev) { - if (PCI_FUNC(devfn)) { - if (IS_PCI_BRIDGE(pdev)) { - /* - * Ignore only hotplugged PCI bridges on !0 functions, but - * allow describing cold plugged bridges on all functions - */ - if (DEVICE(pdev)->hotplugged) { - return true; - } - } else if (!get_dev_aml_func(DEVICE(pdev))) { - /* - * Ignore all other devices on !0 functions unless they - * have AML description (i.e have get_dev_aml_func() != 0) - */ + if (PCI_FUNC(devfn)) { + if (IS_PCI_BRIDGE(pdev)) { + /* + * Ignore only hotplugged PCI bridges on !0 functions, but + * allow describing cold plugged bridges on all functions + */ + if (DEVICE(pdev)->hotplugged) { return true; } + } else if (!get_dev_aml_func(DEVICE(pdev))) { + /* + * Ignore all other devices on !0 functions unless they + * have AML description (i.e have get_dev_aml_func() != 0) + */ + return true; } + } + return false; +} + +static bool is_devfn_ignored_hotplug(const int devfn, const PCIBus *bus) +{ + if (bus->devices[devfn]) { + return is_devfn_ignored_generic(devfn, bus); } else { /* non populated slots */ - /* + /* * hotplug is supported only for non-multifunction device * so generate device description only for function 0 */ - if (!bus_has_hotplug || PCI_FUNC(devfn) || + if (PCI_FUNC(devfn) || (pci_bus_is_express(bus) && PCI_SLOT(devfn) > 0)) { return true; } @@ -419,29 +424,23 @@ static bool is_devfn_ignored(const int devfn, const PCIBus *bus, return false; } -void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) +static void build_append_pcihp_slots(Aml *parent_scope, PCIBus *bus, + QObject *bsel) { - Aml *dev, *notify_method = NULL, *method; - QObject *bsel; int devfn; + Aml *dev, *notify_method = NULL, *method; + uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel)); - bsel = object_property_get_qobject(OBJECT(bus), ACPI_PCIHP_PROP_BSEL, NULL); - if (bsel) { - uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel)); - - aml_append(parent_scope, aml_name_decl("BSEL", aml_int(bsel_val))); - notify_method = aml_method("DVNT", 2, AML_NOTSERIALIZED); - } + aml_append(parent_scope, aml_name_decl("BSEL", aml_int(bsel_val))); + notify_method = aml_method("DVNT", 2, AML_NOTSERIALIZED); for (devfn = 0; devfn < ARRAY_SIZE(bus->devices); devfn++) { PCIDevice *pdev = bus->devices[devfn]; int slot = PCI_SLOT(devfn); - int func = PCI_FUNC(devfn); - /* ACPI spec: 1.0b: Table 6-2 _ADR Object Bus Types, PCI type */ - int adr = slot << 16 | func; + int adr = slot << 16 | PCI_FUNC(devfn); bool hotpluggbale_slot = true; - if (is_devfn_ignored(devfn, bus, !!bsel)) { + if (is_devfn_ignored_hotplug(devfn, bus)) { continue; } @@ -452,24 +451,20 @@ void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) */ bool cold_plugged_bridge = IS_PCI_BRIDGE(pdev) && !DEVICE(pdev)->hotplugged; - hotpluggbale_slot = bsel && DEVICE_GET_CLASS(pdev)->hotpluggable && + hotpluggbale_slot = DEVICE_GET_CLASS(pdev)->hotpluggable && !cold_plugged_bridge; + dev = aml_scope("S%.02X", devfn); + } else { + dev = aml_device("S%.02X", devfn); + aml_append(dev, aml_name_decl("_ADR", aml_int(adr))); } - /* start to compose PCI device descriptor */ - dev = aml_device("S%.02X", devfn); - aml_append(dev, aml_name_decl("_ADR", aml_int(adr))); - - if (bsel) { - /* - * Can't declare _SUN here for every device as it changes 'slot' - * enumeration order in linux kernel, so use another variable for it - */ - aml_append(dev, aml_name_decl("ASUN", aml_int(slot))); - aml_append(dev, aml_pci_device_dsm()); - } - - call_dev_aml_func(DEVICE(pdev), dev); + /* + * Can't declare _SUN here for every device as it changes 'slot' + * enumeration order in linux kernel, so use another variable for it + */ + aml_append(dev, aml_name_decl("ASUN", aml_int(slot))); + aml_append(dev, aml_pci_device_dsm()); if (hotpluggbale_slot) { aml_append(dev, aml_name_decl("_SUN", aml_int(slot))); @@ -486,9 +481,37 @@ void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) /* device descriptor has been composed, add it into parent context */ aml_append(parent_scope, dev); } + aml_append(parent_scope, notify_method); +} + +void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) +{ + QObject *bsel; + int devfn; + Aml *dev; + + bsel = object_property_get_qobject(OBJECT(bus), ACPI_PCIHP_PROP_BSEL, NULL); + + for (devfn = 0; devfn < ARRAY_SIZE(bus->devices); devfn++) { + /* ACPI spec: 1.0b: Table 6-2 _ADR Object Bus Types, PCI type */ + int adr = PCI_SLOT(devfn) << 16 | PCI_FUNC(devfn); + + if (!bus->devices[devfn] || is_devfn_ignored_generic(devfn, bus)) { + continue; + } + + /* start to compose PCI device descriptor */ + dev = aml_device("S%.02X", devfn); + aml_append(dev, aml_name_decl("_ADR", aml_int(adr))); + + call_dev_aml_func(DEVICE(bus->devices[devfn]), dev); + + /* device descriptor has been composed, add it into parent context */ + aml_append(parent_scope, dev); + } if (bsel) { - aml_append(parent_scope, notify_method); + build_append_pcihp_slots(parent_scope, bus, bsel); } qobject_unref(bsel); From patchwork Mon Jan 30 20:21:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121779 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 68FFCC54EAA for ; Mon, 30 Jan 2023 20:28:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaik-00044H-Ke; Mon, 30 Jan 2023 15:25:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaet-0007JF-8L for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeZ-0007QX-Gc for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110082; 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=L5wj4RmbJOasqA5r8UahMa9G9QP4bHcGpOAHZKSQzsk=; b=I8jtqfJQE6TUlRVKyPGygPr8HpJP642WHS15gzrAe3lDGHn4yF5Hcx0Mpn0i844t14xzPf lLkqfiM6McLCE+xu3R+iruA0VOBvPFZ5q3GMZiowtP1JclEGwQKDu61GpbbbftTb+M5Hzs wUP2xJOvqVybN0d0P+6DxsBIMz4YUi8= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-608-7fMts-MbOGqhhASOsZ2Jyw-1; Mon, 30 Jan 2023 15:21:13 -0500 X-MC-Unique: 7fMts-MbOGqhhASOsZ2Jyw-1 Received: by mail-ej1-f70.google.com with SMTP id xh12-20020a170906da8c00b007413144e87fso8125916ejb.14 for ; Mon, 30 Jan 2023 12:21:13 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=L5wj4RmbJOasqA5r8UahMa9G9QP4bHcGpOAHZKSQzsk=; b=vAikH251d8f7/H6XZKiY3oDeyy5AfDoooni6hxpKuSj3jsJuYgmr3hSUvo+MD6x9rX 7qxtk6Ly0pMlwi2HT0av4H7VG6grEgiHifaHKp1+WoBVoJLhmD+zpaAaCoWIQPXfGhJe FFi3N8hW2wDuHISg0RhBT9pZv5HLsfvilGXwEeeZR+AEP/kBEU9ggZ5YOQT5L5PVc+OY IQn+UEeT3vBmWA1cw5zgtqo1FJ78HaYy+7fZR9KHbLtT9mMN1G81q2OaDMAT1RJKdq2S 8IkiTTql1Xo75q80QwEZOaQSeM9FqBMvIAanYcT/FSL4EhnzNm4/OyT3QUBzV2uWdzpO 2fkw== X-Gm-Message-State: AO0yUKXD0MGRehUuQHxJd9fGDy1aQkCnIcDslvuG78rP0B0JmRwZYRob SzUhjsiwL4hhPx61+r79HH0MDJ/oXhG4yF+bsvBSfLwtMYrpQIdmfrtgxZV8p/WOYQgkMNO+LNz tqpS0lGlRpeBuNTSSXDfclhZwhf1JOsUj/Vb+d3b+FWHzt3+kYS+zn1g2fBDb X-Received: by 2002:a17:906:26d8:b0:878:47d2:6f3d with SMTP id u24-20020a17090626d800b0087847d26f3dmr19202402ejc.48.1675110071956; Mon, 30 Jan 2023 12:21:11 -0800 (PST) X-Google-Smtp-Source: AK7set9i36ZCL8EPpJl74y21DMxqmYvJ3Isk9HYgzWfbXEXMir0NQ8fyQn/HIFAku2YCd9lPBDfBQw== X-Received: by 2002:a17:906:26d8:b0:878:47d2:6f3d with SMTP id u24-20020a17090626d800b0087847d26f3dmr19202377ejc.48.1675110071683; Mon, 30 Jan 2023 12:21:11 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id bx26-20020a170906a1da00b00889c115cf6asm1483313ejb.145.2023.01.30.12.21.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:11 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:08 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 44/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-45-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Expected change for non-populated slots is that thay are moved after non-hotpluggable PCI tree description. And expected change for hotplug capable populated slots is: - ... + Name (BSEL, 0x03) + Scope (S00) + { + Name (ASUN, Zero) + Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method + { + Local0 = Package (0x02) + { + BSEL, + ASUN + } + Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) + } [ ... other hotplug depended bits ] + } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-35-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 14 -------------- tests/data/acpi/pc/DSDT | Bin 6470 -> 6487 bytes tests/data/acpi/pc/DSDT.acpierst | Bin 6430 -> 6453 bytes tests/data/acpi/pc/DSDT.acpihmat | Bin 7795 -> 7812 bytes tests/data/acpi/pc/DSDT.bridge | Bin 12634 -> 12699 bytes tests/data/acpi/pc/DSDT.cphp | Bin 6934 -> 6951 bytes tests/data/acpi/pc/DSDT.dimmpxm | Bin 8124 -> 8141 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 6430 -> 6459 bytes tests/data/acpi/pc/DSDT.ipmikcs | Bin 6542 -> 6559 bytes tests/data/acpi/pc/DSDT.memhp | Bin 7829 -> 7846 bytes tests/data/acpi/pc/DSDT.nohpet | Bin 6328 -> 6345 bytes tests/data/acpi/pc/DSDT.numamem | Bin 6476 -> 6493 bytes tests/data/acpi/pc/DSDT.roothp | Bin 9775 -> 9787 bytes tests/data/acpi/q35/DSDT.bridge | Bin 11475 -> 11481 bytes tests/data/acpi/q35/DSDT.multi-bridge | Bin 12375 -> 12423 bytes 15 files changed, 14 deletions(-) diff --git a/tests/data/acpi/pc/DSDT b/tests/data/acpi/pc/DSDT index c99179b35254725daeebb416400b1b6f9f1d74c4..1bc656f2a4897d2932d593e8768173e0d2597d45 100644 GIT binary patch delta 153 zcmX?Rblr%{CDvjwd^<$VE$S=nO c5&#+i5?}-g@CraQg9NykKq8yJ@CI=M05Z-dWdHyG delta 145 zcmca^bj*m$CDVFY6sgBY7x`GU9s%t#|s diff --git a/tests/data/acpi/pc/DSDT.acpierst b/tests/data/acpi/pc/DSDT.acpierst index b0ae8c2cf52616836dae14c0a971f56fcfa7cdc8..0d4639906ddce689b3dcd9d749c79e3a511d548a 100644 GIT binary patch delta 186 zcmbPdwAF~qCD3oGPVoW`R|1?p4WgU4gAEMgIpQ5%f*7Kk z+@ymIEFe4{pbm!3f4EmL@@oYfLX`jonHVPDm+7WM<%S3U>8j5YPl0<`^96 p$1r)LkQ@(40H_Qkzz7oH6@Zup65wKji$IldF@r=lYw>;I0st<`Evf(j delta 162 zcmdmLG|!03CD2gC##=olR8$2hrARE|vmY}n+7LaLh;g@d>OKjtUM delta 151 zcmZp%{cOYK66_LEEXTmW$gz=YiGaH2)tLBTr+5L!s{ziQ1{_You09OWP5QwG2Jsy6 zjxIqA9FD=EehiZhMdc)-o4jO$4J;rMJU}BLl8hk9&9?(0_B+)Ci4ob bN{evB2OGLDEMWjKj9?675M#5Ea1b{De|;nj diff --git a/tests/data/acpi/pc/DSDT.bridge b/tests/data/acpi/pc/DSDT.bridge index 783a9d7b2964612626268905837d108679603432..4c2d77b8051de2ed21fe43c8283003d8083747f7 100644 GIT binary patch delta 429 zcmcbWG&`BgCDcc4D%mQ|kV{oV+!(>4L<;mH6B5VShAOj~)OosSeO|ky!i?LM~=-#Dwi3Z`GbuReqaH*7ASzQniVWyj8MVG z0Co!l$X1{z%qen6&fpb*gbUmia$pf;2gtF5oC>sfGM9iogbnmUG?WdrZu1%eO^(eE H^s1NuJu71d delta 124 zcmbQ8d@G5|CDp4a&F140H&DuV5fM2#sH=OXHNqTr(jnfhUg~!$@_Wr zSfZP}WG8d+8ExLcy@HX+fpu~upYh~$URmbu2FA&&_)J(qsu?Hm=JjQAIt)~3ym>3{ bf9}oUe6^gLH!5Fd-29X8HpgZ~{VFB^@bxCy diff --git a/tests/data/acpi/pc/DSDT.cphp b/tests/data/acpi/pc/DSDT.cphp index 659ad3d6b9026c090e0d8d8e21ece5df44249ec0..ef487176e117acf8f271d0a54bfad8dfa33ef696 100644 GIT binary patch delta 153 zcmbPcw%m-%CDvjwd^<$WFU40m$oAiSX4B|QB z9bJMLCdcrrNJKYz$p#x(K!kXJni)78gG2ooCqERB+g!)Hf>FSMHP{fU1t`zNFnI&N csC5E4mL1|=ZJT731WzD za+3}=uz>J*fI1j97YVIkvjwd^<$W9C?dxO Z60nG$>?fqcCIHqpSxZE9bCyUDHvq0iBSHWG delta 128 zcmX?WzsH`-CDm_q PNZ;h!!qS_oMS{2i7_T9@ diff --git a/tests/data/acpi/pc/DSDT.hpbridge b/tests/data/acpi/pc/DSDT.hpbridge index b0ae8c2cf52616836dae14c0a971f56fcfa7cdc8..ce2e1430a38b467b212573a896b94c306caa12fb 100644 GIT binary patch delta 211 zcmbPdwA+ZwCDmiY DjxaJ> delta 203 zcmdmOG|!03CD=r+5L+n*q+A1{_You09OWP5QwG2Jsy6 zjxIqA9FD=EehiZz3d#vZH#sQ<8(2Ujcz{MQO#a8KvUwf%2S#xR)?h=Z7N86hL>m_q PNZ;hOywaO}`GU9s3acV^ diff --git a/tests/data/acpi/pc/DSDT.memhp b/tests/data/acpi/pc/DSDT.memhp index b2a7c042a902d1bbac79961639e27d302ad8799f..45b434d485444750cf00ebc1b2658f2fa40f0884 100644 GIT binary patch delta 169 zcmbPgyUdo$CDo#F+Yt_3)I8bmj72OAi~bHqEk1TjQ6 zxk(2bSU`9@KphO5y#-e=nrQ_aLX`jonHWSk;)4xc7?yw;Mlgmkh{53$?CQfHpb0W_ l@<#y`9uN~~pkr{TALHbYB67R}5W_$MTudO5&CbF>+yIwfDo6kT delta 145 zcmZ2xJJpuUCDB^zvD0TJQ>YG&YY3=Z{UocvHoZu4J(6^sH7tigs*EkJoDhROQE cs?s7H@xg{J3`-b53?mrB7{u5dA{@jG06rHa#Q*>R diff --git a/tests/data/acpi/pc/DSDT.nohpet b/tests/data/acpi/pc/DSDT.nohpet index b64da36b14edd13270dfd9db040a3b99219a36a0..dbed1404bb70eebf1c3cf0f882d3b4b7cccd53a8 100644 GIT binary patch delta 153 zcmdmCc+!x|CDo#F+Yt_3)I8bmj72OAi~bHqEk1TjQ6 zxk(2bSU`9@KphO5^SD=ZM2{3{Lcm*JuK>}P%Ad$^!yg}Rm8F(bN delta 152 zcmX?UxWkakCDB^zvD0TJQ>YG&YY3=Z{UocxeiZnFaS3Py1U)?h=Z7N9&6M4pQY cq(EAPBR<&Bg<%N;h+za{7=sv_%Xx#i0ZK(CPXGV_ diff --git a/tests/data/acpi/pc/DSDT.numamem b/tests/data/acpi/pc/DSDT.numamem index f554b0b09db33fa90d65267c2687e90d4ab7d92e..6ee52f1230445c0dff01c77e72a74ca37e5864f1 100644 GIT binary patch delta 140 zcmX?Obk~T>CDbjFCwCDFU40m$oAiSX4B|QB z9bJMLI2?mR{TL=Y3dspYH+jhh8(2Ujcz{MQOy0w*vUv;l3Py1U)?h=Z7N86hL>m_q PNZ;gaUg^!;d_mj*>(n5J diff --git a/tests/data/acpi/pc/DSDT.roothp b/tests/data/acpi/pc/DSDT.roothp index d58f4d2f0adbb86f8f6403a1cf9b13e1cabed035..578de7540f6f09c05ad81f62abd142be8cb288ee 100644 GIT binary patch delta 128 zcmZ4Qv)hNuCD^cS3y&i8 delta 80 zcmV-W0I&bMOs`A|L{mgmFD3v00g8j5O8Jz3poad`Y}v?sGz)AQGOFI0QXoKo&W#< delta 76 zcmcZ^c{!5HCDb1Op<{LrPGhtQFh_2ii zs+<|Cat0*j5pJh~4K3lWVFtS1=P1JY(M@g#k$Ffyi*Di%Hb(fH4eC`^gyFWETNEcV z@(H-IfE79hhx&1`O>R_H*&L#Lhm#i)G%Ny|(2!9P5n*!)^9x~uNH8NLHk<1zFarSE CJzC`e delta 344 zcmZoqyq>`266_KZZot66_;w>#lN=WlV@!OoQ@lV2=QZp?+L!lRqk}Y*tdf!^tkf<`U)?!n8SESAiJ-)N@Yo diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index 1983fa596b..dfb8523c8b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1,15 +1 @@ /* List of comma-separated changed AML files to ignore */ -"tests/data/acpi/pc/DSDT", -"tests/data/acpi/pc/DSDT.acpierst", -"tests/data/acpi/pc/DSDT.acpihmat", -"tests/data/acpi/pc/DSDT.bridge", -"tests/data/acpi/pc/DSDT.cphp", -"tests/data/acpi/pc/DSDT.dimmpxm", -"tests/data/acpi/pc/DSDT.hpbridge", -"tests/data/acpi/pc/DSDT.ipmikcs", -"tests/data/acpi/pc/DSDT.memhp", -"tests/data/acpi/pc/DSDT.nohpet", -"tests/data/acpi/pc/DSDT.numamem", -"tests/data/acpi/pc/DSDT.roothp", -"tests/data/acpi/q35/DSDT.bridge", -"tests/data/acpi/q35/DSDT.multi-bridge", From patchwork Mon Jan 30 20:21:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121789 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 6AE16C636D6 for ; Mon, 30 Jan 2023 20:30:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafb-0007vy-LH; Mon, 30 Jan 2023 15:22:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaep-0007IG-Qn for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:43 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeX-0007QH-7p for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110080; 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=XyGAnTsuy19s0e2ypABO6ZtrOje+NugbOp6QdguQI/g=; b=CdvCMymFpBh8zY80TUWrPTaguHgnUarlaIl3074tmXHMBbKZUIqYnkf+RAjeKCMMk8xeyt BF5EZPk/8alAANIbpiNH6Tilwftg6pg+yPP0NHvHChZMFju/TLe5EhnBGOZoCGfdNovug4 Al4TZC7GJt7kqLWX15viIbDWWlqYqO0= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-441-TzFk3Tb4PiK1zVqGYhHvgw-1; Mon, 30 Jan 2023 15:21:17 -0500 X-MC-Unique: TzFk3Tb4PiK1zVqGYhHvgw-1 Received: by mail-ej1-f70.google.com with SMTP id xh12-20020a170906da8c00b007413144e87fso8125981ejb.14 for ; Mon, 30 Jan 2023 12:21:16 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=XyGAnTsuy19s0e2ypABO6ZtrOje+NugbOp6QdguQI/g=; b=rcwxC2VM70Ricx/i0THuAV9jOTcqR4cUEBxDOUWtXTLTOTB5XX922s8rxS4lN+JA1K y0DJToDIn8piYcgVrdh9nlhtgQY3gfu9GavcS4Zb1Dsjac8Y/C4h1/UPg2WE2HKURgue Rm4Dgtv+sPv4esp3vRIMZ0SHm6d4bzASx+4LtfenqwahV87DQkLG4ojrS3qyvSNQfAIn zi8LUVqaIXnsafo0lmBqLOil0QR+ZK6PKioSHfwx8J3g46bLsKd+BUrsrVlJ6DkCqi6U YmxTRGoaxnBdiJIPTJJPFdMAQpvh3Vz/dsqkP33A28YHiVxSKnSAis36LLBZg8NgE0Kx 8OXA== X-Gm-Message-State: AO0yUKX7Udr6skwqo1I9goGIeRkUQCzYzlFpF1M3vlI0ZZr3t75qDNqx lzekV8GzCW5gvJioXizc3BmD9hokyTt+8gRW+ZdA+Kk6pogQykh9/JeJpinYNZadTPz+pPqMdPz D4rCndh12bRD2LszmG8ao5ZwZABBDHm5f+56qUrQsDFIbozbCzUjR8vfBLmnR X-Received: by 2002:a17:906:e08e:b0:889:1480:d908 with SMTP id gh14-20020a170906e08e00b008891480d908mr747417ejb.17.1675110075023; Mon, 30 Jan 2023 12:21:15 -0800 (PST) X-Google-Smtp-Source: AK7set84mQOF0ahjzsClQW3zcgE3kbHv9mPvTBM3apR+sgrrgOO64tM0W3wWgAlD6tA+DJkfWJi8IQ== X-Received: by 2002:a17:906:e08e:b0:889:1480:d908 with SMTP id gh14-20020a170906e08e00b008891480d908mr747395ejb.17.1675110074766; Mon, 30 Jan 2023 12:21:14 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id w9-20020a170906184900b007c0f217aadbsm7214130eje.24.2023.01.30.12.21.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:14 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:12 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 45/56] tests: acpi: whitelist DSDT blobs before removing dynamic _DSM on coldplugged bridges Message-ID: <20230130201810.11518-46-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-36-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..a83322cb08 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,5 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT.bridge", +"tests/data/acpi/pc/DSDT.roothp", +"tests/data/acpi/pc/DSDT.hpbridge", +"tests/data/acpi/q35/DSDT.multi-bridge", From patchwork Mon Jan 30 20:21:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121786 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 6AAB2C54EAA for ; Mon, 30 Jan 2023 20:30:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMahO-0001tf-W2; Mon, 30 Jan 2023 15:24:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaes-0007J9-TY for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:51 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeY-0007QR-M5 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110081; 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=m1k1+HOV117cvjkUT6vnzQaM5DmTDJxllURIT5CtwE4=; b=FB2a4HwcFyp/QyCj6Vr+Y/H4kvkJYy4DTquDBoBK77zSnSoMZO0mnXH9YoiojIsDml0PvQ 2Lij9sDqWq0VdA95S5gvGiH1wJwtHRvOsT2RRJdEFvG2QWXU3wdgIXGL/kKoi7XnBWYNJ+ vfJZud9wbJzM5HL7AGQM6wMs0i8vQZQ= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-490-bjU9dE06M261m5wCE3nkcg-1; Mon, 30 Jan 2023 15:21:20 -0500 X-MC-Unique: bjU9dE06M261m5wCE3nkcg-1 Received: by mail-ej1-f71.google.com with SMTP id d10-20020a170906640a00b008787d18c373so7037202ejm.17 for ; Mon, 30 Jan 2023 12:21:19 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=m1k1+HOV117cvjkUT6vnzQaM5DmTDJxllURIT5CtwE4=; b=Q6mypoK3c0b5O0jZE1XhXCLZFLIKpmeB56SNBwupzZNYF0MU6Gfzmdbptf9C3qIg9C VMxr5PXrLW3CEpSWs+tgGzmSmaFOMLUyBLbzvznjYCcrOA0Sy2egNmHlAddk5t+2c3wZ JCmkubbPKJIZc5FOgYGDe6xgjYwefABjj/ozz9CmoUBWzQyECXHu4f4YnLTiGpJPuqTU e1hL4+jdp7CofLATsozsoFgm37G4m98uy2GZbC8Txx98bmriuPPrBufXC/UrZaMDLv70 vT/r2KPLqYPMzrPg7aCHXs3c0pjtVpZD3K7BrGAmqNrgaBz+re7I0pDgGT+2F73q4VSk gUyw== X-Gm-Message-State: AO0yUKW5mSqISR1J4A8NdpfZOa1uH6GYxDSw/Gv9VHAziFHQ+0TAtbFY xTVpBbR/gJ0aQ+mWGz8+ucDEH0n1jkRcX/3xoWDZjzNkY7gs/1KMcxJ8LTsDNSPxZSSFZ5s6a/F fyIpkEu3Re33HQ59Z6ncsgff15nv1B7PJE2ZPeEErvGQZhcvvsdwCNlUS9Lr6 X-Received: by 2002:a17:906:dfeb:b0:88b:a30:25e9 with SMTP id lc11-20020a170906dfeb00b0088b0a3025e9mr1743386ejc.10.1675110078472; Mon, 30 Jan 2023 12:21:18 -0800 (PST) X-Google-Smtp-Source: AK7set/v7fytX8RFNSP1ViJTXLx1EUI9v8KqmmE/fpGNaoCPCbcZEuKQCJP4Z3ACy3CETez6+fDabg== X-Received: by 2002:a17:906:dfeb:b0:88b:a30:25e9 with SMTP id lc11-20020a170906dfeb00b0088b0a3025e9mr1743368ejc.10.1675110078201; Mon, 30 Jan 2023 12:21:18 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id z3-20020a170906434300b0088bd01105eesm182294ejm.188.2023.01.30.12.21.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:17 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:15 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Marcel Apfelbaum , Paolo Bonzini , Richard Henderson , Eduardo Habkost Subject: [PULL 46/56] pcihp: acpi: ignore coldplugged bridges when composing hotpluggable slots Message-ID: <20230130201810.11518-47-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov coldplugged bridges are not unpluggable, so there is no need to describe slots where they are plugged as hotpluggable. To that effect we have a condition that marks slot as non-hotpluggable if it's populated by coldplugged bridge and prevents generation _SUN/_EJ0 objects for it. That leaves dynamic _DSM method on such slot (which also depends on BSEL and pcihp hardware). This _DSM method provides only dynamic acpi-index support so far, which is not actually used/supported by linux kernel for bridges and it's doubtful there will be need for it at all. So it's rather pointless to generate acpi-index related AML for bridges and we can simplify hotplug slots generator a bit more by completely ignoring coldplugged bridges on hotplug path. Another point in favor of dropping dynamic _DSM support, is that we can replace it with static _DSM if necessary since a slot with bridge can't change during VM runtime and without any dependency on ACPI PCI hotplug at that. Later I plan to implement bridge specific static _DSM PCI Firmware Specification 3.2 4.6.5. _DSM for Ignoring PCI Boot Configurations part of spec, to fix longstanding issue with fixed IO/MEM resource assignment that often leads to hotplugged device being in-operational within the guest due limited IO/MEM windows programmed on bridge at boot time. Expected change when coldplugged bridge is ignored by hotplug code, should look like: - Scope (S18) - { - Name (ASUN, 0x03) - Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method - { - Local0 = Package (0x02) - { - BSEL, - ASUN - } - Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) - } - } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-37-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 2077efbee4..a02608c215 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -409,8 +409,11 @@ static bool is_devfn_ignored_generic(const int devfn, const PCIBus *bus) static bool is_devfn_ignored_hotplug(const int devfn, const PCIBus *bus) { - if (bus->devices[devfn]) { - return is_devfn_ignored_generic(devfn, bus); + PCIDevice *pdev = bus->devices[devfn]; + if (pdev) { + return is_devfn_ignored_generic(devfn, bus) || + /* Cold plugged bridges aren't themselves hot-pluggable */ + (IS_PCI_BRIDGE(pdev) && !DEVICE(pdev)->hotplugged); } else { /* non populated slots */ /* * hotplug is supported only for non-multifunction device @@ -445,14 +448,7 @@ static void build_append_pcihp_slots(Aml *parent_scope, PCIBus *bus, } if (pdev) { - /* - * Cold plugged bridges aren't themselves hot-pluggable. - * Hotplugged bridges *are* hot-pluggable. - */ - bool cold_plugged_bridge = IS_PCI_BRIDGE(pdev) && - !DEVICE(pdev)->hotplugged; - hotpluggbale_slot = DEVICE_GET_CLASS(pdev)->hotpluggable && - !cold_plugged_bridge; + hotpluggbale_slot = DEVICE_GET_CLASS(pdev)->hotpluggable; dev = aml_scope("S%.02X", devfn); } else { dev = aml_device("S%.02X", devfn); From patchwork Mon Jan 30 20:21:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121773 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 47311C54EAA for ; Mon, 30 Jan 2023 20:27:20 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaiH-0002Gj-4w; Mon, 30 Jan 2023 15:25:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaet-0007JS-Ls for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeb-0007Qm-6e for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110084; 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=+WOQTvUvwnuDA+vCiYCQ4r8ADzfYlps2xicZCwzdeL4=; b=M7OG489KvJT3cYtqUyPilI/q3PJnalb5edG0hk0FdhEE9mW4jS2jlOquvd/jwI7lkE3dmM p91VKc1aFQ/nO0Ur7NZAdbqHpZDwstxaheZeACxQC/8ocdgSS2jGYx+vlYr09pkmtHBfqB FiLVeIZJL+qC91pAQu+5qpzfGdUaHuI= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-363-ApHZghqBNjK-d3Rb3xi9_w-1; Mon, 30 Jan 2023 15:21:23 -0500 X-MC-Unique: ApHZghqBNjK-d3Rb3xi9_w-1 Received: by mail-ed1-f72.google.com with SMTP id c12-20020a05640227cc00b0049e2c079aabso8877463ede.1 for ; Mon, 30 Jan 2023 12:21:23 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=+WOQTvUvwnuDA+vCiYCQ4r8ADzfYlps2xicZCwzdeL4=; b=IqjuY7cTkPGd57+ocFhGAlbxFxG2qyP76NZko5Ice1/l+9qdKMLfXp7eG80z3aLwi5 WApu4AlN8a7Djx+J9tcZj6JRiyDsVNuENoLslAVf77CUwjmvUXGwQhyZ11R7FlVAWltQ OmCBvNZsCoORHjkDfTw+DZHKwHIr1oFHd7uKs1sAfWqbu6JIKxqlgey6MgASxduiGAJv m71Gwqn7/jrSzee83k0gxG4U3UIr1lagDoM2CLRbckVJfVDTzcy/UdD/JqXG5hbbEW1w rVYj8QcTfsBHRgbaJE2cfOEFF3xFUv9IL3nmIaizEaBnkMvRs/cyl7shjVAYl0ysI311 +03A== X-Gm-Message-State: AO0yUKXO33aXXwSUxGYorsPGuJ5I4O8FDFeaBJdTg9pmopogkJNGzwQ7 N5bLxfl7y/GZm91v29Z4OKR6GKWThPGM7aCe0Ja0+46YLeV4iBl7A34V1jOXeN3fGbPyhsgLljh WJ+FTrOLjElpNA2FSE5Onh92Go/FX1oQH7GNuXR6p7OIZXU1p/Lh1SJ3OVh18 X-Received: by 2002:a17:906:6791:b0:887:ebaa:7adb with SMTP id q17-20020a170906679100b00887ebaa7adbmr5573365ejp.12.1675110081531; Mon, 30 Jan 2023 12:21:21 -0800 (PST) X-Google-Smtp-Source: AK7set/fZgAZ0MgaVQxwU9unglPvsB2U7RtmofkQNQ/cFazubMmObC9Y/SCtl7n0XjCJ2W2G97qngg== X-Received: by 2002:a17:906:6791:b0:887:ebaa:7adb with SMTP id q17-20020a170906679100b00887ebaa7adbmr5573349ejp.12.1675110081292; Mon, 30 Jan 2023 12:21:21 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id 17-20020a170906059100b0085fc3dec567sm7378859ejn.175.2023.01.30.12.21.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:20 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:18 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 47/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-48-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov expected change is removal of dynamic _DSM bits from slots populated by coldplugged bridges (something like): - Scope (S18) - { - Name (ASUN, 0x03) - Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method - { - Local0 = Package (0x02) - { - BSEL, - ASUN - } - Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) - } - } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-38-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 4 ---- tests/data/acpi/pc/DSDT.bridge | Bin 12699 -> 12614 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 6459 -> 6416 bytes tests/data/acpi/pc/DSDT.roothp | Bin 9787 -> 9745 bytes tests/data/acpi/q35/DSDT.multi-bridge | Bin 12423 -> 12337 bytes 5 files changed, 4 deletions(-) diff --git a/tests/data/acpi/pc/DSDT.bridge b/tests/data/acpi/pc/DSDT.bridge index 4c2d77b8051de2ed21fe43c8283003d8083747f7..d65d9f053910d4ef8a77fe7f9015768dd48a53f8 100644 GIT binary patch delta 65 zcmbQ8d@PB}CDtZT5319@y_I7a%Gt; VsHQpj0zcd4Dyf6qo72=xxdF4y6yg8? delta 64 zcmV-G0KfmnVw+g7N3-|#7j(@X;4Ves+ Wyd^5L9~$xt0VMlAQdeD diff --git a/tests/data/acpi/pc/DSDT.hpbridge b/tests/data/acpi/pc/DSDT.hpbridge index ce2e1430a38b467b212573a896b94c306caa12fb..c8b388a85c8d7472a5370c9657fa2b4e1a897e38 100644 GIT binary patch delta 40 wcmdmOG{K0=CD=5C;GN diff --git a/tests/data/acpi/pc/DSDT.roothp b/tests/data/acpi/pc/DSDT.roothp index 578de7540f6f09c05ad81f62abd142be8cb288ee..657c8263f0c649abc806a67576fd74cb32af60c3 100644 GIT binary patch delta 58 zcmdn(Gtr03CDq3sF=HcFIX8FrT*jFAV5fM2rn#GYxPLG*wbyKJ<1OWxtRTd? OIg+o6bMq4A=}Z6+RuYx~ delta 66 zcmbQ}v)hNuCDpS6(Bxqf(41VLpdlc_<`U)?!o=Ye?CQhC3=!NcsH?yX0Mzgp3IG5A diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index a83322cb08..dfb8523c8b 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1,5 +1 @@ /* List of comma-separated changed AML files to ignore */ -"tests/data/acpi/pc/DSDT.bridge", -"tests/data/acpi/pc/DSDT.roothp", -"tests/data/acpi/pc/DSDT.hpbridge", -"tests/data/acpi/q35/DSDT.multi-bridge", From patchwork Mon Jan 30 20:21:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121774 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id DFF07C636CD for ; Mon, 30 Jan 2023 20:27:20 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafe-0008E3-0J; Mon, 30 Jan 2023 15:22:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaet-0007JZ-Pc for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaed-0007R7-Qx for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110087; 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=wzVW+M9CdG3Kbivqbsvk5I7zIAHXJlZCPmiYemzJ2xU=; b=RcEnD1U02A9bTPnD49SoCLCFCc3gkc4bPo4/XYpiQVvTAKuuG+KcF07WVp6tBDBWGHL6ye 1DvIcyCM+6pOfXN6R/rN/DiHKkCOJGDAjg8rIBKUEz3mE+r/kSBQBQeE8DkWrE3c0lse9j fhTspuoXmjVFoo6gDUX7ptu8dR3ii1g= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-654-ZxIjY58zMDaBTRMltipURw-1; Mon, 30 Jan 2023 15:21:26 -0500 X-MC-Unique: ZxIjY58zMDaBTRMltipURw-1 Received: by mail-ed1-f70.google.com with SMTP id t26-20020aa7d71a000000b004a244cc7ee8so2818832edq.2 for ; Mon, 30 Jan 2023 12:21:25 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=wzVW+M9CdG3Kbivqbsvk5I7zIAHXJlZCPmiYemzJ2xU=; b=Epy4FaZ3m2KXGEMTNDwz75sxSSbBx2nbsuYYNbw1E1NWF2YkjacIvL/tAY2LkO4YnO qFbSU4I2NVsJd3wDjRiO6QHQ7ZzHq31BE67RvvlBxnHs50RyDQ2mZ+R0uZWOyedQrj2U qAmTFXDkern/I7RM4eP8/fsVtDXiWoIqvTIqOHgzk6LyjWzfcXNBN1ma5pNEqQ+SFYzb neCGv0dmZrPJyHRc1HguKZAHHv0uJEfkHrCnfwO7JSofVVWE0hP/PlH7lYAKLjV+0M4S NcbBCB73OKkodvv+DW4l5VVHUstcqATT63o63kZBmhSitlOd9Pc7ulCfMc75a2YbTPtX wHAw== X-Gm-Message-State: AO0yUKU/NH3f/JaC+bhygQ19mJkLXz1Kk0OlI24sI7p6KqXlcf0luFRH Ajnc84IrPrCG/ld1ro7BCXDwsQL/PpUZVoJfHHUxP0NaB7Cs1BrDQKhs+2ryrKlvA8dnJ8NdYC4 y2khLfMvneiz023R/917oBk4HRm02+2q3jwTL7M36lXy77oimuHLY9gIW5jPj X-Received: by 2002:a17:907:6d92:b0:878:52cd:9006 with SMTP id sb18-20020a1709076d9200b0087852cd9006mr947836ejc.69.1675110084273; Mon, 30 Jan 2023 12:21:24 -0800 (PST) X-Google-Smtp-Source: AK7set/dGOekejMxCKBeUI3eXxWleTBLGiCv60arXMNKPw25pWD3xvImWYoOOSWqFWKEPfeQYXOUmg== X-Received: by 2002:a17:907:6d92:b0:878:52cd:9006 with SMTP id sb18-20020a1709076d9200b0087852cd9006mr947818ejc.69.1675110084055; Mon, 30 Jan 2023 12:21:24 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id os25-20020a170906af7900b008874c903ec5sm2811818ejb.43.2023.01.30.12.21.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:23 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:21 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 48/56] tests: acpi: whitelist DSDT before moving non-hotpluggble slots description from hotplug path Message-ID: <20230130201810.11518-49-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-39-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- tests/qtest/bios-tables-test-allowed-diff.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h index dfb8523c8b..0adf61bac3 100644 --- a/tests/qtest/bios-tables-test-allowed-diff.h +++ b/tests/qtest/bios-tables-test-allowed-diff.h @@ -1 +1,12 @@ /* List of comma-separated changed AML files to ignore */ +"tests/data/acpi/pc/DSDT", +"tests/data/acpi/pc/DSDT.acpierst", +"tests/data/acpi/pc/DSDT.acpihmat", +"tests/data/acpi/pc/DSDT.bridge", +"tests/data/acpi/pc/DSDT.cphp", +"tests/data/acpi/pc/DSDT.dimmpxm", +"tests/data/acpi/pc/DSDT.hpbridge", +"tests/data/acpi/pc/DSDT.ipmikcs", +"tests/data/acpi/pc/DSDT.memhp", +"tests/data/acpi/pc/DSDT.nohpet", +"tests/data/acpi/pc/DSDT.numamem", From patchwork Mon Jan 30 20:21:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121796 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 87B0FC636CD for ; Mon, 30 Jan 2023 20:32:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMagv-00019C-RK; Mon, 30 Jan 2023 15:23:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeu-0007Jy-2P for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeh-0007RL-Mu for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:33 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110091; 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=4R5ipfpi1/Z3UUni3TXKOg4dULRbxLgNKi7fR+CL6/U=; b=WpoidX+AdhP48RPawD+ia/Us7hK8SpvIv3qNOZf12dHx25B6U8xxKDLUb7tOBFf+cxmdhZ iNTAdukBm0GgLa3BI83aQs2kbpZU+kIcLTcLdvI5KMf72fGbmdh+VAcWb/mStK17FI++GN oY77ue+f30a6xgHwYZOTbeI60F1o6s4= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-28-KZkSudpSMOqJPBCZcVW9cQ-1; Mon, 30 Jan 2023 15:21:29 -0500 X-MC-Unique: KZkSudpSMOqJPBCZcVW9cQ-1 Received: by mail-ed1-f70.google.com with SMTP id z6-20020aa7cf86000000b0049f95687b88so8967921edx.4 for ; Mon, 30 Jan 2023 12:21:29 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=4R5ipfpi1/Z3UUni3TXKOg4dULRbxLgNKi7fR+CL6/U=; b=66ZErstuZOC1dIdKgu3jKB2vtem57qIhRPfUUdVKUxtmJd3HX7TzBitBmYoDIDbEkj k42zKNoMwU72HKIy/UD1UP0PQ1CCMrZSf3DesdPGbzBktOeTANMJqDX3uowQbjliu7ze Q2XW9+J6W0JyMaTgyZzRUb/u662SjW8CN1S7SQc5YFeoydLQFdbOOxWgkEjiHGP6g1Sq CYgh3Qn9R8Vt2rhE1cWK2crpJ6SLN5cHjYDrQI3S0ewD4mfSy3u7zA2RG1PpS0xtNIpz FTcaU7GBBTphlnCfnW0yEiaugfbKUdtRUBm0VN6bZg/eh2xM4Q+8BjrFWvw+ilPqb/VY 17rQ== X-Gm-Message-State: AO0yUKUqsVn8OCQUDDezRjJAcXgw3LXZhi/3ThtuDG8JgS6yfRbx5Q/2 htpBjNBb5/2miHiIf0WAKwp3ujP+btK3iQ+sc5wSeH1x4bRvQ/4qBZzB6LucQhZybrc7IpAoKYj yNmS0jEHoqTBlNgcWRu7wPrF4T4Z0EFOblPaqYTonUgxrfPM3L66K90C113Yo X-Received: by 2002:a17:906:b187:b0:88b:28ea:5bdc with SMTP id w7-20020a170906b18700b0088b28ea5bdcmr2109142ejy.42.1675110087686; Mon, 30 Jan 2023 12:21:27 -0800 (PST) X-Google-Smtp-Source: AK7set8jnBWrFI5qn0sa1CdaiVKf0/S1dGFicuAKO0G0auQALSUOOAQiOKDyx0HlNULFdO1pxEYG9Q== X-Received: by 2002:a17:906:b187:b0:88b:28ea:5bdc with SMTP id w7-20020a170906b18700b0088b28ea5bdcmr2109118ejy.42.1675110087469; Mon, 30 Jan 2023 12:21:27 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id o2-20020a1709064f8200b0088a2aebb146sm1258157eju.52.2023.01.30.12.21.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:26 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:24 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha , Paolo Bonzini , Richard Henderson , Eduardo Habkost , Marcel Apfelbaum Subject: [PULL 49/56] pcihp: generate populated non-hotpluggble slot descriptions on non-hotplug path Message-ID: <20230130201810.11518-50-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Generating slots descriptions populated by non-hotpluggable devices is akward at best and complicates hotplug path (build_append_pcihp_slots) needlessly, and builds only dynamic _DSM for such slots which is overlkill. Clean it up and let non-hotplug path (build_append_pci_bus_devices) to handle that task. Such clean up effectively drops dynamic _DSM methods on non-hotpluggable slots (even though bus itself is hotpluggable), but in practice it affects only built-in devices (ide controllers/various bridges) that don't use acpi-index anyways so effectively it doesn't matter (NICs are hotpluggble). Follow up series will add static _DSM for non-hotpluggble devices/buses that will not depend on ACPI PCI hotplug at all, and potentially would allows us to reuse non-hotplug path elsewhere (PBX/microvm/arm-virt), including new support for acpi-index for non-hotpluggable devices. Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-40-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/acpi-build.c | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index a02608c215..145389aa58 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -412,6 +412,7 @@ static bool is_devfn_ignored_hotplug(const int devfn, const PCIBus *bus) PCIDevice *pdev = bus->devices[devfn]; if (pdev) { return is_devfn_ignored_generic(devfn, bus) || + !DEVICE_GET_CLASS(pdev)->hotpluggable || /* Cold plugged bridges aren't themselves hot-pluggable */ (IS_PCI_BRIDGE(pdev) && !DEVICE(pdev)->hotplugged); } else { /* non populated slots */ @@ -438,17 +439,14 @@ static void build_append_pcihp_slots(Aml *parent_scope, PCIBus *bus, notify_method = aml_method("DVNT", 2, AML_NOTSERIALIZED); for (devfn = 0; devfn < ARRAY_SIZE(bus->devices); devfn++) { - PCIDevice *pdev = bus->devices[devfn]; int slot = PCI_SLOT(devfn); int adr = slot << 16 | PCI_FUNC(devfn); - bool hotpluggbale_slot = true; if (is_devfn_ignored_hotplug(devfn, bus)) { continue; } - if (pdev) { - hotpluggbale_slot = DEVICE_GET_CLASS(pdev)->hotpluggable; + if (bus->devices[devfn]) { dev = aml_scope("S%.02X", devfn); } else { dev = aml_device("S%.02X", devfn); @@ -462,17 +460,15 @@ static void build_append_pcihp_slots(Aml *parent_scope, PCIBus *bus, aml_append(dev, aml_name_decl("ASUN", aml_int(slot))); aml_append(dev, aml_pci_device_dsm()); - if (hotpluggbale_slot) { - aml_append(dev, aml_name_decl("_SUN", aml_int(slot))); - /* add _EJ0 to make slot hotpluggable */ - method = aml_method("_EJ0", 1, AML_NOTSERIALIZED); - aml_append(method, - aml_call2("PCEJ", aml_name("BSEL"), aml_name("_SUN")) - ); - aml_append(dev, method); + aml_append(dev, aml_name_decl("_SUN", aml_int(slot))); + /* add _EJ0 to make slot hotpluggable */ + method = aml_method("_EJ0", 1, AML_NOTSERIALIZED); + aml_append(method, + aml_call2("PCEJ", aml_name("BSEL"), aml_name("_SUN")) + ); + aml_append(dev, method); - build_append_pcihp_notify_entry(notify_method, slot); - } + build_append_pcihp_notify_entry(notify_method, slot); /* device descriptor has been composed, add it into parent context */ aml_append(parent_scope, dev); @@ -491,8 +487,9 @@ void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus) for (devfn = 0; devfn < ARRAY_SIZE(bus->devices); devfn++) { /* ACPI spec: 1.0b: Table 6-2 _ADR Object Bus Types, PCI type */ int adr = PCI_SLOT(devfn) << 16 | PCI_FUNC(devfn); + PCIDevice *pdev = bus->devices[devfn]; - if (!bus->devices[devfn] || is_devfn_ignored_generic(devfn, bus)) { + if (!pdev || is_devfn_ignored_generic(devfn, bus)) { continue; } From patchwork Mon Jan 30 20:21:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121785 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 072BCC636CD for ; Mon, 30 Jan 2023 20:29:33 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMahy-00026Y-DP; Mon, 30 Jan 2023 15:25:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeu-0007KD-G9 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:53 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaek-0007RZ-8W for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:35 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110093; 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=Vcmyp0nE/HU0Mp7zoURxyiDdtrkkcPdveGeyczV7ndI=; b=f5oGRAfgtRJtZgJOzFmQOPXy+rORnW+V61NkUEyOKATxDbsqi8FpRVqTw/U8cWxCC8xOnE /ISBwkBvKLrodSmE97nADN5jseNocP4lllHQJ83/eBxaz2up1YwtVbYfNfrwQXI+yTnE4u sygKWyMIvLKt57KBLSi1fgoLDc0d388= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-616-i5sDM0DYOYKF2IXAmlbggw-1; Mon, 30 Jan 2023 15:21:32 -0500 X-MC-Unique: i5sDM0DYOYKF2IXAmlbggw-1 Received: by mail-ed1-f71.google.com with SMTP id l17-20020a056402255100b00472d2ff0e59so8988965edb.19 for ; Mon, 30 Jan 2023 12:21:32 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Vcmyp0nE/HU0Mp7zoURxyiDdtrkkcPdveGeyczV7ndI=; b=6RjFhsgYb16MsuDnjeGjxzNORKRSTkX1pGFPZeAHe6FbetA0qWxmBb/B9YXdh24Sgz WVf5shCGmYRmmRQGiWH27mKCDWoWi6STPpxsCzZOQiyg1CeY4V/5Y4DewdEwek/HGbgY hWpbkVACOWUnVITQwQOGF70R1iOch47R1seRyLrBTZVx5GwF1HKKPBPEVtiyuuMjB4zj vQt8WZYUymwKHC9OJWx0Lk2fQZARksbzKovfZZ4Sc14ln3iMYV+kcnZakBXeN7c+J49Z n5H8DyZwjEaN6hSWNrT6gLCrFluhRbDvk7d2hXQO12K5XEupiCewVpXEZkx0Ivx56jPk x8xQ== X-Gm-Message-State: AO0yUKXT1v9drx2ONXEglIflS9sF7V6WdjLjbm6ZvGJ8aq0dSuI0xYYy QSfVH88AaRdxh/OR2AWqJfiOm6gMhDX9+mJiRDrlEtQxGUdqDtyvQaWmL+ZnZpiCVV5bVsOadVY IwvYPy3qy809JyepUFk3/l9+iBdbDaYmMmITYdjNAQtb3vB2xdjksfsV9mDn6 X-Received: by 2002:a17:907:7642:b0:888:b471:8e46 with SMTP id kj2-20020a170907764200b00888b4718e46mr5106042ejc.50.1675110090393; Mon, 30 Jan 2023 12:21:30 -0800 (PST) X-Google-Smtp-Source: AK7set+8Bs9wMmS1VEbfecydy4knW6fP8W81yF0pLuJA7RH5m70NjVzqeH/DgHfoWX1aiGPQvsah/g== X-Received: by 2002:a17:907:7642:b0:888:b471:8e46 with SMTP id kj2-20020a170907764200b00888b4718e46mr5106024ejc.50.1675110090156; Mon, 30 Jan 2023 12:21:30 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id op27-20020a170906bcfb00b0084cb4d37b8csm7425591ejb.141.2023.01.30.12.21.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:29 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:27 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Igor Mammedov , Ani Sinha Subject: [PULL 50/56] tests: acpi: update expected blobs Message-ID: <20230130201810.11518-51-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Igor Mammedov Expected change removal of dynamic _DSM AML for non-hotpluggable hots-bridge, storage, isa bridge devices from PC machine blobs: - Scope (S00) - { - Name (ASUN, Zero) - Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method - { - Local0 = Package (0x02) - { - BSEL, - ASUN - } - Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) - } - } - - Scope (S08) - { - Name (ASUN, One) - Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method - { - Local0 = Package (0x02) - { - BSEL, - ASUN - } - Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) - } - } - - Scope (S10) - { - Name (ASUN, 0x02) - Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method - { - Local0 = Package (0x02) - { - BSEL, - ASUN - } - Return (PDSM (Arg0, Arg1, Arg2, Arg3, Local0)) - } - } Signed-off-by: Igor Mammedov Message-Id: <20230112140312.3096331-41-imammedo@redhat.com> --- tests/qtest/bios-tables-test-allowed-diff.h | 11 ----------- tests/data/acpi/pc/DSDT | Bin 6487 -> 6360 bytes tests/data/acpi/pc/DSDT.acpierst | Bin 6453 -> 6283 bytes tests/data/acpi/pc/DSDT.acpihmat | Bin 7812 -> 7685 bytes tests/data/acpi/pc/DSDT.bridge | Bin 12614 -> 12487 bytes tests/data/acpi/pc/DSDT.cphp | Bin 6951 -> 6824 bytes tests/data/acpi/pc/DSDT.dimmpxm | Bin 8141 -> 8014 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 6416 -> 6289 bytes tests/data/acpi/pc/DSDT.ipmikcs | Bin 6559 -> 6432 bytes tests/data/acpi/pc/DSDT.memhp | Bin 7846 -> 7719 bytes tests/data/acpi/pc/DSDT.nohpet | Bin 6345 -> 6218 bytes tests/data/acpi/pc/DSDT.numamem | Bin 6493 -> 6366 bytes 12 files changed, 11 deletions(-) diff --git a/tests/data/acpi/pc/DSDT b/tests/data/acpi/pc/DSDT index 1bc656f2a4897d2932d593e8768173e0d2597d45..0b475fb5a966543fef2cd7672a0b198838a63151 100644 GIT binary patch delta 40 wcmca^bi`|Vl`n`J03N^%qW}N^ delta 92 zcmca%c-@H0CDbUcyECDt1=UQs0S`?J*8l(j delta 71 zcmX?}cr1y_CDenv?HJYVZhX1{+w! bb2tWv`Y}#Ucsu?!`@?jHo diff --git a/tests/data/acpi/pc/DSDT.cphp b/tests/data/acpi/pc/DSDT.cphp index ef487176e117acf8f271d0a54bfad8dfa33ef696..754ab854dc48fc1af2d335e7269c23a056e66eb8 100644 GIT binary patch delta 40 wcmZ2(w!)OlCDW=VIc6o#F+Y&uwND`pvkxS|o@Y036s2$^ZZW delta 92 zcmX?Sch;WECDvQZ05_H!ZvX%Q diff --git a/tests/data/acpi/pc/DSDT.hpbridge b/tests/data/acpi/pc/DSDT.hpbridge index c8b388a85c8d7472a5370c9657fa2b4e1a897e38..834c27002edbd3e2298a71c9ff1b501e3a3314f7 100644 GIT binary patch delta 40 wcmbPWG|`aDCDw>EckJ2UYJXa*Y?#B(?Xhx##0 f78H~N3s^t|7(oKO0$Ra_P!(KEAd$`Ic!RhBSb!F` diff --git a/tests/data/acpi/pc/DSDT.memhp b/tests/data/acpi/pc/DSDT.memhp index 45b434d485444750cf00ebc1b2658f2fa40f0884..2f895e9b385c1ae2f58c7ade4de02328b1be7356 100644 GIT binary patch delta 40 wcmZ2xyWED$CD=VIc6o#F+Y&uzXX@SAaSh;R@$00@>1nE(I) delta 92 zcmZ2(v&@#uCDo#F+Yu5G?0@SBlGKr`6DAfCf9IMk0} g@o#F+Yu5JFy^_!7LKr`6DAfCf9IMk0} gvLLSbkC5>CD`|Vn=gnP02yixaR2}S delta 92 zcmca-c-M%_CD|7PS7& X-Patchwork-Id: 13121781 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A97D4C54EAA for ; Mon, 30 Jan 2023 20:28:20 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMafa-0007mC-6W; Mon, 30 Jan 2023 15:22:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeu-0007KO-PG for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaem-0007Sh-ME for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:37 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110096; 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=yeIkLp6mwg6zAUGeAJkH0mc6uTtuf4xanN2xYsMRjHQ=; b=OQw4eNcUJ+qQ88GPn7o2c6tInwFe+1+ztq+b72+a5bKEZJU8WMf84C/BzETZw6C3PpCa6d CKZ/vNEpqfswY4wPm6Mqbt5HOsNbl+1JfaPlrGDrRyjMMycbTfkGvn94QA2TlKDUdNGSQ2 M2AcgGFsSGjTy5T92hIwUvk37yo+ZkA= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-303-9N9XO7RhON6D6Qrfxlst3Q-1; Mon, 30 Jan 2023 15:21:35 -0500 X-MC-Unique: 9N9XO7RhON6D6Qrfxlst3Q-1 Received: by mail-ej1-f70.google.com with SMTP id he34-20020a1709073da200b00887ced84328so2715101ejc.10 for ; Mon, 30 Jan 2023 12:21:34 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=yeIkLp6mwg6zAUGeAJkH0mc6uTtuf4xanN2xYsMRjHQ=; b=GUCOrHvxRY5brt0TWqel/+RPUpa6r4W60hUQcGXqARmN2l8uCxDDqtGVcQcwu377Lf HBkKCgNL+3TaSgnGC1LK9PeVv4GZf7halJPdhn278Fpq9lh6ftL2e6P6t5M26i7itPlq v6aYZR47r9rRCh+vKaxbjQbTM28hY5EhvORiWC6UbhYH0QIb2nYpTeBtcKg3F+HtXuWT Crmn9EWvSryw3dbS+3TFcPjAthzBp4mSmDCfqRsP4Z8x5b5JUOupbUyb3zKWgTjrQaqa 6ML8cq24BU40NXoaoAF0NWS+ewZmOF6eHbNDpS+oZEGy6X2mLV30QarBS1Y4LtaiCVku aTiQ== X-Gm-Message-State: AO0yUKUlzHoMScMz4d5m23ifCI6TPkHFPDkEjr/8Lud971WSViumK9sL Yj/Yd+2cA/1BXzydUy3rsyM8/O8S/c+hK0LDLSULP5mOCDYFF1/8a7Y60uRX0Eretl/9wS0IVDd xE4oilUCKyYMtdTLBAgcrFzLapFiRWE1aDMaEZp8TPmBi4LJx2QP8m+QFxkgr X-Received: by 2002:a17:907:6e12:b0:883:3661:97e5 with SMTP id sd18-20020a1709076e1200b00883366197e5mr1036032ejc.50.1675110093291; Mon, 30 Jan 2023 12:21:33 -0800 (PST) X-Google-Smtp-Source: AK7set9rQPLTmXJXSIMRufvGNqevATuWfPoPZobrAQ+HYYaYEpNZkGXq/Xl0hK80jKgahv8fHVJmVA== X-Received: by 2002:a17:907:6e12:b0:883:3661:97e5 with SMTP id sd18-20020a1709076e1200b00883366197e5mr1036017ejc.50.1675110093083; Mon, 30 Jan 2023 12:21:33 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id a8-20020a170906670800b00878775876c5sm7163394ejp.73.2023.01.30.12.21.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:32 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:30 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Minghao Yuan Subject: [PULL 51/56] vhost-user: Skip unnecessary duplicated VHOST_USER_ADD/REM_MEM_REG requests Message-ID: <20230130201810.11518-52-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Minghao Yuan The VHOST_USER_ADD/REM_MEM_REG requests should be categorized into non-vring specific messages, and should be sent only once. Signed-off-by: Minghao Yuan Message-Id: <20230123122119.194347-1-yuanmh12@chinatelecom.cn> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/virtio/vhost-user.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index 6c79da953b..eca9e104ba 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -459,6 +459,8 @@ static bool vhost_user_one_time_request(VhostUserRequest request) case VHOST_USER_SET_MEM_TABLE: case VHOST_USER_GET_QUEUE_NUM: case VHOST_USER_NET_SET_MTU: + case VHOST_USER_ADD_MEM_REG: + case VHOST_USER_REM_MEM_REG: return true; default: return false; From patchwork Mon Jan 30 20:21:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121791 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A03B0C54EAA for ; Mon, 30 Jan 2023 20:31:09 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMaiW-0003r1-JG; Mon, 30 Jan 2023 15:25:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaeu-0007Ka-Tx for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaep-0007TQ-NF for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110099; 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=r+Cb3vXl1fpQEI2y2/OxkPT/k9MpHs9866vAhPGYmTs=; b=f3BtcfUZ5dgPCkmvnEF0xQObqe+HM9FODM2qyt63FLwLvwB0Nyb5Y7+mWU7X4duyTApZrH TCzcISDUJxxDwg7m/8c6maJDARhOXmHrK30T91/zxLj+oyrevDW6pi1lWRfNiaTZz1dQqZ h4Xw2bgsyyt0fzjGQOHBtw0DFLrX1Mo= Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-194-I2phwKpnOVW6HkM0P7G0WA-1; Mon, 30 Jan 2023 15:21:38 -0500 X-MC-Unique: I2phwKpnOVW6HkM0P7G0WA-1 Received: by mail-ed1-f70.google.com with SMTP id o21-20020aa7dd55000000b004a245f58006so2756226edw.12 for ; Mon, 30 Jan 2023 12:21:37 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=r+Cb3vXl1fpQEI2y2/OxkPT/k9MpHs9866vAhPGYmTs=; b=GQKtPSDC96S0jDk7N0aT5bt63vpZahCnzPDK6J3Lul0eoILy97NOx0P9JHJVCQ97yr O3Bz19FVOarW5FgzL+SRRlZ4WQNxUqCcKSiJOP305Y9Q0WWXhB71N1mnGytkdbqAg5+R dHsTs97NF1SMQl4wcSZo5vaAC7j0HDVrvCOLqvnX6ayK8OUaijgpK0akzZ8HJBqdFUtc 0O5zXuKVmH3onIuVRl2BJ18ESjFHqxHgSXGICA2gbPiev4phcQhI5Wg/Nq1mBicaYTOp belfhic4nEK4WNKKcMyomulYEPfBwDYQrPmj7Ydg0x2eoe4HZ9yj412JoGdPCYQXys6e 2ZXQ== X-Gm-Message-State: AO0yUKVuVMLZ8QldWG5PHvCMKyNmYFv46mbRCXDnDUVaOVQX9LnCUqG2 vZOCKMYfjNR5+f2TqFwIpFzvLW/b2cDOsrhFJLpe4o/dSOf6Z6SgsM9uV5k5PdjIvqf+1I2caGl dAKPnBWzUhg/J8sGz108t+m8tdA52TLdmHwCe+nrZ9BAr++qBc8vOOhdqOSfL X-Received: by 2002:a17:906:c350:b0:888:33a:e359 with SMTP id ci16-20020a170906c35000b00888033ae359mr5793585ejb.38.1675110096308; Mon, 30 Jan 2023 12:21:36 -0800 (PST) X-Google-Smtp-Source: AK7set/13J4FE2M2jAMpcY62dXmrZJboZ9cKG1l1Vl6Xr9U2fsh+NvM0uRcA5YOdxsz2Jq2GwTKjSw== X-Received: by 2002:a17:906:c350:b0:888:33a:e359 with SMTP id ci16-20020a170906c35000b00888033ae359mr5793570ejb.38.1675110096025; Mon, 30 Jan 2023 12:21:36 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id v18-20020a1709064e9200b0084c7f96d023sm7408399eju.147.2023.01.30.12.21.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:35 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:33 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Philippe =?utf-8?q?Mathieu-Dau?= =?utf-8?q?d=C3=A9?= , Eric Auger , qemu-arm@nongnu.org Subject: [PULL 52/56] hw: Use TYPE_PCI_BUS definition where appropriate Message-ID: <20230130201810.11518-53-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Philippe Mathieu-Daudé Use the proper QOM type definition instead of magic string. This also helps during eventual refactor while using git-grep. Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20230117193014.83502-1-philmd@linaro.org> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Eric Auger --- hw/arm/smmu-common.c | 3 ++- hw/virtio/virtio-iommu.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/arm/smmu-common.c b/hw/arm/smmu-common.c index 54186f31cb..733c964778 100644 --- a/hw/arm/smmu-common.c +++ b/hw/arm/smmu-common.c @@ -535,7 +535,8 @@ static void smmu_base_reset_hold(Object *obj) static Property smmu_dev_properties[] = { DEFINE_PROP_UINT8("bus_num", SMMUState, bus_num, 0), - DEFINE_PROP_LINK("primary-bus", SMMUState, primary_bus, "PCI", PCIBus *), + DEFINE_PROP_LINK("primary-bus", SMMUState, primary_bus, + TYPE_PCI_BUS, PCIBus *), DEFINE_PROP_END_OF_LIST(), }; diff --git a/hw/virtio/virtio-iommu.c b/hw/virtio/virtio-iommu.c index 23c470977e..1cd258135d 100644 --- a/hw/virtio/virtio-iommu.c +++ b/hw/virtio/virtio-iommu.c @@ -1366,7 +1366,8 @@ static const VMStateDescription vmstate_virtio_iommu = { }; static Property virtio_iommu_properties[] = { - DEFINE_PROP_LINK("primary-bus", VirtIOIOMMU, primary_bus, "PCI", PCIBus *), + DEFINE_PROP_LINK("primary-bus", VirtIOIOMMU, primary_bus, + TYPE_PCI_BUS, PCIBus *), DEFINE_PROP_BOOL("boot-bypass", VirtIOIOMMU, boot_bypass, true), DEFINE_PROP_END_OF_LIST(), }; From patchwork Mon Jan 30 20:21:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121794 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id DEDD9C636D6 for ; Mon, 30 Jan 2023 20:31:10 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMahe-0001wZ-E2; Mon, 30 Jan 2023 15:24:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaew-0007PL-3m for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:53 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaet-0007Tf-5D for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:44 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110102; 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=+u+/jVfLuhQEtNxnBBIodRfyU5vt6JMgwR5Rz45FcIw=; b=EDydh+5ZvjDFzUYjiYmaXZNUVrNksyUoNO6T+BgeZ+G6mv3m5gNS3g35okBuGXnXR0+PBH Yrt8/xr9KaoFUQiMaEea6ZqliU5LYumxeoC/nf0IeJrCbbPbp1aLbDmOmPHfzakmXZiDn2 p0Gj67GzgzOmRZ04Et1ScFHs2mBEyzc= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-655-LPiwn5ksOZKF1_1V6rsYtw-1; Mon, 30 Jan 2023 15:21:41 -0500 X-MC-Unique: LPiwn5ksOZKF1_1V6rsYtw-1 Received: by mail-ej1-f72.google.com with SMTP id sc9-20020a1709078a0900b0086910fdf624so8175770ejc.13 for ; Mon, 30 Jan 2023 12:21:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=+u+/jVfLuhQEtNxnBBIodRfyU5vt6JMgwR5Rz45FcIw=; b=nvwGoWh2+1dA3MsUz9FdMHSj4nkm3kVNSkSBAkemlLgXpPBmHY0LP7duwPj8kT/7F2 JUnkxSk44Zm5UFGPGo3+7H/gCcgwwBNsn4gEi/YftsuG9xnj7SqNWe9an00B4JiMgG5e BfdDMn9ohgWct4/ugkQYqaTr/HTNBdfYShMknRFzXM9em39m4stpLJjXC+uUVkxSyGDY +7tCycG0TknsZiELerZRP2xn3TsEVquadm6+LeZxht9Al9YrZCYhLb+/0ml9jVB+MgD7 Ryptccmtba8b2kWFATqy5KNhn244Ka8A7eSlBxjb5rSr6clinr6B9X/OcAXVOx1I1eRa 13rg== X-Gm-Message-State: AO0yUKVPbhlNbAtawav18q1rb6OkxvbYt2iZqM1gm8Hj4ITJkbipbvhx X3nI2p2PUoeEPisie3l1bRRQYm5FOLIDz+90KNGVIsNaVnjTKw/y2eAipE4+dvODIIZJgpJx8yp 2a7G7+wTSkzb1bzOqAPraWRGtibXmDCZAWChqoonRRBnjVyT4AqB/VBZn6xQN X-Received: by 2002:a17:906:5c4:b0:878:4917:f02f with SMTP id t4-20020a17090605c400b008784917f02fmr17243443ejt.15.1675110099523; Mon, 30 Jan 2023 12:21:39 -0800 (PST) X-Google-Smtp-Source: AK7set/8A3XrfCpQaiMSeXkbLk2RQC9eKVgoUEED3V/CzUKctx4W2RWolyr5x7QpiyXF0hItsWVQzw== X-Received: by 2002:a17:906:5c4:b0:878:4917:f02f with SMTP id t4-20020a17090605c400b008784917f02fmr17243419ejt.15.1675110099243; Mon, 30 Jan 2023 12:21:39 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id z24-20020a170906945800b008790ae3e094sm6457878ejx.20.2023.01.30.12.21.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:38 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:36 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Thomas Huth , Daniel P =?utf-8?b?LiBCZXJyYW5nw6k=?= , Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= , Igor Mammedov , Ani Sinha Subject: [PULL 53/56] tests/qtest/bios-tables-test: Make the test less verbose by default Message-ID: <20230130201810.11518-54-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Thomas Huth We are facing the issues that our test logs in the gitlab CI are too big (and thus cut off). The bios-tables-test is one of the few qtests that prints many lines of output by default when running with V=1, so it contributes to this problem. Almost all other qtests are silent with V=1 and only print debug messages with V=2 and higher. Thus let's change the bios-tables-test to behave more like the other tests and only print the debug messages with V=2 (or higher). Signed-off-by: Thomas Huth Message-Id: <20230118125132.1694469-1-thuth@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Reviewed-by: Daniel P. Berrangé Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Igor Mammedov --- tests/qtest/bios-tables-test.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 22b22c403d..d8c8cda58e 100644 --- a/tests/qtest/bios-tables-test.c +++ b/tests/qtest/bios-tables-test.c @@ -24,7 +24,7 @@ * You will also notice that tests/qtest/bios-tables-test-allowed-diff.h lists * a bunch of files. This is your hint that you need to do the below: * 4. Run - * make check V=1 + * make check V=2 * this will produce a bunch of warnings about differences * beween actual and expected ACPI tables. If you have IASL installed, * they will also be disassembled so you can look at the disassembled @@ -108,6 +108,8 @@ static const char *iasl = CONFIG_IASL; static const char *iasl; #endif +static int verbosity_level; + static bool compare_signature(const AcpiSdtTable *sdt, const char *signature) { return !memcmp(sdt->aml, signature, 4); @@ -368,7 +370,7 @@ static GArray *load_expected_aml(test_data *data) gsize aml_len; GArray *exp_tables = g_array_new(false, true, sizeof(AcpiSdtTable)); - if (getenv("V")) { + if (verbosity_level >= 2) { fputc('\n', stderr); } for (i = 0; i < data->tables->len; ++i) { @@ -383,7 +385,7 @@ static GArray *load_expected_aml(test_data *data) try_again: aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir, data->machine, sdt->aml, ext); - if (getenv("V")) { + if (verbosity_level >= 2) { fprintf(stderr, "Looking for expected file '%s'\n", aml_file); } if (g_file_test(aml_file, G_FILE_TEST_EXISTS)) { @@ -395,7 +397,7 @@ try_again: goto try_again; } g_assert(exp_sdt.aml_file); - if (getenv("V")) { + if (verbosity_level >= 2) { fprintf(stderr, "Using expected file '%s'\n", aml_file); } ret = g_file_get_contents(aml_file, (gchar **)&exp_sdt.aml, @@ -503,7 +505,7 @@ static void test_acpi_asl(test_data *data) exp_sdt->aml, sdt->asl_file, sdt->aml_file, exp_sdt->asl_file, exp_sdt->aml_file); fflush(stderr); - if (getenv("V")) { + if (verbosity_level >= 1) { const char *diff_env = getenv("DIFF"); const char *diff_cmd = diff_env ? diff_env : "diff -U 16"; char *diff = g_strdup_printf("%s %s %s", diff_cmd, @@ -2042,8 +2044,13 @@ int main(int argc, char *argv[]) const char *arch = qtest_get_arch(); const bool has_kvm = qtest_has_accel("kvm"); const bool has_tcg = qtest_has_accel("tcg"); + char *v_env = getenv("V"); int ret; + if (v_env) { + verbosity_level = atoi(v_env); + } + g_test_init(&argc, &argv, NULL); if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) { From patchwork Mon Jan 30 20:21:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121795 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id F3DC7C636CD for ; Mon, 30 Jan 2023 20:31:09 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMagv-0000rY-8i; Mon, 30 Jan 2023 15:23:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaf5-0007Tj-SF for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaf1-0007UA-UQ for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110110; 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=7bkv3H4oi99LAs4yrO/kNIruXsTWrhvBwWJpGtw2osc=; b=QGDbR95c0Sv/6DsDMnVrZI90suzoQJ6WapN/3gfb6BUd/520+k5M6D9ovMQ499TTEXAlTm OUyLELSsBoFBdr/F46l/UfLWFZEXMmI0iwyJ5gFy6eK4RfHFDRP6P59XVhAoX168SD3KQe YTiqU/RjPupOlbpjxe7q71njXc70YEk= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-382-yqMhZdjlNJ2zddjRemPIgg-1; Mon, 30 Jan 2023 15:21:44 -0500 X-MC-Unique: yqMhZdjlNJ2zddjRemPIgg-1 Received: by mail-ed1-f71.google.com with SMTP id q20-20020a056402519400b0049e5b8c71b3so8948516edd.17 for ; Mon, 30 Jan 2023 12:21:44 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=7bkv3H4oi99LAs4yrO/kNIruXsTWrhvBwWJpGtw2osc=; b=qY8mwJjvitAfKwRkp454GYf67P5rdODdpvoU+45gHxh9jaikJ8mrMbk/aU/KuGsf0a RaeuJ1kh8tJPgJptBnvrUOBsE2cYMv9t9mBBzbyD0MqFgLCJlxeDmkLNXeZCn2RE8LNQ l9oHBQMUlKFj1bTc9N6JejC+boS46DhqVzf3zbCY1S6Sfu5UERtpyCXkeABiR2h+Vtw8 /CJULe2Vr3B+qz0PCM+oFDEEo4G5pMN+4/RGr2w00w6ZLGBRg3aIxyNde5KoVgNOpikP qyCeCJd7qPIiSza875+reVZt5IoTnOOFoDrufwRjrHR9WF40eewRjPbJzU2/ut8W1zNM HVFA== X-Gm-Message-State: AO0yUKWL0ZjsHtH8Y5A+WhFLYfV0kFIQospKbKPc6sxpre0mmLfbYlSs uExP00IUF530+XNa/dL8pQfKxw1N2HPlfjzriXb6GFAKDqM2Hwuh3KcN5R8dnT1orQVKJU01ayz 2AElTjwmkCRVKAj6bHDp3+gNnJe5Vdt25r4wwPF8nkrp8pDQRnx+a1hFJegtg X-Received: by 2002:a17:906:7c07:b0:887:66bc:97 with SMTP id t7-20020a1709067c0700b0088766bc0097mr6762085ejo.49.1675110102761; Mon, 30 Jan 2023 12:21:42 -0800 (PST) X-Google-Smtp-Source: AK7set9mxoDq3sGUVaE42tF01Iz/jfyt8QQ6japb5VRCmUdXXGmMLQ/80Sx6r4Qp748plGzTh12dEg== X-Received: by 2002:a17:906:7c07:b0:887:66bc:97 with SMTP id t7-20020a1709067c0700b0088766bc0097mr6762062ejo.49.1675110102483; Mon, 30 Jan 2023 12:21:42 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id g18-20020a170906595200b00888d593ce76sm1999837ejr.72.2023.01.30.12.21.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:41 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:39 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Greg Kurz , Yanghang Liu , Stefan Hajnoczi , Maxime Coquelin Subject: [PULL 54/56] Revert "vhost-user: Monitor slave channel in vhost_user_read()" Message-ID: <20230130201810.11518-55-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Greg Kurz This reverts commit db8a3772e300c1a656331a92da0785d81667dc81. Motivation : this is breaking vhost-user with DPDK as reported in [0]. Received unexpected msg type. Expected 22 received 40 Fail to update device iotlb Received unexpected msg type. Expected 40 received 22 Received unexpected msg type. Expected 22 received 11 Fail to update device iotlb Received unexpected msg type. Expected 11 received 22 vhost VQ 1 ring restore failed: -71: Protocol error (71) Received unexpected msg type. Expected 22 received 11 Fail to update device iotlb Received unexpected msg type. Expected 11 received 22 vhost VQ 0 ring restore failed: -71: Protocol error (71) unable to start vhost net: 71: falling back on userspace virtio The failing sequence that leads to the first error is : - QEMU sends a VHOST_USER_GET_STATUS (40) request to DPDK on the master socket - QEMU starts a nested event loop in order to wait for the VHOST_USER_GET_STATUS response and to be able to process messages from the slave channel - DPDK sends a couple of legitimate IOTLB miss messages on the slave channel - QEMU processes each IOTLB request and sends VHOST_USER_IOTLB_MSG (22) updates on the master socket - QEMU assumes to receive a response for the latest VHOST_USER_IOTLB_MSG but it gets the response for the VHOST_USER_GET_STATUS instead The subsequent errors have the same root cause : the nested event loop breaks the order by design. It lures QEMU to expect responses to the latest message sent on the master socket to arrive first. Since this was only needed for DAX enablement which is still not merged upstream, just drop the code for now. A working solution will have to be merged later on. Likely protect the master socket with a mutex and service the slave channel with a separate thread, as discussed with Maxime in the mail thread below. [0] https://lore.kernel.org/qemu-devel/43145ede-89dc-280e-b953-6a2b436de395@redhat.com/ Reported-by: Yanghang Liu Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2155173 Signed-off-by: Greg Kurz Message-Id: <20230119172424.478268-2-groug@kaod.org> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Acked-by: Stefan Hajnoczi Acked-by: Maxime Coquelin --- hw/virtio/vhost-user.c | 35 +++-------------------------------- 1 file changed, 3 insertions(+), 32 deletions(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index eca9e104ba..ad8883113b 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -356,35 +356,6 @@ end: return G_SOURCE_REMOVE; } -static gboolean slave_read(QIOChannel *ioc, GIOCondition condition, - gpointer opaque); - -/* - * This updates the read handler to use a new event loop context. - * Event sources are removed from the previous context : this ensures - * that events detected in the previous context are purged. They will - * be re-detected and processed in the new context. - */ -static void slave_update_read_handler(struct vhost_dev *dev, - GMainContext *ctxt) -{ - struct vhost_user *u = dev->opaque; - - if (!u->slave_ioc) { - return; - } - - if (u->slave_src) { - g_source_destroy(u->slave_src); - g_source_unref(u->slave_src); - } - - u->slave_src = qio_channel_add_watch_source(u->slave_ioc, - G_IO_IN | G_IO_HUP, - slave_read, dev, NULL, - ctxt); -} - static int vhost_user_read(struct vhost_dev *dev, VhostUserMsg *msg) { struct vhost_user *u = dev->opaque; @@ -406,7 +377,6 @@ static int vhost_user_read(struct vhost_dev *dev, VhostUserMsg *msg) * be prepared for re-entrancy. So we create a new one and switch chr * to use it. */ - slave_update_read_handler(dev, ctxt); qemu_chr_be_update_read_handlers(chr->chr, ctxt); qemu_chr_fe_add_watch(chr, G_IO_IN | G_IO_HUP, vhost_user_read_cb, &data); @@ -418,7 +388,6 @@ static int vhost_user_read(struct vhost_dev *dev, VhostUserMsg *msg) * context that have been processed by the nested loop are purged. */ qemu_chr_be_update_read_handlers(chr->chr, prev_ctxt); - slave_update_read_handler(dev, NULL); g_main_loop_unref(loop); g_main_context_unref(ctxt); @@ -1809,7 +1778,9 @@ static int vhost_setup_slave_channel(struct vhost_dev *dev) return -ECONNREFUSED; } u->slave_ioc = ioc; - slave_update_read_handler(dev, NULL); + u->slave_src = qio_channel_add_watch_source(u->slave_ioc, + G_IO_IN | G_IO_HUP, + slave_read, dev, NULL, NULL); if (reply_supported) { msg.hdr.flags |= VHOST_USER_NEED_REPLY_MASK; From patchwork Mon Jan 30 20:21:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121771 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 520A6C54EAA for ; Mon, 30 Jan 2023 20:26:59 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMagu-0000rW-Sy; Mon, 30 Jan 2023 15:23:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaf3-0007T4-Vo for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:55 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaf1-0007U3-U0 for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:53 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110108; 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=9w+cbK177ihiLbeA3SL3UjuA+A67HnTnafScmxGI1UY=; b=bIUwKupYNNzd9tF8JtTsnUfv/642sDKdltJ/px8TVEHPqOacqynRQ9LtFrUhA3optuqkKl Mi8rOkWn61dlyteZ5IumbNoR3UjsJxJao8RyL6SPP5ZEEK7V1q6l6/I1N672UCiyy26pG2 gbwk9jVCbuS9u9BG1fxaCc/hPGzvDDg= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-592-lB5CBKhePbCXjssganCJ8A-1; Mon, 30 Jan 2023 15:21:47 -0500 X-MC-Unique: lB5CBKhePbCXjssganCJ8A-1 Received: by mail-ed1-f72.google.com with SMTP id y20-20020a056402271400b0046c9a6ec30fso8952554edd.14 for ; Mon, 30 Jan 2023 12:21:47 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=9w+cbK177ihiLbeA3SL3UjuA+A67HnTnafScmxGI1UY=; b=D+Yr5Q3Sx+88IAdgUzjkAlfxc2O1fEgkDP0WIrsquXgQepR6k+OfPL2QFv0vCBmU6G dv45piDcOAzDpapamRgjtJJ9aAXMq5m32fTZ/YgjNwqtfj1ZL/eoetSEPLhSsesmTI7o ZPhsTj/fQTzvGedt+mLAT5iQSzSZtMBYD0/bPtSnf8LOqKzEct/JPqtI/tgWANIdfw99 KesA2967QLN2vg17J9GOyp4IzHNWQC0VaH33f9eRoDVM0a7xFLT/Rkg7CXWJbc079RAY 0fwXCK0CUQbcovAct8WophoJof5Cx3eaV5O6JVS0P6faDy9ahlPkVoOCeJy/RMla4yZ1 UBFg== X-Gm-Message-State: AFqh2kqJPTkDKM48qfKiCzHiosblyiqriht+GOue0cGRzJXnry6NTiXQ U3dp3wQ2EUNkiOxgJlg0kvfMar0phJuFodypBxKGOyWj0WeJh+CfaQQuyYDmSbXhuJzIkIN65Do HfUi9PUwtENsGHV8whdyPLR4ZEONlpwF0lkYDIDK86leNJ4QVBTQxT/D/am/L X-Received: by 2002:a17:906:cccc:b0:846:56fe:6c68 with SMTP id ot12-20020a170906cccc00b0084656fe6c68mr49254120ejb.21.1675110105892; Mon, 30 Jan 2023 12:21:45 -0800 (PST) X-Google-Smtp-Source: AMrXdXubdPgExocQ7PSfMHgGb5FeJyK0X++2URbrw6tMJi0j4/DSlnUcLwL+nn+I/0Dp7G1cWia8hg== X-Received: by 2002:a17:906:cccc:b0:846:56fe:6c68 with SMTP id ot12-20020a170906cccc00b0084656fe6c68mr49254100ejb.21.1675110105672; Mon, 30 Jan 2023 12:21:45 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id fm19-20020a1709072ad300b007c10d47e748sm7244762ejc.36.2023.01.30.12.21.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:44 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:42 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Greg Kurz , Maxime Coquelin Subject: [PULL 55/56] Revert "vhost-user: Introduce nested event loop in vhost_user_read()" Message-ID: <20230130201810.11518-56-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent 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: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Greg Kurz This reverts commit a7f523c7d114d445c5d83aecdba3efc038e5a692. The nested event loop is broken by design. It's only user was removed. Drop the code as well so that nobody ever tries to use it again. I had to fix a couple of trivial conflicts around return values because of 025faa872bcf ("vhost-user: stick to -errno error return convention"). Signed-off-by: Greg Kurz Message-Id: <20230119172424.478268-3-groug@kaod.org> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin Acked-by: Maxime Coquelin --- hw/virtio/vhost-user.c | 65 ++++-------------------------------------- 1 file changed, 5 insertions(+), 60 deletions(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index ad8883113b..e68daa35d4 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -305,19 +305,8 @@ static int vhost_user_read_header(struct vhost_dev *dev, VhostUserMsg *msg) return 0; } -struct vhost_user_read_cb_data { - struct vhost_dev *dev; - VhostUserMsg *msg; - GMainLoop *loop; - int ret; -}; - -static gboolean vhost_user_read_cb(void *do_not_use, GIOCondition condition, - gpointer opaque) +static int vhost_user_read(struct vhost_dev *dev, VhostUserMsg *msg) { - struct vhost_user_read_cb_data *data = opaque; - struct vhost_dev *dev = data->dev; - VhostUserMsg *msg = data->msg; struct vhost_user *u = dev->opaque; CharBackend *chr = u->user->chr; uint8_t *p = (uint8_t *) msg; @@ -325,8 +314,7 @@ static gboolean vhost_user_read_cb(void *do_not_use, GIOCondition condition, r = vhost_user_read_header(dev, msg); if (r < 0) { - data->ret = r; - goto end; + return r; } /* validate message size is sane */ @@ -334,8 +322,7 @@ static gboolean vhost_user_read_cb(void *do_not_use, GIOCondition condition, error_report("Failed to read msg header." " Size %d exceeds the maximum %zu.", msg->hdr.size, VHOST_USER_PAYLOAD_SIZE); - data->ret = -EPROTO; - goto end; + return -EPROTO; } if (msg->hdr.size) { @@ -346,53 +333,11 @@ static gboolean vhost_user_read_cb(void *do_not_use, GIOCondition condition, int saved_errno = errno; error_report("Failed to read msg payload." " Read %d instead of %d.", r, msg->hdr.size); - data->ret = r < 0 ? -saved_errno : -EIO; - goto end; + return r < 0 ? -saved_errno : -EIO; } } -end: - g_main_loop_quit(data->loop); - return G_SOURCE_REMOVE; -} - -static int vhost_user_read(struct vhost_dev *dev, VhostUserMsg *msg) -{ - struct vhost_user *u = dev->opaque; - CharBackend *chr = u->user->chr; - GMainContext *prev_ctxt = chr->chr->gcontext; - GMainContext *ctxt = g_main_context_new(); - GMainLoop *loop = g_main_loop_new(ctxt, FALSE); - struct vhost_user_read_cb_data data = { - .dev = dev, - .loop = loop, - .msg = msg, - .ret = 0 - }; - - /* - * We want to be able to monitor the slave channel fd while waiting - * for chr I/O. This requires an event loop, but we can't nest the - * one to which chr is currently attached : its fd handlers might not - * be prepared for re-entrancy. So we create a new one and switch chr - * to use it. - */ - qemu_chr_be_update_read_handlers(chr->chr, ctxt); - qemu_chr_fe_add_watch(chr, G_IO_IN | G_IO_HUP, vhost_user_read_cb, &data); - - g_main_loop_run(loop); - - /* - * Restore the previous event loop context. This also destroys/recreates - * event sources : this guarantees that all pending events in the original - * context that have been processed by the nested loop are purged. - */ - qemu_chr_be_update_read_handlers(chr->chr, prev_ctxt); - - g_main_loop_unref(loop); - g_main_context_unref(ctxt); - - return data.ret; + return 0; } static int process_message_reply(struct vhost_dev *dev, From patchwork Mon Jan 30 20:21:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Michael S. Tsirkin" X-Patchwork-Id: 13121797 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org 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 smtp.lore.kernel.org (Postfix) with ESMTPS id A6802C636D7 for ; Mon, 30 Jan 2023 20:32:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pMahL-0001su-9g; Mon, 30 Jan 2023 15:24:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaf9-0007ZU-2P for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:59 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pMaf2-0007UE-2C for qemu-devel@nongnu.org; Mon, 30 Jan 2023 15:21:58 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675110111; 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=I4XNQdhv6ZtyeuNVlIseJKebey1JzlwjNMp41O5jDVk=; b=GWz3Z2aaP1Hv54C/+r0MrR7YZnf7zRUwIQinDIXgKjVV1/bRy5MCIRfmyItWFO880eU1Zn Gj2YHYKvwxaB2/s+agqtGoaMH0aUo3eeIMQNaEX0r7woJkmTGVj3svSp8AGbr9zHaw8d1h 6TGzp7SvWYd8Oe6rHPSgMGebAA2HWeM= Received: from mail-ej1-f70.google.com (mail-ej1-f70.google.com [209.85.218.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-497-29UQ5aIbOxiKsYLHyMunVQ-1; Mon, 30 Jan 2023 15:21:50 -0500 X-MC-Unique: 29UQ5aIbOxiKsYLHyMunVQ-1 Received: by mail-ej1-f70.google.com with SMTP id d10-20020a170906640a00b008787d18c373so7037903ejm.17 for ; Mon, 30 Jan 2023 12:21:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=I4XNQdhv6ZtyeuNVlIseJKebey1JzlwjNMp41O5jDVk=; b=XY8ZNU6qhBSiRBVDYhSMTzg7qaFZ7eyHkXL6yXxXpQV7LHmonxJRxnjea38nA1KFqv VwPsE9Zs3UWlj7nFKt5tEKfLPianAQrxQEBbTl/M3rK9yTOVRtPRLytkXFvRuujG9CUK U2vGsr7oDnjPiaUcyriX+u0BcESDVehNWzrg4lUUrSPP3z+ERiCoVO9zUU32ZmXlbW1Z 7qFPjJyDZCzcSFI+3BwYZyc88Bz4CFPEQZnyBZmPYSGgNMM6qotGEibmdkg6k+8RCQER RhJMCk3F7SXrKGlW/tFSD6SIlnarQQC1vgRV3uUr2U+P5rhGiFAd81VgqtQvPhmCntmj J9eA== X-Gm-Message-State: AO0yUKW7bKln8Pos1uQS9clANcg6snVBSI+SA1+pkKO2nu2AnD4DiUX5 UgSu7RZTZa+DkAABBYWZNKkng1CsSb1Px0C8sdwWEssdZmTIi+UZRl/TOr/S+P4MdzNfnoOj36A CYMHJZ8Hap4wGX2geIKa67ClRZ1ACLjdWAqlaGX5f+kyqUFjjPKbH1iMWp9aG X-Received: by 2002:a17:906:9bd8:b0:883:ba98:204d with SMTP id de24-20020a1709069bd800b00883ba98204dmr9486979ejc.65.1675110108917; Mon, 30 Jan 2023 12:21:48 -0800 (PST) X-Google-Smtp-Source: AK7set8KknPptBk/Adku+r3H8P35498yRd++/yBVUaPkhxXs42uHEHS/LuGONdENi6IJxDlDF1AfVw== X-Received: by 2002:a17:906:9bd8:b0:883:ba98:204d with SMTP id de24-20020a1709069bd800b00883ba98204dmr9486957ejc.65.1675110108689; Mon, 30 Jan 2023 12:21:48 -0800 (PST) Received: from redhat.com ([2.52.144.173]) by smtp.gmail.com with ESMTPSA id ce4-20020a170906b24400b0078d3f96d293sm7366835ejb.30.2023.01.30.12.21.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 30 Jan 2023 12:21:48 -0800 (PST) Date: Mon, 30 Jan 2023 15:21:45 -0500 From: "Michael S. Tsirkin" To: qemu-devel@nongnu.org Cc: Peter Maydell , Marcel Apfelbaum , Andrew Jones , Laszlo Ersek , Daniel P =?utf-8?b?LiBCZXJyYW5nw6k=?= , Marcel Apfelbaum Subject: [PULL 56/56] docs/pcie.txt: Replace ioh3420 with pcie-root-port Message-ID: <20230130201810.11518-57-mst@redhat.com> References: <20230130201810.11518-1-mst@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230130201810.11518-1-mst@redhat.com> X-Mailer: git-send-email 2.27.0.106.g8ac3dc51b1 X-Mutt-Fcc: =sent Received-SPF: pass client-ip=170.10.129.124; envelope-from=mst@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Marcel Apfelbaum Do not mention ioh3420 in the "how to" doc. The device still works and can be used by already existing setups, but no need to be mentioned. Suggested-by: Andrew Jones Reviewed-by: Laszlo Ersek Signed-off-by: Marcel Apfelbaum Signed-off-by: Daniel P. Berrangé Message-Id: <20230123174205.683979-1-berrange@redhat.com> Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- docs/pcie.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/pcie.txt b/docs/pcie.txt index 89e3502075..df49178311 100644 --- a/docs/pcie.txt +++ b/docs/pcie.txt @@ -48,8 +48,8 @@ Place only the following kinds of devices directly on the Root Complex: strangely when PCI Express devices are integrated with the Root Complex. - (2) PCI Express Root Ports (ioh3420), for starting exclusively PCI Express - hierarchies. + (2) PCI Express Root Ports (pcie-root-port), for starting exclusively + PCI Express hierarchies. (3) PCI Express to PCI Bridge (pcie-pci-bridge), for starting legacy PCI hierarchies. @@ -70,7 +70,7 @@ Place only the following kinds of devices directly on the Root Complex: -device pxb-pcie,id=pcie.1,bus_nr=x[,numa_node=y][,addr=z] PCI Express Root Ports and PCI Express to PCI bridges can be connected to the pcie.1 bus: - -device ioh3420,id=root_port1[,bus=pcie.1][,chassis=x][,slot=y][,addr=z] \ + -device pcie-root-port,id=root_port1[,bus=pcie.1][,chassis=x][,slot=y][,addr=z] \ -device pcie-pci-bridge,id=pcie_pci_bridge1,bus=pcie.1 @@ -112,14 +112,14 @@ Plug only PCI Express devices into PCI Express Ports. ------------ 2.2.1 Plugging a PCI Express device into a PCI Express Root Port: - -device ioh3420,id=root_port1,chassis=x,slot=y[,bus=pcie.0][,addr=z] \ + -device pcie-root-port,id=root_port1,chassis=x,slot=y[,bus=pcie.0][,addr=z] \ -device ,bus=root_port1 2.2.2 Using multi-function PCI Express Root Ports: - -device ioh3420,id=root_port1,multifunction=on,chassis=x,addr=z.0[,slot=y][,bus=pcie.0] \ - -device ioh3420,id=root_port2,chassis=x1,addr=z.1[,slot=y1][,bus=pcie.0] \ - -device ioh3420,id=root_port3,chassis=x2,addr=z.2[,slot=y2][,bus=pcie.0] \ + -device pcie-root-port,id=root_port1,multifunction=on,chassis=x,addr=z.0[,slot=y][,bus=pcie.0] \ + -device pcie-root-port,id=root_port2,chassis=x1,addr=z.1[,slot=y1][,bus=pcie.0] \ + -device pcie-root-port,id=root_port3,chassis=x2,addr=z.2[,slot=y2][,bus=pcie.0] \ 2.2.3 Plugging a PCI Express device into a Switch: - -device ioh3420,id=root_port1,chassis=x,slot=y[,bus=pcie.0][,addr=z] \ + -device pcie-root-port,id=root_port1,chassis=x,slot=y[,bus=pcie.0][,addr=z] \ -device x3130-upstream,id=upstream_port1,bus=root_port1[,addr=x] \ -device xio3130-downstream,id=downstream_port1,bus=upstream_port1,chassis=x1,slot=y1[,addr=z1]] \ -device ,bus=downstream_port1