From patchwork Thu Jul 8 15:17:01 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365303 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 35207C07E9C for ; Thu, 8 Jul 2021 15:19:30 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E493C610A5 for ; Thu, 8 Jul 2021 15:19:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E493C610A5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:43310 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VoH-0002zg-1f for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:19:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53440) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vml-0008SD-RK for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:55 -0400 Received: from mail-ed1-x532.google.com ([2a00:1450:4864:20::532]:41484) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmh-000887-RI for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:54 -0400 Received: by mail-ed1-x532.google.com with SMTP id m1so9028936edq.8 for ; Thu, 08 Jul 2021 08:17:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=PFonQRkqzl281GZ7rTAUyH8nUwjUVSVQflBGRmaPz2c=; b=VsE0n5NcFwm93ucJTrAvGVhLQKZb9bh6238CIfmWHDmu0+UYLB6XYax13QoLLCDBEo QdwNXbuKJmzRLI0dgKQpCr8aVIaADQMjIq1QB0sp7wP0ohRIUZPQNn89k0Une1K13CUB MQRGHmhfb6B1LbzvVg+C/vqQ+BQuv0ludjmW93dd604sD4QQgghdabYwhCSrpDc1soC9 gPUrMtxYgs821mOIoUtnUto0Iw6HaUtaD/pmSH5PWBTS+o6TNKuWAzdvemikA4uVUxzG FTZ8GEudiOrrwb1x2NSGey3hyh7yX0UBiTmY4/ySNDBOliHcwVr9CkfFUk2KhkShZ32p J8Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=PFonQRkqzl281GZ7rTAUyH8nUwjUVSVQflBGRmaPz2c=; b=LqvBTUuA0sU5FpvoehEnz2Pal9OamwUBAzwghxCcS8itGoDwMgW2g1WyLQhqyJRdZa tsXA2fHn0ZEvhnQqaedkCBn/0PEdN8J4Qx+olsGXknJZHaamC4Af727BSR1Yu1/BEJU9 ynIElmmnkeYaDwvmOfnuMXcX8HVx6ihPvxEqdTsLIeB0Z6ntE8sUVB9BnJ9u3KrDpgqp 6Nl0v9f277X6wCrBLLtrJGgzv9YhK3JTyXj9GTkUra6jdNFFSVm5X/UV4wCHtzWG5E4t GXZw72d5yEbd7EP7///k3szjUaGioMlK1tlECZUs+wG1b1orvOpPTczDB+0zOuvASxtT efgA== X-Gm-Message-State: AOAM531JoTQEH/BV9dUzDdsgnXk/UwPir9arElAwaj1WRiHcOgmK/z3A 2qE+Kb3mjuJl58GMJ//RYv8Edg7ls5w= X-Google-Smtp-Source: ABdhPJzoV5p2zGSSQH1B/icEf7AoexE+p+RYD7nI3EZnh1kUbtMsj7z6UXtiAxI0FAMsEF7Bx9kqWg== X-Received: by 2002:a50:e79b:: with SMTP id b27mr33129526edn.267.1625757470501; Thu, 08 Jul 2021 08:17:50 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:50 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 01/48] configure: fix libdaxctl options Date: Thu, 8 Jul 2021 17:17:01 +0200 Message-Id: <20210708151748.408754-2-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::532; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x532.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Miroslav Rezanina , Thomas Huth Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Miroslav Rezanina For some reason, libdaxctl option setting was set to work in an opposite way (--enable-libdaxctl disabled it and vice versa). Fixing this so configuration works properly. Signed-off-by: Miroslav Rezanina Reviewed-by: Thomas Huth Message-Id: <20210707063124.81954-1-mrezanin@redhat.com> Fixes: 83ef16821a ("configure, meson: convert libdaxctl detection to meson", 2021-07-06) Signed-off-by: Paolo Bonzini --- configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 650d9c0735..4f51528a77 100755 --- a/configure +++ b/configure @@ -1531,9 +1531,9 @@ for opt do ;; --disable-keyring) secret_keyring="no" ;; - --enable-libdaxctl) libdaxctl=disabled + --enable-libdaxctl) libdaxctl="enabled" ;; - --disable-libdaxctl) libdaxctl=enabled + --disable-libdaxctl) libdaxctl="disabled" ;; --enable-fuse) fuse="enabled" ;; From patchwork Thu Jul 8 15:17:02 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365305 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B3936C11F66 for ; Thu, 8 Jul 2021 15:19:30 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 7CB2F613D1 for ; Thu, 8 Jul 2021 15:19:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7CB2F613D1 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:43328 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VoH-00030J-LS for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:19:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53436) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vml-0008S8-Rb for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:55 -0400 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]:41486) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmj-00088F-Nn for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:55 -0400 Received: by mail-ed1-x534.google.com with SMTP id m1so9028992edq.8 for ; Thu, 08 Jul 2021 08:17:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=JXud1buOFDLkmcLoj6WEV2smKYmGYLQoP7OF5KwGfPQ=; b=hgTNuqaeWKnCw4T1JZZRPyzKNaqPwpu7HAUfLgOOMLWUYP509lqJ/FamnpCPZRQ2bd GgsNt3aGkzXqcTzNuyffbTF3w4LMFVfEK5iO2ZR2kB0Jfr2IJ+s7k8s8Zvdu/5L+kdwW wuxUiEl5eAmPbQTriAtloltoR+TP6OqPlr3IelO5nIMXtZZWq1xV0o9Ka1kj2+Hr4ph+ 5bpEWpa/IlwcHYvAeEgGlMjgQh4EKMTTnuUtgqL1yZgbD367mnblSkpFDw+WiPhzfAR9 kebnfzWWGwwKcrqZobaZVAlVlT01F3lSSFat5l8dXk7A90zUneeOxqMgDGENhh7510vb lZMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=JXud1buOFDLkmcLoj6WEV2smKYmGYLQoP7OF5KwGfPQ=; b=gAdT9a1s/rOiNmXEGq0nxMb5nEjv0L2B0JHiqw0SXZYFWfpSqm6oJajZ3Vz8FYz+EH y4rOAkVOZX8gZ39d5FGoR+xHGe65kYfF377Ft1Lz8PiatRDPMP08G9MgDHT9M97vrREn PZaFuh0HJ69H7Szj4HkzPTpnSS68dzDdxKOMr/IQ2pxLLAf94Z1Im0VIUFtZUtI0BQFM fCBKzqGCb5u0l5ygIJuoEBuf2UCzC/T2RtitzhVWmv09y+W0C5S0OSrXPOInio5ElGYB niiLCUAy7mWM1CIDUh1Be2XQAHVp6HAQN9Lo/7AhiDxR0htsBVbsgcRoE8NwAKt5Op32 xd3Q== X-Gm-Message-State: AOAM531QFasd+DidrFLzApMXH/BzvXhInWuwOkhU8a0rMsbzrGkmJwxs 72xWvk5nVfKzFfzMnlUEMN1dQon+L6M= X-Google-Smtp-Source: ABdhPJySMBPKMydJMV4rpbRWyaZRlLvFOcCuV+C4Bn9INfWmXGfF3Zm17pcLXqE00hiDMShd4WIlLg== X-Received: by 2002:a05:6402:4311:: with SMTP id m17mr20309506edc.346.1625757471234; Thu, 08 Jul 2021 08:17:51 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:50 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 02/48] configure: fix libpmem configuration option Date: Thu, 8 Jul 2021 17:17:02 +0200 Message-Id: <20210708151748.408754-3-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::534; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x534.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Connor Kuehl , Miroslav Rezanina , =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Pankaj Gupta Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Miroslav Rezanina For some reason, libpmem option setting was set to work in an opposite way (--enable-libpmem disabled it and vice versa). Fixing this so configuration works properly. Signed-off-by: Miroslav Rezanina Reviewed-by: Connor Kuehl Reviewed-by: Pankaj Gupta Reviewed-by: Philippe Mathieu-Daudé Tested-by: Connor Kuehl Message-Id: <20210707075144.82717-1-mrezanin@redhat.com> Fixes: e36e8c70f6 ("configure, meson: convert libpmem detection to meson", 2021-07-06) Signed-off-by: Paolo Bonzini --- configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 4f51528a77..a172c83e15 100755 --- a/configure +++ b/configure @@ -1501,9 +1501,9 @@ for opt do ;; --disable-debug-mutex) debug_mutex=no ;; - --enable-libpmem) libpmem=disabled + --enable-libpmem) libpmem="enabled" ;; - --disable-libpmem) libpmem=enabled + --disable-libpmem) libpmem="disabled" ;; --enable-xkbcommon) xkbcommon="enabled" ;; From patchwork Thu Jul 8 15:17:03 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365307 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 95C88C07E99 for ; Thu, 8 Jul 2021 15:19:30 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4AD51610A5 for ; Thu, 8 Jul 2021 15:19:30 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4AD51610A5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:43380 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VoH-00032t-Em for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:19:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53438) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vml-0008SA-S6 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:55 -0400 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]:35456) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmj-00088O-Ny for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:55 -0400 Received: by mail-ed1-x536.google.com with SMTP id t10so2955932eds.2 for ; Thu, 08 Jul 2021 08:17:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=brBWUAvHeIOYDJtnGzR2iHi+ZfN9Pt/WWB/tTZWXUxc=; b=nTJWIPps8ZGDzuHbD36hjZKCvSrKfU5xHOwsxweJzpjXH9enUIpQ4GXVy5hiQ7zaaA 9aRRf4Ap2OuzN3Bqft5wE69g5orLkiAA68j/xE0oiSqu3HIho0gcYU4y3Eitnkns5Wk1 mM3Ou78S2ss3cziS63DHCTNZ2Jpm/FH6B/IWr8gNbD+RW5DCWzF01b+lexHTKOjtEYET GV4sVP8VN4PsccZl+ohIqkAV0utQlcTvd9KQvgWXdTlqeBqmfrlhIxGVAy5NnzYM6DHY 9d7SDkhFpsKCOXAjmXKnUO1QF6jxUWlG4eZNPFVl1qcYXrVFoJG7TzBgJSiz7eAfffqE X+9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=brBWUAvHeIOYDJtnGzR2iHi+ZfN9Pt/WWB/tTZWXUxc=; b=Gjr091dc4GrrcTn8eopYYFWnJmVTa5QQVKg1UTc5y4OLDA8aPcrvDtrx6oYxchrGaD wHRH1l1u1uYGSnyXwMYkn62l5UMQGfNPDg/39FQNbKs1uXD1Ifrkt9MyL6s9FaKPrI7T hOfOLNtFp4L/HoUJx0n4AsBVS9x4rfSSozLc3SFZhNUyT0iKZwlDNNpNzfga0hJny2um VN/bMFcoSZwqd7C+uDNX/hlOmt3vHqhQUjEiPjURZ9l2Ssl00O0mjw+nqE59criT34tx 7YGvzEPXOPt2CPgGAcKBkPbTdQnuB3CPQLgPUWisbXl7RoIORM6VLOTUbFU/9i2D9XQU VOBQ== X-Gm-Message-State: AOAM533gWvyxsEYggBnzZrgN8rKHrG2BMEOjTFKFzC/lC+ER53TU3d8o m7tgcJq/qH6/O03fcEJaGS+bS9OKx/Q= X-Google-Smtp-Source: ABdhPJzM2ebvZzGEdfxvZm1UvZTlq/7DG3GzTqW02y1wi6XLUQ7q6u/pMwR0IragSZjPtLKY/lDzSw== X-Received: by 2002:a05:6402:2552:: with SMTP id l18mr39679536edb.363.1625757471966; Thu, 08 Jul 2021 08:17:51 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:51 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 03/48] meson: fix missing preprocessor symbols Date: Thu, 8 Jul 2021 17:17:03 +0200 Message-Id: <20210708151748.408754-4-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::536; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x536.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Li Zhijian Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" While most libraries do not need a CONFIG_* symbol because the "when:" clauses are enough, some do. Add them back or stop using them if possible. In the case of libpmem, the statement to add the CONFIG_* symbol was still in configure, but could not be triggered because it checked for "no" instead of "disabled" (and it would be wrong anyway since the test for the library has not been done yet). Reported-by: Li Zhijian Fixes: 587d59d6cc ("configure, meson: convert virgl detection to meson", 2021-07-06) Fixes: 83ef16821a ("configure, meson: convert libdaxctl detection to meson", 2021-07-06) Fixes: e36e8c70f6 ("configure, meson: convert libpmem detection to meson", 2021-07-06) Fixes: 53c22b68e3 ("configure, meson: convert liburing detection to meson", 2021-07-06) Signed-off-by: Paolo Bonzini --- configure | 6 ------ contrib/vhost-user-gpu/meson.build | 2 +- meson.build | 4 ++++ 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/configure b/configure index a172c83e15..a04b1e075c 100755 --- a/configure +++ b/configure @@ -4818,12 +4818,6 @@ elif test "$pthread_setname_np_wo_tid" = "yes" ; then echo "CONFIG_PTHREAD_SETNAME_NP_WO_TID=y" >> $config_host_mak fi -if test "$libpmem" = "yes" ; then - echo "CONFIG_LIBPMEM=y" >> $config_host_mak - echo "LIBPMEM_LIBS=$libpmem_libs" >> $config_host_mak - echo "LIBPMEM_CFLAGS=$libpmem_cflags" >> $config_host_mak -fi - if test "$bochs" = "yes" ; then echo "CONFIG_BOCHS=y" >> $config_host_mak fi diff --git a/contrib/vhost-user-gpu/meson.build b/contrib/vhost-user-gpu/meson.build index 0ce1515a10..4cb52a91d7 100644 --- a/contrib/vhost-user-gpu/meson.build +++ b/contrib/vhost-user-gpu/meson.build @@ -1,4 +1,4 @@ -if 'CONFIG_TOOLS' in config_host and 'CONFIG_VIRGL' in config_host \ +if 'CONFIG_TOOLS' in config_host and virgl.found() \ and 'CONFIG_GBM' in config_host and 'CONFIG_LINUX' in config_host \ and pixman.found() executable('vhost-user-gpu', files('vhost-user-gpu.c', 'virgl.c', 'vugbm.c'), diff --git a/meson.build b/meson.build index 7e12de01be..9cd966a86b 100644 --- a/meson.build +++ b/meson.build @@ -1223,8 +1223,11 @@ config_host_data.set('CONFIG_VTE', vte.found()) config_host_data.set('CONFIG_LIBATTR', have_old_libattr) config_host_data.set('CONFIG_LIBCAP_NG', libcap_ng.found()) config_host_data.set('CONFIG_EBPF', libbpf.found()) +config_host_data.set('CONFIG_LIBDAXCTL', libdaxctl.found()) config_host_data.set('CONFIG_LIBISCSI', libiscsi.found()) config_host_data.set('CONFIG_LIBNFS', libnfs.found()) +config_host_data.set('CONFIG_LINUX_IO_URING', linux_io_uring.found()) +config_host_data.set('CONFIG_LIBPMEM', libpmem.found()) config_host_data.set('CONFIG_RBD', rbd.found()) config_host_data.set('CONFIG_SDL', sdl.found()) config_host_data.set('CONFIG_SDL_IMAGE', sdl_image.found()) @@ -1237,6 +1240,7 @@ config_host_data.set('CONFIG_VNC_JPEG', jpeg.found()) config_host_data.set('CONFIG_VNC_PNG', png.found()) config_host_data.set('CONFIG_VNC_SASL', sasl.found()) config_host_data.set('CONFIG_VIRTFS', have_virtfs) +config_host_data.set('CONFIG_VTE', vte.found()) config_host_data.set('CONFIG_XKBCOMMON', xkbcommon.found()) config_host_data.set('CONFIG_KEYUTILS', keyutils.found()) config_host_data.set('CONFIG_GETTID', has_gettid) From patchwork Thu Jul 8 15:17:04 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365311 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3659CC07E96 for ; Thu, 8 Jul 2021 15:21:34 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id F086B61414 for ; Thu, 8 Jul 2021 15:21:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F086B61414 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:51962 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VqH-0000Lf-5O for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:21:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53470) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-0008UZ-BG for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:59 -0400 Received: from mail-ej1-x634.google.com ([2a00:1450:4864:20::634]:38635) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmk-00088V-Hs for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:56 -0400 Received: by mail-ej1-x634.google.com with SMTP id gb6so10256124ejc.5 for ; Thu, 08 Jul 2021 08:17:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=x2xfU9jO8E1GjgBl47Ekpsb5ztShELAehOr420frCzE=; b=Q17cNCXWCEu6kHp8H0XGLnYvwfmBCXGp0lfiHGv4qjgjsNZbpoTuLetgXiFFOqAG8u d/fuaH+AyjbYg5ffDZJO1JAnkEYb4tRZ8Ro8wq9+/mFo23P8CbJ67IJBL/E0cO0d4y+W nMOM20V2eNQEIppOlLPS2POzuCgr+lXolNLiJ5zU/ygxn5jvPioOj8rVP1oOKd4QYZWo 4dKOnLNkMifqn6tZp8gGZuXNOmwM5wJQnVU64odSf4+lfyGF69rhnyS0WaNh7epHXwXS muI8M/olhPvJl8PnKt7CEvMlvyjCY/7NmPddhBuJq9AH4cF9v7BHzdiitc1nnO+HHpq2 7fLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=x2xfU9jO8E1GjgBl47Ekpsb5ztShELAehOr420frCzE=; b=leBnpbq6pqW1wKX/CqnWMWYUae8qjw8oefA8ux0D+GLfwjFF5rVGXNBiv8RQdZMhgj P1/xUkuq13mXImiu5mUmXRpQFR05fOHYan69JjFMgXv1A7j9ptGem3xTLTfraCNlcDf4 LPfREFHozmI6uETYTsn/dzHUfUPpLTNaZSApQilUGWoxVfPWVTx23pVeXb20JHCdTarA 9TEIthWeWoYiHfcbGvC+o6yXPFI0JiT/TMLSgnn6sTBBJe30WXpoHcIi5cTist/q4c0L eBdKJU+SjmiNOgnOLQjwbgZhWaEjnfI3N5rGi0cZunsTE+Zckk8VjxqJOBSkqqTqr4oD YyUQ== X-Gm-Message-State: AOAM530IV6LYpuo6koYe788J873MP0SRchk/a6+CEdsEdprTTFAVxbQ6 V1Yv+xwYdx/uWMM09tQ8kgazR6Pg7Fg= X-Google-Smtp-Source: ABdhPJzbunsw1MYOw28GoIFy20WtJKJfh0cFW9bnJ/AWW8MPYFmLMZ578ZXz1QB7zibJe4izm/nTNw== X-Received: by 2002:a17:906:7302:: with SMTP id di2mr30789593ejc.409.1625757472674; Thu, 08 Jul 2021 08:17:52 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:52 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 04/48] osdep: fix HAVE_BROKEN_SIZE_MAX case Date: Thu, 8 Jul 2021 17:17:04 +0200 Message-Id: <20210708151748.408754-5-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::634; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x634.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Frederic Bezies Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" While config-host.mak entries are expanded to "1" for compatibility with create-config.sh, tests done directly in meson.build expand to the empty string and cannot be placed to the right of the && operator. Adjust osdep.h after commit e46bd55d9c ("configure: convert HAVE_BROKEN_SIZE_MAX to meson", 2021-07-06) changed the way HAVE_BROKEN_SIZE_MAX is defined. Reported-by: Frederic Bezies Fixes: e46bd55d9c ("configure: convert HAVE_BROKEN_SIZE_MAX to meson", 2021-07-06) Resolves: #463 Signed-off-by: Paolo Bonzini --- include/qemu/osdep.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h index c91a78b5e6..60718fc342 100644 --- a/include/qemu/osdep.h +++ b/include/qemu/osdep.h @@ -256,7 +256,7 @@ extern "C" { /* Mac OSX has a bug that incorrectly defines SIZE_MAX with * the wrong type. Our replacement isn't usable in preprocessor * expressions, but it is sufficient for our needs. */ -#if defined(HAVE_BROKEN_SIZE_MAX) && HAVE_BROKEN_SIZE_MAX +#ifdef HAVE_BROKEN_SIZE_MAX #undef SIZE_MAX #define SIZE_MAX ((size_t)-1) #endif From patchwork Thu Jul 8 15:17:05 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365317 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F3629C07E96 for ; Thu, 8 Jul 2021 15:23:38 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9BA0E613FD for ; Thu, 8 Jul 2021 15:23:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9BA0E613FD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:58010 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VsH-0004M1-My for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:23:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53482) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-0008Vi-KL for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:59 -0400 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]:43815) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmk-00088a-Hy for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:56 -0400 Received: by mail-ed1-x534.google.com with SMTP id l26so695522eda.10 for ; Thu, 08 Jul 2021 08:17:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=JuwO9pM95hWiD6+ZUA7cnKjhEg+vgsiz1t0hFfkXw3E=; b=WiAMJ4m4gPXXp9ZD5R/8rouVnJUIJ9dAvbaa6A3wPAMdnlXqcXIOQ4aUOhQerAC7QA A4cxu7S6lHIh7WrfJqaSo9tkVOgzogoz8r+m6mVNUiHpsNDxXqfuGYEgc2YK12VOipWT T0Bcq9mv01WtjqzHLFYjIwIDICrLl6qo+NXpn/hTC8puYpx4lolFqFFM5QLnURK3dRH5 R2ROGIbiJIMqaL2a0Lq3KK2WcSk9CbTxwppZdq55daUcMisL+kpMRDelAE5I9Ygqx6iF qp0LXdw0ImSphm682GHRYkMMi5IWHZIiymZYe2bns1WfFbZ+n1VznX9fRHofxGhcrbxu 8oig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=JuwO9pM95hWiD6+ZUA7cnKjhEg+vgsiz1t0hFfkXw3E=; b=nKWqKXQHpP0GSPnRQc+HjI1H1qWLfJFXuo1nuj4BbPwkLIf/PhnPstPTrXDhrUJ+WW /9tJ5pAhzveUdEQ/3d0T0DbgekebKQkcB9njU+kPBcwFh9zODXa1ehrDRhws0EZcTT3G nI7p9pUeBakp9dDT1axMUqP/D1ltEpi+Wu0G5IErcwH2rjyuWVNa9DgT15GO4X7BOSGb BRsD18HqYjAI5KGh2gw0LsjcPGJFR00mVD5tqQOnBq7oZ1CrWvGaJT3qnbwh+2CpjSp6 ty35swKfOtTQ002AZUYcRr2m4F0R5e1Tq+Ae9nDruLrL1VRQcCbW/AZgHwuQyF1erWJX J1Ww== X-Gm-Message-State: AOAM530u1RoE1E6Bafh7VnTY5GnWX7YEyeK8vZZ1Z9VHd4eS1k9rmiNB WiO91iLjFmPVvtSnvBSRoIiEVP8SP4U= X-Google-Smtp-Source: ABdhPJxEVu4tkziyILN7f7At3VxWKtMT4ykal/sA5k6if6lyxIf6JQVbuOtjK9r8wOL2CSgoE9m4wQ== X-Received: by 2002:a05:6402:28b6:: with SMTP id eg54mr13058857edb.216.1625757473465; Thu, 08 Jul 2021 08:17:53 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:53 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 05/48] modules: add modinfo macros Date: Thu, 8 Jul 2021 17:17:05 +0200 Message-Id: <20210708151748.408754-6-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::534; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x534.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Add macros for module info annotations. Instead of having that module meta-data stored in lists in util/module.c place directly in the module source code. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-2-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- include/qemu/module.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/include/qemu/module.h b/include/qemu/module.h index 944d403cbd..81ef086da0 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -73,4 +73,29 @@ bool module_load_one(const char *prefix, const char *lib_name, bool mayfail); void module_load_qom_one(const char *type); void module_load_qom_all(void); +/* + * module info annotation macros + * + * scripts/modinfo-collect.py will collect module info, + * using the preprocessor and -DQEMU_MODINFO + */ +#ifdef QEMU_MODINFO +# define modinfo(kind, value) \ + MODINFO_START kind value MODINFO_END +#else +# define modinfo(kind, value) +#endif + +/* module implements QOM type */ +#define module_obj(name) modinfo(obj, name) + +/* module has a dependency on */ +#define module_dep(name) modinfo(dep, name) + +/* module is for target architecture */ +#define module_arch(name) modinfo(arch, name) + +/* module registers QemuOpts */ +#define module_opts(name) modinfo(opts, name) + #endif From patchwork Thu Jul 8 15:17:06 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365323 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-21.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DB38AC07E99 for ; Thu, 8 Jul 2021 15:24:05 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8069661418 for ; Thu, 8 Jul 2021 15:24:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8069661418 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:60606 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vsi-000658-H5 for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:24:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53484) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-0008Vk-Ki for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:59 -0400 Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e]:41545) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vml-00089P-JY for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:17:57 -0400 Received: by mail-ej1-x62e.google.com with SMTP id b2so10269055ejg.8 for ; Thu, 08 Jul 2021 08:17:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=GW8GDqEW0MB1VWp13Ta+BoF0VS+4/kxC0ZAJIRx+5/8=; b=jXEYW1kJkXxnvZo7ySO41R7JtEaxkLPDNgeP+ONL6VwJow7uLeAtydkeYmaO25aYi7 HpzIifeTRPtGMwfA2JdQon+LCdoPCzpcU1BR+HAqw/BcUZ4X+aaqDLGcyOPJSHJB18td L8iPp9L+VQk5HVfGBMHKtdI+ay8aB2tIZP8Lv7WRB1fstA7nuwOAjnWTFZZH+5R/pYes dEkrHIRdp/5L59aHhU2ubWXoRSNOqrX2IhaEHmJEr78JdDN/yWJoF9MHB8WB6bMyyOB+ JN/7+2wYZd0o6iNZ/aWYM+3+oZDp3S/zYhTrAaBqqrqA2wRJD5qfkytHq+FLNlO38+tP sRBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=GW8GDqEW0MB1VWp13Ta+BoF0VS+4/kxC0ZAJIRx+5/8=; b=OTQLgqRUNtkID3I2HGn+j0jYF2y/goUbVqyJqitMD4Zr5ONy6A6fX8SXfpC4epIj4K LvF998j+cBF5Rxly2YCjN7DtyPAaIBa34xVJw3en5+zxRY1PQsmtBB5ZkJ4HRbZVtCYM 3njGrX8Z7CpdJC5Im9+oCGBM7S/JCpE4gz60zGuU3LizszDT/GS4i8tkxt41B0t1yAgK 5BVWogOz4Mn+aa5GXZxL08l6tYCNqxCUj8DjlEX738m+bDdYNza/TTvmNkgJP3v6sklW Qkqb1gT0NggslT3OGATDhM9F4hx6APuLeq35iyoFvt6tnd7WgcOC9AqFF2D761/wJ4Y/ 79yw== X-Gm-Message-State: AOAM531gpeN6UkQA0MNVmi6aNw++Tz4Jj8Ww4F9N6eahy99wIaYiIHTW N7o9sg+5YPWVfbSlrXH0aDCsvUajA/0= X-Google-Smtp-Source: ABdhPJxq3ZTHO73cP6y+Kx+Z1MqUlToj2xxykDDgNPdeOKR/555ajkuUc2bKNlL2Wt7vNaEnOd6wSg== X-Received: by 2002:a17:906:3a53:: with SMTP id a19mr31558645ejf.88.1625757474116; Thu, 08 Jul 2021 08:17:54 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:53 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 06/48] modules: collect module meta-data Date: Thu, 8 Jul 2021 17:17:06 +0200 Message-Id: <20210708151748.408754-7-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62e; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62e.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Add script to collect the module meta-data from the source code, store the results in *.modinfo files. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-3-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- meson.build | 16 +++++++++ scripts/modinfo-collect.py | 67 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+) create mode 100755 scripts/modinfo-collect.py diff --git a/meson.build b/meson.build index 9cd966a86b..ff580f1f80 100644 --- a/meson.build +++ b/meson.build @@ -2241,6 +2241,9 @@ subdir('tests/qtest/fuzz') # Library dependencies # ######################## +modinfo_collect = find_program('scripts/modinfo-collect.py') +modinfo_files = [] + block_mods = [] softmmu_mods = [] foreach d, list : modules @@ -2254,6 +2257,19 @@ foreach d, list : modules else softmmu_mods += sl endif + if module_ss.sources() != [] + # FIXME: Should use sl.extract_all_objects(recursive: true) as + # input. Sources can be used multiple times but objects are + # unique when it comes to lookup in compile_commands.json. + # Depnds on a mesion version with + # https://github.com/mesonbuild/meson/pull/8900 + modinfo_files += custom_target(d + '-' + m + '.modinfo', + output: d + '-' + m + '.modinfo', + input: module_ss.sources(), + capture: true, + build_by_default: true, # to be removed when added to a target + command: [modinfo_collect, '@INPUT@']) + endif else if d == 'block' block_ss.add_all(module_ss) diff --git a/scripts/modinfo-collect.py b/scripts/modinfo-collect.py new file mode 100755 index 0000000000..4acb188c3e --- /dev/null +++ b/scripts/modinfo-collect.py @@ -0,0 +1,67 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- + +import os +import sys +import json +import shlex +import subprocess + +def find_command(src, target, compile_commands): + for command in compile_commands: + if command['file'] != src: + continue + if target != '' and command['command'].find(target) == -1: + continue + return command['command'] + return 'false' + +def process_command(src, command): + skip = False + arg = False + out = [] + for item in shlex.split(command): + if arg: + out.append(x) + arg = False + continue + if skip: + skip = False + continue + if item == '-MF' or item == '-MQ' or item == '-o': + skip = True + continue + if item == '-c': + skip = True + continue + out.append(item) + out.append('-DQEMU_MODINFO') + out.append('-E') + out.append(src) + return out + +def main(args): + target = '' + if args[0] == '--target': + args.pop(0) + target = args.pop(0) + print("MODINFO_DEBUG target %s" % target) + arch = target[:-8] # cut '-softmmu' + print("MODINFO_START arch \"%s\" MODINFO_END" % arch) + with open('compile_commands.json') as f: + compile_commands = json.load(f) + for src in args: + print("MODINFO_DEBUG src %s" % src) + command = find_command(src, target, compile_commands) + cmdline = process_command(src, command) + print("MODINFO_DEBUG cmd", cmdline) + result = subprocess.run(cmdline, stdout = subprocess.PIPE, + universal_newlines = True) + if result.returncode != 0: + sys.exit(result.returncode) + for line in result.stdout.split('\n'): + if line.find('MODINFO') != -1: + print(line) + +if __name__ == "__main__": + main(sys.argv[1:]) From patchwork Thu Jul 8 15:17:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365313 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 69798C07E9C for ; Thu, 8 Jul 2021 15:21:34 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 0A93B613FD for ; Thu, 8 Jul 2021 15:21:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0A93B613FD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:51926 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VqH-0000KJ-55 for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:21:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-000092-Gy for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:03 -0400 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:33478) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmn-00089Y-Fv for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:00 -0400 Received: by mail-ed1-x531.google.com with SMTP id eb14so9127638edb.0 for ; Thu, 08 Jul 2021 08:17:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9qpX/JZQrvQ0rLcsL6eA3CT23o+gxDH5id2jLKyMJEM=; b=vDGYAmtMlmG7ZZcsfGfzA0zln4jUp1oxICtfAlEY2D/izYcwtP6iBc3QIL8f7qc7b0 YLM3Q0MjoUIpm+HWX2qs0ooym/iHMId5bYPPa6WmJt/iAtoRCMSGG0aKVeUoKj+D0sSN Vq4Qr5lhB/FAbi+aB8Cx+a1ZqFV59AuKtUmp1CjMVYDxWYLIi//uCHvZAT2VNSdUCo8M xDwtdsCaGATW+yVOC7wWsqZmQLhZHfjRc2+Q+Hym20t2ggqiQJ0tyKGP/OZpR8vZM2cb 3hX8LeRABatHffE7gpUJWxizFWxc7LFwUi8tRC5XOaVP7PT1k/unE+Q5XNpi6Jfz3d6b Yq9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=9qpX/JZQrvQ0rLcsL6eA3CT23o+gxDH5id2jLKyMJEM=; b=RAwDgoklPrcqC2srPp8PC5SOVezCCrUUNtW6/M2GONM9ecqPiCTEVondYAqvsAGYHY mVmBFFSM1V0v2y2K1RrfU4M7JH9ArKiF/zoxS14MhZLae/cmpAqOjM/Nxpo4Sitt2fWw aeSHL8c7K+ILn08Cwfq9/R3aiqy+LazsUvFRuVUFgaP6omcAlksAUFLdMwFKmHB1ckBG ZksLoQVxCM5nqc/RpgImI02rLRNeNcpf/qS3SrdjyCvQ2E5XaiFiiJLjptn+du+Kp/ar v1EQaVuS8TGyyS8wikcAjoTSaJCRSFfJvnv6cGin3JMtmBNiyr4mMFJbrvhsa4n2B7OZ rGag== X-Gm-Message-State: AOAM531efl7OJ3I/iKO07pBYd5BqpvfMNbw1GG69NI/vvynJ4kN98WgQ WJmQHXeySmzaohOZrwUkreZlMlW3Yw8= X-Google-Smtp-Source: ABdhPJxoPwGzaD967G5UMjO91qWUPUVaVvp+eXXHXJkZ0fDYv9fMftnuE0tMRlbP1ca0/tDSeAn5AA== X-Received: by 2002:a50:fe8d:: with SMTP id d13mr39254789edt.14.1625757474881; Thu, 08 Jul 2021 08:17:54 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:54 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 07/48] modules: generate modinfo.c Date: Thu, 8 Jul 2021 17:17:07 +0200 Message-Id: <20210708151748.408754-8-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::531; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x531.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Add script to generate C source with a small database containing the module meta-data. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-4-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- include/qemu/module.h | 17 ++++++++ meson.build | 13 +++++- scripts/modinfo-generate.py | 84 +++++++++++++++++++++++++++++++++++++ softmmu/vl.c | 4 ++ util/module.c | 11 +++++ 5 files changed, 128 insertions(+), 1 deletion(-) create mode 100755 scripts/modinfo-generate.py diff --git a/include/qemu/module.h b/include/qemu/module.h index 81ef086da0..a98748d501 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -98,4 +98,21 @@ void module_load_qom_all(void); /* module registers QemuOpts */ #define module_opts(name) modinfo(opts, name) +/* + * module info database + * + * scripts/modinfo-generate.c will build this using the data collected + * by scripts/modinfo-collect.py + */ +typedef struct QemuModinfo QemuModinfo; +struct QemuModinfo { + const char *name; + const char *arch; + const char **objs; + const char **deps; + const char **opts; +}; +extern const QemuModinfo qemu_modinfo[]; +void module_init_info(const QemuModinfo *info); + #endif diff --git a/meson.build b/meson.build index ff580f1f80..7b827f7caa 100644 --- a/meson.build +++ b/meson.build @@ -2242,6 +2242,7 @@ subdir('tests/qtest/fuzz') ######################## modinfo_collect = find_program('scripts/modinfo-collect.py') +modinfo_generate = find_program('scripts/modinfo-generate.py') modinfo_files = [] block_mods = [] @@ -2267,7 +2268,6 @@ foreach d, list : modules output: d + '-' + m + '.modinfo', input: module_ss.sources(), capture: true, - build_by_default: true, # to be removed when added to a target command: [modinfo_collect, '@INPUT@']) endif else @@ -2280,6 +2280,17 @@ foreach d, list : modules endforeach endforeach +if enable_modules + modinfo_src = custom_target('modinfo.c', + output: 'modinfo.c', + input: modinfo_files, + command: [modinfo_generate, '@INPUT@'], + capture: true) + modinfo_lib = static_library('modinfo', modinfo_src) + modinfo_dep = declare_dependency(link_whole: modinfo_lib) + softmmu_ss.add(modinfo_dep) +endif + nm = find_program('nm') undefsym = find_program('scripts/undefsym.py') block_syms = custom_target('block.syms', output: 'block.syms', diff --git a/scripts/modinfo-generate.py b/scripts/modinfo-generate.py new file mode 100755 index 0000000000..a6d98a6bc4 --- /dev/null +++ b/scripts/modinfo-generate.py @@ -0,0 +1,84 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- + +import os +import sys + +def print_array(name, values): + if len(values) == 0: + return + list = ", ".join(values) + print(" .%s = ((const char*[]){ %s, NULL })," % (name, list)) + +def parse_line(line): + kind = "" + data = "" + get_kind = False + get_data = False + for item in line.split(): + if item == "MODINFO_START": + get_kind = True + continue + if item.startswith("MODINFO_END"): + get_data = False + continue + if get_kind: + kind = item + get_kind = False + get_data = True + continue + if get_data: + data += " " + item + continue + return (kind, data) + +def generate(name, lines): + arch = "" + objs = [] + deps = [] + opts = [] + for line in lines: + if line.find("MODINFO_START") != -1: + (kind, data) = parse_line(line) + if kind == 'obj': + objs.append(data) + elif kind == 'dep': + deps.append(data) + elif kind == 'opts': + opts.append(data) + elif kind == 'arch': + arch = data; + else: + print("unknown:", kind) + exit(1) + + print(" .name = \"%s\"," % name) + if arch != "": + print(" .arch = %s," % arch) + print_array("objs", objs) + print_array("deps", deps) + print_array("opts", opts) + print("},{"); + +def print_pre(): + print("/* generated by scripts/modinfo-generate.py */") + print("#include \"qemu/osdep.h\"") + print("#include \"qemu/module.h\"") + print("const QemuModinfo qemu_modinfo[] = {{") + +def print_post(): + print(" /* end of list */") + print("}};") + +def main(args): + print_pre() + for modinfo in args: + with open(modinfo) as f: + lines = f.readlines() + print(" /* %s */" % modinfo) + (basename, ext) = os.path.splitext(modinfo) + generate(basename, lines) + print_post() + +if __name__ == "__main__": + main(sys.argv[1:]) diff --git a/softmmu/vl.c b/softmmu/vl.c index a50c8575a1..7cef3423a7 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -2755,6 +2755,10 @@ void qemu_init(int argc, char **argv, char **envp) error_init(argv[0]); qemu_init_exec_dir(argv[0]); +#ifdef CONFIG_MODULES + module_init_info(qemu_modinfo); +#endif + qemu_init_subsystems(); /* first pass of option parsing */ diff --git a/util/module.c b/util/module.c index eee8ff2de1..8d3e8275b9 100644 --- a/util/module.c +++ b/util/module.c @@ -110,6 +110,17 @@ void module_call_init(module_init_type type) } #ifdef CONFIG_MODULES + +static const QemuModinfo module_info_stub[] = { { + /* end of list */ +} }; +static const QemuModinfo *module_info = module_info_stub; + +void module_init_info(const QemuModinfo *info) +{ + module_info = info; +} + static int module_load_file(const char *fname, bool mayfail, bool export_symbols) { GModule *g_module; From patchwork Thu Jul 8 15:17:08 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365325 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 44665C07E96 for ; Thu, 8 Jul 2021 15:25:51 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E9A2061418 for ; Thu, 8 Jul 2021 15:25:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E9A2061418 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:38086 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VuQ-0001s5-2t for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:25:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53568) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-00009G-Is for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:03 -0400 Received: from mail-ej1-x634.google.com ([2a00:1450:4864:20::634]:34717) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-00089r-D3 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:02 -0400 Received: by mail-ej1-x634.google.com with SMTP id hr1so10293197ejc.1 for ; Thu, 08 Jul 2021 08:17:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=5+BoEOvWJdz3WwwMfkv9w8Vit2xcmxJtHUq+bWmynlM=; b=lBGjBq947nOiqJXEy5FOdowBVlOSI16JFJqmdhoIkfSprtW8F2sWAk2p4uDheI3Vjm xAcNvTj6pomN0uiidI0EJUrUI/hIeMA+2RxQz2NPZc8kl8A+xqVgMQc8jUBfWyhtEowt CYLJJJNPX0BlrLdy/tPx4OctMrnTzhSBmPvBCzcaDlXhC8I9++UUt/omsGpmUTQujB1+ Ct0cBHUxqnBik4+jjOMgzrNhXsCwOUf9f7r6k7Chw3YKKlb7f3epkdDExQzzZx5pUo73 uXwxvy9DmunTOjRFsGa0RUNHMNUoTCqLSgK38e2/RoqJ74ibC48haUF//JB/l/ImSKC0 wHBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=5+BoEOvWJdz3WwwMfkv9w8Vit2xcmxJtHUq+bWmynlM=; b=Ywwhwh7NfCELWhYLeseWlPjdapOJEkEEw6UJ8M3vxVT7j+3fzbYxWKSdsWPru4A4bn YBiEnJ0IurvhTkl9SgKGicNfXDRr+4PJSrIv17gISw0O+oGoLrk6JBaOwILSsu7uL6/w aXByRkn3otIAlLAZf0kUNZ2ZE1OXZK24b5hiuuzoDPVLklO6Y8RM6qBcUyJLn9ieG07l 7dbpQensHVSOgA8jbelGQJVmmi1G5vkpG0S4Dtv9VjrTkP4Kkl6JOWKITfWoTIDCdd44 b4K3L4hiY7SuPf8jl6k+otFb8QXumF4p+GDyz0BoBkBhsva2IZ5N3JF1R3AZHu1nvNZ3 LLNg== X-Gm-Message-State: AOAM5324YopIPBj70o9fkN23xybL8Wu0Shaxwik1VFULSh4FTY6mfXEs WX1Wa3/0Y5zHsI6Q/axs7muubk6SIlQ= X-Google-Smtp-Source: ABdhPJymMDIDO3/IrHeAOnG/j8U8RSE4gTBEf1lptvmv17YA+qKkqmQw/1B8/kbmCr3s0YLL6iEFwA== X-Received: by 2002:a17:907:3d8a:: with SMTP id he10mr10115472ejc.16.1625757475581; Thu, 08 Jul 2021 08:17:55 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:55 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 08/48] modules: check if all dependencies can be satisfied Date: Thu, 8 Jul 2021 17:17:08 +0200 Message-Id: <20210708151748.408754-9-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::634; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x634.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R. Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: "Jose R. Ziviani" Verifies if all dependencies are correctly listed in the modinfo.c too and stop the builds if they're not. Signed-off-by: Jose R. Ziviani Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-5-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- scripts/modinfo-generate.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/scripts/modinfo-generate.py b/scripts/modinfo-generate.py index a6d98a6bc4..f559eed007 100755 --- a/scripts/modinfo-generate.py +++ b/scripts/modinfo-generate.py @@ -59,6 +59,7 @@ def generate(name, lines): print_array("deps", deps) print_array("opts", opts) print("},{"); + return deps def print_pre(): print("/* generated by scripts/modinfo-generate.py */") @@ -71,14 +72,26 @@ def print_post(): print("}};") def main(args): + deps = {} print_pre() for modinfo in args: with open(modinfo) as f: lines = f.readlines() print(" /* %s */" % modinfo) (basename, ext) = os.path.splitext(modinfo) - generate(basename, lines) + deps[basename] = generate(basename, lines) print_post() + flattened_deps = {flat.strip('" ') for dep in deps.values() for flat in dep} + error = False + for dep in flattened_deps: + if dep not in deps.keys(): + print("Dependency {} cannot be satisfied".format(dep), + file=sys.stderr) + error = True + + if error: + exit(1) + if __name__ == "__main__": main(sys.argv[1:]) From patchwork Thu Jul 8 15:17:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365329 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 19E86C07E9C for ; Thu, 8 Jul 2021 15:26:22 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BD08261418 for ; Thu, 8 Jul 2021 15:26:21 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BD08261418 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:40910 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vuu-00041y-Oy for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:26:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53558) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-00008z-Gq for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:03 -0400 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]:42667) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-0008A4-CS for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:02 -0400 Received: by mail-ej1-x62c.google.com with SMTP id bg14so10233990ejb.9 for ; Thu, 08 Jul 2021 08:17:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=OQffVvVB59UeRyQUK8M2cEfWg6p9T0ffIm57of2Eeho=; b=YYJrjzFfVyhg0RXKgHC72Vl9SgopQjKqKrIw1m3pKy2N04li7+C1/2dfh1qEfY/iUb c44xKVr1VpizFdgLtW0omztl5qFI1ImDrJ4EYcq/0LsntfFb6k4ockAVHPfTNaCTmM7v PL0Ko1d6Usq/aQPCCeRj5UTW+/7vpVUbE/PAMlhJXAU/yZpbtHA1snfo0SEBgLrmmuq+ EiyddTJaGaFGgfc1kG2kwJPztOi8myY4IhVbae0DZSSyau6AnJev6E1tyuw59eZoFb8H gq/8WWuez59RyROS7frX8dOpLLu1FskkfU2xSj9h20Ji9bba6jBP/PwR2u86Apqqdmlm hzdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=OQffVvVB59UeRyQUK8M2cEfWg6p9T0ffIm57of2Eeho=; b=uQhTsqXLw5ceiVw0FpQ0bURJ5XqeilokmnGYlziph9POLtVCNqkTX6MJRYiAIkCfpL OgE+MmYpvE2URqfs3aYfNEuxk4M0gSaTyFkxYMHpDKogpmy0xgdzUA+9nrk9TN8zleCu 1ruBPfSiunxna0k5GZYuwOYJir1No/DRok7sRdTF//mT+7e3vkVD8gS912fXUu86jLL1 rKiZsnSzxoD16SnZVAHpUo3dLQV0OSJDGSw8gMjrDrmNzstFPFDq8e1xOUY5pP92N0jE voiOxS+TzDLOkxndZjH+mrBtAITpZTxkcfoxvGyRgR4YgZs0OFblMaMpFSQdkQdvc4Zr +Lcw== X-Gm-Message-State: AOAM530Xgn0xt7bygVmhUwFk4WmNnRgD6pRmzsGtCilz0e2jgmmAPzdB nsALr9n3W7OYwtGSRtUeyY5ZxB/unCg= X-Google-Smtp-Source: ABdhPJyCBLvvPr2wZ7zW63ipsD3ZGqIsUxQhrk5aAebipmM+JOBmSWay2qUJ0MzowuOtTxqwaJr4uQ== X-Received: by 2002:a17:906:1dd2:: with SMTP id v18mr22743396ejh.322.1625757476279; Thu, 08 Jul 2021 08:17:56 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:55 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 09/48] modules: add qxl module annotations Date: Thu, 8 Jul 2021 17:17:09 +0200 Message-Id: <20210708151748.408754-10-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62c; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62c.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-6-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/display/qxl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/display/qxl.c b/hw/display/qxl.c index 6e1f8ff1b2..84f99088e0 100644 --- a/hw/display/qxl.c +++ b/hw/display/qxl.c @@ -2522,6 +2522,7 @@ static const TypeInfo qxl_primary_info = { .parent = TYPE_PCI_QXL, .class_init = qxl_primary_class_init, }; +module_obj("qxl-vga"); static void qxl_secondary_class_init(ObjectClass *klass, void *data) { @@ -2538,6 +2539,7 @@ static const TypeInfo qxl_secondary_info = { .parent = TYPE_PCI_QXL, .class_init = qxl_secondary_class_init, }; +module_obj("qxl"); static void qxl_register_types(void) { @@ -2547,3 +2549,5 @@ static void qxl_register_types(void) } type_init(qxl_register_types) + +module_dep("ui-spice-core"); From patchwork Thu Jul 8 15:17:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365315 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A6D41C07E99 for ; Thu, 8 Jul 2021 15:21:34 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3865661418 for ; Thu, 8 Jul 2021 15:21:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3865661418 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:51986 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VqH-0000MS-By for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:21:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53566) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-00009C-Ha for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:03 -0400 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]:46690) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-0008AB-CU for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:02 -0400 Received: by mail-ej1-x62c.google.com with SMTP id c17so10204102ejk.13 for ; Thu, 08 Jul 2021 08:17:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=94LCAE4ceYQlyXBVtpM8bDwMiwPhoV4FVrQoWyiA45s=; b=mN8OXGLhMWvb91/Vfor+jPKCjZNlikZ6nwaPGAitAxniEQrcCQBM8C/sFwMvgYq3Uo KqDkfSeLoobJl3DzR2i5ZI0e4XUpmPGka3Ioc7meVIMz1VnCm+65fjmV4BOXFirlDhCV v0Wff38xfIh3Iibbv0ZpwkFTs4IPIVw8CBwN0OwHRkkPoCtjbZ8/78r7QQxGyoKhNadE tJ3sFPnJam6lRW9iBX6U8AdOhaUkMf1Igi9GUZyPVS2APRfsVM3xFF4F6HN8gJbfpvbd Y526pU7ywUgIKSbwgAmNekucn1tsAueya2AnYzKW7iRCAf60pQfpg8BC/GED45F66j9p H6DQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=94LCAE4ceYQlyXBVtpM8bDwMiwPhoV4FVrQoWyiA45s=; b=dlI/RHNJ5wsrxyP8uY92vYoX5MstlClLDeJbZybSyq43cBRh3f2rzRDTjw0+Nsg3Ui gcy7QFDdSon/eD6ZJctY8rZ1OYxMZ/u2lUMskEZsNbKaV0jyg6BQIraY2KJJI0FHFxln Qrzdncd7HD5H7xxp7LSmN6kmtTBh7oobNS0ny+cDPMsLcyrnLej1Jl0NGmFhFNUWfdKA Kbv5GlA3CD+zMBHnRBIkIYA1ZPO1iYEWc8XERtU6YBZqmlHDFwS/qLxqdVZ6ulTVAE70 kUM7I05CBZl3bl4z+133fYCt61l4Y6iBUKox/74Uvxla8EBJaa6ZbWHyG6jwu81OB/j+ JRtQ== X-Gm-Message-State: AOAM530MGuopc6ioNYb8aNLT8zGyFknQwfidN4ooU8bz05CAzdVOgx4C KdPmGwM7sZlig9dFZ8VrV2z/7QqvbYs= X-Google-Smtp-Source: ABdhPJywG7UuJwRZ5CQgTfFcvUp92fMoMNoNRYEuE3kSu1VPXNHzK8RAUzUUbL0LWpKfGVgOYfycXw== X-Received: by 2002:a17:907:7808:: with SMTP id la8mr31956696ejc.13.1625757476980; Thu, 08 Jul 2021 08:17:56 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:56 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 10/48] modules: add virtio-gpu module annotations Date: Thu, 8 Jul 2021 17:17:10 +0200 Message-Id: <20210708151748.408754-11-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62c; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62c.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-7-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/display/vhost-user-gpu-pci.c | 1 + hw/display/vhost-user-gpu.c | 1 + hw/display/vhost-user-vga.c | 1 + hw/display/virtio-gpu-base.c | 1 + hw/display/virtio-gpu-gl.c | 3 +++ hw/display/virtio-gpu-pci-gl.c | 3 +++ hw/display/virtio-gpu-pci.c | 2 ++ hw/display/virtio-gpu.c | 1 + hw/display/virtio-vga-gl.c | 3 +++ hw/display/virtio-vga.c | 2 ++ 10 files changed, 18 insertions(+) diff --git a/hw/display/vhost-user-gpu-pci.c b/hw/display/vhost-user-gpu-pci.c index a02b23ecaf..daefcf7101 100644 --- a/hw/display/vhost-user-gpu-pci.c +++ b/hw/display/vhost-user-gpu-pci.c @@ -43,6 +43,7 @@ static const VirtioPCIDeviceTypeInfo vhost_user_gpu_pci_info = { .instance_size = sizeof(VhostUserGPUPCI), .instance_init = vhost_user_gpu_pci_initfn, }; +module_obj(TYPE_VHOST_USER_GPU_PCI); static void vhost_user_gpu_pci_register_types(void) { diff --git a/hw/display/vhost-user-gpu.c b/hw/display/vhost-user-gpu.c index 389199e6ca..49df56cd14 100644 --- a/hw/display/vhost-user-gpu.c +++ b/hw/display/vhost-user-gpu.c @@ -598,6 +598,7 @@ static const TypeInfo vhost_user_gpu_info = { .instance_finalize = vhost_user_gpu_instance_finalize, .class_init = vhost_user_gpu_class_init, }; +module_obj(TYPE_VHOST_USER_GPU); static void vhost_user_gpu_register_types(void) { diff --git a/hw/display/vhost-user-vga.c b/hw/display/vhost-user-vga.c index a34a99856d..072c9c65bc 100644 --- a/hw/display/vhost-user-vga.c +++ b/hw/display/vhost-user-vga.c @@ -44,6 +44,7 @@ static const VirtioPCIDeviceTypeInfo vhost_user_vga_info = { .instance_size = sizeof(VhostUserVGA), .instance_init = vhost_user_vga_inst_initfn, }; +module_obj(TYPE_VHOST_USER_VGA); static void vhost_user_vga_register_types(void) { diff --git a/hw/display/virtio-gpu-base.c b/hw/display/virtio-gpu-base.c index dd294276cb..c8da4806e0 100644 --- a/hw/display/virtio-gpu-base.c +++ b/hw/display/virtio-gpu-base.c @@ -256,6 +256,7 @@ static const TypeInfo virtio_gpu_base_info = { .class_init = virtio_gpu_base_class_init, .abstract = true }; +module_obj(TYPE_VIRTIO_GPU_BASE); static void virtio_register_types(void) diff --git a/hw/display/virtio-gpu-gl.c b/hw/display/virtio-gpu-gl.c index d971b48080..7ab93bf8c8 100644 --- a/hw/display/virtio-gpu-gl.c +++ b/hw/display/virtio-gpu-gl.c @@ -154,6 +154,7 @@ static const TypeInfo virtio_gpu_gl_info = { .instance_size = sizeof(VirtIOGPUGL), .class_init = virtio_gpu_gl_class_init, }; +module_obj(TYPE_VIRTIO_GPU_GL); static void virtio_register_types(void) { @@ -161,3 +162,5 @@ static void virtio_register_types(void) } type_init(virtio_register_types) + +module_dep("hw-display-virtio-gpu"); diff --git a/hw/display/virtio-gpu-pci-gl.c b/hw/display/virtio-gpu-pci-gl.c index 902dda3452..99b14a0718 100644 --- a/hw/display/virtio-gpu-pci-gl.c +++ b/hw/display/virtio-gpu-pci-gl.c @@ -46,6 +46,7 @@ static const VirtioPCIDeviceTypeInfo virtio_gpu_gl_pci_info = { .instance_size = sizeof(VirtIOGPUGLPCI), .instance_init = virtio_gpu_gl_initfn, }; +module_obj(TYPE_VIRTIO_GPU_GL_PCI); static void virtio_gpu_gl_pci_register_types(void) { @@ -53,3 +54,5 @@ static void virtio_gpu_gl_pci_register_types(void) } type_init(virtio_gpu_gl_pci_register_types) + +module_dep("hw-display-virtio-gpu-pci"); diff --git a/hw/display/virtio-gpu-pci.c b/hw/display/virtio-gpu-pci.c index d742a30aec..e36eee0c40 100644 --- a/hw/display/virtio-gpu-pci.c +++ b/hw/display/virtio-gpu-pci.c @@ -64,6 +64,7 @@ static const TypeInfo virtio_gpu_pci_base_info = { .class_init = virtio_gpu_pci_base_class_init, .abstract = true }; +module_obj(TYPE_VIRTIO_GPU_PCI_BASE); #define TYPE_VIRTIO_GPU_PCI "virtio-gpu-pci" typedef struct VirtIOGPUPCI VirtIOGPUPCI; @@ -90,6 +91,7 @@ static const VirtioPCIDeviceTypeInfo virtio_gpu_pci_info = { .instance_size = sizeof(VirtIOGPUPCI), .instance_init = virtio_gpu_initfn, }; +module_obj(TYPE_VIRTIO_GPU_PCI); static void virtio_gpu_pci_register_types(void) { diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c index e183f4ecda..6b7f643951 100644 --- a/hw/display/virtio-gpu.c +++ b/hw/display/virtio-gpu.c @@ -1427,6 +1427,7 @@ static const TypeInfo virtio_gpu_info = { .class_size = sizeof(VirtIOGPUClass), .class_init = virtio_gpu_class_init, }; +module_obj(TYPE_VIRTIO_GPU); static void virtio_register_types(void) { diff --git a/hw/display/virtio-vga-gl.c b/hw/display/virtio-vga-gl.c index c971340ebb..f22549097c 100644 --- a/hw/display/virtio-vga-gl.c +++ b/hw/display/virtio-vga-gl.c @@ -36,6 +36,7 @@ static VirtioPCIDeviceTypeInfo virtio_vga_gl_info = { .instance_size = sizeof(VirtIOVGAGL), .instance_init = virtio_vga_gl_inst_initfn, }; +module_obj(TYPE_VIRTIO_VGA_GL); static void virtio_vga_register_types(void) { @@ -45,3 +46,5 @@ static void virtio_vga_register_types(void) } type_init(virtio_vga_register_types) + +module_dep("hw-display-virtio-vga"); diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c index d3c6404061..9e57f61e9e 100644 --- a/hw/display/virtio-vga.c +++ b/hw/display/virtio-vga.c @@ -239,6 +239,7 @@ static TypeInfo virtio_vga_base_info = { .class_init = virtio_vga_base_class_init, .abstract = true, }; +module_obj(TYPE_VIRTIO_VGA_BASE); #define TYPE_VIRTIO_VGA "virtio-vga" @@ -268,6 +269,7 @@ static VirtioPCIDeviceTypeInfo virtio_vga_info = { .instance_size = sizeof(VirtIOVGA), .instance_init = virtio_vga_inst_initfn, }; +module_obj(TYPE_VIRTIO_VGA); static void virtio_vga_register_types(void) { From patchwork Thu Jul 8 15:17:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365321 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A3834C07E9C for ; Thu, 8 Jul 2021 15:24:05 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 337F3613FD for ; Thu, 8 Jul 2021 15:24:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 337F3613FD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:60520 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vsi-00061o-7y for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:24:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53570) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-00009I-IB for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:03 -0400 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]:45651) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmp-0008AK-Dp for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:02 -0400 Received: by mail-ej1-x62f.google.com with SMTP id hc16so10252262ejc.12 for ; Thu, 08 Jul 2021 08:17:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=pRYvhCnNfbDNuk04TeO5gzhkfXV3oKmDwmOyqqHq4kk=; b=kOXfzzJRRAh4DAyf12b7t5Vtx5qJ6Ifi2zeORfYXrwCb4X8Qs3TtoIuesp0XHg1NHN RF058EIeBRmHcqeojxxEl10TdRCX6vn0xAz04xjGdaKWHaQ216kN1zmNrCHRfd83S++Y AgIbtiQuxQ3xrU0M5KfSDAo12kL7ETvomjvChw7plAlJYDWWhQo13QegVwjrVlkw0juv lNtOAcK3h1Yin0IKUPyDCqUlFjKOJCz/zhsgbMgOKtHK9OlNMypZDeveoLrfmLJbtpwn z6LCLldZlqUOGhhBGFe1yPrgOumgd4nQt1+KbEySY6Bp8pPOBLt1SQXTKhDhkdofqngw a9Fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=pRYvhCnNfbDNuk04TeO5gzhkfXV3oKmDwmOyqqHq4kk=; b=d0PJVBSi4nDqMd8BdN9d0wHV247JOX23biv8lZJg9vNp6hSIy5vgCQFi88lWnIHiPb iY/WkdSQJ8SZ0K86rTZg5ddxZJpzKnyGgtg62yce9LnRG44+Ol95QlfQKU9f9UkPFIiE Pt+7svyKg09FRNBVJ0pzNI4kGaawVV5p4IN6vZxhRdgf44d6iyIK6Ju3O4i9xnM/T4/D YZ7WZl/d10HlTqPeFka6Q6B045lnZGglrEB3VzHof5W+3b7T+U+PgF1oR/7NQ7Yf15Tu eKZRhpFZSKRBexn8ix7vjFm9L0vUWBmkSyD0Dd9+5UjcG8LUGFKc2C4KRmrQ+Dn1bZRZ LTBw== X-Gm-Message-State: AOAM530rFTCUcUNTTKWlFsQbnRAyfM8HOM7G0zVKUyHIGX+Zjm3RQT07 piCPqGoNQkj4RegpDXFqDm2YwSCwPLk= X-Google-Smtp-Source: ABdhPJxgtn6BqeCVSqM7WleXzI0A/Bt+KSOePsRyWnA9QfvN6d61I6RfeY7ggoCzl54+LZWRUj2BYQ== X-Received: by 2002:a17:906:b0c8:: with SMTP id bk8mr31791860ejb.412.1625757477777; Thu, 08 Jul 2021 08:17:57 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:57 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 11/48] modules: add chardev module annotations Date: Thu, 8 Jul 2021 17:17:11 +0200 Message-Id: <20210708151748.408754-12-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62f; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62f.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-8-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- chardev/baum.c | 1 + chardev/spice.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/chardev/baum.c b/chardev/baum.c index 5deca778bc..79d618e350 100644 --- a/chardev/baum.c +++ b/chardev/baum.c @@ -680,6 +680,7 @@ static const TypeInfo char_braille_type_info = { .instance_finalize = char_braille_finalize, .class_init = char_braille_class_init, }; +module_obj(TYPE_CHARDEV_BRAILLE); static void register_types(void) { diff --git a/chardev/spice.c b/chardev/spice.c index 1104426e3a..3ffb3fdc0d 100644 --- a/chardev/spice.c +++ b/chardev/spice.c @@ -366,6 +366,7 @@ static const TypeInfo char_spice_type_info = { .class_init = char_spice_class_init, .abstract = true, }; +module_obj(TYPE_CHARDEV_SPICE); static void char_spicevmc_class_init(ObjectClass *oc, void *data) { @@ -396,6 +397,7 @@ static const TypeInfo char_spiceport_type_info = { .parent = TYPE_CHARDEV_SPICE, .class_init = char_spiceport_class_init, }; +module_obj(TYPE_CHARDEV_SPICEPORT); static void register_types(void) { @@ -405,3 +407,5 @@ static void register_types(void) } type_init(register_types); + +module_dep("ui-spice-core"); From patchwork Thu Jul 8 15:17:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365327 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4C11CC07E99 for ; Thu, 8 Jul 2021 15:26:20 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 152D061418 for ; Thu, 8 Jul 2021 15:26:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 152D061418 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:40762 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vut-0003uz-8h for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:26:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53596) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmu-0000ES-PJ for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:04 -0400 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:33479) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmr-0008AQ-CP for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:04 -0400 Received: by mail-ed1-x531.google.com with SMTP id eb14so9127874edb.0 for ; Thu, 08 Jul 2021 08:17:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=y4owSChp3xs52ili+LXOkhFZq9ISU7bHrCizRYtlASU=; b=bMCNxZoRK4FwyaTjYYdeb4d1HmBPoWCdZHRuEhZ9GlKLOVYzXA5/nFAVGAEDiYv9il g3hGE7P4+73pyM7VcQRhmLnSzyRk07Q0/M1sY8Dq3pWGylMNL1oqQKEzLRbClPOqSlim mka3SG5dm0tGKwJh7omicHTeVQFr/eGbmuiUq1i+Tcs8cR7Mytj3cUZnJCJmbBR3Oucx IoCL9TMvoc6SzXoIOCHHq5hJt4acTKNpRZhNMtZ4x5IVihrxHHVqOAGCPAiV9GwinG0C yNaPNlaim3wKYkffgAnsWXMnCDoEEnHeoPGidmNbXFS87wbjafi43obhWWkBSbn6vQjI l3Lg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=y4owSChp3xs52ili+LXOkhFZq9ISU7bHrCizRYtlASU=; b=O8uvsOF8wlGs6XexAE6jFzO0CQNEBEyfiZIyJKBfdYutR7wtL6dI0N+kYhganuLOew xsApTLWGZpH4HT0498H+BJylRanxiMlBixIB0/VKXBqvOBYs03W9dEPsvH/qceo9M7lc QQxMiU/jF8xDDhFARdbps66YD+v4GJ/puK6g56CNLTBHIkzHzssv14HAuj9jPkkUTPK4 24tEYVe8yYOF4lXZMFz749sBglRrWvrYVVSafMRpeCFSomQWFN+pHnBU4xO7X5zovamr zMacdMIH8JCh7lPFMUXUeVlnb2KwWG+Ac6rxaUmXyheWTVgQQ8MTKLS6Fb6Njnane95Q r6nQ== X-Gm-Message-State: AOAM5328RQrdmDyj9/Hb3Mf27/XvNHeJd1SQ0hul7OMqxreu35DKSQ7Z AiCz4iehB5cGkD42s9L/57Ykjy2gY48= X-Google-Smtp-Source: ABdhPJwfbEXh8XdXfeu9UunN5rbMuxy5RtT9A85sm48hvHth/QCBJA77pDxu3l20Pq4hKsIn6hg1dQ== X-Received: by 2002:a50:f0cf:: with SMTP id a15mr38888317edm.347.1625757478526; Thu, 08 Jul 2021 08:17:58 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:58 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 12/48] modules: add audio module annotations Date: Thu, 8 Jul 2021 17:17:12 +0200 Message-Id: <20210708151748.408754-13-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::531; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x531.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-9-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- audio/spiceaudio.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/audio/spiceaudio.c b/audio/spiceaudio.c index 999bfbde47..a8d370fe6f 100644 --- a/audio/spiceaudio.c +++ b/audio/spiceaudio.c @@ -317,3 +317,5 @@ static void register_audio_spice(void) audio_driver_register(&spice_audio_driver); } type_init(register_audio_spice); + +module_dep("ui-spice-core"); From patchwork Thu Jul 8 15:17:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365319 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 16576C07E96 for ; Thu, 8 Jul 2021 15:24:05 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BCB41613FD for ; Thu, 8 Jul 2021 15:24:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BCB41613FD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:60512 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vsh-00061e-It for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:24:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53594) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmu-0000EP-P2 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:04 -0400 Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e]:41546) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmr-0008BD-R8 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:04 -0400 Received: by mail-ej1-x62e.google.com with SMTP id b2so10269505ejg.8 for ; Thu, 08 Jul 2021 08:17:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=7+5cc9IQeAW+TStBpSLFzIsbErmZkEw/lI6tTeLLQr0=; b=KsC8WGdcTM3iXZiMZuJf9/lNzDYoHLzKndqE9eIuNsI3KkYd2EFF9zIJ6+jj3EZbM/ T9dD7Jup1B1DRgOBY2ctqy7Rc/6xHq8RHR/15sZ0RhNjoAuIH8A15s0Q3PcpccSyoFIN Rq4ttXcl4aC4S7w5FzBh6kIbTphbaxVExOeq3kSNJ6tw+mylI3kZ9C34YbUE32f+sRSr pv1Nc/+p2I/Xhbo9OmJ/R714dAl2Hc/PyR2iF94smi7yGbJ5pbJeoVBQs05XIcToKZc5 3Gqw8i3voscmvVWbs6UNf8c/FMy/q8Q7XaGlNON4frfKuNKUOVl3v+dKCkbD9H87lB0G R5ag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=7+5cc9IQeAW+TStBpSLFzIsbErmZkEw/lI6tTeLLQr0=; b=X6PzBUekzu+O/pAbudbpXebHueGf66wNWRrxCMJzapgEW4ULBt5lfV5eH3nd9+UuLd yGRk31T0QftyfWbeNMOL1CS3oQdzFc0cTRbrX6RlYayjoRDnaRCjVCP+mB54gA7mP5NF idyUp6iCBWheRcc4RVWf7zvQNfk6Iezj7LTBMTf1gXLnHoKbRbGlzhOzZrX756RJCiSo TU4yabVztobk2z8zIbtkcxXQ2K68ysDgTYts2gN+4RaW0dtk8uVpyW8UjabFoVpjBVOL ED9Y5z2HtGsEtlcxf1a0BOz/acz2Gdov9pe2mroAbgErq6fD2nPnQYHyRgHY/RiLl2Bu Jv4g== X-Gm-Message-State: AOAM532RWJ9adY5dVogbk3+T5rhVzbbB6AUAl+X3IHc5n1Z7bPetCWrz crOqFmGoumAuBUzJFOEFxdg9kPCUhJ4= X-Google-Smtp-Source: ABdhPJyYI50pyaLAoMfcXud3I0ej6ConbJ1mS62EL2/UsEdDi8IjZtrQdlD1TqhmUxHS3r6ukLIfKg== X-Received: by 2002:a17:906:a219:: with SMTP id r25mr3891648ejy.133.1625757479180; Thu, 08 Jul 2021 08:17:59 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:58 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 13/48] modules: add usb-redir module annotations Date: Thu, 8 Jul 2021 17:17:13 +0200 Message-Id: <20210708151748.408754-14-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62e; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62e.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-10-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/usb/redirect.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c index 6a75b0dc4a..4ec9326e05 100644 --- a/hw/usb/redirect.c +++ b/hw/usb/redirect.c @@ -2608,6 +2608,7 @@ static const TypeInfo usbredir_dev_info = { .class_init = usbredir_class_initfn, .instance_init = usbredir_instance_init, }; +module_obj(TYPE_USB_REDIR); static void usbredir_register_types(void) { From patchwork Thu Jul 8 15:17:14 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365331 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B7A12C07E96 for ; Thu, 8 Jul 2021 15:27:24 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6390661483 for ; Thu, 8 Jul 2021 15:27:22 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6390661483 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:43928 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vvt-0006FY-Iy for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:27:21 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53650) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmw-0000Km-8E for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:06 -0400 Received: from mail-ej1-x635.google.com ([2a00:1450:4864:20::635]:46699) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-0008BS-7X for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:05 -0400 Received: by mail-ej1-x635.google.com with SMTP id c17so10204374ejk.13 for ; Thu, 08 Jul 2021 08:18:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=OFJUTV+92CDcZh6QQOAoXMbdHCOixFygGquQlFU36YM=; b=G7YwMwYjYSG/ZSq1tm8Ll5kJbCm7DBewHv0NlN+WS9Qif/TRCEhgCPg5WVTWT5F6GO eHyX4C8OzzML3NJDCIVzc5jXrSlucWBfBtO/45KwYw2TWwn9XWWNQfNmT1fjSbOpA6kQ 8yqkc85dPqi/JabbuFWkrYOQtrhd9w7gVXRFN+pc3MUkPHaIRC5qqQ/S6W2sNPnHVrei 6U/ork1gX+MttMA3FsWm8vWgC/iPzKDLWLH9LpiNE7hR77Kqjq6NdcbR+O3PUEiP4eD8 WzotOC7SKzDifJtonatwPT8p3aGJC09Xiysr8BGkglrqql33cstc0Wx/pf4mj6E/spPB Z03A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=OFJUTV+92CDcZh6QQOAoXMbdHCOixFygGquQlFU36YM=; b=UqXeOTJbbuDQ8NL/AAXpH3P1O3shnWGZ3nXVhmo8FNGR2BaUIaoTIzgAiiPgdl0nLw eMr9RTRLCD/1FQ14OzUR7jYF/K8HnY3EgwmxeOr3ShNImp7jLeWGgghzabdPUPut4OV3 lUYsI1Z3gWKzNurYIFXMWLH+RtgRZJKfn34wdCAWNcaYjMcB7gacp00r69JNOSACRSaY OFUZOtfNbXCv6LV6VQhd1iux4L3LBlrOMY44pm5iA2zVkHHskN54ntmJfWltTlNs2oR4 D+G163bHaAhbGoDua9MzAtwBHEdNXLbagLVPCNbY3pwq6WF1ehhfgXTwSGsZWmmFcTzU EGDg== X-Gm-Message-State: AOAM531x/knKsM5ARkOclawrMRS12ggriv0WV6YtzDZ/CY+vCKFjTrz+ zQ6P9bCdNUNghLIDYq00NotFrCRa+Ww= X-Google-Smtp-Source: ABdhPJyzSFTNqa1dKYhj7Ts7M5c9XndxZ78zIdqiYNBqzipLIgt+6gcvzEkDYPbX3eAg0IQr92qu+A== X-Received: by 2002:a17:906:58cc:: with SMTP id e12mr31437972ejs.279.1625757479817; Thu, 08 Jul 2021 08:17:59 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:17:59 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 14/48] modules: add ccid module annotations Date: Thu, 8 Jul 2021 17:17:14 +0200 Message-Id: <20210708151748.408754-15-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::635; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x635.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-11-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/usb/ccid-card-emulated.c | 1 + hw/usb/ccid-card-passthru.c | 1 + 2 files changed, 2 insertions(+) diff --git a/hw/usb/ccid-card-emulated.c b/hw/usb/ccid-card-emulated.c index 5c76bed77a..6c8c0355e0 100644 --- a/hw/usb/ccid-card-emulated.c +++ b/hw/usb/ccid-card-emulated.c @@ -612,6 +612,7 @@ static const TypeInfo emulated_card_info = { .instance_size = sizeof(EmulatedState), .class_init = emulated_class_initfn, }; +module_obj(TYPE_EMULATED_CCID); static void ccid_card_emulated_register_types(void) { diff --git a/hw/usb/ccid-card-passthru.c b/hw/usb/ccid-card-passthru.c index 7212d0d7fb..fa3040fb71 100644 --- a/hw/usb/ccid-card-passthru.c +++ b/hw/usb/ccid-card-passthru.c @@ -414,6 +414,7 @@ static const TypeInfo passthru_card_info = { .instance_size = sizeof(PassthruState), .class_init = passthru_class_initfn, }; +module_obj(TYPE_CCID_PASSTHRU); static void ccid_card_passthru_register_types(void) { From patchwork Thu Jul 8 15:17:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365347 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B67C1C07E96 for ; Thu, 8 Jul 2021 15:28:35 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 79AD161483 for ; Thu, 8 Jul 2021 15:28:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 79AD161483 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:49308 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vx2-0001Pr-Ls for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:28:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53642) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmv-0000JI-UR for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:05 -0400 Received: from mail-ed1-x52d.google.com ([2a00:1450:4864:20::52d]:41481) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vms-0008Bc-IZ for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:05 -0400 Received: by mail-ed1-x52d.google.com with SMTP id m1so9029722edq.8 for ; Thu, 08 Jul 2021 08:18:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=wYj5YTefSRdoj37jl3ThZ/+4Z0cAMsLDlt2VT97eGFM=; b=Z22uljZ4wzy/XemRYsOK1vIRQlHjqJrA+IV7vgn55TVkELB1z+/IWUl//1oGoiaTGh 6BuKdUatxrHrRMv+odI1OC8WpXZ/XZXZZZxzfkbUvD6OL3AuTydUIMks1dV3N38ZD/c8 mYXom+YT9QKu4dkuO27tHjvcllg7ChOLkU8CfLjNyA7NBUjvx8wt9zggowKZfTw0Ul0G LArrh1ZEaDakgMQyjWjPD4KCZUSHdo7Ub7nwarfIwE/Xcl7iP9dTYroHFdf+XSL/69XF oyR1qt0+Tf6Mqklw6U6rrmwUVkSVnJORC+0grMidoWPd4KBWyDdfVtforWbhLcGIxC0f t1IQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=wYj5YTefSRdoj37jl3ThZ/+4Z0cAMsLDlt2VT97eGFM=; b=L411wQAyR4lgqiCAidVNnXGVYGe+9DKs2QUzIeTzSq6GvyTVan2Pqep07OjwBECgVd CVI++80QGHRbTxhfusTeKK/FLzgGJHdRFrd1KqkrxlU382PGJDAySsBF3DGSzRukCNOE BlWeqoUT4s7ouO6cNUZqR0B5YQt0ENBuaB11OMLwyucHKF6JbPAqvZpNlxD3J/dAlvyD krThAzPGTPshxnKebk6iKof2vI+0OVcwPmMkZvuI10cugZYAIGSCFaheK2ohIvCu9nbD 22l1OrIshT14fwjNzqv8IuEM2a2nZbztp4MGjBCGpI6Kf6AW+JWGLYxGa+cf1og1Lg2E m14Q== X-Gm-Message-State: AOAM530mKYDFsxmxmN0HSUudcwKlqYX83DjZbeqo+9tDh7kFTYwbNByR KqPjnGvMuBt0lI6OhrLa+XGLf7DNjOY= X-Google-Smtp-Source: ABdhPJxphkravPuHbfYrvQeLT5dl5h4aO4exAKPqabboomeEdDlMagJ45e1rEyV9bvdVdq+8PZQUZA== X-Received: by 2002:a05:6402:6:: with SMTP id d6mr26864673edu.236.1625757480456; Thu, 08 Jul 2021 08:18:00 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.17.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:00 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 15/48] modules: add ui module annotations Date: Thu, 8 Jul 2021 17:17:15 +0200 Message-Id: <20210708151748.408754-16-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::52d; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x52d.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-12-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- ui/egl-headless.c | 4 ++++ ui/gtk.c | 4 ++++ ui/sdl2.c | 4 ++++ ui/spice-app.c | 3 +++ ui/spice-core.c | 5 +++++ 5 files changed, 20 insertions(+) diff --git a/ui/egl-headless.c b/ui/egl-headless.c index da377a74af..75404e0e87 100644 --- a/ui/egl-headless.c +++ b/ui/egl-headless.c @@ -213,3 +213,7 @@ static void register_egl(void) } type_init(register_egl); + +#ifdef CONFIG_OPENGL +module_dep("ui-opengl"); +#endif diff --git a/ui/gtk.c b/ui/gtk.c index 98046f577b..376b4d528d 100644 --- a/ui/gtk.c +++ b/ui/gtk.c @@ -2333,3 +2333,7 @@ static void register_gtk(void) } type_init(register_gtk); + +#ifdef CONFIG_OPENGL +module_dep("ui-opengl"); +#endif diff --git a/ui/sdl2.c b/ui/sdl2.c index a203cb0239..36d9010cb6 100644 --- a/ui/sdl2.c +++ b/ui/sdl2.c @@ -918,3 +918,7 @@ static void register_sdl1(void) } type_init(register_sdl1); + +#ifdef CONFIG_OPENGL +module_dep("ui-opengl"); +#endif diff --git a/ui/spice-app.c b/ui/spice-app.c index 4325ac2d9c..641f4a9d53 100644 --- a/ui/spice-app.c +++ b/ui/spice-app.c @@ -221,3 +221,6 @@ static void register_spice_app(void) } type_init(register_spice_app); + +module_dep("ui-spice-core"); +module_dep("chardev-spice"); diff --git a/ui/spice-core.c b/ui/spice-core.c index 272d19b0c1..86d43783ac 100644 --- a/ui/spice-core.c +++ b/ui/spice-core.c @@ -1037,3 +1037,8 @@ static void spice_register_config(void) qemu_add_opts(&qemu_spice_opts); } opts_init(spice_register_config); +module_opts("spice"); + +#ifdef CONFIG_OPENGL +module_dep("ui-opengl"); +#endif From patchwork Thu Jul 8 15:17:16 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365345 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 73F3EC07E99 for ; Thu, 8 Jul 2021 15:27:54 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 414056147D for ; Thu, 8 Jul 2021 15:27:52 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 414056147D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:46590 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1VwN-000842-DN for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:27:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53646) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmw-0000Kk-80 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:06 -0400 Received: from mail-ej1-x635.google.com ([2a00:1450:4864:20::635]:34719) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-0008Bk-6w for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:05 -0400 Received: by mail-ej1-x635.google.com with SMTP id hr1so10293692ejc.1 for ; Thu, 08 Jul 2021 08:18:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=tnawKxczy3+M4NBMjlJytHV6KpxTEefhRxB8tlORao4=; b=K5Fn5iipEj/MDp9mQDjvWKzqDfTcQvYtx4oFB+0EdP4FJrDLdBIfVvrcHUVPyrv/Mx +TLdUwqvhpPU81tCwfvRF+9r3aoHZmDf5suo6mu5/EAxTVhuHnLYipY9vfY7diqL6yAz rQ6CS0DccNkEXQNNmFkhqKvufmDAxDeMLMb5ZsnqgTluxOm37DZHnTviSD0kFBSVnhp3 rVsNlbPynBum2ZMZ8jF/Be65gtl52ZoLU+UO08YOBHUY9IvHGfp4xuyjxotD3E6xqJXP fRCwq3T9SEpaIoPsKbDLKemcWNcdBWBg3AwULUk83AhEaOqVpFoXw6RgPTmlqpsIRWNA M/qA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=tnawKxczy3+M4NBMjlJytHV6KpxTEefhRxB8tlORao4=; b=GYbFVXmNgBlJMOdVe4puLg1rjy7RZuLUea4gQaxxqo1C2Lu7GzN5wIVuj8juhObIJb 1SGux0rY2q/roXWBbLoe9USq5pUHknmjuHhaULNIm5Imf0xpLqlCIjbxmJPl1WBtb7Lg 4MknUjXWfMYc0U0YfOaJQbe1zqgtnblQ7nNvRi0T4qCEAYQB68AzDEw1OcePF9/xFzdM Z++6YEWQpFGNYQJfXn760RNOx3Z28FT7uyd6pyL4nGr2OYhNetVvkd4/cLWZ79WLCUym QS/mr2PJuVZZciJL9CxLmK57Ilse6LFEn7hTHoTaM34szgbqQRCtvJXlKzXVVfadpeUz B+RA== X-Gm-Message-State: AOAM532wSmc/kcJfkprsdaYxncUHlwf7IBw4O9jutHUgfpRXyeR9BRTV FKOcPEpTax4HgMqofvTt2FqViArWTpM= X-Google-Smtp-Source: ABdhPJzwC+mNENBIZm4dEtdHLI78Sxk8x4om+AIXxfHqnNV2KOUt5khF4xkOXrho7EMK3TVnP67meQ== X-Received: by 2002:a17:906:3555:: with SMTP id s21mr12429393eja.394.1625757481149; Thu, 08 Jul 2021 08:18:01 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:00 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 16/48] modules: add s390x module annotations Date: Thu, 8 Jul 2021 17:17:16 +0200 Message-Id: <20210708151748.408754-17-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::635; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x635.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-13-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/s390x/virtio-ccw-gpu.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/s390x/virtio-ccw-gpu.c b/hw/s390x/virtio-ccw-gpu.c index 75a9e4bb39..5868a2a070 100644 --- a/hw/s390x/virtio-ccw-gpu.c +++ b/hw/s390x/virtio-ccw-gpu.c @@ -59,6 +59,7 @@ static const TypeInfo virtio_ccw_gpu = { .instance_init = virtio_ccw_gpu_instance_init, .class_init = virtio_ccw_gpu_class_init, }; +module_obj(TYPE_VIRTIO_GPU_CCW); static void virtio_ccw_gpu_register(void) { @@ -68,3 +69,5 @@ static void virtio_ccw_gpu_register(void) } type_init(virtio_ccw_gpu_register) + +module_arch("s390x"); From patchwork Thu Jul 8 15:17:17 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365353 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EE954C07E96 for ; Thu, 8 Jul 2021 15:29:38 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6FEAB6143E for ; Thu, 8 Jul 2021 15:29:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6FEAB6143E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:55176 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vy5-0005Hf-JO for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:29:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53656) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmw-0000LY-Ez for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:06 -0400 Received: from mail-ej1-x631.google.com ([2a00:1450:4864:20::631]:43772) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-0008Bx-Be for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:06 -0400 Received: by mail-ej1-x631.google.com with SMTP id v20so10263383eji.10 for ; Thu, 08 Jul 2021 08:18:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ja4hEhmn+z7DQfTKNSGKtSbarI/IZNhX8y7OLjcwLnc=; b=Jjs2NQb7A9KtkxUKJMlYAeQj4CI0YvCH9VzBjiYMrQcg3QKQlMezR+MP+1B6j2WndB NY2ddWYxAs8fBs/+Bv4MowNohK61WzvsACqUwqeffdAo3+mLM7X8k8vcCAlxJSW/0jVo FfByxQLrP5530eW3gl7B10vX+ZeRJfzzoDjnnR+cKVC31IlV1lnTViBHbE/4Lxpyf60J X5L400fYFBOnj1IHVog7z14YckWHwnOYJ5AS98fYEGDthlfzfbwA5B7Bn8PZGGsCjpyu 4vxor7FML4BBcLw+dW3a+3py6D8dZI1EuGkLhBYyO/sKTccBaJwdpJoKxcGE5BOozNJT HWEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ja4hEhmn+z7DQfTKNSGKtSbarI/IZNhX8y7OLjcwLnc=; b=As8kz3FNf1/0hL2KyctRJ9nG38WiGw/KGh72uNaGsRVxZH9ItpGbTBBSUwDDXExLKG cDNOLiBG+3VX/l3VhfTcGG+4nTVJLxd4I8YdPcaK8fjvWfodQxJeD3T0MNSDO2ydbT22 K2K6SZSzyfdDqSIsGYRr7Gqdl6WqB+6mUQCOdlMoyn3f0W92lsB/4rZyNHLLESRgKtHP oopXdMzBqwIOQMTD05gzfApz++NEatxh68iCQuThhA9xYz8oXSaS3b/DVGtEnhHTZ/+t SqElM1CzL7NfkPBbqz4vYXeMNoXld/24EFpb0edx7KI0Tl9bUyeNxjP/pFMNxDdkxxvt gyfA== X-Gm-Message-State: AOAM531EZl697aLLhzX8zmDDEPRsWBsPt3Ll9QNku7cFkXDUSm/8R1Qn 9HztjK8TzReVfaI9fffcZLr2v8ZUwyg= X-Google-Smtp-Source: ABdhPJxsdmZioV44QKDlDdItHLfwudV1vkyJIkkZnkk/2H9xVo2VgMjFaqTggMcIfP16DszSkkoN0g== X-Received: by 2002:a17:906:c14a:: with SMTP id dp10mr32273441ejc.426.1625757481827; Thu, 08 Jul 2021 08:18:01 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:01 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 17/48] modules: add block module annotations Date: Thu, 8 Jul 2021 17:17:17 +0200 Message-Id: <20210708151748.408754-18-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::631; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x631.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-14-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- block/iscsi-opts.c | 1 + 1 file changed, 1 insertion(+) diff --git a/block/iscsi-opts.c b/block/iscsi-opts.c index afaf8837d6..4f2da405e6 100644 --- a/block/iscsi-opts.c +++ b/block/iscsi-opts.c @@ -68,3 +68,4 @@ static void iscsi_block_opts_init(void) } block_init(iscsi_block_opts_init); +module_opts("iscsi"); From patchwork Thu Jul 8 15:17:18 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365361 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5D173C07E96 for ; Thu, 8 Jul 2021 15:32:11 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id F120F61625 for ; Thu, 8 Jul 2021 15:32:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F120F61625 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:35694 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W0Y-00031V-3z for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:32:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53694) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmx-0000Pg-FK for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: from mail-ed1-x533.google.com ([2a00:1450:4864:20::533]:43816) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmt-0008C2-TL for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:06 -0400 Received: by mail-ed1-x533.google.com with SMTP id l26so696228eda.10 for ; Thu, 08 Jul 2021 08:18:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=yS67txh20muTm4sOoJL0IyygbCMlYYIPs+l1vf+oto0=; b=D0IuXa9PwoIgHrhZEJ7YXCRWHuqLJbmxvCuzqTi1OBhL2FBMerCYos9SD6Vou4FzDK pQyMVpYS0GGyTRGWsFDWYHXoaQ1kmdHqlnbEF4cWZgeuqjDPHmeaRUkLAW3QDEpyEoUW n5oREzzOIZ+LT5q94eIsYNup0+nFEHTjbZForz1Trn7ALVwrU6kGtDCxlEao1ZNduDnQ L9xNgzbgcmxjPXdoHLJVc1s2FffHSnzbdr0PCibF2dTLL0RLnbjDJ3xyYzlmSwEJXnm4 fIXuXfbhLi93CaNifc5VmQnr6UCnkiLWXhfOKutm7G9cZGhTKILt8x1UjqwK6NoRPSax G8FQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=yS67txh20muTm4sOoJL0IyygbCMlYYIPs+l1vf+oto0=; b=pOVmrzD5YbvieQKChmk0I1GsO2eVrXnO4zNpU7czvD1VpItMlBrk937GYwYx4SU3Eo GwwFbiFim7U8LFq6W6RPQd9ZQiiOpNOBOXeN2AtDor1MYxIFKgL9PK2hIM1cdT9LYODM 7myJ/rWNWbKow45p2B5EzbxSblVFGa+EexqdeF4L6DrzJpF3wf5x5FK0LtuDPwKVLarl raEWGOtXWIPfQWO7PqSGCKwWK2PZgv6wtCIHH4Hq9wH2rOo2y8ORmLFHO91Url3k5DPY WXUqo5ZhSbT6vsnAMV10L9Ti338PmHXJ4OwaYoSyPTBVegOiQjq7CqxMhCaIG0ElddPX 9NbQ== X-Gm-Message-State: AOAM531FiPYwsF/4LMQNmQy2NCQZPAnzxsKyNJzU/D57Hm44xwZ+bcwA 7zEcmQS/n6yQpp19DozUqzyw96jR784= X-Google-Smtp-Source: ABdhPJw/iroLC2KBTj0HKgcr6TwFE9D8WEyQnLVNNVRiSl9QCFK6lM73DsRVFJ88RNiGUc/fnz8/Kw== X-Received: by 2002:a05:6402:1103:: with SMTP id u3mr39144544edv.342.1625757482498; Thu, 08 Jul 2021 08:18:02 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:02 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 18/48] modules: use modinfo for dependencies Date: Thu, 8 Jul 2021 17:17:18 +0200 Message-Id: <20210708151748.408754-19-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::533; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x533.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Use module database for module dependencies. Drop hard-coded dependency list. Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-15-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- util/module.c | 55 ++++++++++++++++++++------------------------------- 1 file changed, 21 insertions(+), 34 deletions(-) diff --git a/util/module.c b/util/module.c index 8d3e8275b9..7d7b69cbda 100644 --- a/util/module.c +++ b/util/module.c @@ -182,28 +182,6 @@ static int module_load_file(const char *fname, bool mayfail, bool export_symbols out: return ret; } - -static const struct { - const char *name; - const char *dep; -} module_deps[] = { - { "audio-spice", "ui-spice-core" }, - { "chardev-spice", "ui-spice-core" }, - { "hw-display-qxl", "ui-spice-core" }, - { "ui-spice-app", "ui-spice-core" }, - { "ui-spice-app", "chardev-spice" }, - - { "hw-display-virtio-gpu-gl", "hw-display-virtio-gpu" }, - { "hw-display-virtio-gpu-pci-gl", "hw-display-virtio-gpu-pci" }, - { "hw-display-virtio-vga-gl", "hw-display-virtio-vga" }, - -#ifdef CONFIG_OPENGL - { "ui-egl-headless", "ui-opengl" }, - { "ui-gtk", "ui-opengl" }, - { "ui-sdl", "ui-opengl" }, - { "ui-spice-core", "ui-opengl" }, -#endif -}; #endif bool module_load_one(const char *prefix, const char *lib_name, bool mayfail) @@ -219,9 +197,11 @@ bool module_load_one(const char *prefix, const char *lib_name, bool mayfail) char *dirs[5]; char *module_name; int i = 0, n_dirs = 0; - int ret, dep; + int ret; bool export_symbols = false; static GHashTable *loaded_modules; + const QemuModinfo *modinfo; + const char **sl; if (!g_module_supported()) { fprintf(stderr, "Module is not supported by system.\n"); @@ -234,23 +214,30 @@ bool module_load_one(const char *prefix, const char *lib_name, bool mayfail) module_name = g_strdup_printf("%s%s", prefix, lib_name); - for (dep = 0; dep < ARRAY_SIZE(module_deps); dep++) { - if (strcmp(module_name, module_deps[dep].name) == 0) { - /* we depend on another module */ - module_load_one("", module_deps[dep].dep, false); - } - if (strcmp(module_name, module_deps[dep].dep) == 0) { - /* another module depends on us */ - export_symbols = true; - } - } - if (g_hash_table_contains(loaded_modules, module_name)) { g_free(module_name); return true; } g_hash_table_add(loaded_modules, module_name); + for (modinfo = module_info; modinfo->name != NULL; modinfo++) { + if (modinfo->deps) { + if (strcmp(modinfo->name, module_name) == 0) { + /* we depend on other module(s) */ + for (sl = modinfo->deps; *sl != NULL; sl++) { + module_load_one("", *sl, false); + } + } else { + for (sl = modinfo->deps; *sl != NULL; sl++) { + if (strcmp(module_name, *sl) == 0) { + /* another module depends on us */ + export_symbols = true; + } + } + } + } + } + search_dir = getenv("QEMU_MODULE_DIR"); if (search_dir != NULL) { dirs[n_dirs++] = g_strdup_printf("%s", search_dir); From patchwork Thu Jul 8 15:17:19 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365359 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E2DBDC07E96 for ; Thu, 8 Jul 2021 15:31:44 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 73CEC61625 for ; Thu, 8 Jul 2021 15:31:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 73CEC61625 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:33250 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W07-0001LO-Gj for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:31:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53706) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmx-0000QN-Nj for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]:36411) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmu-0008CZ-FH for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: by mail-ej1-x62f.google.com with SMTP id nd37so10295260ejc.3 for ; Thu, 08 Jul 2021 08:18:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=LsiydnwXi2pVHwHvf7cAuq4Vujnf6TZXOmMKdhvCc9I=; b=lRrU8n/Z7nnHVscKohvLvzrKFnVVZ5S2Av8WGemu9orNrA32EfeG7/W8fLthG3sXiy PMaNJ61FSjFuH0A7xdWjCdAbCwNvNhq6TVDbnZ359wcj++yReDUt7NI62uobmJEXz+s8 hvdv8wAggCk7KRRBKFCWNsDOuCG2E2X+Qnau/s0dFQUz5IZx/ruYC6246jVBz/7wF9Y1 4Bh+dfIQ2g7C3PbZm1MOsx4eH2pkkL+RHSLFSnqP8qt03Gtz5A/OEKGt27+WRjtGkcys I+ZMUBas7RJbus/bzpC5MP2yTyYhmHFuA5BM5V7p6jSmE0DblXj2QLRs/8xiUIHobqoK Kgeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=LsiydnwXi2pVHwHvf7cAuq4Vujnf6TZXOmMKdhvCc9I=; b=O/31GCxTjYZwDH/wojFnHBghOsDX2ibIeTr800vHqhJzrc+s5POtQ+GN27PVo01Emb ewQQ2XWton+TmvPDRRBuDB8fqO508wMnghUOytkPH5Jk3qI/dl7EivifUiki9RCHz5X5 6ofvl+rph0NID9ukakZfnRjJcHl1Qut9KzHx3d8NQpy4sGarEp5QOi1m41dynLo5xiDR 5+M/fkBWIzcxFonzbijtyG8V7QmsEURd4yg0BmQu+Y138n7bA4fXAD9YDupBSlW5vUqv C1pprz1FTDh70i+0Sb+t7Vxyp8CLiWedXd18D298VP8qrUfmVp2p1BI9doGo9kDZKuL1 orFw== X-Gm-Message-State: AOAM533J6Nz9B/cOWZaWppoMmET1hN33nBft0WwCzs7998C8aTnnD11U iB6LkX+JIszJqNnoDstLxbMJNSt8myU= X-Google-Smtp-Source: ABdhPJzt+Ffy3CX7Syy2AHxTL0zYsTeS6n2abxQ2TNUF6Ds/bcT0LUrATfTkrd3ZN9zt6fUXf+GV2w== X-Received: by 2002:a17:907:5096:: with SMTP id fv22mr4801840ejc.525.1625757483190; Thu, 08 Jul 2021 08:18:03 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:02 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 19/48] modules: use modinfo for qom load Date: Thu, 8 Jul 2021 17:17:19 +0200 Message-Id: <20210708151748.408754-20-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62f; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62f.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Use module database to figure which module implements a given QOM type. Drop hard-coded object list. Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-16-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- util/module.c | 77 ++++++++++++++++----------------------------------- 1 file changed, 24 insertions(+), 53 deletions(-) diff --git a/util/module.c b/util/module.c index 7d7b69cbda..745ae0fb20 100644 --- a/util/module.c +++ b/util/module.c @@ -280,80 +280,51 @@ bool module_load_one(const char *prefix, const char *lib_name, bool mayfail) return success; } -/* - * Building devices and other qom objects modular is mostly useful in - * case they have dependencies to external shared libraries, so we can - * cut down the core qemu library dependencies. Which is the case for - * only a very few devices & objects. - * - * So with the expectation that this will be rather the exception than - * the rule and the list will not gain that many entries, go with a - * simple manually maintained list for now. - * - * The list must be sorted by module (module_load_qom_all() needs this). - */ -static struct { - const char *type; - const char *prefix; - const char *module; -} const qom_modules[] = { - { "ccid-card-passthru", "hw-", "usb-smartcard" }, - { "ccid-card-emulated", "hw-", "usb-smartcard" }, - { "usb-redir", "hw-", "usb-redirect" }, - { "qxl-vga", "hw-", "display-qxl" }, - { "qxl", "hw-", "display-qxl" }, - { "virtio-gpu-device", "hw-", "display-virtio-gpu" }, - { "virtio-gpu-gl-device", "hw-", "display-virtio-gpu-gl" }, - { "vhost-user-gpu", "hw-", "display-virtio-gpu" }, - { "virtio-gpu-pci-base", "hw-", "display-virtio-gpu-pci" }, - { "virtio-gpu-pci", "hw-", "display-virtio-gpu-pci" }, - { "virtio-gpu-gl-pci", "hw-", "display-virtio-gpu-pci-gl" }, - { "vhost-user-gpu-pci", "hw-", "display-virtio-gpu-pci" }, - { "virtio-gpu-ccw", "hw-", "s390x-virtio-gpu-ccw" }, - { "virtio-vga-base", "hw-", "display-virtio-vga" }, - { "virtio-vga", "hw-", "display-virtio-vga" }, - { "virtio-vga-gl", "hw-", "display-virtio-vga-gl" }, - { "vhost-user-vga", "hw-", "display-virtio-vga" }, - { "chardev-braille", "chardev-", "baum" }, - { "chardev-spicevmc", "chardev-", "spice" }, - { "chardev-spiceport", "chardev-", "spice" }, -}; +#ifdef CONFIG_MODULES static bool module_loaded_qom_all; void module_load_qom_one(const char *type) { - int i; + const QemuModinfo *modinfo; + const char **sl; if (!type) { return; } - for (i = 0; i < ARRAY_SIZE(qom_modules); i++) { - if (strcmp(qom_modules[i].type, type) == 0) { - module_load_one(qom_modules[i].prefix, - qom_modules[i].module, - false); - return; + + for (modinfo = module_info; modinfo->name != NULL; modinfo++) { + if (!modinfo->objs) { + continue; + } + for (sl = modinfo->objs; *sl != NULL; sl++) { + if (strcmp(type, *sl) == 0) { + module_load_one("", modinfo->name, false); + } } } } void module_load_qom_all(void) { - int i; + const QemuModinfo *modinfo; if (module_loaded_qom_all) { return; } - for (i = 0; i < ARRAY_SIZE(qom_modules); i++) { - if (i > 0 && (strcmp(qom_modules[i - 1].module, - qom_modules[i].module) == 0 && - strcmp(qom_modules[i - 1].prefix, - qom_modules[i].prefix) == 0)) { - /* one module implementing multiple types -> load only once */ + + for (modinfo = module_info; modinfo->name != NULL; modinfo++) { + if (!modinfo->objs) { continue; } - module_load_one(qom_modules[i].prefix, qom_modules[i].module, true); + module_load_one("", modinfo->name, false); } module_loaded_qom_all = true; } + +#else + +void module_load_qom_one(const char *type) {} +void module_load_qom_all(void) {} + +#endif From patchwork Thu Jul 8 15:17:20 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365351 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E409FC07E96 for ; Thu, 8 Jul 2021 15:29:11 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9605E6147D for ; Thu, 8 Jul 2021 15:29:09 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9605E6147D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:52542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vxc-0003YK-Ls for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:29:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53702) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmx-0000QB-JD for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: from mail-ed1-x530.google.com ([2a00:1450:4864:20::530]:36546) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmv-0008D5-7C for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: by mail-ed1-x530.google.com with SMTP id h2so9075725edt.3 for ; Thu, 08 Jul 2021 08:18:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=s4blzcFYDfyCZS+BewUZTETIsp8Hl/UKwSDBrmkzuOI=; b=G83r6EVuqfCRCtB0ilbL3UmDVTM6kaUEV7avqKiLLGH/1AhtuwqORGL1kNkMNGaIQC r/baWlf8uh50QW56n8APgHg4D18HIthc2N13lAPf2fD2cZHHKYuWM3BZ15QKJ/TjHf6W wSpWyqg0XitE/+KJnYirAiTsaG+AiffSDxJaUiUEufN1HPpXR1C78MDeIjdDUU2oqZZ9 ywVOsvV7iTOQ+IFlnMhlw5UBv7Ji7E7QvC5fp6cnrqVTDUIJkW4h6lyHdydwFiWsdf7Y 9qdlYpKxD+SP7eWna0sOUteeNlTwzzKNqh72no/VS/LXSpmx6aGJyVWjtCQ3eeKcaJLq bj+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=s4blzcFYDfyCZS+BewUZTETIsp8Hl/UKwSDBrmkzuOI=; b=By9u3gQB5hcTMlwZYfGrzufSMXlA4KwCNtaCN7gJDerw4D32Q7tcJIuxvWu7NtMUHM 4alWuP3gTBZbwqoD8g117ZxpvlPTcCDwEffM9qMq/OdlanzlNt0R1lapxgfYUGwcai0A pPOV7qjEDLi5+8alurRFy/d+y6Wf+5VWNbKSVGntBJZtYcotD0b5X6JEmgvIy1t7DSA2 eYUVYtP4cV/sleHSwNl4kOrK7Dm5o5ZMNjy2oz8U53BerYAGgO+moVer2GxIYJ6QR5ct tL3/uoROgvnuUqxT/2qxo2P0HwX21HsFPPpyIKn/bBoMcCytxpcYufMWV/QHEyxbCb03 lchw== X-Gm-Message-State: AOAM532q+qpJZ2lLvHKoebGQkztZStMIJPLjMmxhgPpMdycrhK60ks52 p9UzHXbrpUldoCmNICTv0h3F2yAFl7g= X-Google-Smtp-Source: ABdhPJzucrTwjQwZUr0dmINiio1FDHYfgIS4XO3BrEdFhF5H7NV0SFIAovS2EPPGVa8Rg/DhhiXVKw== X-Received: by 2002:a50:fb04:: with SMTP id d4mr18058508edq.143.1625757483854; Thu, 08 Jul 2021 08:18:03 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:03 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 20/48] modules: use modinfo for qemu opts load Date: Thu, 8 Jul 2021 17:17:20 +0200 Message-Id: <20210708151748.408754-21-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::530; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x530.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Use module database to figure which module adds given QemuOpts group. Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-17-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- softmmu/vl.c | 17 ----------------- stubs/module-opts.c | 4 ---- util/module.c | 19 +++++++++++++++++++ 3 files changed, 19 insertions(+), 21 deletions(-) diff --git a/softmmu/vl.c b/softmmu/vl.c index 7cef3423a7..190b71a0f2 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -2691,23 +2691,6 @@ void qmp_x_exit_preconfig(Error **errp) } } -#ifdef CONFIG_MODULES -void qemu_load_module_for_opts(const char *group) -{ - static bool spice_tried; - if (g_str_equal(group, "spice") && !spice_tried) { - ui_module_load_one("spice-core"); - spice_tried = true; - } - - static bool iscsi_tried; - if (g_str_equal(group, "iscsi") && !iscsi_tried) { - block_module_load_one("iscsi"); - iscsi_tried = true; - } -} -#endif - void qemu_init(int argc, char **argv, char **envp) { QemuOpts *opts; diff --git a/stubs/module-opts.c b/stubs/module-opts.c index a7d0e4ad6e..5412429ea8 100644 --- a/stubs/module-opts.c +++ b/stubs/module-opts.c @@ -1,6 +1,2 @@ #include "qemu/osdep.h" #include "qemu/config-file.h" - -void qemu_load_module_for_opts(const char *group) -{ -} diff --git a/util/module.c b/util/module.c index 745ae0fb20..a9ec2da997 100644 --- a/util/module.c +++ b/util/module.c @@ -20,6 +20,7 @@ #include "qemu/queue.h" #include "qemu/module.h" #include "qemu/cutils.h" +#include "qemu/config-file.h" #ifdef CONFIG_MODULE_UPGRADES #include "qemu-version.h" #endif @@ -322,8 +323,26 @@ void module_load_qom_all(void) module_loaded_qom_all = true; } +void qemu_load_module_for_opts(const char *group) +{ + const QemuModinfo *modinfo; + const char **sl; + + for (modinfo = module_info; modinfo->name != NULL; modinfo++) { + if (!modinfo->opts) { + continue; + } + for (sl = modinfo->opts; *sl != NULL; sl++) { + if (strcmp(group, *sl) == 0) { + module_load_one("", modinfo->name, false); + } + } + } +} + #else +void qemu_load_module_for_opts(const char *group) {} void module_load_qom_one(const char *type) {} void module_load_qom_all(void) {} From patchwork Thu Jul 8 15:17:21 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365369 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 133ABC07E96 for ; Thu, 8 Jul 2021 15:34:15 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BA7096143E for ; Thu, 8 Jul 2021 15:34:14 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BA7096143E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:44354 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W2X-0000K8-Ts for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:34:13 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53712) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmx-0000Qg-P7 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: from mail-ed1-x52e.google.com ([2a00:1450:4864:20::52e]:42886) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmv-0008Db-R8 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:07 -0400 Received: by mail-ed1-x52e.google.com with SMTP id m17so9027064edc.9 for ; Thu, 08 Jul 2021 08:18:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=G3GP9yNPW/jQe/C/J/4O6WqOQ/Mym8ZAXiesLvzC+94=; b=cA3t52OeP3cwsxb/5Jj59SyoeB1HojJEUACgEXbplTxbKNfEDiW1WddiBZF8aeelMV IFdIrBfWQvFVS8DEq3TrQyuszlXeN9hD2u2+FwCzKkZSZ5O6j6SKjz6b9k6XpVcLd0jq nja3vdWypjMCSKZk8qaJC/JJGI45tagomWDrcXyXEBNJ2KAil1ancAXXEZV0T293zL0q 5GqnZY/Re63aUvVBOMrUt2R/YGaJdu6tlXK0jNYqmlzIFQ036njeR6mDdjAOZuWU5zPQ 3Le9p3h699b6FQouvJz7L4Ms/69ArylqsGb3+nnQO1+BS7fimw7MToONYjleRPsSCxh2 ypxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=G3GP9yNPW/jQe/C/J/4O6WqOQ/Mym8ZAXiesLvzC+94=; b=d6KS/tupTmCYmXQxsY/ziZg0MBpWal3RAYEIYaxP1ovNVl7nsYjZMiVy6PxC1aTiS/ svYs8Ho0p7x48pszN7zZhjYVavyXrxADb62Y9yyKl17aW8j715Fbt3gAGDR1KMUbFvch FDv0BYRYg2rgFJXymsHKZBB2iW/MOf92knlRfbxbzyStM68TpgkhLEq44m8U6Sa8Zlpj xX6U3ZidMadJFVRnN9RerdB9cTmRN7l2I0gBOZ6oH+M/VeDZWduPHS8fF6hlmMHYoy5I WOCEtiIAIXZB9/QEiJhSFenMJdKhWVDeFjUMhqo5C/jtVykx0+PaS7kHjvOYVLIOlsmU ScQg== X-Gm-Message-State: AOAM532lRQ10Uekymbj/+3KxTh1u58uOibO1OC0hcn/BHBilMNrh2Owh JEJVOaTDyVwUbjmmOktXDdvksIhiXZI= X-Google-Smtp-Source: ABdhPJw3Mbge8AB4dDwqEtHCj341kbwLh80BMD/hcuz/Ci/IfyJQSW1USxyg+GU+SJmunZWaGstjzg== X-Received: by 2002:a05:6402:d06:: with SMTP id eb6mr38107095edb.337.1625757484544; Thu, 08 Jul 2021 08:18:04 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:04 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 21/48] modules: add tracepoints Date: Thu, 8 Jul 2021 17:17:21 +0200 Message-Id: <20210708151748.408754-22-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::52e; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x52e.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann One for module load and one for qom type lookup. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-18-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- util/module.c | 3 +++ util/trace-events | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/util/module.c b/util/module.c index a9ec2da997..acaaecad56 100644 --- a/util/module.c +++ b/util/module.c @@ -24,6 +24,7 @@ #ifdef CONFIG_MODULE_UPGRADES #include "qemu-version.h" #endif +#include "trace.h" typedef struct ModuleEntry { @@ -176,6 +177,7 @@ static int module_load_file(const char *fname, bool mayfail, bool export_symbols ret = 0; } + trace_module_load_module(fname); QTAILQ_FOREACH_SAFE(e, &dso_init_list, node, next) { QTAILQ_REMOVE(&dso_init_list, e, node); g_free(e); @@ -294,6 +296,7 @@ void module_load_qom_one(const char *type) return; } + trace_module_lookup_object_type(type); for (modinfo = module_info; modinfo->name != NULL; modinfo++) { if (!modinfo->objs) { continue; diff --git a/util/trace-events b/util/trace-events index 806cac14a7..c8f53d7d9f 100644 --- a/util/trace-events +++ b/util/trace-events @@ -100,3 +100,7 @@ uffd_create_fd_api_failed(int err) "errno: %i" uffd_create_fd_api_noioctl(uint64_t ioctl_req, uint64_t ioctl_supp) "ioctl_req: 0x%" PRIx64 "ioctl_supp: 0x%" PRIx64 uffd_register_memory_failed(void *addr, uint64_t length, uint64_t mode, int err) "addr: %p length: %" PRIu64 " mode: 0x%" PRIx64 " errno: %i" uffd_unregister_memory_failed(void *addr, uint64_t length, int err) "addr: %p length: %" PRIu64 " errno: %i" + +# module.c +module_load_module(const char *name) "file %s" +module_lookup_object_type(const char *name) "name %s" From patchwork Thu Jul 8 15:17:22 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365349 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B4234C07E96 for ; Thu, 8 Jul 2021 15:28:43 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BA5C56147D for ; Thu, 8 Jul 2021 15:28:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BA5C56147D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:49658 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vx9-0001eM-TB for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:28:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53728) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmy-0000UB-OB for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:08 -0400 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:37569) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmw-0008Dq-K5 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:08 -0400 Received: by mail-ed1-x531.google.com with SMTP id cy23so4051398edb.4 for ; Thu, 08 Jul 2021 08:18:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=QKXLncUdY1O92DDL+MV//B7jAo0Y2NMb/vk36fn5i5s=; b=Elp5W8CmV/6IS6u4+AF9A6Npt+b0dNi476POgGep3S539Urm54TbQk0Zocru+a1bZm WjSvetZ6tML+Mmj1aGHDyfByiUW6Xa1obRL5vL6wiidTV3C3rSx75BkSSErFbnZXtyr/ Mq0uXbiNcrlYhlHIduSGMdanT4cdUBYXSiqdi379YeZokDqgTuYIls1kO+wPaUsSSnsd sKJJtDVwcfek7Ltz2CZI+vYTivg0qU+EGbzUKucKLL6/vBD6+AgkKbiuBTJ5iFysYAmC 4r10aGs6/JHXmVdEtZMtxGaEGnkIbMvL+Si97Q8IA6PAEbaaXG71Mli4ujz8Xe6aykU8 vF2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=QKXLncUdY1O92DDL+MV//B7jAo0Y2NMb/vk36fn5i5s=; b=P4Xk6Yt9gG32PXsTycs/I+RtHJPF4LCwU4dZimp4G+Mu7nRX4ULtxk2Ttp67GewT2t SzP2hXKVUjr4iy2EVh1U3O2Qg0i0WEsyvExK+kikd2UlQxPP3puM+xuRuGt/MpxU+azV yzjFm+IpE1fpRTR5CaEx6xMBQytJFF09DaGRHwe5KkJqf2rnNiWeFT9vkuysj0G9q8CT JBcQMdsqQbf5LjKS+h2V8fbkAxTif/EoM+tCmsYJcIfpeYkDWrR7XrYRwi9ByNbnZ7ge DPsJBqqdP0BKmlHW7DC0AnJVRf98ou8RI01+TcskQKPpjEKTIYckN5zsZPik3eimlvfh c9Rg== X-Gm-Message-State: AOAM532hd+3lIcgcdq4rg6t138NyRvCIWXf0mIxtJtC4bZ4WaE3bqvoX ZgWPSLT6/8W1peFZSS7DVbRt3iRBEqI= X-Google-Smtp-Source: ABdhPJxnXjm4A9AK5BNPnSjZ9Q0d+f/dMgzUdgl2ogfyzEQGYKJ7IXHJrd8clRxPk2z9zxwFJnQPoQ== X-Received: by 2002:a05:6402:451:: with SMTP id p17mr38353898edw.332.1625757485375; Thu, 08 Jul 2021 08:18:05 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:04 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 22/48] modules: check arch and block load on mismatch Date: Thu, 8 Jul 2021 17:17:22 +0200 Message-Id: <20210708151748.408754-23-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::531; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x531.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Add module_allow_arch() to set the target architecture. In case a module is limited to some arch verify arches match and ignore the module if not. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-19-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- include/qemu/module.h | 1 + softmmu/vl.c | 3 +++ util/module.c | 29 +++++++++++++++++++++++++++++ 3 files changed, 33 insertions(+) diff --git a/include/qemu/module.h b/include/qemu/module.h index a98748d501..7f4b1af819 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -72,6 +72,7 @@ void module_call_init(module_init_type type); bool module_load_one(const char *prefix, const char *lib_name, bool mayfail); void module_load_qom_one(const char *type); void module_load_qom_all(void); +void module_allow_arch(const char *arch); /* * module info annotation macros diff --git a/softmmu/vl.c b/softmmu/vl.c index 190b71a0f2..2004d57108 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -126,6 +126,8 @@ #include "sysemu/iothread.h" #include "qemu/guest-random.h" +#include "config-host.h" + #define MAX_VIRTIO_CONSOLES 1 typedef struct BlockdevOptionsQueueEntry { @@ -2740,6 +2742,7 @@ void qemu_init(int argc, char **argv, char **envp) #ifdef CONFIG_MODULES module_init_info(qemu_modinfo); + module_allow_arch(TARGET_NAME); #endif qemu_init_subsystems(); diff --git a/util/module.c b/util/module.c index acaaecad56..065aed09ff 100644 --- a/util/module.c +++ b/util/module.c @@ -117,12 +117,33 @@ static const QemuModinfo module_info_stub[] = { { /* end of list */ } }; static const QemuModinfo *module_info = module_info_stub; +static const char *module_arch; void module_init_info(const QemuModinfo *info) { module_info = info; } +void module_allow_arch(const char *arch) +{ + module_arch = arch; +} + +static bool module_check_arch(const QemuModinfo *modinfo) +{ + if (modinfo->arch) { + if (!module_arch) { + /* no arch set -> ignore all */ + return false; + } + if (strcmp(module_arch, modinfo->arch) != 0) { + /* mismatch */ + return false; + } + } + return true; +} + static int module_load_file(const char *fname, bool mayfail, bool export_symbols) { GModule *g_module; @@ -224,6 +245,13 @@ bool module_load_one(const char *prefix, const char *lib_name, bool mayfail) g_hash_table_add(loaded_modules, module_name); for (modinfo = module_info; modinfo->name != NULL; modinfo++) { + if (modinfo->arch) { + if (strcmp(modinfo->name, module_name) == 0) { + if (!module_check_arch(modinfo)) { + return false; + } + } + } if (modinfo->deps) { if (strcmp(modinfo->name, module_name) == 0) { /* we depend on other module(s) */ @@ -345,6 +373,7 @@ void qemu_load_module_for_opts(const char *group) #else +void module_allow_arch(const char *arch) {} void qemu_load_module_for_opts(const char *group) {} void module_load_qom_one(const char *type) {} void module_load_qom_all(void) {} From patchwork Thu Jul 8 15:17:23 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365367 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5136BC07E96 for ; Thu, 8 Jul 2021 15:33:34 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1AE89616ED for ; Thu, 8 Jul 2021 15:33:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1AE89616ED Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:41828 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W1t-00076A-8N for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:33:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53732) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmy-0000V0-Ul for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:08 -0400 Received: from mail-ed1-x52b.google.com ([2a00:1450:4864:20::52b]:36542) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmx-0008ED-DN for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:08 -0400 Received: by mail-ed1-x52b.google.com with SMTP id h2so9075922edt.3 for ; Thu, 08 Jul 2021 08:18:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FiDDayin7HJXjqU9AzxoZp/3bpNscaqg9/qQn+dbhhA=; b=G+sw1f9Fx/LsydpeuipqR3Ng0RGZWAQ8IrIDlZhaVG7L9rfoAr7wMO/iikQkS9ql6n HMSwybUysBdxylw16NgxKIGGgo57u8Xpcqv5fnEUCHM6vBbOgjezbV95jKoscCmQfLsn OBF7YfKCQhkG7QOSLVuAirarMCgQW58Z0JnaWrHiwvhZH3FT0/UaoTziUcIWQAnNi6KE 1w0znxPD3OCpfO4YmSDlFYlKe0iaMG1xLC1Hc/US/pBmldlMwGzX8310NV4mZ5VmAx9X 8HFPGgwkqmPOYqko4FC+xSs5nVsxZFQXDZeR8frH9BTmv5il2WtQyGBaybm+Ae7RIepz Bq4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=FiDDayin7HJXjqU9AzxoZp/3bpNscaqg9/qQn+dbhhA=; b=V31N+xspEV9+H0+ZSuzkuriQ5G0tnr8DqgADUpR92veC00zdzrtKMLRXanaV40uZt3 S3zffYEHRw8Dx90nc2PP0jJ8B1Av5A8oAjgYS3N15xJ0+mgFsXxQ/q6bgsfqFTLP9e00 gxPpE7kh4cVh/Pd0vIc7aTVHVeyARd86jhAvvikkiIMR+Q37bK9cjxu1YzFJMsC3nuhq Hny/yim8exsYf46XccAUPkvfcdQe/H41MDOTqBYXWRCHO/Vu5r2qb03wJ3qnaDY8B1Zy wPCdeFiJrnYlTN6IjBvomHCEtrgvb1jDJ9uxTcw8ridnVV6V9/smeSilUyvREfRvM3p2 l2eg== X-Gm-Message-State: AOAM5314lBuB8jaXugGP1WPR4hw7Fo3D8tjgiTNO8CWrx44UsDU6pjjp KoIYqpzu5Eaf8jSKgL4q9cGH0WgNrhM= X-Google-Smtp-Source: ABdhPJwfDldnk6lTy35+d8vm3uNn2PC+ZWsC1x69Z6wMvTN5ys2+Sb1OwEyW8o8WY8WZ+k9jIXQ+8g== X-Received: by 2002:a05:6402:90b:: with SMTP id g11mr39541253edz.336.1625757486098; Thu, 08 Jul 2021 08:18:06 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:05 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 23/48] modules: check arch on qom lookup Date: Thu, 8 Jul 2021 17:17:23 +0200 Message-Id: <20210708151748.408754-24-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::52b; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x52b.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann With target-specific modules we can have multiple modules implementing the same object. Therefore we have to check the target arch on lookup to find the correct module. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-20-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- util/module.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/util/module.c b/util/module.c index 065aed09ff..6bb4ad915a 100644 --- a/util/module.c +++ b/util/module.c @@ -329,6 +329,9 @@ void module_load_qom_one(const char *type) if (!modinfo->objs) { continue; } + if (!module_check_arch(modinfo)) { + continue; + } for (sl = modinfo->objs; *sl != NULL; sl++) { if (strcmp(type, *sl) == 0) { module_load_one("", modinfo->name, false); @@ -349,6 +352,9 @@ void module_load_qom_all(void) if (!modinfo->objs) { continue; } + if (!module_check_arch(modinfo)) { + continue; + } module_load_one("", modinfo->name, false); } module_loaded_qom_all = true; From patchwork Thu Jul 8 15:17:24 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365357 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9B278C07E96 for ; Thu, 8 Jul 2021 15:30:13 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 567AD6186A for ; Thu, 8 Jul 2021 15:30:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 567AD6186A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:58300 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vye-0007Py-D9 for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:30:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53756) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vmz-0000YQ-Vy for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:10 -0400 Received: from mail-ej1-x629.google.com ([2a00:1450:4864:20::629]:37568) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmy-0008EX-8V for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:09 -0400 Received: by mail-ej1-x629.google.com with SMTP id i20so10270154ejw.4 for ; Thu, 08 Jul 2021 08:18:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=uuuNIH23NCYC3HB+3rBgnfJ6sMhfWC9GGXILCAAVyEg=; b=eDctoK8khkg0OEFn51sWQTz0gOqsrCKNvMBXyPglPZGCJG+P17ogdcWdytxaNbF7EY IFpg/Ut2DCwoR5c0UR+t775wKYaoQMxwNHzSbawRK9u3qlaxOYMfqaNX6EfusEWO30AE EFokeGoHOlQ/WhMdfkb9oXsM0NFabSe34U5ELwhmb7G0AuyBfKulpoKMfUklHOPhpGqA 98jCkqtcJkhYjHfMnye46ShStiaitvCidxXb1LO22IbhAosUDtTNjF/Lb5UQJ2gDCgIh lw0Ke7VPCewlkipD1jcENiuOw7qfN6c/G8bZ0hrmcLLcZIsvLv/vKI/5MtEHB6xUrztn dACw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=uuuNIH23NCYC3HB+3rBgnfJ6sMhfWC9GGXILCAAVyEg=; b=fomof07UVl8yjZ90+gy2X+zcB+V6zXP1UE1jnenpjzMMVN2GAx3xM4KF090gpUY+Jk mcuD3YM2vxYYnG7x63JlkcMqapbFxXR+aPpRsYLIpc6gvdfBcN7u2R6kgM4mlCmeH4EP 2nIz96yUEOBolgcxegGkQRIg8FsEaYPEFgIO+a7h+gNL7HjYLMBiMTUwvw8XER+ZLxK4 sOXcdH58SmVaw6eXNmUnFNsXX/1Aad9tQ3WoQJhi55g4CSQcvIwol6Sx7oeRecIVWFM9 gB3SS95kFViu5SrA5fo/LySNGysL+TSL5sjKRxxH/isi+I3MjCk+8YGBPGIMFK8NkGLF BpGg== X-Gm-Message-State: AOAM532ei3beOSnrW1zDUzkKGP8JzBrHY8OuKAHWQvycbp3weXPTNj+w v+GZdEHBAtePURU4y/Ayn/l1ZvBAIv4= X-Google-Smtp-Source: ABdhPJzF8An8J8V3SC5hq/SA1IFDnNlZlF8l4EZRjC4ieAaU4UJffQ/X5WQnH1Hdd7xA/qsjfSJy7Q== X-Received: by 2002:a17:906:3b52:: with SMTP id h18mr32190244ejf.451.1625757486795; Thu, 08 Jul 2021 08:18:06 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:06 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 24/48] modules: target-specific module build infrastructure Date: Thu, 8 Jul 2021 17:17:24 +0200 Message-Id: <20210708151748.408754-25-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::629; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x629.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-21-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- meson.build | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/meson.build b/meson.build index 7b827f7caa..7babef4de4 100644 --- a/meson.build +++ b/meson.build @@ -2001,6 +2001,7 @@ user_ss = ss.source_set() util_ss = ss.source_set() modules = {} +target_modules = {} hw_arch = {} target_arch = {} target_softmmu_arch = {} @@ -2280,6 +2281,42 @@ foreach d, list : modules endforeach endforeach +foreach d, list : target_modules + foreach m, module_ss : list + if enable_modules and targetos != 'windows' + foreach target : target_dirs + if target.endswith('-softmmu') + config_target = config_target_mak[target] + config_target += config_host + target_inc = [include_directories('target' / config_target['TARGET_BASE_ARCH'])] + c_args = ['-DNEED_CPU_H', + '-DCONFIG_TARGET="@0@-config-target.h"'.format(target), + '-DCONFIG_DEVICES="@0@-config-devices.h"'.format(target)] + target_module_ss = module_ss.apply(config_target, strict: false) + if target_module_ss.sources() != [] + module_name = d + '-' + m + '-' + config_target['TARGET_NAME'] + sl = static_library(module_name, + [genh, target_module_ss.sources()], + dependencies: [modulecommon, target_module_ss.dependencies()], + include_directories: target_inc, + c_args: c_args, + pic: true) + softmmu_mods += sl + # FIXME: Should use sl.extract_all_objects(recursive: true) too. + modinfo_files += custom_target(module_name + '.modinfo', + output: module_name + '.modinfo', + input: target_module_ss.sources(), + capture: true, + command: [modinfo_collect, '--target', target, '@INPUT@']) + endif + endif + endforeach + else + specific_ss.add_all(module_ss) + endif + endforeach +endforeach + if enable_modules modinfo_src = custom_target('modinfo.c', output: 'modinfo.c', From patchwork Thu Jul 8 15:17:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365395 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 45E32C07E96 for ; Thu, 8 Jul 2021 15:41:58 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id ED4106162B for ; Thu, 8 Jul 2021 15:41:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org ED4106162B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:42294 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WA1-00014b-28 for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:41:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53858) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn4-0000pA-0u for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:14 -0400 Received: from mail-ed1-x52d.google.com ([2a00:1450:4864:20::52d]:45963) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmy-0008FR-U9 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:13 -0400 Received: by mail-ed1-x52d.google.com with SMTP id t3so8994741edt.12 for ; Thu, 08 Jul 2021 08:18:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/Iv10jXl0e7Uri5p1LK00hnQfO9Q7szAFv5OMxF4rGU=; b=n+/N2+OmVGiMcY+aCbw5zD3yF8vycZUuTCU2efxkNc5fDik5vQ6NZWrEg43tomhzWK U5+naVg+GOAEgdlxrOWwoFhOqKipBKZWPeCldgFD13CQFo6EpG6i7mWOCB/rBjqUIX7V vboFP0P0Y/h2Taw0aK/IM0Rv048uWkvqk50BcdD71v2xOQjElxow89ocREqZogly7ZN3 WIOv014xJ6VgyQBR7p+Ezk/3dirJ84RVQObyFWCfg+WwOG2M7nkvLC4oIt0nMjoV3e01 a0r5c2Xy0OBNtG6LtyQFUdpOqP+g3+LjeyyYuZNne/D8NC+HGp3qU4VLkIK3nlbNJ0wD 9RKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=/Iv10jXl0e7Uri5p1LK00hnQfO9Q7szAFv5OMxF4rGU=; b=Gsz6lznukhxU/V75He0laSjlMJHRHfaHa0N3ko3+vHlQhUa19IXxiE5yuQzd+u4Awf Z5WOINoZU+ySGv2uExXEMAznQRVoAJxIJSqoar0wFiK+mvguO7oAtPgdDKC5Dra902IA BKzY8rDXCzcT8btxgql+O+dklS/je4clLLdr/Yk5WbXP1YNmK64se0rre6aROZQqzntp sxbIRCGgCPcSuRnQ1vkpOWhXbwUkNTpYpOoHXrGNAavY5E1ERMcyCBp+yK9Q5U+Tm3eJ Mu+P8lYx9h/o8zieiMuJCdmPoMGyeZNL6NYz7klQPXloNKVCDVhbTH3c4XmP2NCmx3Eb njoA== X-Gm-Message-State: AOAM530GZO3CF+wWrOuC08EtKlN+J9Wm+SzhF0H7TO0elhSxg+axTWHD CWpMt45ZRdQ1EF9LY9xpWsCx/e5OGEU= X-Google-Smtp-Source: ABdhPJxawCmKPDUp0fuIjfKTl0aIc/OX56jtV2ZINOedP3qOFEx8Auz3YOFLxu9SQ40HoOt+SlPGrA== X-Received: by 2002:aa7:cd85:: with SMTP id x5mr39074313edv.115.1625757487701; Thu, 08 Jul 2021 08:18:07 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:07 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 25/48] modules: add documentation for module sourcesets Date: Thu, 8 Jul 2021 17:17:25 +0200 Message-Id: <20210708151748.408754-26-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::52d; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x52d.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-22-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- docs/devel/build-system.rst | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/devel/build-system.rst b/docs/devel/build-system.rst index 7ef36f42d0..fd1650442e 100644 --- a/docs/devel/build-system.rst +++ b/docs/devel/build-system.rst @@ -272,6 +272,23 @@ Target-dependent emulator sourcesets: target_arch += {'arm': arm_ss} target_softmmu_arch += {'arm': arm_softmmu_ss} +Module sourcesets: + There are two dictionaries for modules: `modules` is used for + target-independent modules and `target_modules` is used for + target-dependent modules. When modules are disabled the `module` + source sets are added to `softmmu_ss` and the `target_modules` + source sets are added to `specific_ss`. + + Both dictionaries are nested. One dictionary is created per + subdirectory, and these per-subdirectory dictionaries are added to + the toplevel dictionaries. For example:: + + hw_display_modules = {} + qxl_ss = ss.source_set() + ... + hw_display_modules += { 'qxl': qxl_ss } + modules += { 'hw-display': hw_display_modules } + Utility sourcesets: All binaries link with a static library `libqemuutil.a`. This library is built from several sourcesets; most of them however host generated From patchwork Thu Jul 8 15:17:26 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365377 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 48E2AC07E99 for ; Thu, 8 Jul 2021 15:36:56 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1119761920 for ; Thu, 8 Jul 2021 15:36:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1119761920 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:53206 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W59-0006MB-9e for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:36:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53782) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn1-0000cD-4F for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:11 -0400 Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]:36413) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vmz-0008Fl-Nq for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:10 -0400 Received: by mail-ej1-x630.google.com with SMTP id nd37so10295712ejc.3 for ; Thu, 08 Jul 2021 08:18:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ioTspNqC51n8g8b33aT5Bz3obIBnFvA/tPrRexRDgc0=; b=tbYeDzv99rDfemDZar9InVxqaA7iqcQss4wndGEeaP2nOOA5ZA6kSvCsyDFpMCh9AA 8aV8eSN1tPTeSPvIBKLwqdrRIsDIzcBSWtIJ1ofe1NMtZATSJc27w/yNKg3uDnlo/aFZ jFWxCVlhInpsiuHxd7uDhhjm9vkVGCv5G4Ic7+JbJGW2zjKN6m2lPsaTHmZQDaam+t4g fXo2xNuoJ+/XMVD2r4HOr7JDrgaJku5Fh1fZMu5/+ncuglI/zpkYQlzSfBMOwZ3xDCdW n7QuMLbd667sPUCw5hbH000VNglYvcdY82B4Jlw/4Ziq+6Le1louKB5D5SrYI9k5LtoP 7yAA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ioTspNqC51n8g8b33aT5Bz3obIBnFvA/tPrRexRDgc0=; b=uUoLu5OLRcMNZZZsQOJRJK2WQq/OhI3gPgVNwF+H91nykOLjRbGsJ1OUT70sOC2hm9 lOiVS/8lg436jYsbVqHPmPQhlejCfT36vGDjk3afSMVkNmCHzCjDDsS/uOr2uQ2dvt93 6MuDFCAfpuMC0ABcK0Orni+sM+8oQJgkkppxIW2b3wFMQB2IektKlkx2p6+bpog8NAMZ L7RnXmcbE1w+xwF2w4kV0NyfswdlWmpzFYZIYWhQjfjNb3J3y0CSblyfoy2wgCJXFvE1 IvXcQo1b7qjDEzPyMSJsXgWsllUBXRMoXyw7NZjJtt3yg6jmM8edzQl/TfE/EiLBkL0a ahWw== X-Gm-Message-State: AOAM5322HUrBq4B4IIFRWU1s0V1+R+SSG8ZnENG6zT0PVjwqFvAm6lpF qVryQ9svGyZdJqNFAlKqIyhCz7U8Mns= X-Google-Smtp-Source: ABdhPJyhcS6cijq8HqgTNOxCqI8pqSfsZnJUvPthRv0xMjTFUwEWN4NTVdqRdmPdv5NnEEIzooX+0g== X-Received: by 2002:a17:906:58cd:: with SMTP id e13mr15759675ejs.177.1625757488404; Thu, 08 Jul 2021 08:18:08 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:08 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 26/48] modules: add module_obj() note to QOM docs Date: Thu, 8 Jul 2021 17:17:26 +0200 Message-Id: <20210708151748.408754-27-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::630; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x630.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-23-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- docs/devel/qom.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/devel/qom.rst b/docs/devel/qom.rst index 42d0dc4f4d..e5fe3597cd 100644 --- a/docs/devel/qom.rst +++ b/docs/devel/qom.rst @@ -87,6 +87,14 @@ specific type: #define MY_DEVICE(obj) \ OBJECT_CHECK(MyDevice, obj, TYPE_MY_DEVICE) +In case the ObjectClass implementation can be built as module a +module_obj() line must be added to make sure qemu loads the module +when the object is needed. + +.. code-block:: c + + module_obj(TYPE_MY_DEVICE); + Class Initialization ==================== From patchwork Thu Jul 8 15:17:27 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365355 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 933E7C07E96 for ; Thu, 8 Jul 2021 15:30:09 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3BB8861625 for ; Thu, 8 Jul 2021 15:30:09 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3BB8861625 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:57962 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1Vya-0007CV-Af for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:30:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53820) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn2-0000jE-M0 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:12 -0400 Received: from mail-ej1-x635.google.com ([2a00:1450:4864:20::635]:37580) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn0-0008G5-F6 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:12 -0400 Received: by mail-ej1-x635.google.com with SMTP id i20so10270377ejw.4 for ; Thu, 08 Jul 2021 08:18:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ACYfEquz/Y0lv0eg/ZgLdCLCLVz6X0RUHqWmwg/DiSE=; b=jvCCX14gKNxmQULE2e+qwjc7Bw6kp7FZpCFi7JII7COV7s/HY8CnDRmCpAzL7gF3wp eTzIFHVxZz6+hKkkIhuR4TeZEk0Sj4QNSilSnw2torjwtfdw2BgnXoMaDpZSbCKfzaB5 tJllYdTD1S0j6jWcd8bC3F1xn73yhcr2q79WelY/XcCzowAlFl8B4iGxV7VH18Kp3X/A 9PydDufUzGQpVD8CsgYDK6QYhRCcZQBdhj0c4HMukK/ubEPzKP3dDhTcj2FX/iixbrrE htp+4VeKdjDc5plwzthq2Akq3D+CyyQXDYqkMKkNWcJLOK1aPuC+MoWqPXuMXOO9RXDR 5TTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ACYfEquz/Y0lv0eg/ZgLdCLCLVz6X0RUHqWmwg/DiSE=; b=Hrd7OokiLits7Dy3nU1A33y97I1CLzoyFpWYQli6Wfx2s+OGBpBTqzp2pOIKwdU02J a7LTjptTGsCFGOejRI2wOwi9BBZ59MiMFB7tWbfbHqHkUA0SQj5LPRhYbzztCVgTvLag FDCRhS9V9qxbvpGClxATsnrrIstYi60+WBA3fWuJfbZFzk1aKD/LXycHVjOGhZ/oM5b4 3jS1UT/HA6+vklGySZO2BrJaUutoysW/ekuZ6wv1e/8N7PJ/fkalhigvOshiSitviOrZ q7/csAI62dTdEcA/qupU0HQSqJP3+msw4EIONxMkLtrdGjEuK6QxSBopnYsji/rQiI8C +ugg== X-Gm-Message-State: AOAM5320MGuLOgUoXtleu9ugz+DqaaU5zbPYcvEviLeEsJunxj8elS7J 6cTy6vU/QHwbLYMqBTiAa5hvlwHGpiw= X-Google-Smtp-Source: ABdhPJxe2FR4D6ERJNrML8LrWd2zEUHAZqERACcLQ5SyupfKmAYyCnFjONLK+e5pN3dQ4/y7ZjdUxg== X-Received: by 2002:a17:906:b851:: with SMTP id ga17mr31930218ejb.86.1625757489150; Thu, 08 Jul 2021 08:18:09 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:08 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 27/48] modules: module.h kerneldoc annotations Date: Thu, 8 Jul 2021 17:17:27 +0200 Message-Id: <20210708151748.408754-28-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::635; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x635.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-24-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- include/qemu/module.h | 59 +++++++++++++++++++++++++++++++++---------- 1 file changed, 45 insertions(+), 14 deletions(-) diff --git a/include/qemu/module.h b/include/qemu/module.h index 7f4b1af819..8bc80535a4 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -74,11 +74,18 @@ void module_load_qom_one(const char *type); void module_load_qom_all(void); void module_allow_arch(const char *arch); -/* - * module info annotation macros +/** + * DOC: module info annotation macros * - * scripts/modinfo-collect.py will collect module info, - * using the preprocessor and -DQEMU_MODINFO + * `scripts/modinfo-collect.py` will collect module info, + * using the preprocessor and -DQEMU_MODINFO. + * + * `scripts/modinfo-generate.py` will create a module meta-data database + * from the collected information so qemu knows about module + * dependencies and QOM objects implemented by modules. + * + * See `*.modinfo` and `modinfo.c` in the build directory to check the + * script results. */ #ifdef QEMU_MODINFO # define modinfo(kind, value) \ @@ -87,24 +94,48 @@ void module_allow_arch(const char *arch); # define modinfo(kind, value) #endif -/* module implements QOM type */ +/** + * module_obj + * + * @name: QOM type. + * + * This module implements QOM type @name. + */ #define module_obj(name) modinfo(obj, name) -/* module has a dependency on */ +/** + * module_dep + * + * @name: module name + * + * This module depends on module @name. + */ #define module_dep(name) modinfo(dep, name) -/* module is for target architecture */ +/** + * module_arch + * + * @arch: target architecture + * + * This module is for target architecture @arch. + * + * Note that target-dependent modules are tagged automatically, so + * this is only needed in case target-independent modules should be + * restricted. Use case example: the ccw bus is implemented by s390x + * only. + */ #define module_arch(name) modinfo(arch, name) -/* module registers QemuOpts */ +/** + * module_opts + * + * @name: QemuOpts name + * + * This module registers QemuOpts @name. + */ #define module_opts(name) modinfo(opts, name) -/* - * module info database - * - * scripts/modinfo-generate.c will build this using the data collected - * by scripts/modinfo-collect.py - */ +/* module info database (created by scripts/modinfo-generate.py) */ typedef struct QemuModinfo QemuModinfo; struct QemuModinfo { const char *name; From patchwork Thu Jul 8 15:17:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365387 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 36D8EC07E96 for ; Thu, 8 Jul 2021 15:39:42 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id F18406162B for ; Thu, 8 Jul 2021 15:39:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F18406162B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:33656 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W7p-0003hz-3d for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:39:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53840) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn3-0000m3-C1 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:13 -0400 Received: from mail-ed1-x532.google.com ([2a00:1450:4864:20::532]:33482) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn1-0008GH-3I for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:13 -0400 Received: by mail-ed1-x532.google.com with SMTP id eb14so9128920edb.0 for ; Thu, 08 Jul 2021 08:18:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=JqEuc5zmp5KYtSggRUy7NvqNM22I5C+WX9l/rIcbs+I=; b=c64I9UAs0/ezkFsKYx4rM9efBlpol8rL7Nuv+1XWp7NQCv3KtL//dyn1Z3l4vr5lmK F8Mak1wWmoi4mYDPfJ3scEB4utdpjv78mMd0oukPoMXNsk5fOvzZ9DYXGYHMVpUAwOJ+ v6oPuu4bYK4qwQC7ZfqL2HGRJberAJIjeP9jwgTxBSMW47uepRG39jSU0SGCCrBGkEXD S0rpVf4aOXpHzApeRJAkv9b1s0tlWGv/SsicXL1gvo/wvRq75GRgLmljMx6x6St0Y/rn WniX5oJo5vnVbpRN4ivvOE/7HBZ97yNsNtSgzsKap/i1wKE/V43DxSk5DDsnoerLCgR6 ENow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=JqEuc5zmp5KYtSggRUy7NvqNM22I5C+WX9l/rIcbs+I=; b=tgcJXq6viUVcWFtoK/HNSiR9emJtdIetge2vEVo7R2dDskp6N5J7NYiEcr2eW43KKM rylzvVwKMyWBL/M5Je/4XINGEuY45b1FMnqwjfJvPn2JUwJjgtNadbgbwejOa0n1X1lR H8Vl0o0cU43kZnI5VUs/68Ytg57c1VKE7HN1aHRzDbvFXKCSzYC5ni90K5UbLOrokVG1 Oo3b0qZNM3stYMVV76dRP6aa1thz8zLfbNKoSc2ilkin1bG8ERLBnDXWfr2KXsRZzmq/ kRSl+HLXCuXLBaZTgnNDi5Zz+P3z9lbR6z1vzneV/97+nMj9lkT3gagjaqyHqtI3TxPX orgQ== X-Gm-Message-State: AOAM530NFV2hoH6QcBfqe0Yrcz07pad+8uHnWLMcXgBXkCNSKh2iEAfR adJQMUeO+XQrjyLmCWBureWVekHy3lY= X-Google-Smtp-Source: ABdhPJxdjP+a+sOdFNDDOd0yNXjBUTDjOVZkrfpUrIO5wlSP7TLVeEyM0te7JU+3aR7+0uqM1bH9Wg== X-Received: by 2002:a05:6402:152:: with SMTP id s18mr38589720edu.221.1625757489827; Thu, 08 Jul 2021 08:18:09 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:09 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 28/48] modules: hook up modules.h to docs build Date: Thu, 8 Jul 2021 17:17:28 +0200 Message-Id: <20210708151748.408754-29-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::532; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x532.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Paolo Bonzini Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-25-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- docs/devel/index.rst | 1 + docs/devel/modules.rst | 5 +++++ 2 files changed, 6 insertions(+) create mode 100644 docs/devel/modules.rst diff --git a/docs/devel/index.rst b/docs/devel/index.rst index 977c3893bd..ba90badbbd 100644 --- a/docs/devel/index.rst +++ b/docs/devel/index.rst @@ -41,6 +41,7 @@ Contents: s390-dasd-ipl clocks qom + modules block-coroutine-wrapper multi-process ebpf_rss diff --git a/docs/devel/modules.rst b/docs/devel/modules.rst new file mode 100644 index 0000000000..066f347b89 --- /dev/null +++ b/docs/devel/modules.rst @@ -0,0 +1,5 @@ +============ +Qemu modules +============ + +.. kernel-doc:: include/qemu/module.h From patchwork Thu Jul 8 15:17:29 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365365 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 54450C07E96 for ; Thu, 8 Jul 2021 15:33:06 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1B70F616ED for ; Thu, 8 Jul 2021 15:33:06 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1B70F616ED Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:38924 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W1R-0005Be-9I for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:33:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53854) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn3-0000oV-TL for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:14 -0400 Received: from mail-ej1-x62a.google.com ([2a00:1450:4864:20::62a]:37570) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn2-0008GT-3o for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:13 -0400 Received: by mail-ej1-x62a.google.com with SMTP id i20so10270510ejw.4 for ; Thu, 08 Jul 2021 08:18:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=LrFShy5YL4Zt4HH2dLprVR6GRKxZLbywCDTtxink+tc=; b=sw9q2G1Nk3VQNL0BV8UXaoq402+tSA5RXhyDl0i4XTVPzdS2teJe7qU6BkeDfGJMnl RbuUIZdLEaDc0Y6gMypR4kNADnDBtZDkLdAVeoEaUkxhBMfXdu7Zwo2/brzKUaPkb3+1 Wc9LZSImGutc9B+pArGLzcrDGWftE3abCjCbmtcSu0zJmrB6MqaZh8UGSpt8V2UL+Aca 2CTfk7cnKSjAh/qHBXcC3lGjE6eLdYtTRr+PlmlEFy+Qgp8ujoBr1jgqwQ4g/MqPC1ZU zE3OUsTfn7Bop4KtCqcUfeE3TIL0dll7WFiAk4YL1o6krg/PUNUrSzpBCW+oGLS3IiLA rNYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=LrFShy5YL4Zt4HH2dLprVR6GRKxZLbywCDTtxink+tc=; b=jEAuahQviBmUlUY+a6RLSJK1BmZnJQNAqZpfYndG/sLylEarpayO7+HnaIbP2BRuWl uLQDwOp+TtARPwc/8gUm3RRS/1ncieSR3/IIZm3ZH6sJYLPjWWDJLCDIYscKbk0CGX0/ lkTJVwJ2+iL56JqjKkOlpQp971c+pt8Is3SSf9QEWx9/UfSt1Ggn5FYXpeVssQz38j4i aduy+IKR1U5tM0uFP2mkzgeBK+HJqzPER/E5A6/Y+W72ylIxOwm01sjdcmLnTTPVMjtE vrA2ccg7mfm1v8Z/7u045cp9n+eU2BNVv9SU/LKA8UTEq6kbZ+xsWfHCQpr3b0hZLwte rHUg== X-Gm-Message-State: AOAM531kZ6zlZGcq4+SrDg5iISwYiELCH3NYEcP8/WM+kYYyi/Uz37V5 K2aPxZowUcdw7JCuQJrES5ECflqMp6g= X-Google-Smtp-Source: ABdhPJz05d7oJybw2MfFdeF3P4msRpYhORzyI0AN36gKChw4InL230oL/iYj0QK/FyuY7H/75DwuPQ== X-Received: by 2002:a17:906:33d0:: with SMTP id w16mr12652052eja.376.1625757490546; Thu, 08 Jul 2021 08:18:10 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:10 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 29/48] accel: autoload modules Date: Thu, 8 Jul 2021 17:17:29 +0200 Message-Id: <20210708151748.408754-30-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62a; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62a.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Call module_object_class_by_name() instead of object_class_by_name() for objects possibly implemented as module Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-26-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- accel/accel-common.c | 2 +- accel/accel-softmmu.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/accel/accel-common.c b/accel/accel-common.c index cf07f78421..7b8ec7e0f7 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -44,7 +44,7 @@ static const TypeInfo accel_type = { AccelClass *accel_find(const char *opt_name) { char *class_name = g_strdup_printf(ACCEL_CLASS_NAME("%s"), opt_name); - AccelClass *ac = ACCEL_CLASS(object_class_by_name(class_name)); + AccelClass *ac = ACCEL_CLASS(module_object_class_by_name(class_name)); g_free(class_name); return ac; } diff --git a/accel/accel-softmmu.c b/accel/accel-softmmu.c index 50fa5acaa4..67276e4f52 100644 --- a/accel/accel-softmmu.c +++ b/accel/accel-softmmu.c @@ -72,7 +72,7 @@ void accel_init_ops_interfaces(AccelClass *ac) g_assert(ac_name != NULL); ops_name = g_strdup_printf("%s" ACCEL_OPS_SUFFIX, ac_name); - ops = ACCEL_OPS_CLASS(object_class_by_name(ops_name)); + ops = ACCEL_OPS_CLASS(module_object_class_by_name(ops_name)); g_free(ops_name); /* From patchwork Thu Jul 8 15:17:30 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365363 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 50DADC07E96 for ; Thu, 8 Jul 2021 15:32:59 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 15840616ED for ; Thu, 8 Jul 2021 15:32:59 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 15840616ED Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:38568 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W1K-0004wT-AL for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:32:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53884) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn4-0000q6-Dg for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:14 -0400 Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]:34717) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn2-0008HD-OW for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:14 -0400 Received: by mail-ej1-x630.google.com with SMTP id hr1so10294588ejc.1 for ; Thu, 08 Jul 2021 08:18:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nNGnJnD3QeRZyYdbo3TMoUQpP53buDDPXAAEcnsV4cs=; b=kJ/OdwC/U9EhE4Oc1loJ44wAFUdJZDIZBpC1VindBRob/HspoUgZnQwng5oOoXeu2k Ls4NV546UF9IdAulM7N6VqQsTCufqAOVvgwRQMyTRU+ijAoRE5V60lJgCTW/8yJ4fAjN W3p2jmMNQTlepfIIZdzDKVSoAHSDA0WBbNb2yDvUzvdheytCgLGK+FaqBoAbfwuNX874 B+QkaLgOx5hU8Z3OZUTzzwbhiaowhFG5aBo3v1zgRCTr5etrd82S1mgAzQ5IpcYkKKsb skxnmLBm8ULFlWinOfZa7jh1uKLosi0Ze9FMNIhxwMhUjjqXia0dQE5XJJld4fhBcyb3 rpuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=nNGnJnD3QeRZyYdbo3TMoUQpP53buDDPXAAEcnsV4cs=; b=SH9e+izCrBPPpy5kk1oQSFi1NkdckHF3bZgEvO61lLs+lUiW3vf3L9aCOXEWZbrsVC JsRFvjJHcbhVy2A+uHcn8hkjOlDYRBp3L/bwu8AV/KmFkgNGEFKYmmkmwgO29M1bQoxF d1BkZnlGFKd5oLCzBRn4rER9DItL/DzQoSgI8suSUZsLZf5JqKjk95LnsBD7Lapq6h2B OX6BvIypwTMxtOBv0cCoxlubHOQzfeaMS0OW4VmtMnDcFECX8b+wVv3MnIl2JJA9W7E6 x1ZC6RaIMW8I+7Nuj6ea7y647xmSZmzt81K0aP/8Kf8txxLy5JWujXO/3G8mf4hJm4ry 1k2g== X-Gm-Message-State: AOAM533eUkf2fS4AuMVz7opxzVWypivnlPo7LOuowI9tgJ1mMe9fbzMG 9V83NnP8sGrZ0/whBQeqrodxgpQWJpM= X-Google-Smtp-Source: ABdhPJw9NcSvCGMdvPnmlFJ4RctzKye1Q+XynxK0+gpcG/enSua6nMyMxMnuWfwr5hpCtMc2J8eiwg== X-Received: by 2002:a17:906:1344:: with SMTP id x4mr31838480ejb.44.1625757491226; Thu, 08 Jul 2021 08:18:11 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:10 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 30/48] accel: add qtest module annotations Date: Thu, 8 Jul 2021 17:17:30 +0200 Message-Id: <20210708151748.408754-31-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::630; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x630.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Add module annotations for qtest so autoloading works. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-27-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- accel/qtest/qtest.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/accel/qtest/qtest.c b/accel/qtest/qtest.c index edb29f6fa4..7e6b8110d5 100644 --- a/accel/qtest/qtest.c +++ b/accel/qtest/qtest.c @@ -45,6 +45,7 @@ static const TypeInfo qtest_accel_type = { .parent = TYPE_ACCEL, .class_init = qtest_accel_class_init, }; +module_obj(TYPE_QTEST_ACCEL); static void qtest_accel_ops_class_init(ObjectClass *oc, void *data) { @@ -61,6 +62,7 @@ static const TypeInfo qtest_accel_ops_type = { .class_init = qtest_accel_ops_class_init, .abstract = true, }; +module_obj(ACCEL_OPS_NAME("qtest")); static void qtest_type_init(void) { From patchwork Thu Jul 8 15:17:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365371 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3DEA1C07E96 for ; Thu, 8 Jul 2021 15:35:07 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D1B236146D for ; Thu, 8 Jul 2021 15:35:06 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D1B236146D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:47272 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W3O-0002Hz-16 for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:35:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53896) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn5-0000tA-1s for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:15 -0400 Received: from mail-ed1-x529.google.com ([2a00:1450:4864:20::529]:33474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn3-0008HP-8g for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:14 -0400 Received: by mail-ed1-x529.google.com with SMTP id eb14so9129097edb.0 for ; Thu, 08 Jul 2021 08:18:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=sVJGp21Z+QIPlUJGVP+8ocoZJmRoexscl21FIrVpfac=; b=BFHyju0z1D/YxB018FlA/l7e9jwBcQXcMmnTZiHAddGVu/7tocGuUxv+YsuKmruNl7 FB4FPwbu8q+W+ZR/JmkNI6gUVpUXwApQ3oTXlPe0bXrSHaR7IOtubDov/AvcIlNadcdi 5b2ZOW8bL+TVPSNw6QGAMFt1cDx71DGzRaq7rkrtPEZBwVrtnipOV1j/giBzAlrO6bZ8 pgBKyiriHvL67xbknlOzqdCbdD25MG5JbEMg7TZakl76j+Neg03uqVd9eQRLot/eUhoV Mc4DdCO57Sv/SPxRRXI3hzSjVi9KpVzB6LEtM79X+w1Eqveb4ondunI+8PsnXiVQB1eQ xzUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=sVJGp21Z+QIPlUJGVP+8ocoZJmRoexscl21FIrVpfac=; b=fupU5ouUF770n3ChUZAnBa3iS4BT1hK6RcBCNjZIF28k/B03dtQqdipI+ZJBc4/jhj vqIgBqPISrAyyG5cXGSk4L3hW3bCU2DYo8VR/Gh1fqZIXtSIZSv5Y6q5a5kmcLLPq8Tl nbn/aUjKiDOcArxg0J8XWmYGSesB9W276HlXzFv/B8conI9PEHKxi/LhaIjMGWjsnj1M gf/Stf0+EuBGW4ygHy+Rj9HYYTKAT+/irPcK7ww91KyhtQwKPeNzDx5z1qRuDWFKK3IR 52SKwlx8BtkQKqHOQOqOpfj4dZhWToByBdhBEM2LQrwcPiwr/S1Z3FhvkN0vCpWFdj3x E3SA== X-Gm-Message-State: AOAM533NAgmDPSl8jr1M4CrMLY1FqGXG4OnRB4xcQeDWKB7pGmiep2Cx WhkR1dJUCcQfte1Ba89TEHzarvTluAw= X-Google-Smtp-Source: ABdhPJx2Npho/+aftMRtDDdswRx5bEu7kKzTK0nVmrUy6yT1PIyDdociokpJRCFIcpEr5N0ra8ODfg== X-Received: by 2002:a05:6402:22e1:: with SMTP id dn1mr3139724edb.8.1625757491858; Thu, 08 Jul 2021 08:18:11 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:11 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 31/48] accel: build qtest modular Date: Thu, 8 Jul 2021 17:17:31 +0200 Message-Id: <20210708151748.408754-32-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::529; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x529.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Allow building accelerators as module. Start with qtest as first user. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-28-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- accel/qtest/meson.build | 8 ++------ meson.build | 6 ++++++ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/accel/qtest/meson.build b/accel/qtest/meson.build index a2f3276459..4c65600293 100644 --- a/accel/qtest/meson.build +++ b/accel/qtest/meson.build @@ -1,6 +1,2 @@ -qtest_ss = ss.source_set() -qtest_ss.add(files( - 'qtest.c', -)) - -specific_ss.add_all(when: ['CONFIG_SOFTMMU', 'CONFIG_POSIX'], if_true: qtest_ss) +qtest_module_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_POSIX'], + if_true: files('qtest.c')) diff --git a/meson.build b/meson.build index 7babef4de4..c943e44975 100644 --- a/meson.build +++ b/meson.build @@ -2000,6 +2000,9 @@ trace_ss = ss.source_set() user_ss = ss.source_set() util_ss = ss.source_set() +# accel modules +qtest_module_ss = ss.source_set() + modules = {} target_modules = {} hw_arch = {} @@ -2238,6 +2241,9 @@ specific_ss.add_all(when: 'CONFIG_LINUX_USER', if_true: linux_user_ss) subdir('tests/qtest/libqos') subdir('tests/qtest/fuzz') +# accel modules +target_modules += { 'accel' : { 'qtest': qtest_module_ss }} + ######################## # Library dependencies # ######################## From patchwork Thu Jul 8 15:17:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365375 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 73BAEC07E96 for ; Thu, 8 Jul 2021 15:36:11 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 31DE161483 for ; Thu, 8 Jul 2021 15:36:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 31DE161483 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:50490 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W4Q-0004U8-Bx for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:36:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53900) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn5-0000tN-4U for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:15 -0400 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]:44590) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn3-0008Hh-Mr for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:14 -0400 Received: by mail-ed1-x536.google.com with SMTP id l24so9014580edr.11 for ; Thu, 08 Jul 2021 08:18:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=TrMKWd8CSoJe9sZMNfKvzA5rEkL38qTbG6xo58jBtj4=; b=KA6mpwZH2CDXghujslXS08w0Q3br6ulcx0c8ondyLEceNmigB87BXsiLYOFFVvUBfu jwSQF9uB/FZ8ncBQA3YpLVFjo19KPo21PW1QE4GrpL/gNAAaNrHie+UKAauK4JTNBC8+ qzCOJRQWAJq0z81jGNHDKnHHM/2Aq0LeZIsD9hva+OhuUeiUWUwseUcP+fRtYe8+JLP2 WDfXZctkdWdPXjAll6n0UjfaMXPZPe+WX5LQPWVSYWfB3TXOz2aGQlnkzJTilAxvaNxr y/Ar83iSeB3XdEOWRarizW9OQHA2bsMLHrSBSY04yhFRK0S09EUztH+UafnOQprF1v/t hQVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=TrMKWd8CSoJe9sZMNfKvzA5rEkL38qTbG6xo58jBtj4=; b=OwPtWTk8yCt1YV5vOwF5F/7Qc5QHvNj8N4E/U7oRT4FhEFvoWHJlcbuhEjuxI7X7Ul QrTACZyeyTiuFj0PALmZugt4QRyGabwUg+dIfcDQuNAgeN9WpPiTeNUBUflpLqj3i/oE TWYRjnYoXB60LjvBca1/VrO4tnv0qws7nGli8tIjFBHpP5ufIk48x7KsjQtWvgK/rhrr EBcN7DZI388Jeld+d3ar/rCumbVEWdU3HEaF0QF4edLD+vr6cQyvJBnc2JzUsenA2XIV YYFQr9+JXC6JohG83+4HvQCUs3ORArMhTGUGNxwwbnjK10i9BmpWP1t9GvMQIwEwB4ef SeCw== X-Gm-Message-State: AOAM533dnFRLuCL6lF7BiacpinFMvQfdypELJgoL3CwEgtDUBFdUI1oF BnUSMuR5gMBphmZgoCRRkIOdc59GTN8= X-Google-Smtp-Source: ABdhPJwJH2lrAZ4dDsmz4eyiGFdG6UH6+FtkwdGV2kGE8oJZufZL2vZqMraBvh+0KVF2kgyDIoDCsA== X-Received: by 2002:a05:6402:2034:: with SMTP id ay20mr1348801edb.188.1625757492496; Thu, 08 Jul 2021 08:18:12 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:12 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 32/48] accel: add tcg module annotations Date: Thu, 8 Jul 2021 17:17:32 +0200 Message-Id: <20210708151748.408754-33-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::536; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x536.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Add module annotations for tcg so autoloading works. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-29-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- accel/tcg/tcg-accel-ops.c | 1 + accel/tcg/tcg-all.c | 1 + 2 files changed, 2 insertions(+) diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 7191315aee..1a8e8390bd 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -124,6 +124,7 @@ static const TypeInfo tcg_accel_ops_type = { .class_init = tcg_accel_ops_class_init, .abstract = true, }; +module_obj(ACCEL_OPS_NAME("tcg")); static void tcg_accel_ops_register_types(void) { diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index 00803f76d8..d6336a9c96 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -238,6 +238,7 @@ static const TypeInfo tcg_accel_type = { .class_init = tcg_accel_class_init, .instance_size = sizeof(TCGState), }; +module_obj(TYPE_TCG_ACCEL); static void register_accel_types(void) { From patchwork Thu Jul 8 15:17:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365373 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6F04FC07E96 for ; Thu, 8 Jul 2021 15:35:26 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3414F6146D for ; Thu, 8 Jul 2021 15:35:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3414F6146D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:47598 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W3g-0002V8-TM for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:35:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53918) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn5-0000wo-Vc for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:16 -0400 Received: from mail-ed1-x52b.google.com ([2a00:1450:4864:20::52b]:35450) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn4-0008I4-EG for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:15 -0400 Received: by mail-ed1-x52b.google.com with SMTP id t10so2957656eds.2 for ; Thu, 08 Jul 2021 08:18:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=eIukGr2J9NCvld4Y1RkmikhmY84DuLDUkpsuXTN/Hs8=; b=tDFvm1Hnv5DTO0spvl2eq34e963+eZ9Wh8rmGAplUG9Wdam8Sylzy05CD1qWhow/tx 2mbzP1QqMheWxWdBbS4aG3SQ5gCUUKpVw9FeNa/+4rwzYf3KAXGSv4lsm+uCHIovFhXw 4gkrONVbu7CepE8Z8ViKiMEwqKEGSm7qZNG+kxlcZRRP+Wb/sZHEwiZCfXNA/BNVDj/0 edVsGq+rmj/NhNMjXQ8ioMXcc/e8MprORtCy1sBlFxYL6ZxA10uBeJS2Udhg7H99NTWn rqlIwdrum/lR9Qy0exwuZtDRfJ2ZmclTrxQqxdzRfypnZoLr4xJBofzpJJqGn/1eT/UN 4gQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=eIukGr2J9NCvld4Y1RkmikhmY84DuLDUkpsuXTN/Hs8=; b=QNCgLWvqSPuBPn8Fq5BmJUh131Zkb5AUVMRCOL5+gyWpgHv9ZsGCl9/BbGMyCfE8V9 3YNXQ9QT7eipNRxqaFAgRWkMnDnjSyagRSuu2MggqDo3n1OwDVfBBiWznz25rUaMIk09 8/WZdIMKoEBdoijLtGqfwGecfPP/+x6TXsD1GEN2csQokPW708bcV2PtB5TG3FG/IHYK EWqaRfgXc0GBUY4lCF1MU2gwf/EU885inQgvDi9YzyfdYxbAq7BWYO0dAC4eWm2klzht aLnTmrHEUPQZDMel1lZ/4gqdIRuEFGngVGfhhN2ppKBAaH7dgOUvdx1PEwLsMCebTnDm 8FOQ== X-Gm-Message-State: AOAM531hhjkyghifUZwTn1WCbiRr93nRM9GFJYvkH5mXC82td1+2DFTm GOCN+bwnRiPCD0MFUgjZc/U5dJF+IYo= X-Google-Smtp-Source: ABdhPJwAtTmYGM4CFz9xfDa6ujy5NcuMY8suN5kggx4BvWyx2Mv/Azsynw/AZnhJspxwQxZ9VsV01Q== X-Received: by 2002:aa7:da0c:: with SMTP id r12mr34368664eds.49.1625757493233; Thu, 08 Jul 2021 08:18:13 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:12 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 33/48] accel: build tcg modular Date: Thu, 8 Jul 2021 17:17:33 +0200 Message-Id: <20210708151748.408754-34-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::52b; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x52b.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Build tcg accel ops as module. Which is only a small fraction of tcg. Also only x86 for now. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-30-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- accel/tcg/meson.build | 5 ++++- meson.build | 14 +++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/accel/tcg/meson.build b/accel/tcg/meson.build index 1236ac7b91..0ae9180282 100644 --- a/accel/tcg/meson.build +++ b/accel/tcg/meson.build @@ -15,8 +15,11 @@ specific_ss.add_all(when: 'CONFIG_TCG', if_true: tcg_ss) specific_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: files( 'cputlb.c', +)) + +tcg_module_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: files( 'tcg-accel-ops.c', 'tcg-accel-ops-mttcg.c', 'tcg-accel-ops-icount.c', - 'tcg-accel-ops-rr.c' + 'tcg-accel-ops-rr.c', )) diff --git a/meson.build b/meson.build index c943e44975..d9aa2d7820 100644 --- a/meson.build +++ b/meson.build @@ -92,6 +92,8 @@ if cpu in ['x86', 'x86_64'] } endif +modular_tcg = ['i386-softmmu', 'x86_64-softmmu'] + edk2_targets = [ 'arm-softmmu', 'aarch64-softmmu', 'i386-softmmu', 'x86_64-softmmu' ] install_edk2_blobs = false if get_option('install_blobs') @@ -1531,6 +1533,11 @@ foreach target : target_dirs elif sym == 'CONFIG_XEN' and have_xen_pci_passthrough config_target += { 'CONFIG_XEN_PCI_PASSTHROUGH': 'y' } endif + if target in modular_tcg + config_target += { 'CONFIG_TCG_MODULAR': 'y' } + else + config_target += { 'CONFIG_TCG_BUILTIN': 'y' } + endif accel_kconfig += [ sym + '=y' ] endif endforeach @@ -2002,6 +2009,7 @@ util_ss = ss.source_set() # accel modules qtest_module_ss = ss.source_set() +tcg_module_ss = ss.source_set() modules = {} target_modules = {} @@ -2242,7 +2250,11 @@ subdir('tests/qtest/libqos') subdir('tests/qtest/fuzz') # accel modules -target_modules += { 'accel' : { 'qtest': qtest_module_ss }} +tcg_real_module_ss = ss.source_set() +tcg_real_module_ss.add_all(when: 'CONFIG_TCG_MODULAR', if_true: tcg_module_ss) +specific_ss.add_all(when: 'CONFIG_TCG_BUILTIN', if_true: tcg_module_ss) +target_modules += { 'accel' : { 'qtest': qtest_module_ss, + 'tcg': tcg_real_module_ss }} ######################## # Library dependencies # From patchwork Thu Jul 8 15:17:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365381 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 845D6C07E96 for ; Thu, 8 Jul 2021 15:37:47 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3C0E361483 for ; Thu, 8 Jul 2021 15:37:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3C0E361483 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:56306 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W5y-0008PV-Dc for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:37:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53930) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn6-000109-Ob for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:16 -0400 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]:38562) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn5-0008IO-7n for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:16 -0400 Received: by mail-ed1-x536.google.com with SMTP id x12so9050889eds.5 for ; Thu, 08 Jul 2021 08:18:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=wgLR4BFruCvCVVrS0V66nKDVCDgtz515OctKa1CFYC4=; b=GY+4Oi36mO/zFZIjfsMajywuuvuBKLQABqjqM46GxQ/zaPFijRUjnRBvALtIyvd3Iu bH8ao85PYg8s9SpYbhfKhSglIwWt31RexVyR4juonp8lk1ziGWks+ky4sIAUe04jT1sX RTazKAgizVaXg3UOJbkEqDVHlJjndohFFe5Hjh2Ef22kVAe6xtnQZiluSy5TmoOWLEU2 sh6DQf1oXVVvWSIo19jkplUeld/ypeS0eYk1JqeLRonjSGx+Z9vc/JVjCB0wNGMLzOcN JOCUfqsUS9BuBNF8V4sncNMkR5IqdY+VJM9aR38udm7JYXpt+20MnBjgceysv9vB/mz7 89TQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=wgLR4BFruCvCVVrS0V66nKDVCDgtz515OctKa1CFYC4=; b=ELsi1ZSjZKZq2eK+cvEVPObLdaEN60+Qlzq9RAxr4w71sJnZQ0PUEmS0Zuzmh1w8Cw DmGqkUiRHKBW6H1syGyCbHM1D34Wk8ryr7c5zn0eTGTzehVU3PYN5B9B3UT1ISnZg2ND m50rZhNwDi1fWLe/hizQc5e1hmI6erL9fSBohDmspeY1f+19ftJoW1BnuWnWEOck2LQu 5IITOFD8OKTGzD3OXXZUljUdwCLkqIJg+dMVuN+S6/oRMUyIZdenxB0HKFH/Kj1kRXZq zF19BnO+iIBWoyAMF2L79qGh0dW6PWehCU5zetjlQK3gGaSTkXeE6gAC6e1pSAcEMUIj K06g== X-Gm-Message-State: AOAM533zJbCil6WGzfdD4TrVMAYqmAYFG0UhBujwn5XKLj8SDFrkLVAh 1X8/zsFPZYAJILhLpuGUe9PxUqR5nRo= X-Google-Smtp-Source: ABdhPJxbEfT/ljzWFg8xIQfOrkuIjHDloOgNAoOHvHNtMGoE/IRJPWKd06WKVOXb/R53YIuCSQZ0jQ== X-Received: by 2002:a50:c88b:: with SMTP id d11mr2371136edh.318.1625757494055; Thu, 08 Jul 2021 08:18:14 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:13 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 34/48] monitor: allow register hmp commands Date: Thu, 8 Jul 2021 17:17:34 +0200 Message-Id: <20210708151748.408754-35-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::536; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x536.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Allow commands having a NULL cmd pointer, add a function to set the pointer later. Use case: allow modules implement hmp commands. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-31-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- include/monitor/monitor.h | 3 +++ monitor/hmp.c | 7 +++++++ monitor/misc.c | 16 ++++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h index 1211d6e6d6..1a8a369b50 100644 --- a/include/monitor/monitor.h +++ b/include/monitor/monitor.h @@ -51,4 +51,7 @@ int monitor_fdset_dup_fd_add(int64_t fdset_id, int flags); void monitor_fdset_dup_fd_remove(int dup_fd); int64_t monitor_fdset_dup_fd_find(int dup_fd); +void monitor_register_hmp(const char *name, bool info, + void (*cmd)(Monitor *mon, const QDict *qdict)); + #endif /* MONITOR_H */ diff --git a/monitor/hmp.c b/monitor/hmp.c index 6c0b33a0b1..d50c3124e1 100644 --- a/monitor/hmp.c +++ b/monitor/hmp.c @@ -1089,6 +1089,13 @@ void handle_hmp_command(MonitorHMP *mon, const char *cmdline) return; } + if (!cmd->cmd) { + /* FIXME: is it useful to try autoload modules here ??? */ + monitor_printf(&mon->common, "Command \"%.*s\" is not available.\n", + (int)(cmdline - cmd_start), cmd_start); + return; + } + qdict = monitor_parse_arguments(&mon->common, &cmdline, cmd); if (!qdict) { while (cmdline > cmd_start && qemu_isspace(cmdline[-1])) { diff --git a/monitor/misc.c b/monitor/misc.c index 1539e18557..ad476c6e51 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -1974,6 +1974,22 @@ static void sortcmdlist(void) compare_mon_cmd); } +void monitor_register_hmp(const char *name, bool info, + void (*cmd)(Monitor *mon, const QDict *qdict)) +{ + HMPCommand *table = info ? hmp_info_cmds : hmp_cmds; + + while (table->name != NULL) { + if (strcmp(table->name, name) == 0) { + g_assert(table->cmd == NULL); + table->cmd = cmd; + return; + } + table++; + } + g_assert_not_reached(); +} + void monitor_init_globals(void) { monitor_init_globals_core(); From patchwork Thu Jul 8 15:17:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365391 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 77C9AC07E99 for ; Thu, 8 Jul 2021 15:40:37 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 17C45616E8 for ; Thu, 8 Jul 2021 15:40:37 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 17C45616E8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:36860 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W8i-0005rO-8g for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:40:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53946) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn7-00012U-K7 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:17 -0400 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:44586) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn5-0008JB-Uu for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:17 -0400 Received: by mail-ed1-x531.google.com with SMTP id l24so9014761edr.11 for ; Thu, 08 Jul 2021 08:18:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=K7PuuCBvtlN45vecpFtrMHdXAgGZfGszCYtMSUbfSOA=; b=Us2bXDjJEplUjBjlaXThSBpNVpQtjlGlUdDchQ4Kf+vfO+hL53BurpBov/byuxziZZ pavdJyQc7ECzRQCzJnYY8RRtki9YGS3XNbzks31i/k8IVD7Ng8BTWqqfOyLhrFUFOJzk GoF3Y8T7n8sy3DF2q9vIHn9QvbU4TTxMDclZs6pUTb2yOlzKNneCMP9BJkA7E1BwRRzn Zkn/LTwSihKxgbFwSoIB+XQQ4QNjiGhkILqq8mfyX2PPDxeqtx6K4hkLszRe7RS7J8Yc wFsnNxbKCI0n0U4gNF6izc79YE+ECIVnW+MVj4x5FSATdRHm8mZXuPlCxMDF6z8rcTeX EgDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=K7PuuCBvtlN45vecpFtrMHdXAgGZfGszCYtMSUbfSOA=; b=XurYVolpfmr+AXCuzK9gVLQVWZPOoXFkB73JBAZfgaUOVuV2VsdfyjGp8i8zcKkfsW lGNe8wTqeVe3gOCFSHhgz/GzLU3dBTy8kpgWl1koziOskLCncujH/dkmLD3ivshq6FKj UQTPwEgVcO5U5eilFVyn89IDWhXagh/uZ6jQmOnn5FEGIssn3jav8AGjLhKcaXDEEY5k KIbGYkHVC27tdxlVbwnmwmYtR1o73GxEalm2+jEJRdGnIFj/MOxGhGJu5DA1Z3C79Zhn rooASeavLecQknKk3CfnxXns++Ys2wqEP99T1KABPd4EdVy/LY+G0gLTwf0BX/0C+7jx qQ4w== X-Gm-Message-State: AOAM532tynkhgT7cNQhVPcQcNdxH21L8c6SAJDrTM3W4PU1u5xkd7zt8 RJnRz/H1bat2Eaq+09UfjbfAFXdoUJc= X-Google-Smtp-Source: ABdhPJy3frLIqt/PJmxdduUg4gWuk5R4GS5ZL3j2IwRWLqqD4ejwuB4lMM7rTWgXrpcBYT6qL5skhw== X-Received: by 2002:a05:6402:4311:: with SMTP id m17mr20312215edc.346.1625757494766; Thu, 08 Jul 2021 08:18:14 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:14 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 35/48] usb: drop usb_host_dev_is_scsi_storage hook Date: Thu, 8 Jul 2021 17:17:35 +0200 Message-Id: <20210708151748.408754-36-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::531; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x531.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Jose R . Ziviani" , Gerd Hoffmann , David Gibson Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Introduce an usb device flag instead, set it when usb-host looks at the device descriptors anyway. Also set it for emulated storage devices, for consistency. Add an inline helper function to check the flag. Signed-off-by: Gerd Hoffmann Acked-by: David Gibson Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-32-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/ppc/spapr.c | 2 +- hw/usb/dev-storage-bot.c | 1 + hw/usb/dev-storage-classic.c | 1 + hw/usb/dev-uas.c | 1 + hw/usb/host-libusb.c | 36 +++++++----------------------------- hw/usb/host-stub.c | 5 ----- include/hw/usb.h | 7 ++++++- 7 files changed, 17 insertions(+), 36 deletions(-) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index 4dd90b75cc..f83a081af0 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -3106,7 +3106,7 @@ static char *spapr_get_fw_dev_path(FWPathProvider *p, BusState *bus, */ if (strcmp("usb-host", qdev_fw_name(dev)) == 0) { USBDevice *usbdev = CAST(USBDevice, dev, TYPE_USB_DEVICE); - if (usb_host_dev_is_scsi_storage(usbdev)) { + if (usb_device_is_scsi_storage(usbdev)) { return g_strdup_printf("storage@%s/disk", usbdev->port->path); } } diff --git a/hw/usb/dev-storage-bot.c b/hw/usb/dev-storage-bot.c index 6aad026d11..68ebaca10c 100644 --- a/hw/usb/dev-storage-bot.c +++ b/hw/usb/dev-storage-bot.c @@ -32,6 +32,7 @@ static void usb_msd_bot_realize(USBDevice *dev, Error **errp) usb_desc_create_serial(dev); usb_desc_init(dev); + dev->flags |= (1 << USB_DEV_FLAG_IS_SCSI_STORAGE); if (d->hotplugged) { s->dev.auto_attach = 0; } diff --git a/hw/usb/dev-storage-classic.c b/hw/usb/dev-storage-classic.c index 00cb34b22f..3d017a4e67 100644 --- a/hw/usb/dev-storage-classic.c +++ b/hw/usb/dev-storage-classic.c @@ -64,6 +64,7 @@ static void usb_msd_storage_realize(USBDevice *dev, Error **errp) usb_desc_create_serial(dev); usb_desc_init(dev); + dev->flags |= (1 << USB_DEV_FLAG_IS_SCSI_STORAGE); scsi_bus_new(&s->bus, sizeof(s->bus), DEVICE(dev), &usb_msd_scsi_info_storage, NULL); scsi_dev = scsi_bus_legacy_add_drive(&s->bus, blk, 0, !!s->removable, diff --git a/hw/usb/dev-uas.c b/hw/usb/dev-uas.c index d2bd85d3f6..263056231c 100644 --- a/hw/usb/dev-uas.c +++ b/hw/usb/dev-uas.c @@ -926,6 +926,7 @@ static void usb_uas_realize(USBDevice *dev, Error **errp) QTAILQ_INIT(&uas->requests); uas->status_bh = qemu_bh_new(usb_uas_send_status_bh, uas); + dev->flags |= (1 << USB_DEV_FLAG_IS_SCSI_STORAGE); scsi_bus_new(&uas->bus, sizeof(uas->bus), DEVICE(dev), &usb_uas_scsi_info, NULL); } diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c index 2518306f52..e6d21aa8e1 100644 --- a/hw/usb/host-libusb.c +++ b/hw/usb/host-libusb.c @@ -770,6 +770,13 @@ static void usb_host_speed_compat(USBHostDevice *s) for (i = 0; i < conf->bNumInterfaces; i++) { for (a = 0; a < conf->interface[i].num_altsetting; a++) { intf = &conf->interface[i].altsetting[a]; + + if (intf->bInterfaceClass == LIBUSB_CLASS_MASS_STORAGE && + intf->bInterfaceSubClass == 6) { /* SCSI */ + udev->flags |= (1 << USB_DEV_FLAG_IS_SCSI_STORAGE); + break; + } + for (e = 0; e < intf->bNumEndpoints; e++) { endp = &intf->endpoint[e]; type = endp->bmAttributes & 0x3; @@ -1893,35 +1900,6 @@ static void usb_host_auto_check(void *unused) timer_mod(usb_auto_timer, qemu_clock_get_ms(QEMU_CLOCK_REALTIME) + 2000); } -/** - * Check whether USB host device has a USB mass storage SCSI interface - */ -bool usb_host_dev_is_scsi_storage(USBDevice *ud) -{ - USBHostDevice *uhd = USB_HOST_DEVICE(ud); - struct libusb_config_descriptor *conf; - const struct libusb_interface_descriptor *intf; - bool is_scsi_storage = false; - int i; - - if (!uhd || libusb_get_active_config_descriptor(uhd->dev, &conf) != 0) { - return false; - } - - for (i = 0; i < conf->bNumInterfaces; i++) { - intf = &conf->interface[i].altsetting[ud->altsetting[i]]; - if (intf->bInterfaceClass == LIBUSB_CLASS_MASS_STORAGE && - intf->bInterfaceSubClass == 6) { /* 6 means SCSI */ - is_scsi_storage = true; - break; - } - } - - libusb_free_config_descriptor(conf); - - return is_scsi_storage; -} - void hmp_info_usbhost(Monitor *mon, const QDict *qdict) { libusb_device **devs = NULL; diff --git a/hw/usb/host-stub.c b/hw/usb/host-stub.c index 80809ceba5..bbe69baa39 100644 --- a/hw/usb/host-stub.c +++ b/hw/usb/host-stub.c @@ -38,8 +38,3 @@ void hmp_info_usbhost(Monitor *mon, const QDict *qdict) { monitor_printf(mon, "USB host devices not supported\n"); } - -bool usb_host_dev_is_scsi_storage(USBDevice *ud) -{ - return false; -} diff --git a/include/hw/usb.h b/include/hw/usb.h index 436e07b304..33668dd0a9 100644 --- a/include/hw/usb.h +++ b/include/hw/usb.h @@ -219,6 +219,7 @@ enum USBDeviceFlags { USB_DEV_FLAG_IS_HOST, USB_DEV_FLAG_MSOS_DESC_ENABLE, USB_DEV_FLAG_MSOS_DESC_IN_USE, + USB_DEV_FLAG_IS_SCSI_STORAGE, }; /* definition of a USB device */ @@ -465,7 +466,6 @@ void usb_generic_async_ctrl_complete(USBDevice *s, USBPacket *p); /* usb-linux.c */ void hmp_info_usbhost(Monitor *mon, const QDict *qdict); -bool usb_host_dev_is_scsi_storage(USBDevice *usbdev); /* usb ports of the VM */ @@ -561,6 +561,11 @@ const char *usb_device_get_product_desc(USBDevice *dev); const USBDesc *usb_device_get_usb_desc(USBDevice *dev); +static inline bool usb_device_is_scsi_storage(USBDevice *dev) +{ + return dev->flags & (1 << USB_DEV_FLAG_IS_SCSI_STORAGE); +} + /* quirks.c */ /* In bulk endpoints are streaming data sources (iow behave like isoc eps) */ From patchwork Thu Jul 8 15:17:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365385 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A7886C07E96 for ; Thu, 8 Jul 2021 15:38:51 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4266361921 for ; Thu, 8 Jul 2021 15:38:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4266361921 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:59096 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W70-0001pz-Cb for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:38:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53958) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn8-00013n-AI for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:18 -0400 Received: from mail-ed1-x531.google.com ([2a00:1450:4864:20::531]:43817) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn6-0008JW-Jp for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:18 -0400 Received: by mail-ed1-x531.google.com with SMTP id l26so697311eda.10 for ; Thu, 08 Jul 2021 08:18:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=vZAFESqTdkYezGqCbtMQriK+nCzesgpD199t9Ohb64U=; b=dxxYauWc2MzvrYPbN7lRsT6LET5eo6Y7HtV+X78vI+IU0cE2SNPLDeCoHW3Po/ywgG ahqZMV5oH86CJGjF2ivsG9m9p/smIvZbYFyRgPOiuxbBoaYZ1HqO9h04+bXMNEZIOfQA dQPhu9SM4WYBS4dfdiwGR9oa10o92Jl06GJz/beHzcSv6z4eMFNGbpYkqhdxejBpBvCg xYYaDhC7RL2qoLbjVayb4VWP6ifGpiGoFwbUvkS+WG9/eafhQ4V8tRoiSLBVLXhs9EjU sie6Y4NBP6U1j1CUmXWXqSlbuLBMhTikTbSrFQm6HhxM0Gf8KsLupT18P66lMVgwoH6q y5sA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=vZAFESqTdkYezGqCbtMQriK+nCzesgpD199t9Ohb64U=; b=feMFpzSmEFniiT2dcwZEnvChRnGMKNusvt5FZFPAXCQ+3BIdUhD/0EUPvJ69TpjwpA BJTK/3DvB67zb6Gi8sFp0r5WhENHf0CiV3LZoPl9OB4ziND9dRH+mgaI7v2TL4U6Q6Yw xEJiD2lH/J2VBd3hdqboqEt+0QIIFcptNgBSb3iVuPGRiiCfM1NAhy/xz3238GiHTsCZ IqAII7saxRv10a906WjmSEAIDzsMDvx59xh/SN7aMetqvkmmytfKiw5qkeX0c7lU81yh Xvm/wOF8C5kwaAPODmPEbx/F8WE+fiFLcQPXckqQ2vViJtwZCEvMA3kgOVcNPzMNlCCR DLTA== X-Gm-Message-State: AOAM532RL2LHF/XeWOL0hpVurdrN7xN0LjyTkJXOWU5G/oUcISZVFhfA 3VQru/CQNDc16M6Psag8glge6ck8k+k= X-Google-Smtp-Source: ABdhPJwg4nGv9AuJupMKG4HzQQHQR1CjlmFyb0u469Pa2uJdTJDVE4FovnWKfdRQ5VM64MNha7kihw== X-Received: by 2002:a05:6402:28b6:: with SMTP id eg54mr13061348edb.216.1625757495457; Thu, 08 Jul 2021 08:18:15 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:15 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 36/48] monitor/usb: register 'info usbhost' dynamically Date: Thu, 8 Jul 2021 17:17:36 +0200 Message-Id: <20210708151748.408754-37-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::531; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x531.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-33-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hmp-commands-info.hx | 1 - hw/usb/host-libusb.c | 1 + hw/usb/host-stub.c | 40 ---------------------------------------- hw/usb/meson.build | 4 +--- 4 files changed, 2 insertions(+), 44 deletions(-) delete mode 100644 hw/usb/host-stub.c diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx index fb59c27200..ce42aef47a 100644 --- a/hmp-commands-info.hx +++ b/hmp-commands-info.hx @@ -368,7 +368,6 @@ ERST .args_type = "", .params = "", .help = "show host USB devices", - .cmd = hmp_info_usbhost, }, SRST diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c index e6d21aa8e1..2b7f87872c 100644 --- a/hw/usb/host-libusb.c +++ b/hw/usb/host-libusb.c @@ -1781,6 +1781,7 @@ static TypeInfo usb_host_dev_info = { static void usb_host_register_types(void) { type_register_static(&usb_host_dev_info); + monitor_register_hmp("usbhost", true, hmp_info_usbhost); } type_init(usb_host_register_types) diff --git a/hw/usb/host-stub.c b/hw/usb/host-stub.c deleted file mode 100644 index bbe69baa39..0000000000 --- a/hw/usb/host-stub.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Stub host USB redirector - * - * Copyright (c) 2005 Fabrice Bellard - * - * Copyright (c) 2008 Max Krasnyansky - * Support for host device auto connect & disconnect - * Major rewrite to support fully async operation - * - * Copyright 2008 TJ - * Added flexible support for /dev/bus/usb /sys/bus/usb/devices in addition - * to the legacy /proc/bus/usb USB device discovery and handling - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#include "qemu/osdep.h" -#include "hw/usb.h" -#include "monitor/monitor.h" - -void hmp_info_usbhost(Monitor *mon, const QDict *qdict) -{ - monitor_printf(mon, "USB host devices not supported\n"); -} diff --git a/hw/usb/meson.build b/hw/usb/meson.build index 4f24b5274d..817f3e027a 100644 --- a/hw/usb/meson.build +++ b/hw/usb/meson.build @@ -73,9 +73,7 @@ endif # usb pass-through softmmu_ss.add(when: ['CONFIG_USB', libusb], - if_true: files('host-libusb.c'), - if_false: files('host-stub.c')) -softmmu_ss.add(when: 'CONFIG_ALL', if_true: files('host-stub.c')) + if_true: files('host-libusb.c')) softmmu_ss.add(when: ['CONFIG_USB', 'CONFIG_XEN', libusb], if_true: files('xen-usb.c')) From patchwork Thu Jul 8 15:17:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365393 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 99A9AC07E9E for ; Thu, 8 Jul 2021 15:41:25 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 686A161925 for ; Thu, 8 Jul 2021 15:41:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 686A161925 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:39580 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W9U-0007eA-IJ for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:41:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53962) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1Vn8-00015z-Qp for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:18 -0400 Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]:37566) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn7-0008Jg-Cl for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:18 -0400 Received: by mail-ed1-x52c.google.com with SMTP id cy23so4052291edb.4 for ; Thu, 08 Jul 2021 08:18:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=L3WS8q1FKt0S8fSgGeOLlB2ULRlzE4+4YoYMx1LxXzE=; b=s2zF6YqJ88xlAULHeCZMYoETOS04lI5e62pWuMqMTiyxuPzff5sSaYKhhRcXFozQz4 s2yBm8lrvEb+RX96sFUwwHh/DypmQ3ajxIfJQB6QldXiXiQXqe5YdPAW5xiLidCaNe2+ 0E7OMjSLhK2ZhP7vNvyygfLFL55nHYw05DrvmReoIrfYCPMa2Bzfndo8VKdQT1DHthuB rvHzeWARxHpjx9Rnq6tEWeujkJo57CGjH/eYYdJLEZ4XZGsebz1BEXwKqahV1M+LAtvP IIBpUuTYKWCb6EXTd5Faag0gxJSb4Q/+IHVNLoYSpJI0UP6Fz6TMbwWHxbB8jgyiZ/IL R1Aw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=L3WS8q1FKt0S8fSgGeOLlB2ULRlzE4+4YoYMx1LxXzE=; b=IQMzo8GNu0KqDlB3ibdTZj43bEUihSdh21jLWPsFdBmpozoK/WHJQNafm8BE8ewVk/ l06m/AtViDdaBH1W79Bn7b1sFYLyWfAJ+ywzS4J4blQnqntToy4J+Mh1KHPb4bOIF0/e x3D6Um8q7j+V0zvLi/EwJp6Wkl0O8wLRyZY5i7RaA7FtRVZoO95etQaFMnagHr9/tndP jlbGmpy33MLv6o7xD6BMfXdZSmV3rwy6F+c+vekHqQI9qEdzRc7+7penpuGIlFfb/oEq +oMtm76FHVv459xjJ0GU2Nr/FnE5Qh8naAUXeTXnC6rcwcgSR/CcLccHcvOYjJHuurk2 nwGg== X-Gm-Message-State: AOAM5306ROrMK+VjAbFMBN985mGSezJ5L6Y9oyllCTGEbaC/gVnvJKab USJMkfwPLW2UEJOWBbJjntctH8dZj6g= X-Google-Smtp-Source: ABdhPJxjb7H8oprKUBqHpj0VxZgbSN66aTyDl4F42tLH5Hq+cxJeGvT9lKbI5AzR9hQialJ9N2r5lg== X-Received: by 2002:a50:fe8d:: with SMTP id d13mr39257214edt.14.1625757496100; Thu, 08 Jul 2021 08:18:16 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:15 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 37/48] usb: build usb-host as module Date: Thu, 8 Jul 2021 17:17:37 +0200 Message-Id: <20210708151748.408754-38-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::52c; envelope-from=paolo.bonzini@gmail.com; helo=mail-ed1-x52c.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "Jose R . Ziviani" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann Drop one more shared library dependency (libusb) from core qemu. Signed-off-by: Gerd Hoffmann Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-34-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- hw/usb/host-libusb.c | 1 + hw/usb/meson.build | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c index 2b7f87872c..c0f314462a 100644 --- a/hw/usb/host-libusb.c +++ b/hw/usb/host-libusb.c @@ -1777,6 +1777,7 @@ static TypeInfo usb_host_dev_info = { .class_init = usb_host_class_initfn, .instance_init = usb_host_instance_init, }; +module_obj(TYPE_USB_HOST_DEVICE); static void usb_host_register_types(void) { diff --git a/hw/usb/meson.build b/hw/usb/meson.build index 817f3e027a..3ca6127937 100644 --- a/hw/usb/meson.build +++ b/hw/usb/meson.build @@ -72,8 +72,12 @@ if usbredir.found() endif # usb pass-through -softmmu_ss.add(when: ['CONFIG_USB', libusb], - if_true: files('host-libusb.c')) +if config_host.has_key('CONFIG_USB_LIBUSB') + usbhost_ss = ss.source_set() + usbhost_ss.add(when: ['CONFIG_USB', libusb], + if_true: files('host-libusb.c')) + hw_usb_modules += {'host': usbhost_ss} +endif softmmu_ss.add(when: ['CONFIG_USB', 'CONFIG_XEN', libusb], if_true: files('xen-usb.c')) From patchwork Thu Jul 8 15:17:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365379 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 995B0C07E99 for ; Thu, 8 Jul 2021 15:37:43 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 3D20D61483 for ; Thu, 8 Jul 2021 15:37:43 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3D20D61483 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:56118 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W5u-0008Hg-9f for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:37:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53998) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnA-000197-QH for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:21 -0400 Received: from mail-ej1-x633.google.com ([2a00:1450:4864:20::633]:46701) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn8-0008Jw-Dc for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:19 -0400 Received: by mail-ej1-x633.google.com with SMTP id c17so10205986ejk.13 for ; Thu, 08 Jul 2021 08:18:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=J5848Llpvi/KqMPcQycDbJwiq+hPIvn6uOvqDWiLumI=; b=V/JMAWiQ7MdNjDiYcQB/0CNnenD8+vHD8fLxIAfvo71V7yVj93+EID9pWG6ceN7mTh jZKcY4lbOJ89C1nOzmZ85HcbYD7fWPvj56gtyDIgFbZ89RNrRMCxo0cVM5ZA2mJUXX6y UuxTAo0N6mZowu3k49GxzO7SRCCXZLayjadSxgsr8WIaAvO7E/ToCILtua2JLuVoGa1E 3QLylKrfjUMoxNncaiN5BUfrpjgWyt5mQpJanhcBsOtFz3HUj0zFpeAO+nBkkcUMMpL2 sKfCvPxLmRh1UxDl+3M9j1reuZXvY0O9adCRgnzT0gAy/8TGdCRPOj+M+6jm16QnpC19 IBLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=J5848Llpvi/KqMPcQycDbJwiq+hPIvn6uOvqDWiLumI=; b=uJfb+Sq4evz/I1OpFf1xBDUmqgo7Z/9OZS/+fKW80z92ZOhjO1App4+vB8EWIJR6gZ GCSKeT6Ki312hTkS5btq1Mc6++Ssx62ZvjR04mvgJsPqlSwFhNRBT0Wx3hL8t0SM3efw y4x3MOs7Dqyj9Vp44ckAtwtVNVDFbplD7r/+sUbBQyLwB2qFTRqlts69IdjY3hDmDE6Z gLsySe0KkM4kjbUIKCE3gVmQgwqZTO3a++ANEIXe6w2JGp4tWfjopcAOzkorO5xh9BKL chIkXGLMBZslU55ZqYadFv/VoFxdQaVqdBQ65XMP0DQIJDzr2M8rv+yHqICvJPYPscqh hlGA== X-Gm-Message-State: AOAM532Y5YAwqER1qzgYgdQ/3Pm34l6pJSZWJbnxutsPx+hoxqFyyZv4 x0dMMIV+7HX3kmfNo+3HJva8bgn7D3o= X-Google-Smtp-Source: ABdhPJyLasWyjf1Rmhrmy1+ekLi2NAZ5yYkSXr4xEl18QR8ZxMjUsOX6xBGhOp+gMnLL3aEtYOld+Q== X-Received: by 2002:a17:906:cb86:: with SMTP id mf6mr9435107ejb.116.1625757496830; Thu, 08 Jul 2021 08:18:16 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:16 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 38/48] monitor/tcg: move tcg hmp commands to accel/tcg, register them dynamically Date: Thu, 8 Jul 2021 17:17:38 +0200 Message-Id: <20210708151748.408754-39-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::633; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x633.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Jose R . Ziviani" , Gerd Hoffmann , "Dr . David Alan Gilbert" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Gerd Hoffmann One more little step towards modular tcg ... Signed-off-by: Gerd Hoffmann Acked-by: Dr. David Alan Gilbert Reviewed-by: Jose R. Ziviani Message-Id: <20210624103836.2382472-35-kraxel@redhat.com> Signed-off-by: Paolo Bonzini --- accel/tcg/hmp.c | 29 +++++++++++++++++++++++++++++ accel/tcg/meson.build | 1 + hmp-commands-info.hx | 2 -- monitor/misc.c | 18 ------------------ 4 files changed, 30 insertions(+), 20 deletions(-) create mode 100644 accel/tcg/hmp.c diff --git a/accel/tcg/hmp.c b/accel/tcg/hmp.c new file mode 100644 index 0000000000..a6e72fdb3e --- /dev/null +++ b/accel/tcg/hmp.c @@ -0,0 +1,29 @@ +#include "qemu/osdep.h" +#include "qemu/error-report.h" +#include "exec/exec-all.h" +#include "monitor/monitor.h" +#include "sysemu/tcg.h" + +static void hmp_info_jit(Monitor *mon, const QDict *qdict) +{ + if (!tcg_enabled()) { + error_report("JIT information is only available with accel=tcg"); + return; + } + + dump_exec_info(); + dump_drift_info(); +} + +static void hmp_info_opcount(Monitor *mon, const QDict *qdict) +{ + dump_opcount_info(); +} + +static void hmp_tcg_register(void) +{ + monitor_register_hmp("jit", true, hmp_info_jit); + monitor_register_hmp("opcount", true, hmp_info_opcount); +} + +type_init(hmp_tcg_register); diff --git a/accel/tcg/meson.build b/accel/tcg/meson.build index 0ae9180282..137a1a44cc 100644 --- a/accel/tcg/meson.build +++ b/accel/tcg/meson.build @@ -15,6 +15,7 @@ specific_ss.add_all(when: 'CONFIG_TCG', if_true: tcg_ss) specific_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: files( 'cputlb.c', + 'hmp.c', )) tcg_module_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: files( diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx index ce42aef47a..27206ac049 100644 --- a/hmp-commands-info.hx +++ b/hmp-commands-info.hx @@ -274,7 +274,6 @@ ERST .args_type = "", .params = "", .help = "show dynamic compiler info", - .cmd = hmp_info_jit, }, #endif @@ -289,7 +288,6 @@ ERST .args_type = "", .params = "", .help = "show dynamic compiler opcode counters", - .cmd = hmp_info_opcount, }, #endif diff --git a/monitor/misc.c b/monitor/misc.c index ad476c6e51..b28874d6dc 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -320,24 +320,6 @@ static void hmp_info_registers(Monitor *mon, const QDict *qdict) } } -#ifdef CONFIG_TCG -static void hmp_info_jit(Monitor *mon, const QDict *qdict) -{ - if (!tcg_enabled()) { - error_report("JIT information is only available with accel=tcg"); - return; - } - - dump_exec_info(); - dump_drift_info(); -} - -static void hmp_info_opcount(Monitor *mon, const QDict *qdict) -{ - dump_opcount_info(); -} -#endif - static void hmp_info_sync_profile(Monitor *mon, const QDict *qdict) { int64_t max = qdict_get_try_int(qdict, "max", 10); From patchwork Thu Jul 8 15:17:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365401 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,UNWANTED_LANGUAGE_BODY, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 889BDC07E96 for ; Thu, 8 Jul 2021 15:44:27 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4997C61469 for ; Thu, 8 Jul 2021 15:44:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4997C61469 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:48438 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WCQ-000594-Cs for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:44:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54000) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnA-000198-QX for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:21 -0400 Received: from mail-ej1-x632.google.com ([2a00:1450:4864:20::632]:45658) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn8-0008KO-P1 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:20 -0400 Received: by mail-ej1-x632.google.com with SMTP id hc16so10254123ejc.12 for ; Thu, 08 Jul 2021 08:18:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=T3FgzYC2xuHjCE/ambPxsRjySSaIwBV2XzEZCQs8ny8=; b=LoG8LbNuQsuk+L7eXL/isBDNTALy9DyUcExePzFZLYi/gdR2mRMf0iSJWIFREHF9w9 r3JkHKnioixk206LBnvr5KKS9tFcGc/A2+cH7vVZQy7cjLAv+ZlAhD9NzC/qyENDQO5n jqxqWUUp/rnpQApKUyJo34mV0mR2Is3JJQ91E7Jbmos3+dO8ALOV2Y+rB3A6rBCOQlqo fB+StdoZ3v9XAg8ksEaOSkv74AaGHpIFbXHe4OxQ45v54OHKx0Vu9//JqYhOl4j1rwwK PlRDYtAZGSx12tXQ5RBz28zPgDKdWVe+R3knV/lYXDPNyWc+yPkzDHQu9VaAeQdajDMm YefQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=T3FgzYC2xuHjCE/ambPxsRjySSaIwBV2XzEZCQs8ny8=; b=Xccvff4W5vu2DdC5DldvJGP7OIA6vcZtd39w1kI1j39KXHqgyGMdFR1GUJzcGDCwR3 wugeOG182ByhQDNmA4LqYZXLVSTkMVCyz7j4C0xdGS/ZWgWJ9qVVhGz7n6FLBJtlRClL fDAySXS5idZbysnHxl3HhOidVInXfvXfG6L01fixDd3OK4ST+kzREcsKVfN2a/4wf0pd +pgkhL9efiDT855fxvmLNDmd0b3D3OOKHi7bC41Fcfkj2E1/jkkqtVwkq+M4gTfaq3d/ 4plAV9uIWVA1xYJcabfnlmF/X5xIO+mygaUg5uO95l6Y2mkq8lUMT4LvTfH0v5g5McE2 /9XQ== X-Gm-Message-State: AOAM5329jKpHoxWgwD6/m4dPa9Htv86w7Gr+lje20zg8FF3DpGjRUNNY SmlGKFumAPqQlk6TTW7oZpiKJL+ik5k= X-Google-Smtp-Source: ABdhPJyWmBGZ4cg5IcU1H3fdtdgeOiswPS+gPUoff1FVOi9+DPfDkRsT36Ch5cPzEnZfphzpaPskag== X-Received: by 2002:a17:906:1dd2:: with SMTP id v18mr22745341ejh.322.1625757497498; Thu, 08 Jul 2021 08:18:17 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:17 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 39/48] target/i386: Added MSRPM and IOPM size check Date: Thu, 8 Jul 2021 17:17:39 +0200 Message-Id: <20210708151748.408754-40-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::632; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x632.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lara Lazier Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Lara Lazier The address of the last entry in the MSRPM and in the IOPM must be smaller than the largest physical address. (APM2 15.10-15.11) Signed-off-by: Lara Lazier Message-Id: <20210705081802.18960-2-laramglazier@gmail.com> Signed-off-by: Paolo Bonzini --- target/i386/svm.h | 3 +++ target/i386/tcg/sysemu/svm_helper.c | 15 +++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/target/i386/svm.h b/target/i386/svm.h index 5098733053..adc058dc76 100644 --- a/target/i386/svm.h +++ b/target/i386/svm.h @@ -137,6 +137,9 @@ #define SVM_CR0_RESERVED_MASK 0xffffffff00000000U +#define SVM_MSRPM_SIZE (1ULL << 13) +#define SVM_IOPM_SIZE ((1ULL << 13) + 1) + struct QEMU_PACKED vmcb_control_area { uint16_t intercept_cr_read; uint16_t intercept_cr_write; diff --git a/target/i386/tcg/sysemu/svm_helper.c b/target/i386/tcg/sysemu/svm_helper.c index 1c2dbc1862..fa701829e5 100644 --- a/target/i386/tcg/sysemu/svm_helper.c +++ b/target/i386/tcg/sysemu/svm_helper.c @@ -68,6 +68,7 @@ static inline void svm_load_seg_cache(CPUX86State *env, hwaddr addr, void helper_vmrun(CPUX86State *env, int aflag, int next_eip_addend) { CPUState *cs = env_cpu(env); + X86CPU *cpu = env_archcpu(env); target_ulong addr; uint64_t nested_ctl; uint32_t event_inj; @@ -159,6 +160,20 @@ void helper_vmrun(CPUX86State *env, int aflag, int next_eip_addend) asid = x86_ldq_phys(cs, env->vm_vmcb + offsetof(struct vmcb, control.asid)); + uint64_t msrpm_base_pa = x86_ldq_phys(cs, env->vm_vmcb + + offsetof(struct vmcb, + control.msrpm_base_pa)); + uint64_t iopm_base_pa = x86_ldq_phys(cs, env->vm_vmcb + + offsetof(struct vmcb, control.iopm_base_pa)); + + if ((msrpm_base_pa & ~0xfff) >= (1ull << cpu->phys_bits) - SVM_MSRPM_SIZE) { + cpu_vmexit(env, SVM_EXIT_ERR, 0, GETPC()); + } + + if ((iopm_base_pa & ~0xfff) >= (1ull << cpu->phys_bits) - SVM_IOPM_SIZE) { + cpu_vmexit(env, SVM_EXIT_ERR, 0, GETPC()); + } + env->nested_pg_mode = 0; if (!cpu_svm_has_intercept(env, SVM_EXIT_VMRUN)) { From patchwork Thu Jul 8 15:17:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365389 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1F035C07E96 for ; Thu, 8 Jul 2021 15:40:35 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B87B36162B for ; Thu, 8 Jul 2021 15:40:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B87B36162B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:36514 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1W8f-0005dR-Lb for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:40:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54018) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnB-0001AV-U6 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:23 -0400 Received: from mail-ej1-x633.google.com ([2a00:1450:4864:20::633]:39637) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1Vn9-0008Kq-DF for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:21 -0400 Received: by mail-ej1-x633.google.com with SMTP id ga42so10258479ejc.6 for ; Thu, 08 Jul 2021 08:18:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=94ZgvUoaV4rrbqz1c29cq+0EjAl0jsTM0BgmjnATI8E=; b=B/mX2xLyP8JrimErU8/gkvN/8gKCCvpj5RanSXcOsbeH8zCbpQzQZQPfVl1DRex+sr kzwk0IPtHo/D/z7a09CffgkruxnJi2aT/lfHBx/1KR1Qrg2AKg6RhqXhqNEAhZAxfBuJ X7TzZAWzzWx8nSPxgFsWi/Ru708sHxikCYiXNIaX2EE3zxamETMLFxc0TUhybntnrlhn OH829ofZkUaPYsVmwntTtXkEq9ivIeWsgrRyBdhH2Is6FKBGUQ+PmUW8bKMFmEEwFkFv KJwJMOmwKETG9ahr/zDNEV40oPbNlTYfbu5IVXzcJkmiaF1EfUisdL9EJziL/4l71i8H Ojqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=94ZgvUoaV4rrbqz1c29cq+0EjAl0jsTM0BgmjnATI8E=; b=nmJfBMzDLuwWVrjD7tMjhrYS/5ilSNweJKxD3ogo0rkbm5vGIFsuTvtU2lvEts5Ffn rHEVi1tm7oS1mPAHm2sASTMXdN9vK+2+/8DxN6eTnF1h5O1TJ1iACkQnJkvfFIe18AuP 37O01UGesDF2m2TMLUhj8IxoVubuT3RrT7C/K5iuQVX9uC5riaqC07TldyBbvwPcIRi/ 2dnZg7d3GhRyE0bf+nbaLvt/wdTAAd/NEM5FBWpM3Tlh/61HQ6RqnI7RV5L0Nmh9OnGG n24rpNGjlYywZ2cZEXaDbfc5w92wosImPSBlqirj4TIf3cOJSK0C3/t1MjtMI4Gjm3Y+ aaPg== X-Gm-Message-State: AOAM532hvAu2SvpCdL9akrRFlgJTev2oGri7vylg0Blu03uCK71u+8fq 3/cs+u1STHbAW9/cXUgS3/Jep1X28VY= X-Google-Smtp-Source: ABdhPJyH6gVUmOYcY6El1gN//0Fbmjq3AO0GF44VBOdGbwRTEcfh5ZCkvE/B+Ps4dukMikhJINobdA== X-Received: by 2002:a17:906:744:: with SMTP id z4mr31689238ejb.347.1625757498156; Thu, 08 Jul 2021 08:18:18 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:17 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 40/48] target/i386: Added DR6 and DR7 consistency checks Date: Thu, 8 Jul 2021 17:17:40 +0200 Message-Id: <20210708151748.408754-41-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::633; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x633.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lara Lazier Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Lara Lazier DR6[63:32] and DR7[63:32] are reserved and need to be zero. (AMD64 Architecture Programmer's Manual, V2, 15.5) Signed-off-by: Lara Lazier Message-Id: <20210705081802.18960-3-laramglazier@gmail.com> [Ignore for 32-bit builds. - Paolo] Signed-off-by: Paolo Bonzini --- target/i386/svm.h | 2 ++ target/i386/tcg/sysemu/svm_helper.c | 9 ++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/target/i386/svm.h b/target/i386/svm.h index adc058dc76..4bde9f3475 100644 --- a/target/i386/svm.h +++ b/target/i386/svm.h @@ -140,6 +140,8 @@ #define SVM_MSRPM_SIZE (1ULL << 13) #define SVM_IOPM_SIZE ((1ULL << 13) + 1) +#define SVM_DR_RESERVED_MASK 0xffffffff00000000ULL + struct QEMU_PACKED vmcb_control_area { uint16_t intercept_cr_read; uint16_t intercept_cr_write; diff --git a/target/i386/tcg/sysemu/svm_helper.c b/target/i386/tcg/sysemu/svm_helper.c index fa701829e5..047f31628e 100644 --- a/target/i386/tcg/sysemu/svm_helper.c +++ b/target/i386/tcg/sysemu/svm_helper.c @@ -269,7 +269,14 @@ void helper_vmrun(CPUX86State *env, int aflag, int next_eip_addend) env->dr[6] = x86_ldq_phys(cs, env->vm_vmcb + offsetof(struct vmcb, save.dr6)); - /* FIXME: guest state consistency checks */ +#ifdef TARGET_X86_64 + if (env->dr[6] & SVM_DR_RESERVED_MASK) { + cpu_vmexit(env, SVM_EXIT_ERR, 0, GETPC()); + } + if (env->dr[7] & SVM_DR_RESERVED_MASK) { + cpu_vmexit(env, SVM_EXIT_ERR, 0, GETPC()); + } +#endif switch (x86_ldub_phys(cs, env->vm_vmcb + offsetof(struct vmcb, control.tlb_ctl))) { From patchwork Thu Jul 8 15:17:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365403 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CB5CDC07E96 for ; Thu, 8 Jul 2021 15:45:44 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4E83861493 for ; Thu, 8 Jul 2021 15:45:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4E83861493 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:51088 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WDf-0006uo-5i for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:45:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54028) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnC-0001Aa-Iz for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:23 -0400 Received: from mail-ej1-x629.google.com ([2a00:1450:4864:20::629]:45650) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnA-0008Kz-Iw for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:22 -0400 Received: by mail-ej1-x629.google.com with SMTP id hc16so10254241ejc.12 for ; Thu, 08 Jul 2021 08:18:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MGKKVl3QbKe1iLy2VhvmJf/EJj62pnAxZn6Ud3Ie0QM=; b=kN1yeWj0nlUVESo2iq/QoX7uCc3yuPbT/jH3PTMI+MpM2tqzqyWkhBIicdnXgSREK0 OApwllIwFUmSiFq73SIdX5JSIRElb2vN/8fL8Ps42Z8fnso1YXwtPCmox/ejcAW8BUtp gMaFwhm5VwXZTfSIKiFg8Wk3R4gWnO3YJxJSz2So5+ADeGhGIwrjBM93T3LEiZmOEMp+ mukw4S6sMhJqcYt3nsiW6+jx//ylTBuhfLW2MZM0RUIBVUcEy6RQrZoNzNBMWBPXT1Iw sqbYW63pPHf7ML2l6JxlTkWWoXye1ErVarLI3F+QELKRIzjHMTNHZNsYZzhBMDuUDeK/ 8flQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=MGKKVl3QbKe1iLy2VhvmJf/EJj62pnAxZn6Ud3Ie0QM=; b=CsuIrokwDXOBLbyCSV+1N1+n+YRLtHpfOn1QffLjOAfoPrFIA+9xyM7/E1HdqG25aG G4rxfJPBQ+TEGjURXSEG39/fAt0jf0bkIFBA2FiEgQ+4TxNjDnY0JUX2L80huBHk5OBS y6g+PT/HHapyBjL9XalPajjybmKWXQ2gjbka1c5EyI6rXjmegyraSPYTi8uzqwc5i2bx 00KR2DwbaC9L/93DppHuDESlXg89emCfRTpQlj8CtlwCEbypspfc5miajffORFeOvJpp QLyD3wsWnA+IRr57fe8LBDZ7ghp73Ctg6mvUxuw98hX6/tViPRvp4U0m00qzdRFzhyWb kYSA== X-Gm-Message-State: AOAM532QpJs5m0tDYcUw7504pjczvUA2FK9XFLbXiFHSP0Gy7GfbdTk8 RMzgXOqxZbMPcKDKMlC0+YExGBttuaI= X-Google-Smtp-Source: ABdhPJxOyfuK8fa8FzqoRjfv0f4h8pT7TrZ9y5bmTKaWDvJ2DFaoMQBT4O8qsqQyQac0fcKVuw3wqg== X-Received: by 2002:a17:906:a219:: with SMTP id r25mr3893448ejy.133.1625757498758; Thu, 08 Jul 2021 08:18:18 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:18 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 41/48] target/i386: fix exceptions for MOV to DR Date: Thu, 8 Jul 2021 17:17:41 +0200 Message-Id: <20210708151748.408754-42-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::629; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x629.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Use raise_exception_ra (without error code) when raising the illegal opcode operation; raise #GP when setting bits 63:32 of DR6 or DR7. Move helper_get_dr to sysemu/ since it is a privileged instruction that is not needed on user-mode emulators. Signed-off-by: Paolo Bonzini --- target/i386/cpu.h | 2 ++ target/i386/helper.h | 3 +- target/i386/svm.h | 2 -- target/i386/tcg/bpt_helper.c | 21 ------------- target/i386/tcg/sysemu/bpt_helper.c | 47 ++++++++++++++++++----------- target/i386/tcg/sysemu/svm_helper.c | 4 +-- target/i386/tcg/translate.c | 1 + 7 files changed, 35 insertions(+), 45 deletions(-) diff --git a/target/i386/cpu.h b/target/i386/cpu.h index 0f7ddbfeae..8f3747dd28 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -268,6 +268,8 @@ typedef enum X86Seg { #define DR7_TYPE_IO_RW 0x2 #define DR7_TYPE_DATA_RW 0x3 +#define DR_RESERVED_MASK 0xffffffff00000000ULL + #define PG_PRESENT_BIT 0 #define PG_RW_BIT 1 #define PG_USER_BIT 2 diff --git a/target/i386/helper.h b/target/i386/helper.h index f3d8c3f949..574ff75615 100644 --- a/target/i386/helper.h +++ b/target/i386/helper.h @@ -46,9 +46,8 @@ DEF_HELPER_1(clts, void, env) #ifndef CONFIG_USER_ONLY DEF_HELPER_FLAGS_3(set_dr, TCG_CALL_NO_WG, void, env, int, tl) -#endif /* !CONFIG_USER_ONLY */ - DEF_HELPER_FLAGS_2(get_dr, TCG_CALL_NO_WG, tl, env, int) +#endif /* !CONFIG_USER_ONLY */ DEF_HELPER_1(sysenter, void, env) DEF_HELPER_2(sysexit, void, env, int) diff --git a/target/i386/svm.h b/target/i386/svm.h index 4bde9f3475..adc058dc76 100644 --- a/target/i386/svm.h +++ b/target/i386/svm.h @@ -140,8 +140,6 @@ #define SVM_MSRPM_SIZE (1ULL << 13) #define SVM_IOPM_SIZE ((1ULL << 13) + 1) -#define SVM_DR_RESERVED_MASK 0xffffffff00000000ULL - struct QEMU_PACKED vmcb_control_area { uint16_t intercept_cr_read; uint16_t intercept_cr_write; diff --git a/target/i386/tcg/bpt_helper.c b/target/i386/tcg/bpt_helper.c index 83cd89581e..b6c1fff16e 100644 --- a/target/i386/tcg/bpt_helper.c +++ b/target/i386/tcg/bpt_helper.c @@ -37,24 +37,3 @@ void helper_rechecking_single_step(CPUX86State *env) helper_single_step(env); } } - -target_ulong helper_get_dr(CPUX86State *env, int reg) -{ - switch (reg) { - case 0: case 1: case 2: case 3: case 6: case 7: - return env->dr[reg]; - case 4: - if (env->cr[4] & CR4_DE_MASK) { - break; - } else { - return env->dr[6]; - } - case 5: - if (env->cr[4] & CR4_DE_MASK) { - break; - } else { - return env->dr[7]; - } - } - raise_exception_err_ra(env, EXCP06_ILLOP, 0, GETPC()); -} diff --git a/target/i386/tcg/sysemu/bpt_helper.c b/target/i386/tcg/sysemu/bpt_helper.c index 9bdf7e170b..805118c6b5 100644 --- a/target/i386/tcg/sysemu/bpt_helper.c +++ b/target/i386/tcg/sysemu/bpt_helper.c @@ -234,10 +234,30 @@ void breakpoint_handler(CPUState *cs) } } +target_ulong helper_get_dr(CPUX86State *env, int reg) +{ + if (reg >= 4 && reg < 6) { + if (env->cr[4] & CR4_DE_MASK) { + raise_exception_ra(env, EXCP06_ILLOP, GETPC()); + } else { + reg += 2; + } + } + + return env->dr[reg]; +} + void helper_set_dr(CPUX86State *env, int reg, target_ulong t0) { - switch (reg) { - case 0: case 1: case 2: case 3: + if (reg >= 4 && reg < 6) { + if (env->cr[4] & CR4_DE_MASK) { + raise_exception_ra(env, EXCP06_ILLOP, GETPC()); + } else { + reg += 2; + } + } + + if (reg < 4) { if (hw_breakpoint_enabled(env->dr[7], reg) && hw_breakpoint_type(env->dr[7], reg) != DR7_TYPE_IO_RW) { hw_breakpoint_remove(env, reg); @@ -246,25 +266,16 @@ void helper_set_dr(CPUX86State *env, int reg, target_ulong t0) } else { env->dr[reg] = t0; } - return; - case 4: - if (env->cr[4] & CR4_DE_MASK) { - break; + } else { + if (t0 & DR_RESERVED_MASK) { + raise_exception_err_ra(env, EXCP0D_GPF, 0, GETPC()); } - /* fallthru */ - case 6: - env->dr[6] = t0 | DR6_FIXED_1; - return; - case 5: - if (env->cr[4] & CR4_DE_MASK) { - break; + if (reg == 6) { + env->dr[6] = t0 | DR6_FIXED_1; + } else { + cpu_x86_update_dr7(env, t0); } - /* fallthru */ - case 7: - cpu_x86_update_dr7(env, t0); - return; } - raise_exception_err_ra(env, EXCP06_ILLOP, 0, GETPC()); } /* Check if Port I/O is trapped by a breakpoint. */ diff --git a/target/i386/tcg/sysemu/svm_helper.c b/target/i386/tcg/sysemu/svm_helper.c index 047f31628e..00618cff23 100644 --- a/target/i386/tcg/sysemu/svm_helper.c +++ b/target/i386/tcg/sysemu/svm_helper.c @@ -270,10 +270,10 @@ void helper_vmrun(CPUX86State *env, int aflag, int next_eip_addend) env->vm_vmcb + offsetof(struct vmcb, save.dr6)); #ifdef TARGET_X86_64 - if (env->dr[6] & SVM_DR_RESERVED_MASK) { + if (env->dr[6] & DR_RESERVED_MASK) { cpu_vmexit(env, SVM_EXIT_ERR, 0, GETPC()); } - if (env->dr[7] & SVM_DR_RESERVED_MASK) { + if (env->dr[7] & DR_RESERVED_MASK) { cpu_vmexit(env, SVM_EXIT_ERR, 0, GETPC()); } #endif diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c index b21873ed23..9e445b9bf0 100644 --- a/target/i386/tcg/translate.c +++ b/target/i386/tcg/translate.c @@ -206,6 +206,7 @@ STUB_HELPER(outw, TCGv_env env, TCGv_i32 port, TCGv_i32 val) STUB_HELPER(outl, TCGv_env env, TCGv_i32 port, TCGv_i32 val) STUB_HELPER(rdmsr, TCGv_env env) STUB_HELPER(read_crN, TCGv ret, TCGv_env env, TCGv_i32 reg) +STUB_HELPER(get_dr, TCGv ret, TCGv_env env, TCGv_i32 reg) STUB_HELPER(set_dr, TCGv_env env, TCGv_i32 reg, TCGv val) STUB_HELPER(stgi, TCGv_env env) STUB_HELPER(svm_check_intercept, TCGv_env env, TCGv_i32 type) From patchwork Thu Jul 8 15:17:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365405 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D0EA6C07E96 for ; Thu, 8 Jul 2021 15:46:40 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9DEE361493 for ; Thu, 8 Jul 2021 15:46:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9DEE361493 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:53896 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WEZ-0000OS-GQ for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:46:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54082) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnF-0001CN-Sm for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:25 -0400 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]:46695) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnB-0008L5-0K for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:22 -0400 Received: by mail-ej1-x62c.google.com with SMTP id c17so10206221ejk.13 for ; Thu, 08 Jul 2021 08:18:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=D1LwxSKpvmQHORK5d6Lk9IDrh5/OjUa/lWWSxJEsvEE=; b=Mupqm+KXukD3LDvI59Luc5GD1lK7CGNJwVK/VqXTQuE41UpiK/aNH77eMdZAmwFdzu fTyCN6be0Z1CaOE9dp/OI1dF/wWr5byU63D81DROQFoDtTpTwJtVF2wVaCS5jtbkp92Y Cq3POiAc3e1YyY0FY4yprPlLv7fQ+YsioMKPnhflr5EZFrkf6d3AtQN7PKwqjBTGaMxO kcirWVjtlmc04nQ271xxqs/XcFTkEGp276kHXFvUCZFLcA8gci/4A+qLPBoAfW/XC3SV VhwV62jT/rWFZeLJruevwYJyLbD8QPyJUNN4Q0afiHlrxi9cu5SN1gahePAHqtKfWBm/ ucLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=D1LwxSKpvmQHORK5d6Lk9IDrh5/OjUa/lWWSxJEsvEE=; b=JjedJYmmQkoyBUjWZyFIKmDX98GVx7J29FqNGIuF4KXETyFMTroEJZsF7pcCJUVv8b wEzAvzw9WAWrhWDSpWUZROc9eJ8T1i1jF90LlRtDCIoV2X4USzUg7QfA+1A44EIfVRiU TueawmiBUp+Y5HD1DEwQ6Y6FreZz/Ai4Ok0ZsoSrBO1K40ZAVeam3tjHNNWU2dmeBHD6 wLR+jFhibkhKXLRu84vrR8tvNXC6FF6O+mexeQ0sKdztwZ+q+xU/QCErdI05fgRkOORt NG2tfB5vW8PA7VYQF5KiCStj1NRaqW4XLfszSx365pT0fWy6OqlV9pBVfNerljCKhiGe yitw== X-Gm-Message-State: AOAM530ZjKPPtHT4lTBsRtOGrbkpsAWT/czH+7ha27iGN7bdNnShXAiz buWxFVnZrKVCmSm1iCl1t646Pb0rWtE= X-Google-Smtp-Source: ABdhPJxWzR99hSorN0jVzQXWR/lpVAUPnF0yceo8eKQhklVgiazyvo9ZBds4lMaWBbJocVhrDbDR5g== X-Received: by 2002:a17:906:58cc:: with SMTP id e12mr31439808ejs.279.1625757499383; Thu, 08 Jul 2021 08:18:19 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:19 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 42/48] vl: fix leak of qdict_crumple return value Date: Thu, 8 Jul 2021 17:17:42 +0200 Message-Id: <20210708151748.408754-43-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62c; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62c.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Coverity reports that qemu_parse_config_group is returning without unrefing the "crumpled" dictionary in case its top level item is a list. But actually the contract with qemu_record_config_group is the same as for qemu_parse_config_group itself: if those function need to stash the dictionary they get, they have to take a reference themselves (currently this is never the case for either function). Therefore, just add an unconditional qobject_unref(crumpled) to qemu_parse_config_group. Reported-by: Peter Maydell Signed-off-by: Paolo Bonzini --- softmmu/vl.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/softmmu/vl.c b/softmmu/vl.c index 2004d57108..4df1496101 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -2193,12 +2193,17 @@ static void qemu_parse_config_group(const char *group, QDict *qdict, if (!crumpled) { return; } - if (qobject_type(crumpled) != QTYPE_QDICT) { - assert(qobject_type(crumpled) == QTYPE_QLIST); + switch (qobject_type(crumpled)) { + case QTYPE_QDICT: + qemu_record_config_group(group, qobject_to(QDict, crumpled), false, errp); + break; + case QTYPE_QLIST: error_setg(errp, "Lists cannot be at top level of a configuration section"); - return; + break; + default: + g_assert_not_reached(); } - qemu_record_config_group(group, qobject_to(QDict, crumpled), false, errp); + qobject_unref(crumpled); } static void qemu_read_default_config_file(Error **errp) From patchwork Thu Jul 8 15:17:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365399 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E71E1C07E96 for ; Thu, 8 Jul 2021 15:43:07 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5C31F61456 for ; Thu, 8 Jul 2021 15:43:07 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5C31F61456 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:45204 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WB8-00030u-Ix for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:43:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54080) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnF-0001CI-Px for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:25 -0400 Received: from mail-ej1-x635.google.com ([2a00:1450:4864:20::635]:37582) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnB-0008LB-Sr for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:23 -0400 Received: by mail-ej1-x635.google.com with SMTP id i20so10271342ejw.4 for ; Thu, 08 Jul 2021 08:18:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=A95uj4QvdZxCq2Mbt0sTIgU9jFjNfQDHFeRPy6Yji4s=; b=tGonlcV/efciH86wuGUpVxDutjM2wut+hmSwTF6pg0y3gi8p6dZ/7/bJMgypm5yUuh 7gXVdPsVVwX00Kl9hoWRzry1p9Wf3SeMUXNOH+iwQqLeVyxAGkpGPYvstDtUo82f4rO+ +LT5Vqo90OB4Mg9kz53fJQB6uwNISNm8/c38MD0hz0JQbtVjLTNVVTskKfPrvA/0A7Jj DnHcbf8qLzgTWcZP+S7DeHpa1Rn1ZKt+8ZnxsvRWNxp8tDZqHumIS4fKfmPDgSdw4cpL f+o6fHNL2r777EHbPHaaE98xzU5oJVP5ggCdVNVHREpIfvVo6JblZIxx8qM8cWxOiTHS 13jg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=A95uj4QvdZxCq2Mbt0sTIgU9jFjNfQDHFeRPy6Yji4s=; b=SDmsYgwjTc7UMUBdepJ/Phz1NUw6PIDBxSiKT0fPuFtv/2GOTQyIQLaFP41sas5dVH YC4kwaWkmYYkrF9P6aLoOqfxH1deMqvj6v2xuAU95/NaQanaReulnglhz6EFtXxHfzvY luTFR8wArxuuirIgNOTg6CgMhdbdhAjd3jPqj5lHWVBxTsWDBj/7D/T/QhNZeTHjCmBG 2cc1/0IZgmUoF9LD4Va5i7QHgFjE8juj1Ae5AvvpFSB0o7f/LuTZSUXtt1MmocjFMtsO fwLVpo//u5xWjlX2rn0zvhkdDbuBlm3DfZ9tAWX2jtaPrGcZNKCjRauYTlWAZzpsIwi+ sH4w== X-Gm-Message-State: AOAM5320iRQCMZBWmroWTxndmJvfWWl5/gj3gB9beXUmioFKo8A1rcFZ myonJR9bYpjLnSbqDisjOs8PE8SyCXs= X-Google-Smtp-Source: ABdhPJzPbzxY9fLGlXVswnpEdXuuL2F1Sw3EhwAF0yEZSLD5jL/zH1qfkYFBY06iSyZpYFuxPBT8oQ== X-Received: by 2002:a17:906:3555:: with SMTP id s21mr12431152eja.394.1625757499990; Thu, 08 Jul 2021 08:18:19 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:19 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 43/48] meson: switch function tests from compilation to linking Date: Thu, 8 Jul 2021 17:17:43 +0200 Message-Id: <20210708151748.408754-44-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::635; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x635.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Richard Zak Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Some tests for glibc functions cause compilation to emit warnings but still succeed even if the function is not there. Therefore, change from cc.compiles to cc.links. Reported-by: Richard Zak Signed-off-by: Paolo Bonzini --- meson.build | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/meson.build b/meson.build index d9aa2d7820..5a56e3fe2f 100644 --- a/meson.build +++ b/meson.build @@ -1340,10 +1340,10 @@ config_host_data.set('HAVE_STRUCT_STAT_ST_ATIM', cc.has_member('struct stat', 'st_atim', prefix: '#include ')) -config_host_data.set('CONFIG_EVENTFD', cc.compiles(''' +config_host_data.set('CONFIG_EVENTFD', cc.links(''' #include int main(void) { return eventfd(0, EFD_NONBLOCK | EFD_CLOEXEC); }''')) -config_host_data.set('CONFIG_FDATASYNC', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_FDATASYNC', cc.links(gnu_source_prefix + ''' #include int main(void) { #if defined(_POSIX_SYNCHRONIZED_IO) && _POSIX_SYNCHRONIZED_IO > 0 @@ -1352,22 +1352,22 @@ config_host_data.set('CONFIG_FDATASYNC', cc.compiles(gnu_source_prefix + ''' #error Not supported #endif }''')) -config_host_data.set('CONFIG_MADVISE', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_MADVISE', cc.links(gnu_source_prefix + ''' #include #include #include int main(void) { return madvise(NULL, 0, MADV_DONTNEED); }''')) -config_host_data.set('CONFIG_MEMFD', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_MEMFD', cc.links(gnu_source_prefix + ''' #include int main(void) { return memfd_create("foo", MFD_ALLOW_SEALING); }''')) -config_host_data.set('CONFIG_OPEN_BY_HANDLE', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_OPEN_BY_HANDLE', cc.links(gnu_source_prefix + ''' #include #if !defined(AT_EMPTY_PATH) # error missing definition #else int main(void) { struct file_handle fh; return open_by_handle_at(0, &fh, 0); } #endif''')) -config_host_data.set('CONFIG_PIPE2', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_PIPE2', cc.links(gnu_source_prefix + ''' #include #include @@ -1376,16 +1376,16 @@ config_host_data.set('CONFIG_PIPE2', cc.compiles(gnu_source_prefix + ''' int pipefd[2]; return pipe2(pipefd, O_CLOEXEC); }''')) -config_host_data.set('CONFIG_POSIX_MADVISE', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_POSIX_MADVISE', cc.links(gnu_source_prefix + ''' #include #include int main(void) { return posix_madvise(NULL, 0, POSIX_MADV_DONTNEED); }''')) -config_host_data.set('CONFIG_SIGNALFD', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_SIGNALFD', cc.links(gnu_source_prefix + ''' #include #include #include int main(void) { return syscall(SYS_signalfd, -1, NULL, _NSIG / 8); }''')) -config_host_data.set('CONFIG_SPLICE', cc.compiles(gnu_source_prefix + ''' +config_host_data.set('CONFIG_SPLICE', cc.links(gnu_source_prefix + ''' #include #include #include From patchwork Thu Jul 8 15:17:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365417 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 31F25C07E96 for ; Thu, 8 Jul 2021 15:48:39 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8765B613F3 for ; Thu, 8 Jul 2021 15:48:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8765B613F3 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:59908 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WGT-0004Zc-HH for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:48:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54076) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnF-0001CG-R0 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:25 -0400 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]:39631) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnC-0008LQ-Gh for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:24 -0400 Received: by mail-ej1-x62c.google.com with SMTP id ga42so10258759ejc.6 for ; Thu, 08 Jul 2021 08:18:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=voVq/36J4BolhItozOwthtcMeMhc4fbY2LBK5FuEJFs=; b=PcEofE72nsR9lsNmoC3gnXBE4Wj3qFMtE+/m60v3ymO/ZYgchqyvcTmUY9oB2V9jzv i1E5bWqWScW/jcU/eQV2HEi9X9Iw4vuwO98N0btBAx0t4MGk2xXHi883gdFikFQv9dpG HLEJWZ1XB5/8GyZ2zzXiFAhM3fqgmhz0HsBGiJgZg0kRKwIc7OkEZCDQzLFhAVHy18Zi MFtLAYglgId90yHxmdux6XtLxyzPQD4ITlLH8Efj5BYDxCSsthIYQfeVZSYmjeygaFwN h31TsesFaFJ8MJgpKuMGRLf9CeE1xKeD4aHb6p6MflQTtbQAWq58HF9QoOujOfhS5atc Co5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=voVq/36J4BolhItozOwthtcMeMhc4fbY2LBK5FuEJFs=; b=H1Lyo65EpcHSyiIlL/Pm3xp3ANTgF93yTwyCoLuBVWA4rLoo2uIc9vK4gqMIiL14sJ mU5ih8IjqV4NLr0jdmi63lhG3i1n5NlI4jvn/HxUMjtDsuO1dA9Ad3EU6hdJlr34OB8b x9T1c2Mj0oDvNWRdq5hYNBFMMIZlJMxSRlaXiUjP5cXJqd8HAc8RUutql7cLUsf/KuNQ whWlsHW9MZUDb9u+1/NvJgy6BT2TVPFFw6hDr617K66wARPaOV3UF4seCRiA3Ybngo/3 UbQa68mM7IrNFkZZ0oJ5u+Ii/fOmqs4+MhariYYO0Y8XwG2fD77GemEFsum05dIIVsQe sawg== X-Gm-Message-State: AOAM531tkhHVXWCOH807TG05MeC2Bb+kYU3TufrGeofsZFbjh0ZangjD t1Mk/fwFLBaeqS3YZWApW6cwvA1NDQg= X-Google-Smtp-Source: ABdhPJwschvv/WhOodAbL0hZZYa7FWKxCAusVj3QyynBXjAcmsKKxnBR8j3cHQi39cBMP9r+JKlc8g== X-Received: by 2002:a17:906:6047:: with SMTP id p7mr31153431ejj.206.1625757500752; Thu, 08 Jul 2021 08:18:20 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:20 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 44/48] meson: Introduce target-specific Kconfig Date: Thu, 8 Jul 2021 17:17:44 +0200 Message-Id: <20210708151748.408754-45-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62c; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62c.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , =?utf-8?q?Alex_Benn=C3=A9e?= , =?utf-8?q?Philippe_M?= =?utf-8?q?athieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Philippe Mathieu-Daudé Add a target-specific Kconfig. We need the definitions in Kconfig so the minikconf tool can verify they exits. However CONFIG_FOO is only enabled for target foo via the meson.build rules. Two architecture have a particularity, ARM and MIPS. As their translators have been split you can potentially build a plain 32 bit build along with a 64-bit version including the 32-bit subset. Signed-off-by: Philippe Mathieu-Daudé Message-Id: <20210131111316.232778-6-f4bug@amsat.org> Signed-off-by: Alex Bennée Reviewed-by: Thomas Huth Message-Id: <20210707131744.26027-2-alex.bennee@linaro.org> Signed-off-by: Paolo Bonzini --- Kconfig | 1 + meson.build | 3 ++- target/Kconfig | 19 +++++++++++++++++++ target/alpha/Kconfig | 2 ++ target/arm/Kconfig | 6 ++++++ target/avr/Kconfig | 2 ++ target/cris/Kconfig | 2 ++ target/hppa/Kconfig | 2 ++ target/i386/Kconfig | 5 +++++ target/m68k/Kconfig | 2 ++ target/microblaze/Kconfig | 2 ++ target/mips/Kconfig | 6 ++++++ target/nios2/Kconfig | 2 ++ target/openrisc/Kconfig | 2 ++ target/ppc/Kconfig | 5 +++++ target/riscv/Kconfig | 5 +++++ target/rx/Kconfig | 2 ++ target/s390x/Kconfig | 2 ++ target/sh4/Kconfig | 2 ++ target/sparc/Kconfig | 5 +++++ target/tricore/Kconfig | 2 ++ target/xtensa/Kconfig | 2 ++ 22 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 target/Kconfig create mode 100644 target/alpha/Kconfig create mode 100644 target/arm/Kconfig create mode 100644 target/avr/Kconfig create mode 100644 target/cris/Kconfig create mode 100644 target/hppa/Kconfig create mode 100644 target/i386/Kconfig create mode 100644 target/m68k/Kconfig create mode 100644 target/microblaze/Kconfig create mode 100644 target/mips/Kconfig create mode 100644 target/nios2/Kconfig create mode 100644 target/openrisc/Kconfig create mode 100644 target/ppc/Kconfig create mode 100644 target/riscv/Kconfig create mode 100644 target/rx/Kconfig create mode 100644 target/s390x/Kconfig create mode 100644 target/sh4/Kconfig create mode 100644 target/sparc/Kconfig create mode 100644 target/tricore/Kconfig create mode 100644 target/xtensa/Kconfig diff --git a/Kconfig b/Kconfig index d52ebd839b..fb6a24a2de 100644 --- a/Kconfig +++ b/Kconfig @@ -1,5 +1,6 @@ source Kconfig.host source backends/Kconfig source accel/Kconfig +source target/Kconfig source hw/Kconfig source semihosting/Kconfig diff --git a/meson.build b/meson.build index 5a56e3fe2f..d82f7a789d 100644 --- a/meson.build +++ b/meson.build @@ -1604,7 +1604,8 @@ foreach target : target_dirs command: [minikconf, get_option('default_devices') ? '--defconfig' : '--allnoconfig', config_devices_mak, '@DEPFILE@', '@INPUT@', - host_kconfig, accel_kconfig]) + host_kconfig, accel_kconfig, + 'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y']) config_devices_data = configuration_data() config_devices = keyval.load(config_devices_mak) diff --git a/target/Kconfig b/target/Kconfig new file mode 100644 index 0000000000..ae7f24fc66 --- /dev/null +++ b/target/Kconfig @@ -0,0 +1,19 @@ +source alpha/Kconfig +source arm/Kconfig +source avr/Kconfig +source cris/Kconfig +source hppa/Kconfig +source i386/Kconfig +source m68k/Kconfig +source microblaze/Kconfig +source mips/Kconfig +source nios2/Kconfig +source openrisc/Kconfig +source ppc/Kconfig +source riscv/Kconfig +source rx/Kconfig +source s390x/Kconfig +source sh4/Kconfig +source sparc/Kconfig +source tricore/Kconfig +source xtensa/Kconfig diff --git a/target/alpha/Kconfig b/target/alpha/Kconfig new file mode 100644 index 0000000000..267222c05b --- /dev/null +++ b/target/alpha/Kconfig @@ -0,0 +1,2 @@ +config ALPHA + bool diff --git a/target/arm/Kconfig b/target/arm/Kconfig new file mode 100644 index 0000000000..3f3394a22b --- /dev/null +++ b/target/arm/Kconfig @@ -0,0 +1,6 @@ +config ARM + bool + +config AARCH64 + bool + select ARM diff --git a/target/avr/Kconfig b/target/avr/Kconfig new file mode 100644 index 0000000000..155592d353 --- /dev/null +++ b/target/avr/Kconfig @@ -0,0 +1,2 @@ +config AVR + bool diff --git a/target/cris/Kconfig b/target/cris/Kconfig new file mode 100644 index 0000000000..3fdc309fbb --- /dev/null +++ b/target/cris/Kconfig @@ -0,0 +1,2 @@ +config CRIS + bool diff --git a/target/hppa/Kconfig b/target/hppa/Kconfig new file mode 100644 index 0000000000..395a35d799 --- /dev/null +++ b/target/hppa/Kconfig @@ -0,0 +1,2 @@ +config HPPA + bool diff --git a/target/i386/Kconfig b/target/i386/Kconfig new file mode 100644 index 0000000000..ce6968906e --- /dev/null +++ b/target/i386/Kconfig @@ -0,0 +1,5 @@ +config I386 + bool + +config X86_64 + bool diff --git a/target/m68k/Kconfig b/target/m68k/Kconfig new file mode 100644 index 0000000000..23debad519 --- /dev/null +++ b/target/m68k/Kconfig @@ -0,0 +1,2 @@ +config M68K + bool diff --git a/target/microblaze/Kconfig b/target/microblaze/Kconfig new file mode 100644 index 0000000000..a5410d9218 --- /dev/null +++ b/target/microblaze/Kconfig @@ -0,0 +1,2 @@ +config MICROBLAZE + bool diff --git a/target/mips/Kconfig b/target/mips/Kconfig new file mode 100644 index 0000000000..6adf145354 --- /dev/null +++ b/target/mips/Kconfig @@ -0,0 +1,6 @@ +config MIPS + bool + +config MIPS64 + bool + select MIPS diff --git a/target/nios2/Kconfig b/target/nios2/Kconfig new file mode 100644 index 0000000000..1529ab8950 --- /dev/null +++ b/target/nios2/Kconfig @@ -0,0 +1,2 @@ +config NIOS2 + bool diff --git a/target/openrisc/Kconfig b/target/openrisc/Kconfig new file mode 100644 index 0000000000..e0da4ac1df --- /dev/null +++ b/target/openrisc/Kconfig @@ -0,0 +1,2 @@ +config OPENRISC + bool diff --git a/target/ppc/Kconfig b/target/ppc/Kconfig new file mode 100644 index 0000000000..3ff152051a --- /dev/null +++ b/target/ppc/Kconfig @@ -0,0 +1,5 @@ +config PPC + bool + +config PPC64 + bool diff --git a/target/riscv/Kconfig b/target/riscv/Kconfig new file mode 100644 index 0000000000..b9e5932f13 --- /dev/null +++ b/target/riscv/Kconfig @@ -0,0 +1,5 @@ +config RISCV32 + bool + +config RISCV64 + bool diff --git a/target/rx/Kconfig b/target/rx/Kconfig new file mode 100644 index 0000000000..aceb5ed28f --- /dev/null +++ b/target/rx/Kconfig @@ -0,0 +1,2 @@ +config RX + bool diff --git a/target/s390x/Kconfig b/target/s390x/Kconfig new file mode 100644 index 0000000000..72da48136c --- /dev/null +++ b/target/s390x/Kconfig @@ -0,0 +1,2 @@ +config S390X + bool diff --git a/target/sh4/Kconfig b/target/sh4/Kconfig new file mode 100644 index 0000000000..2397c86028 --- /dev/null +++ b/target/sh4/Kconfig @@ -0,0 +1,2 @@ +config SH4 + bool diff --git a/target/sparc/Kconfig b/target/sparc/Kconfig new file mode 100644 index 0000000000..70cc0f3a21 --- /dev/null +++ b/target/sparc/Kconfig @@ -0,0 +1,5 @@ +config SPARC + bool + +config SPARC64 + bool diff --git a/target/tricore/Kconfig b/target/tricore/Kconfig new file mode 100644 index 0000000000..9313409309 --- /dev/null +++ b/target/tricore/Kconfig @@ -0,0 +1,2 @@ +config TRICORE + bool diff --git a/target/xtensa/Kconfig b/target/xtensa/Kconfig new file mode 100644 index 0000000000..a3c8dc7f6d --- /dev/null +++ b/target/xtensa/Kconfig @@ -0,0 +1,2 @@ +config XTENSA + bool From patchwork Thu Jul 8 15:17:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365421 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A2CCBC07E96 for ; Thu, 8 Jul 2021 15:51:48 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 620A461607 for ; Thu, 8 Jul 2021 15:51:48 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 620A461607 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:40312 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WJX-0001vj-H5 for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:51:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54110) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnG-0001Ea-R9 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:27 -0400 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]:45656) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnD-0008Lg-K1 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:26 -0400 Received: by mail-ej1-x62f.google.com with SMTP id hc16so10254549ejc.12 for ; Thu, 08 Jul 2021 08:18:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=/apfJEOciNs9lDbY3JGqeDB5QmGe2AaavcQcLbUM8y0=; b=ZlITIoBVcMPcezEr6l7oiz5yz1gmOrSvovfaKCjhUaIZ8K4xpG3PT+bxd7Awms4rUz PIeZ/JqEChL1k32dkEyi93BuNc97XLcj1CnQPiojk8lN4RYYiWd77ysZus+4/B6PwBzD Y3aHqj+hb7li97NO1eJcNIGFIVU0ttxAcWpgUgtWtNjgqEENF9LpHh3A0I6YbAv0+ZZB Y96SR+m/MHcutoZDRPIeHEfNvg9mIl4nof+z73OKn4qxyOBM9RsLFQX0m4T4TJqIkaBy WB3y16Gz6oymH6+B6ZknTamf4z0FKYxlWqiHC83szOMH7rukwl0ObaiqYyiQw7kihSGw z+9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=/apfJEOciNs9lDbY3JGqeDB5QmGe2AaavcQcLbUM8y0=; b=iVz36X6tYR5ujsoxl5enJ8O4VSaRklnvJJwqM7F1zQTgcrxqFl+03ODULt4grYNcVb xezaJVk0plYWpJSVSN3s6tqtu/Fd+aqMFjFzQOAuTofZsbtdaodSmwNu1TCLgHPmA9Ps GlnKr2KyXEgkxVU0qw3DSUFrFvdBQjw3bXLuratZiOqOux7lkXQUrxeozIcomK2+cTLo NE/t289pfwWNpRlfaKYWJr4pefM0KgmzYaKvKTZUWvMHkiqUCTc5n7CuM3aSoT8fc5xL VbvPkO/uwGiOKuJwn+A+RITjIX37/jvMOvwWPptRe7Me7TwdXLbKqo+z87NilmJOSZTu nKJQ== X-Gm-Message-State: AOAM53101xOd8LcHrounzHlP3RHLe2IhZYdj4caSTfBHgR4vQukPnknk SUmDh46Bp38SCG98+xALZ200rOFqKuA= X-Google-Smtp-Source: ABdhPJyIjrQbI9uPAscI+zW539dSCnthy54r+SASGZ2sv7k7wtfj8r/v+uxP5LlV3fByUtDvEYiApg== X-Received: by 2002:a17:907:62a7:: with SMTP id nd39mr31572281ejc.502.1625757501496; Thu, 08 Jul 2021 08:18:21 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:21 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 45/48] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Date: Thu, 8 Jul 2021 17:17:45 +0200 Message-Id: <20210708151748.408754-46-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62f; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62f.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Edgar E . Iglesias" , Richard Henderson , Thomas Huth , =?utf-8?q?Alex_Benn=C3=A9e?= , =?utf-8?q?Philippe_M?= =?utf-8?q?athieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Alex Bennée We need this functionality due to: /* XRAM IRQs get ORed into a single line. */ object_initialize_child(OBJECT(s), "xram-irq-orgate", &s->lpd.xram.irq_orgate, TYPE_OR_IRQ); Fixes: a55b441b2ca ("hw/arm: versal: Add support for the XRAMs") Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson Reviewed-by: Edgar E. Iglesias Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth Message-Id: <20210707131744.26027-3-alex.bennee@linaro.org> Signed-off-by: Paolo Bonzini --- hw/arm/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index 647b5c8b43..528f71bb9d 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -368,6 +368,7 @@ config XLNX_VERSAL select UNIMP select XLNX_ZDMA select XLNX_ZYNQMP + select OR_IRQ config NPCM7XX bool From patchwork Thu Jul 8 15:17:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365419 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1C304C07E9E for ; Thu, 8 Jul 2021 15:49:38 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BE53B61607 for ; Thu, 8 Jul 2021 15:49:37 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BE53B61607 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:34366 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WHP-0006Lb-9k for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:49:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54112) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnG-0001Eb-UX for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:27 -0400 Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]:46700) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnF-0008Lt-5F for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:26 -0400 Received: by mail-ej1-x630.google.com with SMTP id c17so10206543ejk.13 for ; Thu, 08 Jul 2021 08:18:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=sI6h5k66J716vMMrZDkOf++e8ZaDHw1O6KwZgtD+eDQ=; b=OfR7L8eIScNfsU5n0Yh6hrUy+Z27phj5kztE5fmQLovB9C8VnEmfjQPvZV2aYlWuco STvb0hud/BwMA1abiZhwK/rVYZqmrol87brnoG9F7cNV1C9LWXJn7rWJSIWxsIFMh6CN 2Cg7I/6gEKNETO1uVAUszvC0/0VtCNAjiJB9tvjzO/XH7ZQqvD6k8JracZ3UHzfKlqkV f0Mo9VvFgWc7ehv0smRq+ivbnBUkdeDvQz9QCwJvCvtl7coZTutG5IqWIflaJfA3OKnz +eg6TePLKr/Rs5hVmNqbQxudQuCd6WXvVXIujXLwadCA7QPtjHojsyuwXhtbPzX8zGxz Og3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=sI6h5k66J716vMMrZDkOf++e8ZaDHw1O6KwZgtD+eDQ=; b=MgHFSfQ8WSZcNA8A8DxYX/aBnsiTtrMlen6WGq7hPtsCbYyYkoh2KlUvyXRMAliiYB CJ8GR0iXXcKomFoBMUO6BETCpRr0bU/4FnF0B3U1jiGCStt1dTPaWWuZJbHDrVl2ttWt WpV+VS1kxAgr4LJB37yNi72rCu735TcfQokeElEBj0vWTtmCRS9tzu8J1HfTN38w6CcK LDFaFlANYNDCboK6FuuYYgdH8+4Q+fGYMtryTaPbozHrMvp250o1b3O662+twYQ0LMCs 9XTZCfCI2XPl/jx5VF4YGEMlbhVGWyp/KXJdh1VZLPn2AputQyscfvf/v3rigtn2FiON 7D+w== X-Gm-Message-State: AOAM533d+LAQD8ukjFEnJ3uYs7Xp8s5zSJoevxvuRH91MazTnTcrefLk tXK07Fe82m8Jj1CFslJajnZWKlqBQ/I= X-Google-Smtp-Source: ABdhPJz6YZqiW0UDElpx7y0nAxR4tJEbYTTI7NjJWvHhFtT2/W7FMc5hX7KAS2VgHrF6I2x6GyXF5Q== X-Received: by 2002:a17:906:b851:: with SMTP id ga17mr31931473ejb.86.1625757502202; Thu, 08 Jul 2021 08:18:22 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:21 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 46/48] hw/arm: move CONFIG_V7M out of default-devices Date: Thu, 8 Jul 2021 17:17:46 +0200 Message-Id: <20210708151748.408754-47-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::630; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x630.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Thomas Huth , Richard Henderson , =?utf-8?q?Alex_Benn=C3=A9?= =?utf-8?q?e?= Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Alex Bennée We currently select CONFIG_V7M for a bunch of our m-profile devices. The last sticking point is translate.c which cannot be compiled without expecting v7m support. Express this dependency in Kconfig rather than in default devices as a stepping stone to a fully configurable translate.c. While we are at it we also need to select ARM_COMPATIBLE_SEMIHOSTING as that is implied for M profile machines. Signed-off-by: Alex Bennée Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Thomas Huth Acked-by: Richard Henderson Message-Id: <20210707131744.26027-4-alex.bennee@linaro.org> Signed-off-by: Paolo Bonzini --- default-configs/devices/arm-softmmu.mak | 3 --- hw/arm/Kconfig | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/default-configs/devices/arm-softmmu.mak b/default-configs/devices/arm-softmmu.mak index 0500156a0c..4114aa9e35 100644 --- a/default-configs/devices/arm-softmmu.mak +++ b/default-configs/devices/arm-softmmu.mak @@ -1,8 +1,5 @@ # Default configuration for arm-softmmu -# TODO: ARM_V7M is currently always required - make this more flexible! -CONFIG_ARM_V7M=y - # CONFIG_PCI_DEVICES=n # CONFIG_TEST_DEVICES=n diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index 528f71bb9d..062fe94b64 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -296,7 +296,10 @@ config ZYNQ config ARM_V7M bool + # currently v7M must be included in a TCG build due to translate.c + default y if TCG && (ARM || AARCH64) select PTIMER + select ARM_COMPATIBLE_SEMIHOSTING config ALLWINNER_A10 bool From patchwork Thu Jul 8 15:17:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365581 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-21.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5F5B1C07E96 for ; Thu, 8 Jul 2021 15:54:57 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BC98D61874 for ; Thu, 8 Jul 2021 15:54:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BC98D61874 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:51806 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WMZ-00015m-Ll for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:54:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54132) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnK-0001Fz-2N for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:31 -0400 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]:44765) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnF-0008Mb-FG for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:29 -0400 Received: by mail-ej1-x62f.google.com with SMTP id he13so10233258ejc.11 for ; Thu, 08 Jul 2021 08:18:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ajfvWvP+Cqa84BHwbf+eVVPW7ItoTwjYAhxl7pk30u0=; b=Z31EKN/8V7TaR9cnuIJqG/NhmUuYnNuvyq5OmWLy1q7/m6IyHcpkQay90gYsP43Yrl FvceT/ti6oJ1qE91VWFHueVkNeSEm2fdsrk47whPcybLDpB19HTanF8UAzIMCOggOUA1 Idd9k1csZuctEN7qtt7jRR3LA9kUQC9gPpjOFTvGIasJUXtTVPCpygjhptbDdc3igwKj kzEC/7UVqlaXOo/2o0nzX7oc85gKykcaoTgcTBi58JD9gjdp75F/gM/JiNedX50Mjjal HGbYzEld6UD8Be3qIn2ZA3M4A7ODqRbgzq0355lAFBlKbqg5Yx6ttWZLU69CI5meNMez wU3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ajfvWvP+Cqa84BHwbf+eVVPW7ItoTwjYAhxl7pk30u0=; b=ZwuW+DQPBtIn0kVw5v59O6OosXomjO7iTWn8Vxo+j2EA3F5m236W+IJ5HOakwhb2UY NfImshy5cY61By335uZqNmo5XimBfW9V5p1dW4Ae0xtTIfMZjruc+GpDGHTnmS3xv6GK Kx9V3VHj7zeOBus55nQKFB/nsftxCIgw39hcfMumjru+UsABdSHsDvMXrLHNOkP7aPgz f1Dt2rCw8EkGZ8zVSfkn1CdUSpG79DwfIcEVinHX5itKRE2AaPK18sY6BGBstfL41gxY mtbcjQeSQdMwtF9ufVJmtBQzI5Lk/0nDxv8+hvkdZiE5PcM0mnc4rgppD/G278ervA4f yLNg== X-Gm-Message-State: AOAM533ZZAKGCl2N3kyo8cTmv3Q3X43nVk2ElFrw8K7Ft8z4V96ygvwn djls49JhiaX56Bi3XoNypirjqWnFDLk= X-Google-Smtp-Source: ABdhPJx0jNSTDD4U5fyepSIoPQa6UXJ0abSfE9UY8hyJTaeH3GV5qAUqFaz0dKFByNoH/5NQT0c3nA== X-Received: by 2002:a17:907:97c3:: with SMTP id js3mr32270563ejc.114.1625757503031; Thu, 08 Jul 2021 08:18:23 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:22 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 47/48] configs: rename default-configs to configs and reorganise Date: Thu, 8 Jul 2021 17:17:47 +0200 Message-Id: <20210708151748.408754-48-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::62f; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x62f.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Richard Henderson , =?utf-8?q?Alex_Benn?= =?utf-8?q?=C3=A9e?= Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Alex Bennée In preparation for offering variation to our build configurations lets move everything and rename it to default. Common included base configs are also renamed. During the cleanup the stale usb.mak and pci.mak references were removed from MAINTAINERS. Signed-off-by: Alex Bennée Cc: Paolo Bonzini Reviewed-by: Richard Henderson Message-Id: <20210707131744.26027-5-alex.bennee@linaro.org> Signed-off-by: Paolo Bonzini --- MAINTAINERS | 22 +++++++++---------- .../devices/aarch64-softmmu/default.mak | 2 +- .../devices/alpha-softmmu/default.mak | 0 .../devices/arm-softmmu/default.mak | 0 .../devices/avr-softmmu/default.mak | 0 .../devices/cris-softmmu/default.mak | 0 .../devices/hppa-softmmu/default.mak | 0 .../devices/i386-softmmu/default.mak | 0 .../devices/m68k-softmmu/default.mak | 0 .../devices/microblaze-softmmu/default.mak | 0 .../devices/microblazeel-softmmu/default.mak | 2 +- .../devices/mips-softmmu/common.mak | 0 .../devices/mips-softmmu/default.mak | 2 +- .../devices/mips64-softmmu/default.mak | 2 +- .../devices/mips64el-softmmu/default.mak | 2 +- .../devices/mipsel-softmmu/default.mak | 2 +- .../devices/nios2-softmmu/default.mak | 0 .../devices/or1k-softmmu/default.mak | 0 .../devices/ppc-softmmu/default.mak | 0 .../devices/ppc64-softmmu/default.mak | 2 +- .../devices/riscv32-softmmu/default.mak | 0 .../devices/riscv64-softmmu/default.mak | 0 .../devices/rx-softmmu/default.mak | 0 .../devices/s390x-softmmu/default.mak | 0 .../devices/sh4-softmmu/default.mak | 0 .../devices/sh4eb-softmmu/default.mak | 2 +- .../devices/sparc-softmmu/default.mak | 0 .../devices/sparc64-softmmu/default.mak | 0 .../devices/tricore-softmmu/default.mak | 0 .../devices/x86_64-softmmu/default.mak | 2 +- .../devices/xtensa-softmmu/default.mak | 0 configs/devices/xtensaeb-softmmu/default.mak | 3 +++ .../targets/aarch64-linux-user.mak | 0 .../targets/aarch64-softmmu.mak | 0 .../targets/aarch64_be-linux-user.mak | 0 .../targets/alpha-linux-user.mak | 0 .../targets/alpha-softmmu.mak | 0 .../targets/arm-linux-user.mak | 0 .../targets/arm-softmmu.mak | 0 .../targets/armeb-linux-user.mak | 0 .../targets/avr-softmmu.mak | 0 .../targets/cris-linux-user.mak | 0 .../targets/cris-softmmu.mak | 0 .../targets/hexagon-linux-user.mak | 0 .../targets/hppa-linux-user.mak | 0 .../targets/hppa-softmmu.mak | 0 .../targets/i386-bsd-user.mak | 0 .../targets/i386-linux-user.mak | 0 .../targets/i386-softmmu.mak | 0 .../targets/m68k-linux-user.mak | 0 .../targets/m68k-softmmu.mak | 0 .../targets/microblaze-linux-user.mak | 0 .../targets/microblaze-softmmu.mak | 0 .../targets/microblazeel-linux-user.mak | 0 .../targets/microblazeel-softmmu.mak | 0 .../targets/mips-linux-user.mak | 0 .../targets/mips-softmmu.mak | 0 .../targets/mips64-linux-user.mak | 0 .../targets/mips64-softmmu.mak | 0 .../targets/mips64el-linux-user.mak | 0 .../targets/mips64el-softmmu.mak | 0 .../targets/mipsel-linux-user.mak | 0 .../targets/mipsel-softmmu.mak | 0 .../targets/mipsn32-linux-user.mak | 0 .../targets/mipsn32el-linux-user.mak | 0 .../targets/nios2-linux-user.mak | 0 .../targets/nios2-softmmu.mak | 0 .../targets/or1k-linux-user.mak | 0 .../targets/or1k-softmmu.mak | 0 .../targets/ppc-linux-user.mak | 0 .../targets/ppc-softmmu.mak | 0 .../targets/ppc64-linux-user.mak | 0 .../targets/ppc64-softmmu.mak | 0 .../targets/ppc64abi32-linux-user.mak | 0 .../targets/ppc64le-linux-user.mak | 0 .../targets/riscv32-linux-user.mak | 0 .../targets/riscv32-softmmu.mak | 0 .../targets/riscv64-linux-user.mak | 0 .../targets/riscv64-softmmu.mak | 0 .../targets/rx-softmmu.mak | 0 .../targets/s390x-linux-user.mak | 0 .../targets/s390x-softmmu.mak | 0 .../targets/sh4-linux-user.mak | 0 .../targets/sh4-softmmu.mak | 0 .../targets/sh4eb-linux-user.mak | 0 .../targets/sh4eb-softmmu.mak | 0 .../targets/sparc-linux-user.mak | 0 .../targets/sparc-softmmu.mak | 0 .../targets/sparc32plus-linux-user.mak | 0 .../targets/sparc64-linux-user.mak | 0 .../targets/sparc64-softmmu.mak | 0 .../targets/tricore-softmmu.mak | 0 .../targets/x86_64-bsd-user.mak | 0 .../targets/x86_64-linux-user.mak | 0 .../targets/x86_64-softmmu.mak | 0 .../targets/xtensa-linux-user.mak | 0 .../targets/xtensa-softmmu.mak | 0 .../targets/xtensaeb-linux-user.mak | 0 .../targets/xtensaeb-softmmu.mak | 0 configure | 6 ++--- default-configs/devices/xtensaeb-softmmu.mak | 3 --- meson.build | 4 ++-- tests/Makefile.include | 2 +- 103 files changed, 28 insertions(+), 30 deletions(-) rename default-configs/devices/aarch64-softmmu.mak => configs/devices/aarch64-softmmu/default.mak (82%) rename default-configs/devices/alpha-softmmu.mak => configs/devices/alpha-softmmu/default.mak (100%) rename default-configs/devices/arm-softmmu.mak => configs/devices/arm-softmmu/default.mak (100%) rename default-configs/devices/avr-softmmu.mak => configs/devices/avr-softmmu/default.mak (100%) rename default-configs/devices/cris-softmmu.mak => configs/devices/cris-softmmu/default.mak (100%) rename default-configs/devices/hppa-softmmu.mak => configs/devices/hppa-softmmu/default.mak (100%) rename default-configs/devices/i386-softmmu.mak => configs/devices/i386-softmmu/default.mak (100%) rename default-configs/devices/m68k-softmmu.mak => configs/devices/m68k-softmmu/default.mak (100%) rename default-configs/devices/microblaze-softmmu.mak => configs/devices/microblaze-softmmu/default.mak (100%) rename default-configs/devices/microblazeel-softmmu.mak => configs/devices/microblazeel-softmmu/default.mak (54%) rename default-configs/devices/mips-softmmu-common.mak => configs/devices/mips-softmmu/common.mak (100%) rename default-configs/devices/mips-softmmu.mak => configs/devices/mips-softmmu/default.mak (56%) rename default-configs/devices/mips64-softmmu.mak => configs/devices/mips64-softmmu/default.mak (62%) rename default-configs/devices/mips64el-softmmu.mak => configs/devices/mips64el-softmmu/default.mak (88%) rename default-configs/devices/mipsel-softmmu.mak => configs/devices/mipsel-softmmu/default.mak (55%) rename default-configs/devices/nios2-softmmu.mak => configs/devices/nios2-softmmu/default.mak (100%) rename default-configs/devices/or1k-softmmu.mak => configs/devices/or1k-softmmu/default.mak (100%) rename default-configs/devices/ppc-softmmu.mak => configs/devices/ppc-softmmu/default.mak (100%) rename default-configs/devices/ppc64-softmmu.mak => configs/devices/ppc64-softmmu/default.mak (79%) rename default-configs/devices/riscv32-softmmu.mak => configs/devices/riscv32-softmmu/default.mak (100%) rename default-configs/devices/riscv64-softmmu.mak => configs/devices/riscv64-softmmu/default.mak (100%) rename default-configs/devices/rx-softmmu.mak => configs/devices/rx-softmmu/default.mak (100%) rename default-configs/devices/s390x-softmmu.mak => configs/devices/s390x-softmmu/default.mak (100%) rename default-configs/devices/sh4-softmmu.mak => configs/devices/sh4-softmmu/default.mak (100%) rename default-configs/devices/sh4eb-softmmu.mak => configs/devices/sh4eb-softmmu/default.mak (55%) rename default-configs/devices/sparc-softmmu.mak => configs/devices/sparc-softmmu/default.mak (100%) rename default-configs/devices/sparc64-softmmu.mak => configs/devices/sparc64-softmmu/default.mak (100%) rename default-configs/devices/tricore-softmmu.mak => configs/devices/tricore-softmmu/default.mak (100%) rename default-configs/devices/x86_64-softmmu.mak => configs/devices/x86_64-softmmu/default.mak (55%) rename default-configs/devices/xtensa-softmmu.mak => configs/devices/xtensa-softmmu/default.mak (100%) create mode 100644 configs/devices/xtensaeb-softmmu/default.mak rename {default-configs => configs}/targets/aarch64-linux-user.mak (100%) rename {default-configs => configs}/targets/aarch64-softmmu.mak (100%) rename {default-configs => configs}/targets/aarch64_be-linux-user.mak (100%) rename {default-configs => configs}/targets/alpha-linux-user.mak (100%) rename {default-configs => configs}/targets/alpha-softmmu.mak (100%) rename {default-configs => configs}/targets/arm-linux-user.mak (100%) rename {default-configs => configs}/targets/arm-softmmu.mak (100%) rename {default-configs => configs}/targets/armeb-linux-user.mak (100%) rename {default-configs => configs}/targets/avr-softmmu.mak (100%) rename {default-configs => configs}/targets/cris-linux-user.mak (100%) rename {default-configs => configs}/targets/cris-softmmu.mak (100%) rename {default-configs => configs}/targets/hexagon-linux-user.mak (100%) rename {default-configs => configs}/targets/hppa-linux-user.mak (100%) rename {default-configs => configs}/targets/hppa-softmmu.mak (100%) rename {default-configs => configs}/targets/i386-bsd-user.mak (100%) rename {default-configs => configs}/targets/i386-linux-user.mak (100%) rename {default-configs => configs}/targets/i386-softmmu.mak (100%) rename {default-configs => configs}/targets/m68k-linux-user.mak (100%) rename {default-configs => configs}/targets/m68k-softmmu.mak (100%) rename {default-configs => configs}/targets/microblaze-linux-user.mak (100%) rename {default-configs => configs}/targets/microblaze-softmmu.mak (100%) rename {default-configs => configs}/targets/microblazeel-linux-user.mak (100%) rename {default-configs => configs}/targets/microblazeel-softmmu.mak (100%) rename {default-configs => configs}/targets/mips-linux-user.mak (100%) rename {default-configs => configs}/targets/mips-softmmu.mak (100%) rename {default-configs => configs}/targets/mips64-linux-user.mak (100%) rename {default-configs => configs}/targets/mips64-softmmu.mak (100%) rename {default-configs => configs}/targets/mips64el-linux-user.mak (100%) rename {default-configs => configs}/targets/mips64el-softmmu.mak (100%) rename {default-configs => configs}/targets/mipsel-linux-user.mak (100%) rename {default-configs => configs}/targets/mipsel-softmmu.mak (100%) rename {default-configs => configs}/targets/mipsn32-linux-user.mak (100%) rename {default-configs => configs}/targets/mipsn32el-linux-user.mak (100%) rename {default-configs => configs}/targets/nios2-linux-user.mak (100%) rename {default-configs => configs}/targets/nios2-softmmu.mak (100%) rename {default-configs => configs}/targets/or1k-linux-user.mak (100%) rename {default-configs => configs}/targets/or1k-softmmu.mak (100%) rename {default-configs => configs}/targets/ppc-linux-user.mak (100%) rename {default-configs => configs}/targets/ppc-softmmu.mak (100%) rename {default-configs => configs}/targets/ppc64-linux-user.mak (100%) rename {default-configs => configs}/targets/ppc64-softmmu.mak (100%) rename {default-configs => configs}/targets/ppc64abi32-linux-user.mak (100%) rename {default-configs => configs}/targets/ppc64le-linux-user.mak (100%) rename {default-configs => configs}/targets/riscv32-linux-user.mak (100%) rename {default-configs => configs}/targets/riscv32-softmmu.mak (100%) rename {default-configs => configs}/targets/riscv64-linux-user.mak (100%) rename {default-configs => configs}/targets/riscv64-softmmu.mak (100%) rename {default-configs => configs}/targets/rx-softmmu.mak (100%) rename {default-configs => configs}/targets/s390x-linux-user.mak (100%) rename {default-configs => configs}/targets/s390x-softmmu.mak (100%) rename {default-configs => configs}/targets/sh4-linux-user.mak (100%) rename {default-configs => configs}/targets/sh4-softmmu.mak (100%) rename {default-configs => configs}/targets/sh4eb-linux-user.mak (100%) rename {default-configs => configs}/targets/sh4eb-softmmu.mak (100%) rename {default-configs => configs}/targets/sparc-linux-user.mak (100%) rename {default-configs => configs}/targets/sparc-softmmu.mak (100%) rename {default-configs => configs}/targets/sparc32plus-linux-user.mak (100%) rename {default-configs => configs}/targets/sparc64-linux-user.mak (100%) rename {default-configs => configs}/targets/sparc64-softmmu.mak (100%) rename {default-configs => configs}/targets/tricore-softmmu.mak (100%) rename {default-configs => configs}/targets/x86_64-bsd-user.mak (100%) rename {default-configs => configs}/targets/x86_64-linux-user.mak (100%) rename {default-configs => configs}/targets/x86_64-softmmu.mak (100%) rename {default-configs => configs}/targets/xtensa-linux-user.mak (100%) rename {default-configs => configs}/targets/xtensa-softmmu.mak (100%) rename {default-configs => configs}/targets/xtensaeb-linux-user.mak (100%) rename {default-configs => configs}/targets/xtensaeb-softmmu.mak (100%) delete mode 100644 default-configs/devices/xtensaeb-softmmu.mak diff --git a/MAINTAINERS b/MAINTAINERS index 684142e12e..1810c082ca 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -87,7 +87,7 @@ S390 general architecture support M: Cornelia Huck M: Thomas Huth S: Supported -F: default-configs/*/s390x-softmmu.mak +F: configs/devices/s390x-softmmu/default.mak F: gdb-xml/s390*.xml F: hw/char/sclp*.[hc] F: hw/char/terminal3270.c @@ -196,7 +196,7 @@ F: target/hexagon/ F: linux-user/hexagon/ F: tests/tcg/hexagon/ F: disas/hexagon.c -F: default-configs/targets/hexagon-linux-user.mak +F: configs/targets/hexagon-linux-user/default.mak F: docker/dockerfiles/debian-hexagon-cross.docker F: docker/dockerfiles/debian-hexagon-cross.docker.d/build-toolchain.sh @@ -229,7 +229,7 @@ R: Jiaxun Yang R: Aleksandar Rikalo S: Odd Fixes F: target/mips/ -F: default-configs/*/*mips* +F: configs/devices/mips*/* F: disas/mips.c F: docs/system/cpu-models-mips.rst.inc F: hw/intc/mips_gic.c @@ -255,7 +255,7 @@ S: Maintained F: target/nios2/ F: hw/nios2/ F: disas/nios2.c -F: default-configs/*/nios2-softmmu.mak +F: configs/devices/nios2-softmmu/default.mak OpenRISC TCG CPUs M: Stafford Horne @@ -342,7 +342,7 @@ F: hw/xtensa/ F: tests/tcg/xtensa/ F: disas/xtensa.c F: include/hw/xtensa/xtensa-isa.h -F: default-configs/*/xtensa*.mak +F: configs/devices/xtensa*/default.mak TriCore TCG CPUs M: Bastian Koppelmann @@ -1041,7 +1041,7 @@ AVR Machines AVR MCUs M: Michael Rolnik S: Maintained -F: default-configs/*/avr-softmmu.mak +F: configs/devices/avr-softmmu/default.mak F: hw/avr/ F: include/hw/char/avr_usart.h F: hw/char/avr_usart.c @@ -1069,7 +1069,7 @@ HP B160L M: Richard Henderson R: Helge Deller S: Odd Fixes -F: default-configs/*/hppa-softmmu.mak +F: configs/devices/hppa-softmmu/default.mak F: hw/hppa/ F: pc-bios/hppa-firmware.img @@ -1496,7 +1496,7 @@ F: hw/s390x/ F: include/hw/s390x/ F: hw/watchdog/wdt_diag288.c F: include/hw/watchdog/wdt_diag288.h -F: default-configs/*/s390x-softmmu.mak +F: configs/devices/s390x-softmmu/default.mak F: tests/acceptance/machine_s390_ccw_virtio.py T: git https://gitlab.com/cohuck/qemu.git s390-next T: git https://github.com/borntraeger/qemu.git s390-next @@ -1703,7 +1703,6 @@ F: hw/pci-bridge/* F: qapi/pci.json F: docs/pci* F: docs/specs/*pci* -F: default-configs/pci.mak ACPI/SMBIOS M: Michael S. Tsirkin @@ -1808,7 +1807,6 @@ F: docs/usb2.txt F: docs/usb-storage.txt F: include/hw/usb.h F: include/hw/usb/ -F: default-configs/usb.mak USB (serial adapter) M: Gerd Hoffmann @@ -2958,14 +2956,14 @@ M: Warner Losh R: Kyle Evans S: Maintained F: bsd-user/ -F: default-configs/targets/*-bsd-user.mak +F: configs/targets/*-bsd-user.mak T: git https://github.com/qemu-bsd-user/qemu-bsd-user bsd-user-rebase-3.1 Linux user M: Laurent Vivier S: Maintained F: linux-user/ -F: default-configs/targets/*linux-user.mak +F: configs/targets/*linux-user.mak F: scripts/qemu-binfmt-conf.sh F: scripts/update-syscalltbl.sh F: scripts/update-mips-syscall-args.sh diff --git a/default-configs/devices/aarch64-softmmu.mak b/configs/devices/aarch64-softmmu/default.mak similarity index 82% rename from default-configs/devices/aarch64-softmmu.mak rename to configs/devices/aarch64-softmmu/default.mak index 958b1e08e4..cf43ac8da1 100644 --- a/default-configs/devices/aarch64-softmmu.mak +++ b/configs/devices/aarch64-softmmu/default.mak @@ -1,7 +1,7 @@ # Default configuration for aarch64-softmmu # We support all the 32 bit boards so need all their config -include arm-softmmu.mak +include ../arm-softmmu/default.mak CONFIG_XLNX_ZYNQMP_ARM=y CONFIG_XLNX_VERSAL=y diff --git a/default-configs/devices/alpha-softmmu.mak b/configs/devices/alpha-softmmu/default.mak similarity index 100% rename from default-configs/devices/alpha-softmmu.mak rename to configs/devices/alpha-softmmu/default.mak diff --git a/default-configs/devices/arm-softmmu.mak b/configs/devices/arm-softmmu/default.mak similarity index 100% rename from default-configs/devices/arm-softmmu.mak rename to configs/devices/arm-softmmu/default.mak diff --git a/default-configs/devices/avr-softmmu.mak b/configs/devices/avr-softmmu/default.mak similarity index 100% rename from default-configs/devices/avr-softmmu.mak rename to configs/devices/avr-softmmu/default.mak diff --git a/default-configs/devices/cris-softmmu.mak b/configs/devices/cris-softmmu/default.mak similarity index 100% rename from default-configs/devices/cris-softmmu.mak rename to configs/devices/cris-softmmu/default.mak diff --git a/default-configs/devices/hppa-softmmu.mak b/configs/devices/hppa-softmmu/default.mak similarity index 100% rename from default-configs/devices/hppa-softmmu.mak rename to configs/devices/hppa-softmmu/default.mak diff --git a/default-configs/devices/i386-softmmu.mak b/configs/devices/i386-softmmu/default.mak similarity index 100% rename from default-configs/devices/i386-softmmu.mak rename to configs/devices/i386-softmmu/default.mak diff --git a/default-configs/devices/m68k-softmmu.mak b/configs/devices/m68k-softmmu/default.mak similarity index 100% rename from default-configs/devices/m68k-softmmu.mak rename to configs/devices/m68k-softmmu/default.mak diff --git a/default-configs/devices/microblaze-softmmu.mak b/configs/devices/microblaze-softmmu/default.mak similarity index 100% rename from default-configs/devices/microblaze-softmmu.mak rename to configs/devices/microblaze-softmmu/default.mak diff --git a/default-configs/devices/microblazeel-softmmu.mak b/configs/devices/microblazeel-softmmu/default.mak similarity index 54% rename from default-configs/devices/microblazeel-softmmu.mak rename to configs/devices/microblazeel-softmmu/default.mak index 2fcf442fc7..29f7f13816 100644 --- a/default-configs/devices/microblazeel-softmmu.mak +++ b/configs/devices/microblazeel-softmmu/default.mak @@ -1,3 +1,3 @@ # Default configuration for microblazeel-softmmu -include microblaze-softmmu.mak +include ../microblaze-softmmu/default.mak diff --git a/default-configs/devices/mips-softmmu-common.mak b/configs/devices/mips-softmmu/common.mak similarity index 100% rename from default-configs/devices/mips-softmmu-common.mak rename to configs/devices/mips-softmmu/common.mak diff --git a/default-configs/devices/mips-softmmu.mak b/configs/devices/mips-softmmu/default.mak similarity index 56% rename from default-configs/devices/mips-softmmu.mak rename to configs/devices/mips-softmmu/default.mak index 9fede6e00f..c23d95a83a 100644 --- a/default-configs/devices/mips-softmmu.mak +++ b/configs/devices/mips-softmmu/default.mak @@ -1,3 +1,3 @@ # Default configuration for mips-softmmu -include mips-softmmu-common.mak +include common.mak diff --git a/default-configs/devices/mips64-softmmu.mak b/configs/devices/mips64-softmmu/default.mak similarity index 62% rename from default-configs/devices/mips64-softmmu.mak rename to configs/devices/mips64-softmmu/default.mak index a169738635..566672f3c2 100644 --- a/default-configs/devices/mips64-softmmu.mak +++ b/configs/devices/mips64-softmmu/default.mak @@ -1,4 +1,4 @@ # Default configuration for mips64-softmmu -include mips-softmmu-common.mak +include ../mips-softmmu/common.mak CONFIG_JAZZ=y diff --git a/default-configs/devices/mips64el-softmmu.mak b/configs/devices/mips64el-softmmu/default.mak similarity index 88% rename from default-configs/devices/mips64el-softmmu.mak rename to configs/devices/mips64el-softmmu/default.mak index 26c660a05c..c511a061ba 100644 --- a/default-configs/devices/mips64el-softmmu.mak +++ b/configs/devices/mips64el-softmmu/default.mak @@ -1,6 +1,6 @@ # Default configuration for mips64el-softmmu -include mips-softmmu-common.mak +include ../mips-softmmu/common.mak CONFIG_IDE_VIA=y CONFIG_FULOONG=y CONFIG_LOONGSON3V=y diff --git a/default-configs/devices/mipsel-softmmu.mak b/configs/devices/mipsel-softmmu/default.mak similarity index 55% rename from default-configs/devices/mipsel-softmmu.mak rename to configs/devices/mipsel-softmmu/default.mak index a7f6059484..009ccb0e2d 100644 --- a/default-configs/devices/mipsel-softmmu.mak +++ b/configs/devices/mipsel-softmmu/default.mak @@ -1,3 +1,3 @@ # Default configuration for mipsel-softmmu -include mips-softmmu-common.mak +include ../mips-softmmu/common.mak diff --git a/default-configs/devices/nios2-softmmu.mak b/configs/devices/nios2-softmmu/default.mak similarity index 100% rename from default-configs/devices/nios2-softmmu.mak rename to configs/devices/nios2-softmmu/default.mak diff --git a/default-configs/devices/or1k-softmmu.mak b/configs/devices/or1k-softmmu/default.mak similarity index 100% rename from default-configs/devices/or1k-softmmu.mak rename to configs/devices/or1k-softmmu/default.mak diff --git a/default-configs/devices/ppc-softmmu.mak b/configs/devices/ppc-softmmu/default.mak similarity index 100% rename from default-configs/devices/ppc-softmmu.mak rename to configs/devices/ppc-softmmu/default.mak diff --git a/default-configs/devices/ppc64-softmmu.mak b/configs/devices/ppc64-softmmu/default.mak similarity index 79% rename from default-configs/devices/ppc64-softmmu.mak rename to configs/devices/ppc64-softmmu/default.mak index cca52665d9..b90e5bf455 100644 --- a/default-configs/devices/ppc64-softmmu.mak +++ b/configs/devices/ppc64-softmmu/default.mak @@ -1,7 +1,7 @@ # Default configuration for ppc64-softmmu # Include all 32-bit boards -include ppc-softmmu.mak +include ../ppc-softmmu/default.mak # For PowerNV CONFIG_POWERNV=y diff --git a/default-configs/devices/riscv32-softmmu.mak b/configs/devices/riscv32-softmmu/default.mak similarity index 100% rename from default-configs/devices/riscv32-softmmu.mak rename to configs/devices/riscv32-softmmu/default.mak diff --git a/default-configs/devices/riscv64-softmmu.mak b/configs/devices/riscv64-softmmu/default.mak similarity index 100% rename from default-configs/devices/riscv64-softmmu.mak rename to configs/devices/riscv64-softmmu/default.mak diff --git a/default-configs/devices/rx-softmmu.mak b/configs/devices/rx-softmmu/default.mak similarity index 100% rename from default-configs/devices/rx-softmmu.mak rename to configs/devices/rx-softmmu/default.mak diff --git a/default-configs/devices/s390x-softmmu.mak b/configs/devices/s390x-softmmu/default.mak similarity index 100% rename from default-configs/devices/s390x-softmmu.mak rename to configs/devices/s390x-softmmu/default.mak diff --git a/default-configs/devices/sh4-softmmu.mak b/configs/devices/sh4-softmmu/default.mak similarity index 100% rename from default-configs/devices/sh4-softmmu.mak rename to configs/devices/sh4-softmmu/default.mak diff --git a/default-configs/devices/sh4eb-softmmu.mak b/configs/devices/sh4eb-softmmu/default.mak similarity index 55% rename from default-configs/devices/sh4eb-softmmu.mak rename to configs/devices/sh4eb-softmmu/default.mak index 522a7a50fa..f18d1f6519 100644 --- a/default-configs/devices/sh4eb-softmmu.mak +++ b/configs/devices/sh4eb-softmmu/default.mak @@ -1,3 +1,3 @@ # Default configuration for sh4eb-softmmu -include sh4-softmmu.mak +include ../sh4-softmmu/default.mak diff --git a/default-configs/devices/sparc-softmmu.mak b/configs/devices/sparc-softmmu/default.mak similarity index 100% rename from default-configs/devices/sparc-softmmu.mak rename to configs/devices/sparc-softmmu/default.mak diff --git a/default-configs/devices/sparc64-softmmu.mak b/configs/devices/sparc64-softmmu/default.mak similarity index 100% rename from default-configs/devices/sparc64-softmmu.mak rename to configs/devices/sparc64-softmmu/default.mak diff --git a/default-configs/devices/tricore-softmmu.mak b/configs/devices/tricore-softmmu/default.mak similarity index 100% rename from default-configs/devices/tricore-softmmu.mak rename to configs/devices/tricore-softmmu/default.mak diff --git a/default-configs/devices/x86_64-softmmu.mak b/configs/devices/x86_64-softmmu/default.mak similarity index 55% rename from default-configs/devices/x86_64-softmmu.mak rename to configs/devices/x86_64-softmmu/default.mak index 64b2ee2960..ddfc2ea626 100644 --- a/default-configs/devices/x86_64-softmmu.mak +++ b/configs/devices/x86_64-softmmu/default.mak @@ -1,3 +1,3 @@ # Default configuration for x86_64-softmmu -include i386-softmmu.mak +include ../i386-softmmu/default.mak diff --git a/default-configs/devices/xtensa-softmmu.mak b/configs/devices/xtensa-softmmu/default.mak similarity index 100% rename from default-configs/devices/xtensa-softmmu.mak rename to configs/devices/xtensa-softmmu/default.mak diff --git a/configs/devices/xtensaeb-softmmu/default.mak b/configs/devices/xtensaeb-softmmu/default.mak new file mode 100644 index 0000000000..00eafcc292 --- /dev/null +++ b/configs/devices/xtensaeb-softmmu/default.mak @@ -0,0 +1,3 @@ +# Default configuration for Xtensa + +include ../xtensa-softmmu/default.mak diff --git a/default-configs/targets/aarch64-linux-user.mak b/configs/targets/aarch64-linux-user.mak similarity index 100% rename from default-configs/targets/aarch64-linux-user.mak rename to configs/targets/aarch64-linux-user.mak diff --git a/default-configs/targets/aarch64-softmmu.mak b/configs/targets/aarch64-softmmu.mak similarity index 100% rename from default-configs/targets/aarch64-softmmu.mak rename to configs/targets/aarch64-softmmu.mak diff --git a/default-configs/targets/aarch64_be-linux-user.mak b/configs/targets/aarch64_be-linux-user.mak similarity index 100% rename from default-configs/targets/aarch64_be-linux-user.mak rename to configs/targets/aarch64_be-linux-user.mak diff --git a/default-configs/targets/alpha-linux-user.mak b/configs/targets/alpha-linux-user.mak similarity index 100% rename from default-configs/targets/alpha-linux-user.mak rename to configs/targets/alpha-linux-user.mak diff --git a/default-configs/targets/alpha-softmmu.mak b/configs/targets/alpha-softmmu.mak similarity index 100% rename from default-configs/targets/alpha-softmmu.mak rename to configs/targets/alpha-softmmu.mak diff --git a/default-configs/targets/arm-linux-user.mak b/configs/targets/arm-linux-user.mak similarity index 100% rename from default-configs/targets/arm-linux-user.mak rename to configs/targets/arm-linux-user.mak diff --git a/default-configs/targets/arm-softmmu.mak b/configs/targets/arm-softmmu.mak similarity index 100% rename from default-configs/targets/arm-softmmu.mak rename to configs/targets/arm-softmmu.mak diff --git a/default-configs/targets/armeb-linux-user.mak b/configs/targets/armeb-linux-user.mak similarity index 100% rename from default-configs/targets/armeb-linux-user.mak rename to configs/targets/armeb-linux-user.mak diff --git a/default-configs/targets/avr-softmmu.mak b/configs/targets/avr-softmmu.mak similarity index 100% rename from default-configs/targets/avr-softmmu.mak rename to configs/targets/avr-softmmu.mak diff --git a/default-configs/targets/cris-linux-user.mak b/configs/targets/cris-linux-user.mak similarity index 100% rename from default-configs/targets/cris-linux-user.mak rename to configs/targets/cris-linux-user.mak diff --git a/default-configs/targets/cris-softmmu.mak b/configs/targets/cris-softmmu.mak similarity index 100% rename from default-configs/targets/cris-softmmu.mak rename to configs/targets/cris-softmmu.mak diff --git a/default-configs/targets/hexagon-linux-user.mak b/configs/targets/hexagon-linux-user.mak similarity index 100% rename from default-configs/targets/hexagon-linux-user.mak rename to configs/targets/hexagon-linux-user.mak diff --git a/default-configs/targets/hppa-linux-user.mak b/configs/targets/hppa-linux-user.mak similarity index 100% rename from default-configs/targets/hppa-linux-user.mak rename to configs/targets/hppa-linux-user.mak diff --git a/default-configs/targets/hppa-softmmu.mak b/configs/targets/hppa-softmmu.mak similarity index 100% rename from default-configs/targets/hppa-softmmu.mak rename to configs/targets/hppa-softmmu.mak diff --git a/default-configs/targets/i386-bsd-user.mak b/configs/targets/i386-bsd-user.mak similarity index 100% rename from default-configs/targets/i386-bsd-user.mak rename to configs/targets/i386-bsd-user.mak diff --git a/default-configs/targets/i386-linux-user.mak b/configs/targets/i386-linux-user.mak similarity index 100% rename from default-configs/targets/i386-linux-user.mak rename to configs/targets/i386-linux-user.mak diff --git a/default-configs/targets/i386-softmmu.mak b/configs/targets/i386-softmmu.mak similarity index 100% rename from default-configs/targets/i386-softmmu.mak rename to configs/targets/i386-softmmu.mak diff --git a/default-configs/targets/m68k-linux-user.mak b/configs/targets/m68k-linux-user.mak similarity index 100% rename from default-configs/targets/m68k-linux-user.mak rename to configs/targets/m68k-linux-user.mak diff --git a/default-configs/targets/m68k-softmmu.mak b/configs/targets/m68k-softmmu.mak similarity index 100% rename from default-configs/targets/m68k-softmmu.mak rename to configs/targets/m68k-softmmu.mak diff --git a/default-configs/targets/microblaze-linux-user.mak b/configs/targets/microblaze-linux-user.mak similarity index 100% rename from default-configs/targets/microblaze-linux-user.mak rename to configs/targets/microblaze-linux-user.mak diff --git a/default-configs/targets/microblaze-softmmu.mak b/configs/targets/microblaze-softmmu.mak similarity index 100% rename from default-configs/targets/microblaze-softmmu.mak rename to configs/targets/microblaze-softmmu.mak diff --git a/default-configs/targets/microblazeel-linux-user.mak b/configs/targets/microblazeel-linux-user.mak similarity index 100% rename from default-configs/targets/microblazeel-linux-user.mak rename to configs/targets/microblazeel-linux-user.mak diff --git a/default-configs/targets/microblazeel-softmmu.mak b/configs/targets/microblazeel-softmmu.mak similarity index 100% rename from default-configs/targets/microblazeel-softmmu.mak rename to configs/targets/microblazeel-softmmu.mak diff --git a/default-configs/targets/mips-linux-user.mak b/configs/targets/mips-linux-user.mak similarity index 100% rename from default-configs/targets/mips-linux-user.mak rename to configs/targets/mips-linux-user.mak diff --git a/default-configs/targets/mips-softmmu.mak b/configs/targets/mips-softmmu.mak similarity index 100% rename from default-configs/targets/mips-softmmu.mak rename to configs/targets/mips-softmmu.mak diff --git a/default-configs/targets/mips64-linux-user.mak b/configs/targets/mips64-linux-user.mak similarity index 100% rename from default-configs/targets/mips64-linux-user.mak rename to configs/targets/mips64-linux-user.mak diff --git a/default-configs/targets/mips64-softmmu.mak b/configs/targets/mips64-softmmu.mak similarity index 100% rename from default-configs/targets/mips64-softmmu.mak rename to configs/targets/mips64-softmmu.mak diff --git a/default-configs/targets/mips64el-linux-user.mak b/configs/targets/mips64el-linux-user.mak similarity index 100% rename from default-configs/targets/mips64el-linux-user.mak rename to configs/targets/mips64el-linux-user.mak diff --git a/default-configs/targets/mips64el-softmmu.mak b/configs/targets/mips64el-softmmu.mak similarity index 100% rename from default-configs/targets/mips64el-softmmu.mak rename to configs/targets/mips64el-softmmu.mak diff --git a/default-configs/targets/mipsel-linux-user.mak b/configs/targets/mipsel-linux-user.mak similarity index 100% rename from default-configs/targets/mipsel-linux-user.mak rename to configs/targets/mipsel-linux-user.mak diff --git a/default-configs/targets/mipsel-softmmu.mak b/configs/targets/mipsel-softmmu.mak similarity index 100% rename from default-configs/targets/mipsel-softmmu.mak rename to configs/targets/mipsel-softmmu.mak diff --git a/default-configs/targets/mipsn32-linux-user.mak b/configs/targets/mipsn32-linux-user.mak similarity index 100% rename from default-configs/targets/mipsn32-linux-user.mak rename to configs/targets/mipsn32-linux-user.mak diff --git a/default-configs/targets/mipsn32el-linux-user.mak b/configs/targets/mipsn32el-linux-user.mak similarity index 100% rename from default-configs/targets/mipsn32el-linux-user.mak rename to configs/targets/mipsn32el-linux-user.mak diff --git a/default-configs/targets/nios2-linux-user.mak b/configs/targets/nios2-linux-user.mak similarity index 100% rename from default-configs/targets/nios2-linux-user.mak rename to configs/targets/nios2-linux-user.mak diff --git a/default-configs/targets/nios2-softmmu.mak b/configs/targets/nios2-softmmu.mak similarity index 100% rename from default-configs/targets/nios2-softmmu.mak rename to configs/targets/nios2-softmmu.mak diff --git a/default-configs/targets/or1k-linux-user.mak b/configs/targets/or1k-linux-user.mak similarity index 100% rename from default-configs/targets/or1k-linux-user.mak rename to configs/targets/or1k-linux-user.mak diff --git a/default-configs/targets/or1k-softmmu.mak b/configs/targets/or1k-softmmu.mak similarity index 100% rename from default-configs/targets/or1k-softmmu.mak rename to configs/targets/or1k-softmmu.mak diff --git a/default-configs/targets/ppc-linux-user.mak b/configs/targets/ppc-linux-user.mak similarity index 100% rename from default-configs/targets/ppc-linux-user.mak rename to configs/targets/ppc-linux-user.mak diff --git a/default-configs/targets/ppc-softmmu.mak b/configs/targets/ppc-softmmu.mak similarity index 100% rename from default-configs/targets/ppc-softmmu.mak rename to configs/targets/ppc-softmmu.mak diff --git a/default-configs/targets/ppc64-linux-user.mak b/configs/targets/ppc64-linux-user.mak similarity index 100% rename from default-configs/targets/ppc64-linux-user.mak rename to configs/targets/ppc64-linux-user.mak diff --git a/default-configs/targets/ppc64-softmmu.mak b/configs/targets/ppc64-softmmu.mak similarity index 100% rename from default-configs/targets/ppc64-softmmu.mak rename to configs/targets/ppc64-softmmu.mak diff --git a/default-configs/targets/ppc64abi32-linux-user.mak b/configs/targets/ppc64abi32-linux-user.mak similarity index 100% rename from default-configs/targets/ppc64abi32-linux-user.mak rename to configs/targets/ppc64abi32-linux-user.mak diff --git a/default-configs/targets/ppc64le-linux-user.mak b/configs/targets/ppc64le-linux-user.mak similarity index 100% rename from default-configs/targets/ppc64le-linux-user.mak rename to configs/targets/ppc64le-linux-user.mak diff --git a/default-configs/targets/riscv32-linux-user.mak b/configs/targets/riscv32-linux-user.mak similarity index 100% rename from default-configs/targets/riscv32-linux-user.mak rename to configs/targets/riscv32-linux-user.mak diff --git a/default-configs/targets/riscv32-softmmu.mak b/configs/targets/riscv32-softmmu.mak similarity index 100% rename from default-configs/targets/riscv32-softmmu.mak rename to configs/targets/riscv32-softmmu.mak diff --git a/default-configs/targets/riscv64-linux-user.mak b/configs/targets/riscv64-linux-user.mak similarity index 100% rename from default-configs/targets/riscv64-linux-user.mak rename to configs/targets/riscv64-linux-user.mak diff --git a/default-configs/targets/riscv64-softmmu.mak b/configs/targets/riscv64-softmmu.mak similarity index 100% rename from default-configs/targets/riscv64-softmmu.mak rename to configs/targets/riscv64-softmmu.mak diff --git a/default-configs/targets/rx-softmmu.mak b/configs/targets/rx-softmmu.mak similarity index 100% rename from default-configs/targets/rx-softmmu.mak rename to configs/targets/rx-softmmu.mak diff --git a/default-configs/targets/s390x-linux-user.mak b/configs/targets/s390x-linux-user.mak similarity index 100% rename from default-configs/targets/s390x-linux-user.mak rename to configs/targets/s390x-linux-user.mak diff --git a/default-configs/targets/s390x-softmmu.mak b/configs/targets/s390x-softmmu.mak similarity index 100% rename from default-configs/targets/s390x-softmmu.mak rename to configs/targets/s390x-softmmu.mak diff --git a/default-configs/targets/sh4-linux-user.mak b/configs/targets/sh4-linux-user.mak similarity index 100% rename from default-configs/targets/sh4-linux-user.mak rename to configs/targets/sh4-linux-user.mak diff --git a/default-configs/targets/sh4-softmmu.mak b/configs/targets/sh4-softmmu.mak similarity index 100% rename from default-configs/targets/sh4-softmmu.mak rename to configs/targets/sh4-softmmu.mak diff --git a/default-configs/targets/sh4eb-linux-user.mak b/configs/targets/sh4eb-linux-user.mak similarity index 100% rename from default-configs/targets/sh4eb-linux-user.mak rename to configs/targets/sh4eb-linux-user.mak diff --git a/default-configs/targets/sh4eb-softmmu.mak b/configs/targets/sh4eb-softmmu.mak similarity index 100% rename from default-configs/targets/sh4eb-softmmu.mak rename to configs/targets/sh4eb-softmmu.mak diff --git a/default-configs/targets/sparc-linux-user.mak b/configs/targets/sparc-linux-user.mak similarity index 100% rename from default-configs/targets/sparc-linux-user.mak rename to configs/targets/sparc-linux-user.mak diff --git a/default-configs/targets/sparc-softmmu.mak b/configs/targets/sparc-softmmu.mak similarity index 100% rename from default-configs/targets/sparc-softmmu.mak rename to configs/targets/sparc-softmmu.mak diff --git a/default-configs/targets/sparc32plus-linux-user.mak b/configs/targets/sparc32plus-linux-user.mak similarity index 100% rename from default-configs/targets/sparc32plus-linux-user.mak rename to configs/targets/sparc32plus-linux-user.mak diff --git a/default-configs/targets/sparc64-linux-user.mak b/configs/targets/sparc64-linux-user.mak similarity index 100% rename from default-configs/targets/sparc64-linux-user.mak rename to configs/targets/sparc64-linux-user.mak diff --git a/default-configs/targets/sparc64-softmmu.mak b/configs/targets/sparc64-softmmu.mak similarity index 100% rename from default-configs/targets/sparc64-softmmu.mak rename to configs/targets/sparc64-softmmu.mak diff --git a/default-configs/targets/tricore-softmmu.mak b/configs/targets/tricore-softmmu.mak similarity index 100% rename from default-configs/targets/tricore-softmmu.mak rename to configs/targets/tricore-softmmu.mak diff --git a/default-configs/targets/x86_64-bsd-user.mak b/configs/targets/x86_64-bsd-user.mak similarity index 100% rename from default-configs/targets/x86_64-bsd-user.mak rename to configs/targets/x86_64-bsd-user.mak diff --git a/default-configs/targets/x86_64-linux-user.mak b/configs/targets/x86_64-linux-user.mak similarity index 100% rename from default-configs/targets/x86_64-linux-user.mak rename to configs/targets/x86_64-linux-user.mak diff --git a/default-configs/targets/x86_64-softmmu.mak b/configs/targets/x86_64-softmmu.mak similarity index 100% rename from default-configs/targets/x86_64-softmmu.mak rename to configs/targets/x86_64-softmmu.mak diff --git a/default-configs/targets/xtensa-linux-user.mak b/configs/targets/xtensa-linux-user.mak similarity index 100% rename from default-configs/targets/xtensa-linux-user.mak rename to configs/targets/xtensa-linux-user.mak diff --git a/default-configs/targets/xtensa-softmmu.mak b/configs/targets/xtensa-softmmu.mak similarity index 100% rename from default-configs/targets/xtensa-softmmu.mak rename to configs/targets/xtensa-softmmu.mak diff --git a/default-configs/targets/xtensaeb-linux-user.mak b/configs/targets/xtensaeb-linux-user.mak similarity index 100% rename from default-configs/targets/xtensaeb-linux-user.mak rename to configs/targets/xtensaeb-linux-user.mak diff --git a/default-configs/targets/xtensaeb-softmmu.mak b/configs/targets/xtensaeb-softmmu.mak similarity index 100% rename from default-configs/targets/xtensaeb-softmmu.mak rename to configs/targets/xtensaeb-softmmu.mak diff --git a/configure b/configure index a04b1e075c..4eba89f823 100755 --- a/configure +++ b/configure @@ -1677,13 +1677,13 @@ deprecated_features="" mak_wilds="" if [ "$softmmu" = "yes" ]; then - mak_wilds="${mak_wilds} $source_path/default-configs/targets/*-softmmu.mak" + mak_wilds="${mak_wilds} $source_path/configs/targets/*-softmmu.mak" fi if [ "$linux_user" = "yes" ]; then - mak_wilds="${mak_wilds} $source_path/default-configs/targets/*-linux-user.mak" + mak_wilds="${mak_wilds} $source_path/configs/targets/*-linux-user.mak" fi if [ "$bsd_user" = "yes" ]; then - mak_wilds="${mak_wilds} $source_path/default-configs/targets/*-bsd-user.mak" + mak_wilds="${mak_wilds} $source_path/configs/targets/*-bsd-user.mak" fi # If the user doesn't explicitly specify a deprecated target we will diff --git a/default-configs/devices/xtensaeb-softmmu.mak b/default-configs/devices/xtensaeb-softmmu.mak deleted file mode 100644 index f7e48c750c..0000000000 --- a/default-configs/devices/xtensaeb-softmmu.mak +++ /dev/null @@ -1,3 +0,0 @@ -# Default configuration for Xtensa - -include xtensa-softmmu.mak diff --git a/meson.build b/meson.build index d82f7a789d..71c7462e89 100644 --- a/meson.build +++ b/meson.build @@ -1549,7 +1549,7 @@ foreach target : target_dirs endif actual_target_dirs += target - config_target += keyval.load('default-configs/targets' / target + '.mak') + config_target += keyval.load('configs/targets' / target + '.mak') config_target += { 'TARGET_' + config_target['TARGET_ARCH'].to_upper(): 'y' } if 'TARGET_NEED_FDT' in config_target @@ -1597,7 +1597,7 @@ foreach target : target_dirs if target.endswith('-softmmu') config_devices_mak = target + '-config-devices.mak' config_devices_mak = configure_file( - input: ['default-configs/devices' / target + '.mak', 'Kconfig'], + input: ['configs/devices' / target / 'default.mak', 'Kconfig'], output: config_devices_mak, depfile: config_devices_mak + '.d', capture: true, diff --git a/tests/Makefile.include b/tests/Makefile.include index 8f220e15d1..e4dcb17329 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -36,7 +36,7 @@ export SRC_PATH # Get the list of all supported sysemu targets SYSEMU_TARGET_LIST := $(subst -softmmu.mak,,$(notdir \ - $(wildcard $(SRC_PATH)/default-configs/*-softmmu.mak))) + $(wildcard $(SRC_PATH)/configs/*-softmmu.mak))) SPEED = quick From patchwork Thu Jul 8 15:17:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 12365425 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0BBD1C07E99 for ; Thu, 8 Jul 2021 15:52:17 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id AB3F06161F for ; Thu, 8 Jul 2021 15:52:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AB3F06161F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:43006 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1WJz-0003h3-Rm for qemu-devel@archiver.kernel.org; Thu, 08 Jul 2021 11:52:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54114) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1VnH-0001Ed-8P for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:27 -0400 Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]:40889) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m1VnF-0008Mf-F0 for qemu-devel@nongnu.org; Thu, 08 Jul 2021 11:18:27 -0400 Received: by mail-ej1-x630.google.com with SMTP id o5so10283122ejy.7 for ; Thu, 08 Jul 2021 08:18:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9xNY7jsPAk0cQr26gLtvkhbqtz1+/luMtYD5+m8UI0k=; b=nVXcH1wGw/T9gUtf53Rp6prO8B/x5euHumYgn7+q6Ncva+YZylUvFcFSE3LCFUfMAX t0Sa0+ZvEdy+J8VDCEBtPC4cnLPeuMWLzPvYN8MTsMy6hQtOMkBwzap+ilCkyIAOlI3i SgFa5KLsZ0K0u1WGhuvtcPlXGRy3cshhRyfc0ay4JjJZtOU7poo2noVRaZhE/5zu1KPB UbtHnXmLQ4tOk54N8qE9m2fZW5+Kfu53n2I+24DlExYGxs+60EKBFmIEyacYwWmSEWGg 8l7F9dPVQCWAM1/BponsiqmIu11XWiVtNXQkkq0frW/AkHwK5vQMHj8pEcLBJ3JHDBco TFCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=9xNY7jsPAk0cQr26gLtvkhbqtz1+/luMtYD5+m8UI0k=; b=ToOW5au/B2f5PWphuAehO8ESwdZde1xh4d6GlF9dRdnlrtV6aF8SlNOO9yxnUHd9JC UFJE9d3hF9yLeO5KlFpVxzFRY8GCOmAGl0LqkqKN8/o23AxCAgcSJjyDjmxaQ+ZhkHzt 6l2fqraCBWtZzmSA43Jl0PZTFXPuBq7jGL/nrENFYeVle5qXlpiW97SMwKzm9aLsJBuW GBAm6rxlUTkXEe6wEOgyBQKrXWPtaMj3FW3gdCLRiorE5p/YzKm3txzlLlCVbwYrcXPi Fpdsip5+CczSl12ptb4wfGNnu9rqXtF91GSY8JqRA6BRKfeUMsa4u6CA0uMM+0nwW096 2y9g== X-Gm-Message-State: AOAM5324TNHvt20exb9+n0AQZNdRxDLHEHHb2e7onwX9cuBlmX/R8ztf XNCD54NGDVXD07zqkXY0nmYxlEhFZ+c= X-Google-Smtp-Source: ABdhPJzBiouQ00KczBkNyX5GlXYf6F3w2vlx+qqBbJNwo5fTJAjugPBUHkMzzsxxp0dWtQZoUO9VjA== X-Received: by 2002:a17:906:30d8:: with SMTP id b24mr9897282ejb.358.1625757503721; Thu, 08 Jul 2021 08:18:23 -0700 (PDT) Received: from avogadro.lan ([2001:b07:6468:f312:c8dd:75d4:99ab:290a]) by smtp.gmail.com with ESMTPSA id ak16sm1103694ejc.17.2021.07.08.08.18.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jul 2021 08:18:23 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 48/48] configure: allow the selection of alternate config in the build Date: Thu, 8 Jul 2021 17:17:48 +0200 Message-Id: <20210708151748.408754-49-pbonzini@redhat.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210708151748.408754-1-pbonzini@redhat.com> References: <20210708151748.408754-1-pbonzini@redhat.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::630; envelope-from=paolo.bonzini@gmail.com; helo=mail-ej1-x630.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Richard Henderson , =?utf-8?q?Alex_Benn=C3=A9?= =?utf-8?q?e?= Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" From: Alex Bennée While the default config works well enough it does end up enabling a lot of stuff. For more minimal builds we can select a different list of devices and let Kconfig work out what we want. For example: ../../configure --without-default-features \ --target-list=arm-softmmu,aarch64-softmmu \ --with-devices-aarch64=minimal will override the aarch64-softmmu default set of devices with a more minimal set of devices that just enables the virt and sbsa-ref models. Signed-off-by: Alex Bennée Cc: Philippe Mathieu-Daudé Cc: Paolo Bonzini Reviewed-by: Richard Henderson Message-Id: <20210707131744.26027-6-alex.bennee@linaro.org> Signed-off-by: Paolo Bonzini --- configs/devices/aarch64-softmmu/minimal.mak | 9 ++++++++ configure | 24 ++++++++++++++++++++- meson.build | 3 ++- 3 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 configs/devices/aarch64-softmmu/minimal.mak diff --git a/configs/devices/aarch64-softmmu/minimal.mak b/configs/devices/aarch64-softmmu/minimal.mak new file mode 100644 index 0000000000..0ebc1dca56 --- /dev/null +++ b/configs/devices/aarch64-softmmu/minimal.mak @@ -0,0 +1,9 @@ +# +# A minimal version of the config that only supports only a few +# virtual machines. This avoids bringing in any of numerous legacy +# features from the 32bit platform (although virt still supports 32bit +# itself) +# + +CONFIG_ARM_VIRT=y +CONFIG_SBSA_REF=y diff --git a/configure b/configure index 4eba89f823..85db248ac1 100755 --- a/configure +++ b/configure @@ -915,6 +915,18 @@ for opt do ;; --without-default-devices) default_devices="false" ;; + --with-devices-*[!a-zA-Z0-9_-]*=*) error_exit "Passed bad --with-devices-FOO option" + ;; + --with-devices-*) device_arch=${opt#--with-devices-}; + device_arch=${device_arch%%=*} + cf=$source_path/configs/devices/$device_arch-softmmu/$optarg.mak + if test -f "$cf"; then + device_archs="$device_archs $device_arch" + eval "devices_${device_arch}=\$optarg" + else + error_exit "File $cf does not exist" + fi + ;; --without-default-features) # processed above ;; --enable-gprof) gprof="yes" @@ -1764,7 +1776,8 @@ Advanced options (experts only): --without-default-features default all --enable-* options to "disabled" --without-default-devices do not include any device that is not needed to start the emulator (only use if you are including - desired devices in default-configs/devices/) + desired devices in configs/devices/) + --with-devices-ARCH=NAME override default configs/devices --enable-debug enable common debug build options --enable-sanitizers enable default sanitizers --enable-tsan enable thread sanitizer @@ -5082,6 +5095,15 @@ if test "$skip_meson" = no; then echo "# Automatically generated by configure - do not modify" > $cross echo "[properties]" >> $cross + + # unroll any custom device configs + if test -n "$device_archs"; then + for a in $device_archs; do + eval "c=\$devices_${a}" + echo "${a}-softmmu = '$c'" >> $cross + done + fi + test -z "$cxx" && echo "link_language = 'c'" >> $cross echo "[built-in options]" >> $cross echo "c_args = [${CFLAGS:+$(meson_quote $CFLAGS)}]" >> $cross diff --git a/meson.build b/meson.build index 71c7462e89..651c3b114b 100644 --- a/meson.build +++ b/meson.build @@ -1595,9 +1595,10 @@ foreach target : target_dirs configuration: config_target_data)} if target.endswith('-softmmu') + config_input = meson.get_external_property(target, 'default') config_devices_mak = target + '-config-devices.mak' config_devices_mak = configure_file( - input: ['configs/devices' / target / 'default.mak', 'Kconfig'], + input: ['configs/devices' / target / config_input + '.mak', 'Kconfig'], output: config_devices_mak, depfile: config_devices_mak + '.d', capture: true,