From patchwork Mon Nov 6 18:50:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447313 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 13071C4332F for ; Mon, 6 Nov 2023 18:53:18 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04hA-0006C9-FX; Mon, 06 Nov 2023 13:51:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h6-00066E-Fx for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:28 -0500 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gs-0000wo-Uh for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:28 -0500 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-40839807e82so29787895e9.0 for ; Mon, 06 Nov 2023 10:51:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296673; x=1699901473; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=33/OTwiED227CSIHrsxnwyK8KaSwVMt/PQqEs48aCOg=; b=UHw44YCoEBwWNni1lDQLOvmKyUxei6hATa0hKFJigWrFt8v77u/WJX0Le8G5EYjdFC vtmJgNiDQO7VUyJ4WUujuikWEKYetzLcZHpz41MOk2bm/0ape5aYK6QAp1/gre5Y27Lf 2rwHZx8gDWGp1IoO5LUz42e/rkdGeqiwXrxLZE34Pignc/wPPyyWRfrMFZm8r8RTp0ix Sao2AiFxiYxAK9y0dzwCqYG2SAPPPMC4WmOU/0o99w2nER0b32O87B0xJ6wGPgoHlonj wJggbP7iDaZ652Lcrj3I/MdyDBIAL2JwsL0AfllToFHcpt3CrkZcS3j1M9huUgmOBveH 9A5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296673; x=1699901473; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=33/OTwiED227CSIHrsxnwyK8KaSwVMt/PQqEs48aCOg=; b=NHNj5oPle/7cfAKmC/TmuRsoaH+q8E0m2RrIHNrtJTZXZvJBHrRwrvZsLVTqrUg6S1 I9UhmunVG+Cytaq1nnuFyB2RJOplGOtCRO1Ytv6jjYqBUPYq3Y/vKWn2lcNcjTDj3fGw y8dgCfc7NnPukiG5ipzmJY2fZNjKokkb8LTtBU9i4/i7LNUE37ehqXCScEkncOQd8U2P /7fjGfZI/ZlhGWNGvaAZ9q7iDcoa/c6KeSiq1LSN+wR6Fc/CgAj6/TcWSUbaAwMhCI/3 wLjeWKixHDI3kFMlD891DMRGFf6PSyRhDexsP0VmJbzEi0q3LMLEKwxuHQ2bSEK6MqVM oYSA== X-Gm-Message-State: AOJu0YzDWaZnOjjatW9kmUnEm+EvVF2AhggWQ0EtXZodNTDvieGfa3pv V36VasOn7Plb3OZ7NJ1ja3D1cw== X-Google-Smtp-Source: AGHT+IHWUvGepd79PZ17MnpM5nZR05WBB/7t1rKycp+p12y9cUy6bFsmalFq4xRWD8xIFEHFERK9QA== X-Received: by 2002:a05:600c:3b12:b0:406:45c1:4dd with SMTP id m18-20020a05600c3b1200b0040645c104ddmr441140wms.14.1699296673461; Mon, 06 Nov 2023 10:51:13 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id a1-20020a05600c348100b003fe1fe56202sm13473371wmq.33.2023.11.06.10.51.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:12 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 9458E655DF; Mon, 6 Nov 2023 18:51:12 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki Subject: [PATCH 01/22] default-configs: Add TARGET_XML_FILES definition Date: Mon, 6 Nov 2023 18:50:51 +0000 Message-Id: <20231106185112.2755262-2-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x332.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Akihiko Odaki loongarch64-linux-user has references to XML files so include them. Fixes: d32688ecdb ("default-configs: Add loongarch linux-user support") Signed-off-by: Akihiko Odaki Message-Id: <20231030054834.39145-6-akihiko.odaki@daynix.com> Reviewed-by: Philippe Mathieu-Daudé Message-Id: <20231103195956.1998255-2-alex.bennee@linaro.org> [AJB: remove base32 from list] Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson --- configs/targets/loongarch64-linux-user.mak | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/targets/loongarch64-linux-user.mak b/configs/targets/loongarch64-linux-user.mak index 7d1b964020..d878e5a113 100644 --- a/configs/targets/loongarch64-linux-user.mak +++ b/configs/targets/loongarch64-linux-user.mak @@ -1,3 +1,4 @@ # Default configuration for loongarch64-linux-user TARGET_ARCH=loongarch64 TARGET_BASE_ARCH=loongarch +TARGET_XML_FILES=gdb-xml/loongarch-base64.xml gdb-xml/loongarch-fpu.xml From patchwork Mon Nov 6 18:50:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447306 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1805FC4332F for ; Mon, 6 Nov 2023 18:52:10 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04gw-0005pT-EK; Mon, 06 Nov 2023 13:51:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04gv-0005og-4V for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:17 -0500 Received: from mail-wr1-x42d.google.com ([2a00:1450:4864:20::42d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gt-0000wx-Lt for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:16 -0500 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-32d895584f1so2892957f8f.1 for ; Mon, 06 Nov 2023 10:51:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296674; x=1699901474; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QOPhrZl7WNF8otYFyZDv53mbMT0F92opu0HK5hUSxKk=; b=GSBkUg0mPBcZcRt24FiBAU+g9UWN/b69mnhEFOjlWIGCCRFPkvbgP+oJd7odTVQh9R 4wWFI5m3u3d1ILkOceFvGcar0SgoipQfOqbEaMqyZg8uqGTqqbN8U+2tMsY7EAqUp3CP ZuUGzXMuyJCbeo2ZAIEI0V3Ac/ie2yWwuiwVNoqdx9Mk9VT2QMiEwPWIgu7UtSw5Vukc DOslx4qtyUqZ1/Nljlh0Q4mZ0mhhm7nkRI99K5QB8qSv10G9dEkfUtuBrU+oxz6p7otH ZajvrlIcyAoxK68ghO/nT5CZVoly7Hxw02BzD2IxjaGjjfVJ65Kj3guYT8z5cJUeuzad 4VUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296674; x=1699901474; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QOPhrZl7WNF8otYFyZDv53mbMT0F92opu0HK5hUSxKk=; b=vbBTgk1Cpwin9AYROxtTGN5q35kp5cdE+S2ZyNi2GrFlU95sskhfhOeRiSqjMf2qgL 70qjqMspr3eBwoHgcw0NUSKohWYuzy51A2MNY67RbzsQVVeTliFCRdsnR0g7aFmkM2zG JUcIzlvLeyNT/p1//RbldAY9JfCeLRxfnHhnjmtj/eQzRKXM6x6gnH0u/LuXlb8YcEw+ U3PJ1fJtM+2JHyBhEHINvn0nMIUxTprJlIlqG6AFCZzOorpSeQam9OHo6vRBQcHwT++Q J9Ki382MuXTjfGVfiLOft3I6W3348FTzWPPgEiV/s9N1VoXVnAsvQnahjCr4zkByE6kc R8PA== X-Gm-Message-State: AOJu0Yyd5CH+NJSpV6a3BytN2GTA4IFB6xAiRD/ihLT1bcm0x0oODEPA QCBuYGq2f50f55Ty0GJkjZpWRg== X-Google-Smtp-Source: AGHT+IH0QY5Z2L7n6isopsBwJEEH53rwU+X7Q84YPntSymlToJOVP+H0waLbsvKKv4+Y/9NrWI1l8w== X-Received: by 2002:a5d:4242:0:b0:32d:9fc9:d145 with SMTP id s2-20020a5d4242000000b0032d9fc9d145mr19775989wrr.41.1699296673683; Mon, 06 Nov 2023 10:51:13 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id g1-20020adfe401000000b0032d9523de65sm311361wrm.48.2023.11.06.10.51.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:13 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id A7E46656D9; Mon, 6 Nov 2023 18:51:12 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson Subject: [PATCH 02/22] gdb-xml: fix duplicate register in arm-neon.xml Date: Mon, 6 Nov 2023 18:50:52 +0000 Message-Id: <20231106185112.2755262-3-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-3-alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé --- gdb-xml/arm-neon.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gdb-xml/arm-neon.xml b/gdb-xml/arm-neon.xml index 9dce0a996f..d61f6b8549 100644 --- a/gdb-xml/arm-neon.xml +++ b/gdb-xml/arm-neon.xml @@ -76,7 +76,7 @@ - + From patchwork Mon Nov 6 18:50:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447315 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2E676C4332F for ; Mon, 6 Nov 2023 18:53:31 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04gy-0005rE-JI; Mon, 06 Nov 2023 13:51:20 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04gx-0005qG-2N for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:19 -0500 Received: from mail-lj1-x232.google.com ([2a00:1450:4864:20::232]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gv-0000xO-B9 for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:18 -0500 Received: by mail-lj1-x232.google.com with SMTP id 38308e7fff4ca-2c5087d19a6so65368271fa.0 for ; Mon, 06 Nov 2023 10:51:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296676; x=1699901476; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=paT+/TLeQzoSncT973yZvwKaP9Wy9ZCe68IEGURzE5I=; b=A1EJWLhRhKJxDkFn+62HelxYF5xwyu7Fzwnmq2zp6KKZ96a/M2sa/75eSSBE/wyoDA ++SXNHvZ+ZtSTckunYor9xmQ995DitnU5D4vxZq3Iw+OFBoiec3GX1v85XsS/qfcH4FP bXwU02wHR8KlG/jfk6rgoAgAOQADn+8kX1uV9m4b1sM8LNmZcAM9dMSjRhwMwk3hMQqX JLYEeykfLAgCSU+y4yjmmnkjIai6ysF+xZ8Oh6X7+4YqWQHt227v8ecp232akvn81gjm 8bDV0fuia8wN5AYgNsbO+8NkxAD3VlzDfLRA1s/51kq/Id0pZeZsc0l0okze4ir+4e3p 2gPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296676; x=1699901476; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=paT+/TLeQzoSncT973yZvwKaP9Wy9ZCe68IEGURzE5I=; b=eiFlSPaVvplpuawUtOxdWv2+2Lj+sRqVG1ECpYx0dFq0EOBn8JFDXAYQipcyPwWiHf A979RMO3zwXk4y0CaHd1PMjPPcpYAeXo94VpKOtq0ii+ApQZSxrlKDizOwMAifbURGFH Le19XiIMTDp3cCGda2OncT5p++8T5/Rn04N23ZbZf73xFPqW0UugN8VczhNjUS1gVsfk cuWdrgdyND2quGJbTqUiTteGdX4fLHIUN+F4+0IWSi2IVCMuMV3Y1rvZIqL28P/8JnmN frnxiWW3ANEimcv1shUsS098jZWU943lU1QwzZNLRHRpjWiv51o1Rqo6z1T+0p7BlS+K Id1g== X-Gm-Message-State: AOJu0Yyn+9FIvtSmrSGk8u4Z0Nc93NIOurWvg04fW3hUdT7YBsRJs5hb EJeKEnluC6FsGm0s/z6v0gc4Ow== X-Google-Smtp-Source: AGHT+IH/fICKXCEPVpGF4YNsay/Xu1Msx3dNZAykGzyRKduQ0OF9/phBhBNyMQoYZ22/28rRFPesvA== X-Received: by 2002:a2e:5012:0:b0:2c5:16d0:69ab with SMTP id e18-20020a2e5012000000b002c516d069abmr24843616ljb.44.1699296675606; Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id bg13-20020a05600c3c8d00b0040644e699a0sm13185234wmb.45.2023.11.06.10.51.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:13 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id BB6806570A; Mon, 6 Nov 2023 18:51:12 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson Subject: [PATCH 03/22] target/arm: hide the 32bit version of PAR from gdbstub Date: Mon, 6 Nov 2023 18:50:53 +0000 Message-Id: <20231106185112.2755262-4-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::232; envelope-from=alex.bennee@linaro.org; helo=mail-lj1-x232.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org This is a slightly hacky way to avoid duplicate PAR's in the system register XML we send to gdb which causes an alias. However the other alternative would be to post process ARMCPRegInfo once all registers have been defined looking for textual duplicates. And that seems like overkill. Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-4-alex.bennee@linaro.org> --- target/arm/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/arm/helper.c b/target/arm/helper.c index 5dc0d20a84..104f9378b4 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -3727,7 +3727,7 @@ static const ARMCPRegInfo vapa_cp_reginfo[] = { .access = PL1_RW, .resetvalue = 0, .bank_fieldoffsets = { offsetoflow32(CPUARMState, cp15.par_s), offsetoflow32(CPUARMState, cp15.par_ns) }, - .writefn = par_write }, + .writefn = par_write, .type = ARM_CP_NO_GDB }, #ifndef CONFIG_USER_ONLY /* This underdecoding is safe because the reginfo is NO_RAW. */ { .name = "ATS", .cp = 15, .crn = 7, .crm = 8, .opc1 = 0, .opc2 = CP_ANY, From patchwork Mon Nov 6 18:50:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447317 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3C37BC4332F for ; Mon, 6 Nov 2023 18:53:46 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04hC-0006E3-Gk; Mon, 06 Nov 2023 13:51:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h9-0006A8-8Q for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:31 -0500 Received: from mail-lf1-x12d.google.com ([2a00:1450:4864:20::12d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gv-0000xH-4o for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:30 -0500 Received: by mail-lf1-x12d.google.com with SMTP id 2adb3069b0e04-507cee17b00so6163711e87.2 for ; Mon, 06 Nov 2023 10:51:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296675; x=1699901475; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dhApO9Ay6WkoDHQaLzRIOYtnAoxR05P4kp/hfwO/YNE=; b=hrnQfoD34u/csHZiPLQ3JbqSd7sZu6G+wxUH9dUBmVVjE26qnrn+nP5+eUTVUSbTFX /WEvXum9pa5lmHA4l8UKHoZ4L/msFmUywAQZV0TtLeFsFrELal60jpYYwlnAq5+xMeBX fKCg5i9KvzI65rJ1MU5OA9LZr3oeP0NU0jLkT8GrF4BGJA0ZlhkUANH3W5rskLq7JhKj 1nqlUFMU/LU6T+hfTHrPC5djh/CDX+vkl6lRImz5nzdmOLee6sXOi3VYHg8+/hwE6YhC xG6DHM0WmNBgMVliCchgSZFcIojiXabPzKx9+SjdX/p2u1gHR0bZLN5+0ZFDEQVuKmGm 3R9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296675; x=1699901475; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dhApO9Ay6WkoDHQaLzRIOYtnAoxR05P4kp/hfwO/YNE=; b=DChB1M45WXsG51DXNjl56R8ELGzLJSx6DeWyMD5J9pBQE26KtMTPshmwywRqK8XIQ/ nDpE48N8WP/RhEJF1vQ2wM2as9vT6IyI9lVnYvtfQ5/mp3iFTUw7kHFPRAoYEdt4qvcX GewEjaHOAStKffGhSNLDluwj2bs4g69jZ1uV1/xHur4ojL7mJ3uS7Mo/vOsTQHXBfsSr XP/CTEB4OR1j+S92yWcTvq9d5cBswck1dbhh4JwnLBqCKCuy1yBIZft8LfM4v/alnkUH sa7ZCPwkzyrwx70HUQsmhTIdLKo+Uiqg4PcgxGP/V7GHQRA09nsV/0W2Xvi46JPgabrA OLcw== X-Gm-Message-State: AOJu0Yz/FmnmKNyogjmhixC8MQL8r2n1oETA7dHVy4lXscyHBkAvE6Hr sYgyFP6Vb6jU/eT0i+vN6D5MCQ== X-Google-Smtp-Source: AGHT+IFferl/m3ntvivL3nECOQrneQWjFFcDEK+j7HRzQDtYHoFWSctR9SfGs6QB6mQulGvb2QBjGA== X-Received: by 2002:ac2:5634:0:b0:507:aaab:528c with SMTP id b20-20020ac25634000000b00507aaab528cmr21547700lff.69.1699296675383; Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id k25-20020a05600c1c9900b004067e905f44sm13340971wms.9.2023.11.06.10.51.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:13 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id D242B6573E; Mon, 6 Nov 2023 18:51:12 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson Subject: [PATCH 04/22] target/arm: hide all versions of DBGD[RS]AR from gdbstub Date: Mon, 6 Nov 2023 18:50:54 +0000 Message-Id: <20231106185112.2755262-5-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::12d; envelope-from=alex.bennee@linaro.org; helo=mail-lf1-x12d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org This avoids two duplicates being presented to gdbstub. As the registers are RAZ anyway it is unlikely their value would be of use to someone using gdbstub anyway. Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-5-alex.bennee@linaro.org> Acked-by: Richard Henderson --- target/arm/debug_helper.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/target/arm/debug_helper.c b/target/arm/debug_helper.c index 79a3659c0c..dc783adba5 100644 --- a/target/arm/debug_helper.c +++ b/target/arm/debug_helper.c @@ -937,14 +937,14 @@ static const ARMCPRegInfo debug_cp_reginfo[] = { */ { .name = "DBGDRAR", .cp = 14, .crn = 1, .crm = 0, .opc1 = 0, .opc2 = 0, .access = PL0_R, .accessfn = access_tdra, - .type = ARM_CP_CONST, .resetvalue = 0 }, + .type = ARM_CP_CONST | ARM_CP_NO_GDB, .resetvalue = 0 }, { .name = "MDRAR_EL1", .state = ARM_CP_STATE_AA64, .opc0 = 2, .opc1 = 0, .crn = 1, .crm = 0, .opc2 = 0, .access = PL1_R, .accessfn = access_tdra, .type = ARM_CP_CONST, .resetvalue = 0 }, { .name = "DBGDSAR", .cp = 14, .crn = 2, .crm = 0, .opc1 = 0, .opc2 = 0, .access = PL0_R, .accessfn = access_tdra, - .type = ARM_CP_CONST, .resetvalue = 0 }, + .type = ARM_CP_CONST | ARM_CP_NO_GDB, .resetvalue = 0 }, /* Monitor debug system control register; the 32-bit alias is DBGDSCRext. */ { .name = "MDSCR_EL1", .state = ARM_CP_STATE_BOTH, .cp = 14, .opc0 = 2, .opc1 = 0, .crn = 0, .crm = 2, .opc2 = 2, @@ -1065,9 +1065,9 @@ static const ARMCPRegInfo debug_cp_reginfo[] = { static const ARMCPRegInfo debug_lpae_cp_reginfo[] = { /* 64 bit access versions of the (dummy) debug registers */ { .name = "DBGDRAR", .cp = 14, .crm = 1, .opc1 = 0, - .access = PL0_R, .type = ARM_CP_CONST | ARM_CP_64BIT, .resetvalue = 0 }, + .access = PL0_R, .type = ARM_CP_CONST | ARM_CP_64BIT | ARM_CP_NO_GDB, .resetvalue = 0 }, { .name = "DBGDSAR", .cp = 14, .crm = 2, .opc1 = 0, - .access = PL0_R, .type = ARM_CP_CONST | ARM_CP_64BIT, .resetvalue = 0 }, + .access = PL0_R, .type = ARM_CP_CONST | ARM_CP_64BIT | ARM_CP_NO_GDB, .resetvalue = 0 }, }; static void dbgwvr_write(CPUARMState *env, const ARMCPRegInfo *ri, From patchwork Mon Nov 6 18:50:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447311 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 87B47C4167D for ; Mon, 6 Nov 2023 18:53:10 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h7-00066g-A3; Mon, 06 Nov 2023 13:51:29 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h1-0005v0-56 for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:23 -0500 Received: from mail-lf1-x12e.google.com ([2a00:1450:4864:20::12e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gy-0000xz-7a for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:22 -0500 Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-507c5249d55so6299778e87.3 for ; Mon, 06 Nov 2023 10:51:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296677; x=1699901477; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pitDltH9Qlw0pV6jb2flwtg/jHXkAlmdYF0xczgfric=; b=sKU07PzNCzY/IFAPsfClFZo+uXJp1G+G6HctQu/ZzXVeY5FysbmlQFw8r84Lh2Pd1+ DSU3f5pJNxyJ7ncfYy10tNCLT2NHmdWgQzBhlqasYuN7XBa3PvGpwvFLylz7JXKofLVO ZQqUnw7ciN3orCLKctdUXpyh3BfPjP8nSB84A3EdUzZDF/O5RFEjKk5N1lOEJWF7+qdi s9tyCB4GJSVLqCIN+J/8pkBUvit740YMxIaPG/Bv+GIEaVkfPZA4ZSoCB2r01lKCBzVq QZH5FHxF2FF7thViRY1XDjnomQsRliSUCoSuAn330pcv2xWiFnKbV7HyYlHaNKlDgigP 5gFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296677; x=1699901477; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pitDltH9Qlw0pV6jb2flwtg/jHXkAlmdYF0xczgfric=; b=CH53rgqyaxj6RzSLQIsSShH/nj0gahUz92WTpg31YrLb9lSOzrR+9G8BpIMk1Gaixh zso7YDhyphzBBeYk2rMZe8hM83fOYQpJj7WyS7mOAjNx1pGjJxBBDIhbUfVRgwLd2gYC 1sBYzhHdREwUt4Z3rGQJv4ltMbNqgoMhfadlACEluknHKrPTFupw4Y97R9m9AMnoOcog 9aN4cl/ALoo8e/XhO0cBUexggxYH86Vlvekx/ww02indzVJn1E9iJ8aUukUONQjUEFXi v3SVqW2CI9C3U9g3W/O+PR+vIJMk7GfWrj3szJKa9en+qsXSKJv9KRid/R86G/6J9vkb dBQg== X-Gm-Message-State: AOJu0YzBGMMZ8kP+1HPJbS4bBMaagaaCsnAMhJNmDBLe4mKS/V3VoByh f6hZOBChFBZbirKlMYOhMCHtvw== X-Google-Smtp-Source: AGHT+IH0I3bj91VULb1n1+Ir7Zqqpfpl27F/ELlsXQ/UvfBrn/gmBNRk72FD0lcKgGVJ8rXTLNStKA== X-Received: by 2002:a19:e043:0:b0:508:136d:ab0c with SMTP id g3-20020a19e043000000b00508136dab0cmr18493505lfj.30.1699296677441; Mon, 06 Nov 2023 10:51:17 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id a10-20020a5d53ca000000b00326dd5486dcsm291434wrw.107.2023.11.06.10.51.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id E5E1C6574F; Mon, 6 Nov 2023 18:51:12 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson Subject: [PATCH 05/22] target/arm: hide aliased MIDR from gdbstub Date: Mon, 6 Nov 2023 18:50:55 +0000 Message-Id: <20231106185112.2755262-6-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::12e; envelope-from=alex.bennee@linaro.org; helo=mail-lf1-x12e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org This is just a constant alias register with the same value as the "other" MIDR so it serves no purpose being presented to gdbstub. Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-6-alex.bennee@linaro.org> Reviewed-by: Peter Maydell --- target/arm/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/arm/helper.c b/target/arm/helper.c index 104f9378b4..a681bcba62 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -8993,7 +8993,7 @@ void register_cp_regs_for_features(ARMCPU *cpu) .type = ARM_CP_CONST, .resetvalue = cpu->revidr }, }; ARMCPRegInfo id_v8_midr_alias_cp_reginfo = { - .name = "MIDR", .type = ARM_CP_ALIAS | ARM_CP_CONST, + .name = "MIDR", .type = ARM_CP_ALIAS | ARM_CP_CONST | ARM_CP_NO_GDB, .cp = 15, .crn = 0, .crm = 0, .opc1 = 0, .opc2 = 4, .access = PL1_R, .resetvalue = cpu->midr }; From patchwork Mon Nov 6 18:50:56 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447312 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 8AC06C4167B for ; Mon, 6 Nov 2023 18:53:15 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h6-00064W-4e; Mon, 06 Nov 2023 13:51:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h3-00062o-8H for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:25 -0500 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gz-0000ys-Hh for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:24 -0500 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-32f70391608so2484566f8f.2 for ; Mon, 06 Nov 2023 10:51:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296680; x=1699901480; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0xUeFsK/n6NpbgwE1ie7mSUcT/F4//4iG2nP+O0hn98=; b=GjPra6NVrHSBss3avzccznKlnCTgYG9jkdukdcPmVvaYdjETqmL0ELvjpHEYhd9m2n p441+TYoJb0sQOd25d4KC6P0eqLiPJEt8UT5rzNlHIglQ98CdAOOsMM6UJQSki6yqhNd j9vGl4F4XoHhw+rWixX5Hf++cRh0/iun4EcfENufFwUfeYDWqLJUfxmk2BqRzJn+KZ2y 9MncJQUeK4/BT6JJuWiGKTbhixYvZ5PogwCK8Nfttz0oU3IvrBWa9XJGUsTmrke9JLMf 7SPpK0CUvGbjTnI39/ax1M48TeHEdqL/bWs7UZx35RLDom+MObg2gWFMJ1/zuIwwqT8o HlCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296680; x=1699901480; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0xUeFsK/n6NpbgwE1ie7mSUcT/F4//4iG2nP+O0hn98=; b=J5+3QnsGqBcGmUFFhvz8E63evUEXScSVrL3ocSPbzzjLCfXN7CIr++IIRu9Qr/ijSt 4iuczzCo5Au9dWw5DdhCj9o1FmJQWOfiYogh0GP2K6YAvo4UR8+rlUlSyjhOGSSe/OfK RAljK3sqVATZmHdQPnJx7IXIAPoH2DCNnooz5u5PD+WGzuXQXxd1n7fzfjqNUYYJzDJ6 7YARPcJIRo9OjqK1TxtYy/5CRq4leV2nWofBQG6S+cnvIAFwko1xxTucV2yR2d8gmlSu d/5EtpUDKxVSdCHVq9Xhb4AtWCfAsP8F9SIDO+aHwtS2l2OGbedjMUXVyvCiOEzIgWMv fSug== X-Gm-Message-State: AOJu0YxyCLp/Qb3fAhIcfNTO3e2S/oy2zzOeO4igRmv5+qbe6wAbYjLq +QZNG2nCfdsX+7hDUd+ZDfDOAQ== X-Google-Smtp-Source: AGHT+IGIzoKI9gK8tTIEUwdPaKxIFsVA2iU/kKXQJtPydEd3sBy8olCoc+cO/YqAi+0BU105lhpTbQ== X-Received: by 2002:a05:6000:2aa:b0:32f:7c27:423b with SMTP id l10-20020a05600002aa00b0032f7c27423bmr23539072wry.51.1699296679921; Mon, 06 Nov 2023 10:51:19 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id d16-20020adfe850000000b0032da40fd7bdsm326078wrn.24.2023.11.06.10.51.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 087F265759; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki , Luis Machado Subject: [PATCH 06/22] tests/tcg: add an explicit gdbstub register tester Date: Mon, 6 Nov 2023 18:50:56 +0000 Message-Id: <20231106185112.2755262-7-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org We already do a couple of "info registers" for specific tests but this is a more comprehensive multiarch test. It also has some output helpful for debugging the gdbstub by showing which XML features are advertised and what the underlying register numbers are. My initial motivation was to see if there are any duplicate register names exposed via the gdbstub while I was reviewing the proposed register interface for TCG plugins. Mismatches between the xml and remote-desc are reported for debugging but do not fail the test. Cc: Akihiko Odaki Cc: Luis Machado Message-Id: <20231012170426.1335442-1-alex.bennee@linaro.org> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-7-alex.bennee@linaro.org> --- v3 - don't __str__ values when we don't need to - handle _exit/_Exit disparity on Microblaze - move seen test outside try/except - report failed register reads --- tests/tcg/multiarch/Makefile.target | 11 +- tests/tcg/multiarch/gdbstub/registers.py | 196 ++++++++++++++++++ .../multiarch/system/Makefile.softmmu-target | 13 +- 3 files changed, 218 insertions(+), 2 deletions(-) create mode 100644 tests/tcg/multiarch/gdbstub/registers.py diff --git a/tests/tcg/multiarch/Makefile.target b/tests/tcg/multiarch/Makefile.target index f3bfaf1a22..d31ba8d6ae 100644 --- a/tests/tcg/multiarch/Makefile.target +++ b/tests/tcg/multiarch/Makefile.target @@ -93,12 +93,21 @@ run-gdbstub-thread-breakpoint: testthread --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ --bin $< --test $(MULTIARCH_SRC)/gdbstub/test-thread-breakpoint.py, \ hitting a breakpoint on non-main thread) + +run-gdbstub-registers: sha512 + $(call run-test, $@, $(GDB_SCRIPT) \ + --gdb $(GDB) \ + --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ + --bin $< --test $(MULTIARCH_SRC)/gdbstub/registers.py, \ + checking register enumeration) + else run-gdbstub-%: $(call skip-test, "gdbstub test $*", "need working gdb with $(patsubst -%,,$(TARGET_NAME)) support") endif EXTRA_RUNS += run-gdbstub-sha1 run-gdbstub-qxfer-auxv-read \ - run-gdbstub-proc-mappings run-gdbstub-thread-breakpoint + run-gdbstub-proc-mappings run-gdbstub-thread-breakpoint \ + run-gdbstub-registers # ARM Compatible Semi Hosting Tests # diff --git a/tests/tcg/multiarch/gdbstub/registers.py b/tests/tcg/multiarch/gdbstub/registers.py new file mode 100644 index 0000000000..4ae63f1cf0 --- /dev/null +++ b/tests/tcg/multiarch/gdbstub/registers.py @@ -0,0 +1,196 @@ +# Exercise the register functionality by exhaustively iterating +# through all supported registers on the system. +# +# This is launched via tests/guest-debug/run-test.py but you can also +# call it directly if using it for debugging/introspection: +# +# SPDX-License-Identifier: GPL-2.0-or-later + +import gdb +import sys +import xml.etree.ElementTree as ET + +initial_vlen = 0 +failcount = 0 + +def report(cond, msg): + "Report success/fail of test." + if cond: + print("PASS: %s" % (msg)) + else: + print("FAIL: %s" % (msg)) + global failcount + failcount += 1 + + +def fetch_xml_regmap(): + """ + Iterate through the XML descriptions and validate. + + We check for any duplicate registers and report them. Return a + reg_map hash containing the names, regnums and initial values of + all registers. + """ + + # First check the XML descriptions we have sent. Most arches + # support XML but a few of the ancient ones don't in which case we + # need to gracefully fail. + + try: + xml = gdb.execute("maint print xml-tdesc", False, True) + except (gdb.error): + print("SKIP: target does not support XML") + return None + + total_regs = 0 + reg_map = {} + frame = gdb.selected_frame() + + tree = ET.fromstring(xml) + for f in tree.findall("feature"): + name = f.attrib["name"] + regs = f.findall("reg") + + total = len(regs) + total_regs += total + base = int(regs[0].attrib["regnum"]) + top = int(regs[-1].attrib["regnum"]) + + print(f"feature: {name} has {total} registers from {base} to {top}") + + for r in regs: + name = r.attrib["name"] + regnum = int(r.attrib["regnum"]) + try: + value = frame.read_register(name) + except ValueError: + report(False, f"failed to read reg: {name}") + + entry = { "name": name, "initial": value, "regnum": regnum } + + if name in reg_map: + report(False, f"duplicate register {entry} vs {reg_map[name]}") + continue + + reg_map[name] = entry + + # Validate we match + report(total_regs == len(reg_map.keys()), + f"counted all {total_regs} registers in XML") + + return reg_map + +def crosscheck_remote_xml(reg_map): + """ + Cross-check the list of remote-registers with the XML info. + """ + + remote = gdb.execute("maint print remote-registers", False, True) + r_regs = remote.split("\n") + + total_regs = len(reg_map.keys()) + total_r_regs = 0 + + for r in r_regs: + fields = r.split() + # Some of the registers reported here are "pseudo" registers that + # gdb invents based on actual registers so we need to filter them + # out. + if len(fields) == 8: + r_name = fields[0] + r_regnum = int(fields[6]) + + # check in the XML + try: + x_reg = reg_map[r_name] + except KeyError: + report(False, f"{r_name} not in XML description") + continue + + x_reg["seen"] = True + x_regnum = x_reg["regnum"] + if r_regnum != x_regnum: + report(False, f"{r_name} {r_regnum} == {x_regnum} (xml)") + else: + total_r_regs += 1 + + # Just print a mismatch in totals as gdb will filter out 64 bit + # registers on a 32 bit machine. Also print what is missing to + # help with debug. + if total_regs != total_r_regs: + print(f"xml-tdesc ({total_regs}) and remote-registers ({total_r_regs}) do not agree") + + for x_key in reg_map.keys(): + x_reg = reg_map[x_key] + if "seen" not in x_reg: + print(f"{x_reg} wasn't seen in remote-registers") + +def complete_and_diff(reg_map): + """ + Let the program run to (almost) completion and then iterate + through all the registers we know about and report which ones have + changed. + """ + # Let the program get to the end and we can check what changed + b = gdb.Breakpoint("_exit") + if b.pending: # workaround Microblaze weirdness + b.delete() + gdb.Breakpoint("_Exit") + + gdb.execute("continue") + + frame = gdb.selected_frame() + changed = 0 + + for e in reg_map.values(): + name = e["name"] + old_val = e["initial"] + + try: + new_val = frame.read_register(name) + except: + report(False, f"failed to read {name} at end of run") + continue + + if new_val != old_val: + print(f"{name} changes from {old_val} to {new_val}") + changed += 1 + + # as long as something changed we can be confident its working + report(changed > 0, f"{changed} registers were changed") + + +def run_test(): + "Run through the tests" + + reg_map = fetch_xml_regmap() + + if reg_map is not None: + crosscheck_remote_xml(reg_map) + complete_and_diff(reg_map) + + +# +# This runs as the script it sourced (via -x, via run-test.py) +# +try: + inferior = gdb.selected_inferior() + arch = inferior.architecture() + print("ATTACHED: %s" % arch.name()) +except (gdb.error, AttributeError): + print("SKIPPING (not connected)", file=sys.stderr) + exit(0) + +if gdb.parse_and_eval('$pc') == 0: + print("SKIP: PC not set") + exit(0) + +try: + run_test() +except (gdb.error): + print ("GDB Exception: %s" % (sys.exc_info()[0])) + failcount += 1 + pass + +print("All tests complete: %d failures" % failcount) +exit(failcount) diff --git a/tests/tcg/multiarch/system/Makefile.softmmu-target b/tests/tcg/multiarch/system/Makefile.softmmu-target index dee4f58dea..32dc0f9830 100644 --- a/tests/tcg/multiarch/system/Makefile.softmmu-target +++ b/tests/tcg/multiarch/system/Makefile.softmmu-target @@ -48,9 +48,20 @@ run-gdbstub-untimely-packet: hello $(call quiet-command, \ (! grep -Fq 'Packet instead of Ack, ignoring it' untimely-packet.gdb.err), \ "GREP", file untimely-packet.gdb.err) + +run-gdbstub-registers: memory + $(call run-test, $@, $(GDB_SCRIPT) \ + --gdb $(GDB) \ + --qemu $(QEMU) \ + --output $<.registers.gdb.out \ + --qargs \ + "-monitor none -display none -chardev file$(COMMA)path=$<.out$(COMMA)id=output $(QEMU_OPTS)" \ + --bin $< --test $(MULTIARCH_SRC)/gdbstub/registers.py, \ + softmmu gdbstub support) else run-gdbstub-%: $(call skip-test, "gdbstub test $*", "need working gdb with $(patsubst -%,,$(TARGET_NAME)) support") endif -MULTIARCH_RUNS += run-gdbstub-memory run-gdbstub-interrupt run-gdbstub-untimely-packet +MULTIARCH_RUNS += run-gdbstub-memory run-gdbstub-interrupt \ + run-gdbstub-untimely-packet run-gdbstub-registers From patchwork Mon Nov 6 18:50:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447320 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B649BC4167B for ; Mon, 6 Nov 2023 18:54:14 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h6-00065H-5Q; Mon, 06 Nov 2023 13:51:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h2-0005zC-Ec for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:24 -0500 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gz-0000yl-5b for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:24 -0500 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-4083ac51d8aso36880095e9.2 for ; Mon, 06 Nov 2023 10:51:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296679; x=1699901479; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=UIqdfI1rvGTDtr96W/cBcKJ1TJ7DmV0zgw8mFEB58m8=; b=DrYk7V3PnJ2Loc8CZ+e+yUsAGvAGSw99lBsND5rH4I2seEeXLtoN4pNeWrDjGKvgev fRLKjvRZiAiVGXxw4eFzu1ljaezE3zzhRA9Z14Cw/em1LaLNpyz1zNiPDvjm56ZdQ5Oz xN75smVjqtAjlID1M2ccpcK1fN1OoXOSYexQLEW6RCV0Tb3sPXPdoYLnYAQ4zvjnO9o5 992xDN2a1ovCDN01m2F99h/E6MZ1wb3xedgZHMNS2Wn0eFTZ0ewKut/s+69doJ6eBqil 1/SJlDGLpY2CKdDAeSjjw/eIF/YemNah27tOSfA7hx5R3m8ac8T9y2kijK63M3OYCFYx Bfyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296679; x=1699901479; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UIqdfI1rvGTDtr96W/cBcKJ1TJ7DmV0zgw8mFEB58m8=; b=E9wCdYJ8dRe2jkgRZ6RAJWJYU1a/2NYkMjaYMuCiEHBsEQ8v8bWbTTEU60wIQqnNef 2NsKZejgYDY1dl5vT+Y9c+xeW6iQchEBf16+NvUz2z8C0r8Nkg/7fjnDXJw0xwVH1UGz l91kDTzsZcqNn9khzh9LoI9/yaeiDBUEAZLUaKCQcB0V77QyKOikX6mdmIKOxvF1nsaA RBVsnuEae5VDHLlU9sakMhokXWhDt6ansbuhD7zRcnNOsET3cj/rk3ohrcZtZwzy7B7U upMnCUMxbwlsQ8cJU0iKxqtDx9zKsyi4G2Afjxj259/FdSV//UhCaStUZeeX4JFdO1PZ 3Y+g== X-Gm-Message-State: AOJu0YyQMcvi/jRJKnk1FPJBuPNsaSbERKbHtLc4ZgT8lAPuUszBZV7R ZfiuGq6GEAvRBdAkiyF1qK1eiD4Mqb8iYFnQVbKC9g== X-Google-Smtp-Source: AGHT+IHs6VFXcNO+9yGuXrtXQlD7TsFfqVm50reBh3nHbdARYk47yfqPCxIyMCP3jSt7UGID+4hwQw== X-Received: by 2002:a05:600c:198a:b0:402:98cd:a3e9 with SMTP id t10-20020a05600c198a00b0040298cda3e9mr521120wmq.32.1699296679460; Mon, 06 Nov 2023 10:51:19 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id a16-20020a5d5710000000b0031aef72a021sm284214wrv.86.2023.11.06.10.51.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 1C8836575A; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson Subject: [PATCH 07/22] tests/avocado: update the tcg_plugins test Date: Mon, 6 Nov 2023 18:50:57 +0000 Message-Id: <20231106185112.2755262-8-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org There are a number of things that are broken on the test currently so lets fix that up: - replace retired Debian kernel for tuxrun_baseline one - remove "detected repeat instructions test" since ea185a55 - log total counted instructions/memory accesses Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-8-alex.bennee@linaro.org> Acked-by: Richard Henderson --- tests/avocado/tcg_plugins.py | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/tests/avocado/tcg_plugins.py b/tests/avocado/tcg_plugins.py index 642d2e49e3..15fd87b2c1 100644 --- a/tests/avocado/tcg_plugins.py +++ b/tests/avocado/tcg_plugins.py @@ -54,13 +54,11 @@ def run_vm(self, kernel_path, kernel_command_line, class PluginKernelNormal(PluginKernelBase): def _grab_aarch64_kernel(self): - kernel_url = ('http://security.debian.org/' - 'debian-security/pool/updates/main/l/linux-signed-arm64/' - 'linux-image-4.19.0-12-arm64_4.19.152-1_arm64.deb') - kernel_sha1 = '2036c2792f80ac9c4ccaae742b2e0a28385b6010' - kernel_deb = self.fetch_asset(kernel_url, asset_hash=kernel_sha1) - kernel_path = self.extract_from_deb(kernel_deb, - "/boot/vmlinuz-4.19.0-12-arm64") + kernel_url = ('https://storage.tuxboot.com/20230331/arm64/Image') + kernel_sha256 = 'ce95a7101a5fecebe0fe630deee6bd97b32ba41bc8754090e9ad8961ea8674c7' + kernel_path = self.fetch_asset(kernel_url, + asset_hash=kernel_sha256, + algorithm = "sha256") return kernel_path def test_aarch64_virt_insn(self): @@ -88,6 +86,10 @@ def test_aarch64_virt_insn(self): m = re.search(br"insns: (?P\d+)", s) if "count" not in m.groupdict(): self.fail("Failed to find instruction count") + else: + count = int(m.group("count")) + self.log.info(f"Counted: {count} instructions") + def test_aarch64_virt_insn_icount(self): """ @@ -111,9 +113,13 @@ def test_aarch64_virt_insn_icount(self): with plugin_log as lf, \ mmap.mmap(lf.fileno(), 0, access=mmap.ACCESS_READ) as s: - m = re.search(br"detected repeat execution @ (?P0x[0-9A-Fa-f]+)", s) - if m is not None and "addr" in m.groupdict(): - self.fail("detected repeated instructions") + + m = re.search(br"insns: (?P\d+)", s) + if "count" not in m.groupdict(): + self.fail("Failed to find instruction count") + else: + count = int(m.group("count")) + self.log.info(f"Counted: {count} instructions") def test_aarch64_virt_mem_icount(self): """ @@ -145,3 +151,5 @@ def test_aarch64_virt_mem_icount(self): callback = int(m[1]) if inline != callback: self.fail("mismatched access counts") + else: + self.log.info(f"Counted {inline} memory accesses") From patchwork Mon Nov 6 18:50:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447309 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 47542C4332F for ; Mon, 6 Nov 2023 18:52:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h1-0005vv-Kz; Mon, 06 Nov 2023 13:51:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h0-0005t0-2B for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:22 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gy-0000yB-7E for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:21 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-4084de32db5so42127275e9.0 for ; Mon, 06 Nov 2023 10:51:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296678; x=1699901478; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=CXyrhp6VqJgeL6/elgmM8fEowiioTyfg620gHXDRwcg=; b=fuKBlV2wwUDhebO2fr9RpN/z4Y4cgFwAYv6Kbc5AQpxUuIHUYENsu7/EY7LVr5oYqZ Pw71AtxCXt+vmwEJBOByHZlMmnoqP4ONS+j2dVYgQs3yzM8gvjoF9DzGGwQelobVFH1T 8XdnU8F+p8MYNnpqvSuUPEz4ORAEZgsYMV2GUigFxJXSlyoy9PNAj1Wi+O4CcUDjs1sY whGXMcQrrSg3AvP7THVM34Sg10NHr44HLtAgkocIV7XZc9tC909IWwVci19tQ8XHAK9D MA2AxbXCdQGS4PnnGMb2u4IttVB26dp287vHd28njsm4DVm/Qt/CPCnbQNe3YVamSHnx UYIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296678; x=1699901478; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CXyrhp6VqJgeL6/elgmM8fEowiioTyfg620gHXDRwcg=; b=qCd030wnizFZxnIJSVr/BU/cWs0LTVn0qGO+jZtlxKqJirBJ8Jcj/60wwabnnEAVmu Q7WtiuEbFzmSNmXnSCtrM44kVK2bSyMK0xm+xVgO+7KQdYsO9OTiy1lDVl6PBDf8WqMs RyzareFxNqNzXJmmbdgFD/cDWgUeaXbCuqcj3O8zJ93HYwggt60SyUkh8zsMQAd44g80 ySK3VUiJpReu5iUhSE6SVxHYVjwFWi1DRHrKs8NpJWcUKVLnBGzBAen9GnNrALknv1gb DCor4OC0Eg5Zglwz7Ap5Oip4furEM5Bw7lZNDfOnW+jZwDlZ7+dmKgjHPThlih8RAiTU pnyA== X-Gm-Message-State: AOJu0YxtvebsUIQFA7hmIRJLcpS8ldN7WJp2ySkgL38xzfYp45hKYEDS PkCWROFkxZb9mAx4Mr/aXPZYOA== X-Google-Smtp-Source: AGHT+IGB+cv75UYfhNe2Ufhutn/6j9BMTkalqdpmHHumAt/m9EnCc+8s8cqWo0k7UohX2rNmiic3Eg== X-Received: by 2002:a05:600c:3596:b0:408:3804:2a20 with SMTP id p22-20020a05600c359600b0040838042a20mr463754wmq.22.1699296677905; Mon, 06 Nov 2023 10:51:17 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id a16-20020a5d5710000000b0031aef72a021sm284215wrv.86.2023.11.06.10.51.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 311DE6575B; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki Subject: [PATCH 08/22] gdbstub: Add num_regs member to GDBFeature Date: Mon, 6 Nov 2023 18:50:58 +0000 Message-Id: <20231106185112.2755262-9-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Akihiko Odaki Currently the number of registers exposed to GDB is written as magic numbers in code. Derive the number of registers GDB actually see from XML files to replace the magic numbers in code later. Signed-off-by: Akihiko Odaki Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Alex Bennée Message-Id: <20231025093128.33116-2-akihiko.odaki@daynix.com> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-9-alex.bennee@linaro.org> --- include/exec/gdbstub.h | 1 + scripts/feature_to_c.py | 46 +++++++++++++++++++++++++++++++++++++++-- 2 files changed, 45 insertions(+), 2 deletions(-) diff --git a/include/exec/gdbstub.h b/include/exec/gdbstub.h index 1a01c35f8e..a43aa34dad 100644 --- a/include/exec/gdbstub.h +++ b/include/exec/gdbstub.h @@ -13,6 +13,7 @@ typedef struct GDBFeature { const char *xmlname; const char *xml; + int num_regs; } GDBFeature; diff --git a/scripts/feature_to_c.py b/scripts/feature_to_c.py index bcbcb83beb..e04d6b2df7 100644 --- a/scripts/feature_to_c.py +++ b/scripts/feature_to_c.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 # SPDX-License-Identifier: GPL-2.0-or-later -import os, sys +import os, sys, xml.etree.ElementTree def writeliteral(indent, bytes): sys.stdout.write(' ' * indent) @@ -39,10 +39,52 @@ def writeliteral(indent, bytes): with open(input, 'rb') as file: read = file.read() + parser = xml.etree.ElementTree.XMLPullParser(['start', 'end']) + parser.feed(read) + events = parser.read_events() + event, element = next(events) + if event != 'start': + sys.stderr.write(f'unexpected event: {event}\n') + exit(1) + if element.tag != 'feature': + sys.stderr.write(f'unexpected start tag: {element.tag}\n') + exit(1) + + regnum = 0 + regnums = [] + tags = ['feature'] + for event, element in events: + if event == 'end': + if element.tag != tags[len(tags) - 1]: + sys.stderr.write(f'unexpected end tag: {element.tag}\n') + exit(1) + + tags.pop() + if element.tag == 'feature': + break + elif event == 'start': + if len(tags) < 2 and element.tag == 'reg': + if 'regnum' in element.attrib: + regnum = int(element.attrib['regnum']) + + regnums.append(regnum) + regnum += 1 + + tags.append(element.tag) + else: + raise Exception(f'unexpected event: {event}\n') + + if len(tags): + sys.stderr.write('unterminated feature tag\n') + exit(1) + + base_reg = min(regnums) + num_regs = max(regnums) - base_reg + 1 if len(regnums) else 0 + sys.stdout.write(' {\n') writeliteral(8, bytes(os.path.basename(input), 'utf-8')) sys.stdout.write(',\n') writeliteral(8, read) - sys.stdout.write('\n },\n') + sys.stdout.write(f',\n {num_regs},\n }},\n') sys.stdout.write(' { NULL }\n};\n') From patchwork Mon Nov 6 18:50:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447307 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 898F9C4167B for ; Mon, 6 Nov 2023 18:52:10 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h9-00068v-4d; Mon, 06 Nov 2023 13:51:31 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h4-000642-CA for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:26 -0500 Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gz-0000yo-Lg for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:26 -0500 Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2c5720a321aso64224871fa.1 for ; Mon, 06 Nov 2023 10:51:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296679; x=1699901479; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=eKIvEGRPtMkzzApfKX598M5fxDLEODeKT+ruNJk2aYQ=; b=QdzrJI+2tPBFPphVtIQeFt1woYqlXwxbcZOJ2wMIszE7gJnUpe9OGI0iGWM2XrLl17 HadXkbgwmnAG0jEBP1+EvDCxZEhy8RaTmvtpx4IK2kt15SiuSTlMEgMZxUDsuvO+O8iH 7sppZ0lzRh7cCxrpqoc8CbIMoxmF9YabwgyNj/4EOEgO2UiaenUThZuUBUSdwk+izUMP k0zSDuyc6g1Fk+ymcqP+hNRraABelNld3uNr0zpdib3p8CA2VrhvT0kZT4nGx9dz5aY9 uiDNs/hXjZKUh2uYwMCjnkMZyPoQdotohQDvhc65q+URMdTKuzWQ8bdkPPkhoq/4i4og nbDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296679; x=1699901479; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=eKIvEGRPtMkzzApfKX598M5fxDLEODeKT+ruNJk2aYQ=; b=lYP9oSVsCYHOgVDg/M+fkYaD/RbY6jNtugFdqYYwUnNt5h+aHjmfYl+xuDpnLOjra8 9y3UybMKhb0SZtCu90HXAu6md4QI0FJpjXf4WjsU47I7STEDWk7ErEuvz/WCpFG6YsRl NztQcT9oKdblVuDuzPHkgV7jsymizrNxAtrcEk81t4m3mgoTFlI9kYx1V8VndAvikyQr IEuk+p3kk6ZcDG9NQhl3yORjxDDOAoUztbHDcOsDPc8nKv3mm+nJHyeAA+drpABt5NC6 LmWTERxBAhg/I1xzPvnGGsrHe0jLOEDdkkFHedFeGVqqqPyX3DadGU3mSn2OYbNkXLkA epcg== X-Gm-Message-State: AOJu0Yw46wM5M+7OO5EQq+DalTKlRhuSgXRrkPJ42i7U+biQ9mdWuP4I 8F8NC6G306MARAis2dqOOKcdWQ== X-Google-Smtp-Source: AGHT+IHQSMlfAEVt1Xby1/uh2es9ZmyRNcThXTqLneWJ54cmT/apOr73Ixb+NfKnzTnzg4nRRvTxPg== X-Received: by 2002:a05:651c:1249:b0:2c4:feef:852 with SMTP id h9-20020a05651c124900b002c4feef0852mr22669392ljh.32.1699296679715; Mon, 06 Nov 2023 10:51:19 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id q24-20020a7bce98000000b0040648217f4fsm12793752wmj.39.2023.11.06.10.51.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 465616575C; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki Subject: [PATCH 09/22] gdbstub: Introduce gdb_find_static_feature() Date: Mon, 6 Nov 2023 18:50:59 +0000 Message-Id: <20231106185112.2755262-10-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::229; envelope-from=alex.bennee@linaro.org; helo=mail-lj1-x229.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Akihiko Odaki This function is useful to determine the number of registers exposed to GDB from the XML name. Signed-off-by: Akihiko Odaki Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Alex Bennée Reviewed-by: Richard Henderson Message-Id: <20231025093128.33116-3-akihiko.odaki@daynix.com> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-10-alex.bennee@linaro.org> --- include/exec/gdbstub.h | 8 ++++++++ gdbstub/gdbstub.c | 13 +++++++++++++ 2 files changed, 21 insertions(+) diff --git a/include/exec/gdbstub.h b/include/exec/gdbstub.h index a43aa34dad..7fe00506c7 100644 --- a/include/exec/gdbstub.h +++ b/include/exec/gdbstub.h @@ -44,6 +44,14 @@ void gdb_register_coprocessor(CPUState *cpu, */ int gdbserver_start(const char *port_or_device); +/** + * gdb_find_static_feature() - Find a static feature. + * @xmlname: The name of the XML. + * + * Return: The static feature. + */ +const GDBFeature *gdb_find_static_feature(const char *xmlname); + void gdb_set_stop_cpu(CPUState *cpu); /* in gdbstub-xml.c, generated by scripts/feature_to_c.py */ diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c index 29540a0284..ae24c4848f 100644 --- a/gdbstub/gdbstub.c +++ b/gdbstub/gdbstub.c @@ -422,6 +422,19 @@ static const char *get_feature_xml(const char *p, const char **newp, return NULL; } +const GDBFeature *gdb_find_static_feature(const char *xmlname) +{ + const GDBFeature *feature; + + for (feature = gdb_static_features; feature->xmlname; feature++) { + if (!strcmp(feature->xmlname, xmlname)) { + return feature; + } + } + + g_assert_not_reached(); +} + static int gdb_read_register(CPUState *cpu, GByteArray *buf, int reg) { CPUClass *cc = CPU_GET_CLASS(cpu); From patchwork Mon Nov 6 18:51:00 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447319 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B8448C4167B for ; Mon, 6 Nov 2023 18:54:03 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h2-0005y1-Iu; Mon, 06 Nov 2023 13:51:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h0-0005tf-Ue for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:22 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04gy-0000y3-7C for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:22 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-40853c639abso35600355e9.0 for ; Mon, 06 Nov 2023 10:51:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296678; x=1699901478; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yl+xLH6GlZSHRHLCyoxTrOuqj2ZDEe6hXJbkzkboBr8=; b=HTWe0w/E2trBMfOvJhr/ke8uvchwLPtamqy9nvf35mCV/dm1WQi0paW0gMgcnk4une 6jdfufumiEIUqxtxrzbk6uiC72UD9X/UU3DNWNCkADJAdURYNge307/jvtGZ0l0Vb47B eUriogU549cRQ5x4I4i2B5jdfM7TXpMVt2o8V81FE2TJf8YnaiOujJ1aSqscLE+GWd9g 4NJvUJLfqZvBTTfUCbX8vML2VnyrBBI/miuP7Kc1FleKjJy2TNfZ939VZ1Ez6oxyaZqR iQgJ2KZAWYZirwGaLCVf0KCbkaPZo5ZVSDkncz2QLy1z0OkEV4ttDbCg9odcTM3RglFu RepQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296678; x=1699901478; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yl+xLH6GlZSHRHLCyoxTrOuqj2ZDEe6hXJbkzkboBr8=; b=HL/fl9s1avpi04Hs2WK8tNHRSU7ObLFHKejeh743V7TT+ZkiHYLRpSEq1nENxB/ho4 drIAwrNbka41J5cNs3Q7+BYd4Y06Pp59+G/VOQjYGn9GJo6jdbSz2pnCApq8SkMouV9G 3aGGQeV+hBDuaMUSkhVl5U3vglqHLpkgKYcgr/lSwVj0TTpUXaDt8mFt4UpcsCqS4mct 9RmJSZCDwZ3LHcrwlSEqcPJ/URkK8JTqWQL/IFEjTUp1FxrFYoyb9bHVQzHKYqgF+pCh wUTtBMYePRIsaHHsY9ITpln67nVzTSadrHM8MpEglYfQRv5K6oUccx0yb77Ehso7AsJu Gcdg== X-Gm-Message-State: AOJu0YwMPps5bBN8obAC/pIGhvrA34sHg2h2Q/oRRBTKUkpev483bZOT 1z7BWOyn2L4g5zmBexhvtI44Nw== X-Google-Smtp-Source: AGHT+IERBH6Tyizby9keCoCx2ukmTB6iDLQK3sDLo4qV2eWqpzDVKR11jpLnnFabYoAkh6zNWXXr8g== X-Received: by 2002:a05:600c:6011:b0:409:5d7d:b266 with SMTP id az17-20020a05600c601100b004095d7db266mr451625wmb.14.1699296677708; Mon, 06 Nov 2023 10:51:17 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id a1-20020a05600c348100b003fe1fe56202sm13473409wmq.33.2023.11.06.10.51.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:15 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 5D8B16575D; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki Subject: [PATCH 10/22] gdbstub: Introduce GDBFeatureBuilder Date: Mon, 6 Nov 2023 18:51:00 +0000 Message-Id: <20231106185112.2755262-11-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Akihiko Odaki GDBFeatureBuilder unifies the logic to generate dynamic GDBFeature. Signed-off-by: Akihiko Odaki Reviewed-by: Richard Henderson Message-Id: <20231025093128.33116-4-akihiko.odaki@daynix.com> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-11-alex.bennee@linaro.org> --- include/exec/gdbstub.h | 50 ++++++++++++++++++++++++++++++++ gdbstub/gdbstub.c | 65 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 115 insertions(+) diff --git a/include/exec/gdbstub.h b/include/exec/gdbstub.h index 7fe00506c7..d8a3c56fa2 100644 --- a/include/exec/gdbstub.h +++ b/include/exec/gdbstub.h @@ -16,6 +16,12 @@ typedef struct GDBFeature { int num_regs; } GDBFeature; +typedef struct GDBFeatureBuilder { + GDBFeature *feature; + GPtrArray *xml; + int base_reg; +} GDBFeatureBuilder; + /* Get or set a register. Returns the size of the register. */ typedef int (*gdb_get_reg_cb)(CPUArchState *env, GByteArray *buf, int reg); @@ -44,6 +50,50 @@ void gdb_register_coprocessor(CPUState *cpu, */ int gdbserver_start(const char *port_or_device); +/** + * gdb_feature_builder_init() - Initialize GDBFeatureBuilder. + * @builder: The builder to be initialized. + * @feature: The feature to be filled. + * @name: The name of the feature. + * @xmlname: The name of the XML. + * @base_reg: The base number of the register ID. + */ +void gdb_feature_builder_init(GDBFeatureBuilder *builder, GDBFeature *feature, + const char *name, const char *xmlname, + int base_reg); + +/** + * gdb_feature_builder_append_tag() - Append a tag. + * @builder: The builder. + * @format: The format of the tag. + * @...: The values to be formatted. + */ +void G_GNUC_PRINTF(2, 3) +gdb_feature_builder_append_tag(const GDBFeatureBuilder *builder, + const char *format, ...); + +/** + * gdb_feature_builder_append_reg() - Append a register. + * @builder: The builder. + * @name: The register's name; it must be unique within a CPU. + * @bitsize: The register's size, in bits. + * @regnum: The offset of the register's number in the feature. + * @type: The type of the register. + * @group: The register group to which this register belongs; it can be NULL. + */ +void gdb_feature_builder_append_reg(const GDBFeatureBuilder *builder, + const char *name, + int bitsize, + int regnum, + const char *type, + const char *group); + +/** + * gdb_feature_builder_end() - End building GDBFeature. + * @builder: The builder. + */ +void gdb_feature_builder_end(const GDBFeatureBuilder *builder); + /** * gdb_find_static_feature() - Find a static feature. * @xmlname: The name of the XML. diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c index ae24c4848f..ebb912da1b 100644 --- a/gdbstub/gdbstub.c +++ b/gdbstub/gdbstub.c @@ -422,6 +422,71 @@ static const char *get_feature_xml(const char *p, const char **newp, return NULL; } +void gdb_feature_builder_init(GDBFeatureBuilder *builder, GDBFeature *feature, + const char *name, const char *xmlname, + int base_reg) +{ + char *header = g_markup_printf_escaped( + "" + "" + "", + name); + + builder->feature = feature; + builder->xml = g_ptr_array_new(); + g_ptr_array_add(builder->xml, header); + builder->base_reg = base_reg; + feature->xmlname = xmlname; + feature->num_regs = 0; +} + +void gdb_feature_builder_append_tag(const GDBFeatureBuilder *builder, + const char *format, ...) +{ + va_list ap; + va_start(ap, format); + g_ptr_array_add(builder->xml, g_markup_vprintf_escaped(format, ap)); + va_end(ap); +} + +void gdb_feature_builder_append_reg(const GDBFeatureBuilder *builder, + const char *name, + int bitsize, + int regnum, + const char *type, + const char *group) +{ + if (builder->feature->num_regs < regnum) { + builder->feature->num_regs = regnum; + } + + if (group) { + gdb_feature_builder_append_tag( + builder, + "", + name, bitsize, builder->base_reg + regnum, type, group); + } else { + gdb_feature_builder_append_tag( + builder, + "", + name, bitsize, builder->base_reg + regnum, type); + } +} + +void gdb_feature_builder_end(const GDBFeatureBuilder *builder) +{ + g_ptr_array_add(builder->xml, (void *)""); + g_ptr_array_add(builder->xml, NULL); + + builder->feature->xml = g_strjoinv(NULL, (void *)builder->xml->pdata); + + for (guint i = 0; i < builder->xml->len - 2; i++) { + g_free(g_ptr_array_index(builder->xml, i)); + } + + g_ptr_array_free(builder->xml, TRUE); +} + const GDBFeature *gdb_find_static_feature(const char *xmlname) { const GDBFeature *feature; From patchwork Mon Nov 6 18:51:01 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447310 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 238FFC4167B for ; Mon, 6 Nov 2023 18:52:39 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04hB-0006D9-UA; Mon, 06 Nov 2023 13:51:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h9-0006A6-6g for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:31 -0500 Received: from mail-wr1-x436.google.com ([2a00:1450:4864:20::436]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04h3-00010R-TL for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:30 -0500 Received: by mail-wr1-x436.google.com with SMTP id ffacd0b85a97d-32deb2809daso2888957f8f.3 for ; Mon, 06 Nov 2023 10:51:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296684; x=1699901484; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=MH6reWsIJbO30PCgx+SNdzqaOig4Me7urqqeVULhhmk=; b=NFRuOB0TaKNtfxjLBRk1q3FxAs5UfIdfMbP1LbDkbEJIRjFjGuaICeSeljxP65YAht ukIY45kjUjlXFMiqsTCFg9jR7FoT6QfPEQJ/yIdbqndPViRFXRu4/GRCw7vQr3Hz0FAc Je1Ua7YbxEV/Pqr0EQOMWYIZdCOqdAjYXEGNn4zYMNrt2ZsXravo4NiL61rXrwcBqqGa lH/krMUzTJc+jP0qi/LIFgPmEUEFQowlTas1X/QZ3edpmeHHNKCfZXlBODH5i+htIrav 1MniAk2ld2cPphCYEtPDnAKGHxyt1Yr1KWRIL1i/5NEr51avgUP6JSoe2zIs/WTXJ5Ox 7UDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296684; x=1699901484; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MH6reWsIJbO30PCgx+SNdzqaOig4Me7urqqeVULhhmk=; b=OuXmnfdjoVlG6fq2WR2WgcLbhQ575qI6qZ1Koz8+otkCi8y8IaMy/IuQYi3SXxWmHn TXpGHa3h8m7mbUUR9jze4+1S8yag1hRg4hxeZK1pA4+9gNmDJbGJyDgTC6D90PrfKR7t 5sjvZTvMA7b+iQ3xjjEsZYfozKLjYUG7tuXfCh/DlMkg/mKBxmP1naMAEPpPi6TtHPY9 L/Nf2Vh+oiHNWKTEXW1tZUlUBBy7D6WHmE/ht5MHo6XiIuVuRDMn6WDrnTP+MxUhX09F UdpmuEBgWO4548Wu3IrQ8jj/elSAq+GEA6EUk7U9hyTQz7pbkiPypKOfizhFaOzIqxcZ SVeg== X-Gm-Message-State: AOJu0Ywn35b34dfHmf2z/mRY5QiCWjbNBlgO34NW9l+hhRB2ryLUTa7u zMuXXqf/AkDlH221ABuqlLtDHw== X-Google-Smtp-Source: AGHT+IGuIEE2gAXwrQZE3UFa+PBzatJ6z+dt46dqJUYQeOS8OrrGv5TgbikIqSF+x1btt+ckYBky4Q== X-Received: by 2002:a05:6000:154a:b0:32f:79e5:8109 with SMTP id 10-20020a056000154a00b0032f79e58109mr27062604wry.2.1699296684299; Mon, 06 Nov 2023 10:51:24 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id o12-20020a5d4a8c000000b0032fbd0c7d04sm304416wrq.55.2023.11.06.10.51.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:19 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 763C665565; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki Subject: [PATCH 11/22] cpu: Call plugin hooks only when ready Date: Mon, 6 Nov 2023 18:51:01 +0000 Message-Id: <20231106185112.2755262-12-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::436; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x436.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Akihiko Odaki The initialization and exit hooks will not affect the state of vCPU outside TCG context, but they may depend on the state of vCPU. Therefore, it's better to call plugin hooks after the vCPU state is fully initialized and before it gets uninitialized. Signed-off-by: Akihiko Odaki Reviewed-by: Alex Bennée Message-Id: <20231025093128.33116-16-akihiko.odaki@daynix.com> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-23-alex.bennee@linaro.org> --- cpu-target.c | 11 ----------- hw/core/cpu-common.c | 10 ++++++++++ 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/cpu-target.c b/cpu-target.c index 79363ae370..00cd7f4d69 100644 --- a/cpu-target.c +++ b/cpu-target.c @@ -42,7 +42,6 @@ #include "hw/core/accel-cpu.h" #include "trace/trace-root.h" #include "qemu/accel.h" -#include "qemu/plugin.h" uintptr_t qemu_host_page_size; intptr_t qemu_host_page_mask; @@ -143,11 +142,6 @@ void cpu_exec_realizefn(CPUState *cpu, Error **errp) /* Wait until cpu initialization complete before exposing cpu. */ cpu_list_add(cpu); - /* Plugin initialization must wait until cpu_index assigned. */ - if (tcg_enabled()) { - qemu_plugin_vcpu_init_hook(cpu); - } - #ifdef CONFIG_USER_ONLY assert(qdev_get_vmsd(DEVICE(cpu)) == NULL || qdev_get_vmsd(DEVICE(cpu))->unmigratable); @@ -174,11 +168,6 @@ void cpu_exec_unrealizefn(CPUState *cpu) } #endif - /* Call the plugin hook before clearing cpu->cpu_index in cpu_list_remove */ - if (tcg_enabled()) { - qemu_plugin_vcpu_exit_hook(cpu); - } - cpu_list_remove(cpu); /* * Now that the vCPU has been removed from the RCU list, we can call diff --git a/hw/core/cpu-common.c b/hw/core/cpu-common.c index bab8942c30..0acfed4c0f 100644 --- a/hw/core/cpu-common.c +++ b/hw/core/cpu-common.c @@ -209,6 +209,11 @@ static void cpu_common_realizefn(DeviceState *dev, Error **errp) cpu_resume(cpu); } + /* Plugin initialization must wait until the cpu is fully realized. */ + if (tcg_enabled()) { + qemu_plugin_vcpu_init_hook(cpu); + } + /* NOTE: latest generic point where the cpu is fully realized */ } @@ -216,6 +221,11 @@ static void cpu_common_unrealizefn(DeviceState *dev) { CPUState *cpu = CPU(dev); + /* Call the plugin hook before clearing the cpu is fully unrealized */ + if (tcg_enabled()) { + qemu_plugin_vcpu_exit_hook(cpu); + } + /* NOTE: latest generic point before the cpu is fully unrealized */ cpu_exec_unrealizefn(cpu); } From patchwork Mon Nov 6 18:51:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447318 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2D2DCC4167D for ; Mon, 6 Nov 2023 18:54:04 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h8-00068q-1f; Mon, 06 Nov 2023 13:51:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h6-00065O-4F for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:28 -0500 Received: from mail-lj1-x233.google.com ([2a00:1450:4864:20::233]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04h1-0000zh-VY for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:26 -0500 Received: by mail-lj1-x233.google.com with SMTP id 38308e7fff4ca-2c6ec78a840so64525641fa.1 for ; Mon, 06 Nov 2023 10:51:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296682; x=1699901482; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=MfrStN1bGPF7+o1NbmLsld1y0X5EN7/qz8z3IXc0LBY=; b=q6M2wFtV/7SEtWNC1A+fm29z6+plCopQwgBljfLhXfjaUR7StfozVf3sjVrEvtgS9u xZ9q2IlCFxE87FjAUOWOy8P9+er0XgnIzXRN3jCMDXVVnEs9MV54uaffaX7be48MHna6 7eTnqL9N2VEAvWH1tnWhyJa/rVQ2bw9hY3mXaXDVIOw0el5NzwDWXVsdnthkbhV9yVJx poyuToEtQH/ShpLrXAi4+sbIn32rFqpvERwX78brHDUv3PP6/APE5KIgT+OYT0g6EnHh Y4eecrsU/bWNHiLy5/Hec/h648QxTzro0HhSG1jrfRR/Hw3N/C5rDM/Z1xF9a7z22CHc ckZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296682; x=1699901482; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MfrStN1bGPF7+o1NbmLsld1y0X5EN7/qz8z3IXc0LBY=; b=VUvdBUvSmnjuJ0k0K7BM+1usl5UkP/R8WZ/xmXdVcLJ7U1CZ9oywfUP7uz+wCGBkeg TPSnPhDR2g3r9kb8V+dwZqHKWll+MXwieLb4iSyB4Yjk5EG8ZAalktWx8XKeif7FjoeP 7Zux+Zre6mKmAiSQaiBI9W7FilOBjVEEnLcB1lin8bwbDDt5+cF8ekqU39Gl1PNBcOJ9 FoesW6fkejqIiDyUE9oEB9i3jqP6HeBt9DZGpZm83y0Ke9lbBQwGgzD1o1g0vKxFq7X3 mnXWQrTR5FD27DpXP5CvZom/fRaNZEmxGUSCSq06Vc6xCIfrI4ewJCY5pzT7NYu2HLB5 pQvA== X-Gm-Message-State: AOJu0YxPFDsC5WkiZKbqbumgllR8XmTygNFsN5JNo8Qx3fEwdxSM0qLx J50zDBsNcymu/oIcXewfkj6JXg== X-Google-Smtp-Source: AGHT+IEr9kRags2L5GCipbuODWIvzl3MyxkqFIa4cKYyfIQDFxgeAMBRCciz8io11OFDr93WplqkIw== X-Received: by 2002:a2e:b4ab:0:b0:2c5:3139:2d04 with SMTP id q11-20020a2eb4ab000000b002c531392d04mr23139936ljm.47.1699296682423; Mon, 06 Nov 2023 10:51:22 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id u7-20020a05600c138700b0040836519dd9sm13208168wmf.25.2023.11.06.10.51.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:19 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 8AED6655DF; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Greg Manning Subject: [PATCH 12/22] configure: tell meson and contrib_plugins about DLLTOOL Date: Mon, 6 Nov 2023 18:51:02 +0000 Message-Id: <20231106185112.2755262-13-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::233; envelope-from=alex.bennee@linaro.org; helo=mail-lj1-x233.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org To cleanly handle cross-building we need to export the details of dlltool into meson's list of cross binaries and into the contrib/plugins/ make configuration. Signed-off-by: Alex Bennée Cc: Paolo Bonzini Cc: Greg Manning Reviewed-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daudé --- configure | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/configure b/configure index f1456f6123..cd6c521bd8 100755 --- a/configure +++ b/configure @@ -309,6 +309,7 @@ fi ar="${AR-${cross_prefix}ar}" as="${AS-${cross_prefix}as}" ccas="${CCAS-$cc}" +dlltool="${DLLTOOL-${cross_prefix}dlltool}" objcopy="${OBJCOPY-${cross_prefix}objcopy}" ld="${LD-${cross_prefix}ld}" ranlib="${RANLIB-${cross_prefix}ranlib}" @@ -1659,6 +1660,9 @@ echo "SRC_PATH=$source_path/contrib/plugins" >> contrib/plugins/$config_host_mak echo "PKG_CONFIG=${pkg_config}" >> contrib/plugins/$config_host_mak echo "CC=$cc $CPU_CFLAGS" >> contrib/plugins/$config_host_mak echo "CFLAGS=${CFLAGS-$default_cflags} $EXTRA_CFLAGS" >> contrib/plugins/$config_host_mak +if test "$targetos" = windows; then + echo "DLLTOOL=$dlltool" >> contrib/plugins/$config_host_mak +fi if test "$targetos" = darwin; then echo "CONFIG_DARWIN=y" >> contrib/plugins/$config_host_mak fi @@ -1764,6 +1768,7 @@ if test "$skip_meson" = no; then test -n "$cxx" && echo "cpp = [$(meson_quote $cxx $CPU_CFLAGS)]" >> $cross test -n "$objcc" && echo "objc = [$(meson_quote $objcc $CPU_CFLAGS)]" >> $cross echo "ar = [$(meson_quote $ar)]" >> $cross + echo "dlltool = [$(meson_quote $dlltool)]" >> $cross echo "nm = [$(meson_quote $nm)]" >> $cross echo "pkgconfig = [$(meson_quote $pkg_config)]" >> $cross echo "pkg-config = [$(meson_quote $pkg_config)]" >> $cross @@ -1869,6 +1874,7 @@ preserve_env CC preserve_env CFLAGS preserve_env CXX preserve_env CXXFLAGS +preserve_env DLLTOOL preserve_env LD preserve_env LDFLAGS preserve_env LD_LIBRARY_PATH From patchwork Mon Nov 6 18:51:03 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447316 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E1BFAC4332F for ; Mon, 6 Nov 2023 18:53:36 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04hK-0006Eh-BJ; Mon, 06 Nov 2023 13:51:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04hJ-0006EZ-Au for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:41 -0500 Received: from mail-lj1-x232.google.com ([2a00:1450:4864:20::232]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04h2-0000zq-I3 for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:41 -0500 Received: by mail-lj1-x232.google.com with SMTP id 38308e7fff4ca-2c6b48cb2b6so68276501fa.2 for ; Mon, 06 Nov 2023 10:51:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296683; x=1699901483; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=02qhAhPdWySjb4Yf1geCqv+oHCNjuQAIoU1VPZZsVBY=; b=ssqCDWkvO+GIUZtEUK6X5CtDVMOVahbEeqotzrgfPSzEGZLCNP+9gn/ru1WT/pp3JW TXdTPawVKxs4pUFVfpee/3fyr0JbuT+mTumN1LMhiwyF1HswVAhhCOhFIMUNdoBgMLfm mrWOeKrL4nXv1V9iLpDhZDMMcy1IeGGJ1tUo/ixVyM5d79BMAfG+Xx+ZiMq5/p4b4z5+ TUPegxCXWK4NbT434IsSJqkco0Pm/Gcm7L9Y2WpsL3axeaDOk+bSr8gVNNaaF8+Xvjcs pQlUW5E4nav38Nm6RurbG8XoyCBD9aJlwc+mOyywoxD0xAWYVG+rvSiC7srK7FletQgX 62IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296683; x=1699901483; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=02qhAhPdWySjb4Yf1geCqv+oHCNjuQAIoU1VPZZsVBY=; b=t5sEwHlTpm/CECJXpa5mGg4swJPtEWwkXXzjrAvBbjVZ2jQbQzCo8SA+SnxcS1Jxx0 6mTFq/YRPgrmAagqogPgJAYXB0W0XcR54MSUnhY0zU2InIw3ujBJv1liyzSMFE46JU6P GUaLSff4n7+oqFEjW6+eY1jGkd0DH7fduS2tS/nHZ46SYBXEREYFFvCeEJMlGDunOXWu sTL/dk2vMPupgJCPb3YIZDAGCZiYGwAUGEhIzQOWX5lZb4l+SbMCvDKKmMIFcKVAP2MO bOa4c/YOiPoIMLFjs2OYw5DvDcQnnnF9CVTo54KpnR9TYKaXMD5XKeLaUZ4SuT6YDWqP cmVA== X-Gm-Message-State: AOJu0Yw2+0MSWmIfyEkYdgde5qfD0zFkW4aU8k8eFgaTB4UuyCT7z6Ao x7A6vZ32vEyjtGankQ85xI9GSw== X-Google-Smtp-Source: AGHT+IGmCSDj84DkUhdmda8wp2ZLlGlZlJSMSnSQQ2nuncQrJ38Ex8opUj/I6/5YSL600Jf8VSaL7w== X-Received: by 2002:a2e:b90f:0:b0:2c5:3a9:7467 with SMTP id b15-20020a2eb90f000000b002c503a97467mr20609195ljb.8.1699296682679; Mon, 06 Nov 2023 10:51:22 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id f13-20020a05600c4e8d00b0040596352951sm12924272wmq.5.2023.11.06.10.51.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:20 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 9F21D6575E; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Greg Manning Subject: [PATCH 13/22] plugins: add dllexport and dllimport to api funcs Date: Mon, 6 Nov 2023 18:51:03 +0000 Message-Id: <20231106185112.2755262-14-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::232; envelope-from=alex.bennee@linaro.org; helo=mail-lj1-x232.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Greg Manning In qemu-plugin.h, mark all API functions as __declspec(dllexport) when compiling the executables, and as __declspec(dllimport) when being used to compile plugins against. Signed-off-by: Greg Manning Reviewed-by: Alex Bennée Message-Id: <20231102172053.17692-2-gmanning@rapitasystems.com> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-27-alex.bennee@linaro.org> Reviewed-by: Paolo Bonzini Reviewed-by: Philippe Mathieu-Daudé --- include/qemu/qemu-plugin.h | 50 +++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/include/qemu/qemu-plugin.h b/include/qemu/qemu-plugin.h index 50a9957279..4daab6efd2 100644 --- a/include/qemu/qemu-plugin.h +++ b/include/qemu/qemu-plugin.h @@ -22,15 +22,18 @@ * https://gcc.gnu.org/wiki/Visibility */ #if defined _WIN32 || defined __CYGWIN__ - #ifdef BUILDING_DLL - #define QEMU_PLUGIN_EXPORT __declspec(dllexport) - #else + #ifdef CONFIG_PLUGIN #define QEMU_PLUGIN_EXPORT __declspec(dllimport) + #define QEMU_PLUGIN_API __declspec(dllexport) + #else + #define QEMU_PLUGIN_EXPORT __declspec(dllexport) + #define QEMU_PLUGIN_API __declspec(dllimport) #endif #define QEMU_PLUGIN_LOCAL #else #define QEMU_PLUGIN_EXPORT __attribute__((visibility("default"))) #define QEMU_PLUGIN_LOCAL __attribute__((visibility("hidden"))) + #define QEMU_PLUGIN_API #endif /** @@ -147,6 +150,7 @@ typedef void (*qemu_plugin_vcpu_udata_cb_t)(unsigned int vcpu_index, * * Note: Calling this function from qemu_plugin_install() is a bug. */ +QEMU_PLUGIN_API void qemu_plugin_uninstall(qemu_plugin_id_t id, qemu_plugin_simple_cb_t cb); /** @@ -160,6 +164,7 @@ void qemu_plugin_uninstall(qemu_plugin_id_t id, qemu_plugin_simple_cb_t cb); * Plugins are reset asynchronously, and therefore the given plugin receives * callbacks until @cb is called. */ +QEMU_PLUGIN_API void qemu_plugin_reset(qemu_plugin_id_t id, qemu_plugin_simple_cb_t cb); /** @@ -171,6 +176,7 @@ void qemu_plugin_reset(qemu_plugin_id_t id, qemu_plugin_simple_cb_t cb); * * See also: qemu_plugin_register_vcpu_exit_cb() */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_init_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_simple_cb_t cb); @@ -183,6 +189,7 @@ void qemu_plugin_register_vcpu_init_cb(qemu_plugin_id_t id, * * See also: qemu_plugin_register_vcpu_init_cb() */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_exit_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_simple_cb_t cb); @@ -193,6 +200,7 @@ void qemu_plugin_register_vcpu_exit_cb(qemu_plugin_id_t id, * * The @cb function is called every time a vCPU idles. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_idle_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_simple_cb_t cb); @@ -203,6 +211,7 @@ void qemu_plugin_register_vcpu_idle_cb(qemu_plugin_id_t id, * * The @cb function is called every time a vCPU resumes execution. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_resume_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_simple_cb_t cb); @@ -253,6 +262,7 @@ typedef void (*qemu_plugin_vcpu_tb_trans_cb_t)(qemu_plugin_id_t id, * callbacks to be triggered when the block or individual instruction * executes. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_tb_trans_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_tb_trans_cb_t cb); @@ -265,6 +275,7 @@ void qemu_plugin_register_vcpu_tb_trans_cb(qemu_plugin_id_t id, * * The @cb function is called every time a translated unit executes. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_tb_exec_cb(struct qemu_plugin_tb *tb, qemu_plugin_vcpu_udata_cb_t cb, enum qemu_plugin_cb_flags flags, @@ -296,6 +307,7 @@ enum qemu_plugin_op { * Note: ops are not atomic so in multi-threaded/multi-smp situations * you will get inexact results. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_tb_exec_inline(struct qemu_plugin_tb *tb, enum qemu_plugin_op op, void *ptr, uint64_t imm); @@ -309,6 +321,7 @@ void qemu_plugin_register_vcpu_tb_exec_inline(struct qemu_plugin_tb *tb, * * The @cb function is called every time an instruction is executed */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_insn_exec_cb(struct qemu_plugin_insn *insn, qemu_plugin_vcpu_udata_cb_t cb, enum qemu_plugin_cb_flags flags, @@ -324,6 +337,7 @@ void qemu_plugin_register_vcpu_insn_exec_cb(struct qemu_plugin_insn *insn, * Insert an inline op to every time an instruction executes. Useful * if you just want to increment a single counter somewhere in memory. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_insn_exec_inline(struct qemu_plugin_insn *insn, enum qemu_plugin_op op, void *ptr, uint64_t imm); @@ -334,6 +348,7 @@ void qemu_plugin_register_vcpu_insn_exec_inline(struct qemu_plugin_insn *insn, * * Returns: number of instructions in this block */ +QEMU_PLUGIN_API size_t qemu_plugin_tb_n_insns(const struct qemu_plugin_tb *tb); /** @@ -342,6 +357,7 @@ size_t qemu_plugin_tb_n_insns(const struct qemu_plugin_tb *tb); * * Returns: virtual address of block start */ +QEMU_PLUGIN_API uint64_t qemu_plugin_tb_vaddr(const struct qemu_plugin_tb *tb); /** @@ -355,6 +371,7 @@ uint64_t qemu_plugin_tb_vaddr(const struct qemu_plugin_tb *tb); * * Returns: opaque handle to instruction */ +QEMU_PLUGIN_API struct qemu_plugin_insn * qemu_plugin_tb_get_insn(const struct qemu_plugin_tb *tb, size_t idx); @@ -368,6 +385,7 @@ qemu_plugin_tb_get_insn(const struct qemu_plugin_tb *tb, size_t idx); * Returns: pointer to a stream of bytes containing the value of this * instructions opcode. */ +QEMU_PLUGIN_API const void *qemu_plugin_insn_data(const struct qemu_plugin_insn *insn); /** @@ -376,6 +394,7 @@ const void *qemu_plugin_insn_data(const struct qemu_plugin_insn *insn); * * Returns: size of instruction in bytes */ +QEMU_PLUGIN_API size_t qemu_plugin_insn_size(const struct qemu_plugin_insn *insn); /** @@ -384,6 +403,7 @@ size_t qemu_plugin_insn_size(const struct qemu_plugin_insn *insn); * * Returns: virtual address of instruction */ +QEMU_PLUGIN_API uint64_t qemu_plugin_insn_vaddr(const struct qemu_plugin_insn *insn); /** @@ -392,6 +412,7 @@ uint64_t qemu_plugin_insn_vaddr(const struct qemu_plugin_insn *insn); * * Returns: hardware (physical) target address of instruction */ +QEMU_PLUGIN_API void *qemu_plugin_insn_haddr(const struct qemu_plugin_insn *insn); /** @@ -410,6 +431,7 @@ struct qemu_plugin_hwaddr; * * Returns: size of access in ^2 (0=byte, 1=16bit, 2=32bit etc...) */ +QEMU_PLUGIN_API unsigned int qemu_plugin_mem_size_shift(qemu_plugin_meminfo_t info); /** * qemu_plugin_mem_is_sign_extended() - was the access sign extended @@ -417,6 +439,7 @@ unsigned int qemu_plugin_mem_size_shift(qemu_plugin_meminfo_t info); * * Returns: true if it was, otherwise false */ +QEMU_PLUGIN_API bool qemu_plugin_mem_is_sign_extended(qemu_plugin_meminfo_t info); /** * qemu_plugin_mem_is_big_endian() - was the access big endian @@ -424,6 +447,7 @@ bool qemu_plugin_mem_is_sign_extended(qemu_plugin_meminfo_t info); * * Returns: true if it was, otherwise false */ +QEMU_PLUGIN_API bool qemu_plugin_mem_is_big_endian(qemu_plugin_meminfo_t info); /** * qemu_plugin_mem_is_store() - was the access a store @@ -431,6 +455,7 @@ bool qemu_plugin_mem_is_big_endian(qemu_plugin_meminfo_t info); * * Returns: true if it was, otherwise false */ +QEMU_PLUGIN_API bool qemu_plugin_mem_is_store(qemu_plugin_meminfo_t info); /** @@ -446,6 +471,7 @@ bool qemu_plugin_mem_is_store(qemu_plugin_meminfo_t info); * information about the handle should be recovered before the * callback returns. */ +QEMU_PLUGIN_API struct qemu_plugin_hwaddr *qemu_plugin_get_hwaddr(qemu_plugin_meminfo_t info, uint64_t vaddr); @@ -462,6 +488,7 @@ struct qemu_plugin_hwaddr *qemu_plugin_get_hwaddr(qemu_plugin_meminfo_t info, * Returns true if the handle's memory operation is to memory-mapped IO, or * false if it is to RAM */ +QEMU_PLUGIN_API bool qemu_plugin_hwaddr_is_io(const struct qemu_plugin_hwaddr *haddr); /** @@ -473,12 +500,14 @@ bool qemu_plugin_hwaddr_is_io(const struct qemu_plugin_hwaddr *haddr); * Note that the returned physical address may not be unique if you are dealing * with multiple address spaces. */ +QEMU_PLUGIN_API uint64_t qemu_plugin_hwaddr_phys_addr(const struct qemu_plugin_hwaddr *haddr); /* * Returns a string representing the device. The string is valid for * the lifetime of the plugin. */ +QEMU_PLUGIN_API const char *qemu_plugin_hwaddr_device_name(const struct qemu_plugin_hwaddr *h); /** @@ -513,6 +542,7 @@ typedef void (*qemu_plugin_vcpu_mem_cb_t) (unsigned int vcpu_index, * callback so the plugin is responsible for ensuring it doesn't get * confused by making appropriate use of locking if required. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_mem_cb(struct qemu_plugin_insn *insn, qemu_plugin_vcpu_mem_cb_t cb, enum qemu_plugin_cb_flags flags, @@ -531,6 +561,7 @@ void qemu_plugin_register_vcpu_mem_cb(struct qemu_plugin_insn *insn, * instruction. This provides for a lightweight but not thread-safe * way of counting the number of operations done. */ +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_mem_inline(struct qemu_plugin_insn *insn, enum qemu_plugin_mem_rw rw, enum qemu_plugin_op op, void *ptr, @@ -544,6 +575,7 @@ typedef void uint64_t a3, uint64_t a4, uint64_t a5, uint64_t a6, uint64_t a7, uint64_t a8); +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_syscall_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_syscall_cb_t cb); @@ -551,6 +583,7 @@ typedef void (*qemu_plugin_vcpu_syscall_ret_cb_t)(qemu_plugin_id_t id, unsigned int vcpu_idx, int64_t num, int64_t ret); +QEMU_PLUGIN_API void qemu_plugin_register_vcpu_syscall_ret_cb(qemu_plugin_id_t id, qemu_plugin_vcpu_syscall_ret_cb_t cb); @@ -563,6 +596,7 @@ qemu_plugin_register_vcpu_syscall_ret_cb(qemu_plugin_id_t id, * Returns an allocated string containing the disassembly */ +QEMU_PLUGIN_API char *qemu_plugin_insn_disas(const struct qemu_plugin_insn *insn); /** @@ -572,6 +606,7 @@ char *qemu_plugin_insn_disas(const struct qemu_plugin_insn *insn); * Return a static string referring to the symbol. This is dependent * on the binary QEMU is running having provided a symbol table. */ +QEMU_PLUGIN_API const char *qemu_plugin_insn_symbol(const struct qemu_plugin_insn *insn); /** @@ -583,9 +618,11 @@ const char *qemu_plugin_insn_symbol(const struct qemu_plugin_insn *insn); * * See also: qemu_plugin_register_vcpu_init_cb() */ +QEMU_PLUGIN_API void qemu_plugin_vcpu_for_each(qemu_plugin_id_t id, qemu_plugin_vcpu_simple_cb_t cb); +QEMU_PLUGIN_API void qemu_plugin_register_flush_cb(qemu_plugin_id_t id, qemu_plugin_simple_cb_t cb); @@ -602,6 +639,7 @@ void qemu_plugin_register_flush_cb(qemu_plugin_id_t id, * In user-mode it is possible a few un-instrumented instructions from * child threads may run before the host kernel reaps the threads. */ +QEMU_PLUGIN_API void qemu_plugin_register_atexit_cb(qemu_plugin_id_t id, qemu_plugin_udata_cb_t cb, void *userdata); @@ -615,6 +653,7 @@ int qemu_plugin_n_max_vcpus(void); * qemu_plugin_outs() - output string via QEMU's logging system * @string: a string */ +QEMU_PLUGIN_API void qemu_plugin_outs(const char *string); /** @@ -628,6 +667,7 @@ void qemu_plugin_outs(const char *string); * returns true if the combination @name=@val parses correctly to a boolean * argument, and false otherwise */ +QEMU_PLUGIN_API bool qemu_plugin_bool_parse(const char *name, const char *val, bool *ret); /** @@ -638,6 +678,7 @@ bool qemu_plugin_bool_parse(const char *name, const char *val, bool *ret); * return NULL. The user should g_free() the string once no longer * needed. */ +QEMU_PLUGIN_API const char *qemu_plugin_path_to_binary(void); /** @@ -646,6 +687,7 @@ const char *qemu_plugin_path_to_binary(void); * Returns the nominal start address of the main text segment in * user-mode. Currently returns 0 for system emulation. */ +QEMU_PLUGIN_API uint64_t qemu_plugin_start_code(void); /** @@ -654,6 +696,7 @@ uint64_t qemu_plugin_start_code(void); * Returns the nominal end address of the main text segment in * user-mode. Currently returns 0 for system emulation. */ +QEMU_PLUGIN_API uint64_t qemu_plugin_end_code(void); /** @@ -662,6 +705,7 @@ uint64_t qemu_plugin_end_code(void); * Returns the nominal entry address of the main text segment in * user-mode. Currently returns 0 for system emulation. */ +QEMU_PLUGIN_API uint64_t qemu_plugin_entry_code(void); #endif /* QEMU_QEMU_PLUGIN_H */ From patchwork Mon Nov 6 18:51:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447308 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6A1A5C4332F for ; Mon, 6 Nov 2023 18:52:22 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04h9-0006Ao-RN; Mon, 06 Nov 2023 13:51:31 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04h6-00065I-3Y for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:28 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04h2-0000zu-90 for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:51:27 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-40842752c6eso37012755e9.1 for ; Mon, 06 Nov 2023 10:51:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699296683; x=1699901483; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=r7xEhMFJbQQc5hUVTAQGpBHacYlUgRxw6wSpjBTQ+xA=; b=HTloqDEM2HMHSIAQbN06G0elfzv4XCJOm3ShZRYfvBo/5Ov9Ram34IPSE3TwMM7B5U dNoxnr1TBnl6nZwzMSPKMd+3rtCkb32LE20OSSiW2OMwk8cJR2vNsclEYdUte9RshmpB 5JlDAtfe8NB0UUGG0ynuG1lJd2lm5D6F0u+Z+5JCQqBYjcTkotdrnDLLCO3Ccbr4QP/B 2sSA312cKbQ13TlsLMNQtxXVU3mdtNPUuO2skLRL/BWM9n+9Q8r2Bl0HCilfWrKSUrXD Le6EvCSwNDE+Dp5+8yNLOa30RTQTEHBgpPpyr8CawIec58v7MqnpcJAn7WAP5pbOjRi5 WnUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699296683; x=1699901483; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=r7xEhMFJbQQc5hUVTAQGpBHacYlUgRxw6wSpjBTQ+xA=; b=thLymzTxg7PFri38AjLRANoXhjWptq0KoFhoM0ev2Dkrq79KIrwmYoDpUzi8AxHddt tkwBXyQ3SqRy9AGqUTuXSeCDHpZWrgJsgTmrEc6Lxm+fJVKmivkfy4YECwYEumtMNOox ykla/Lgn2nMcvBUr4qqJztWVoyLYLn4iPzFcYVQaSybXSWittwCoTmAi+AL2jG14iOSS SPW9239DvC0tdk4yD/pcpEybSnDx0XQ8peyNldvVcZdUDKDHmrX+ECrv3Br6ivbBMIym 8QcF1ooHEtnKcby7wYpHg40kuW/CX/zTXt1IIdaGvPUO0neeJU/qWMHzoDElHsQxOLCP x9Fw== X-Gm-Message-State: AOJu0YzxJfjAlqcfa5p867aI7+kf2Y+FymNTbxJH3ywvLvTA9QsfAYQc Rs0Nmf/fE2LkcJ/wm7S8GO+ASg== X-Google-Smtp-Source: AGHT+IEpw3EWiK8sW9fErNZXGj1XrZXl0rpH18rjUHe5lMUzqmYsvLaNjgFzY9Cwk2WjUao697sNHg== X-Received: by 2002:a05:600c:4686:b0:409:637b:88e8 with SMTP id p6-20020a05600c468600b00409637b88e8mr573225wmo.2.1699296682836; Mon, 06 Nov 2023 10:51:22 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id g23-20020a7bc4d7000000b004063cd8105csm12699683wmk.22.2023.11.06.10.51.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:51:20 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id BC756656D9; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Greg Manning Subject: [PATCH 14/22] plugins: make test/example plugins work on windows Date: Mon, 6 Nov 2023 18:51:04 +0000 Message-Id: <20231106185112.2755262-15-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Greg Manning Generate a qemu_plugin_api.lib delay import lib on windows, for windows qemu plugins to link against. Implement an example dll load fail hook to link up the API functions correctly when a plugin is loaded on windows. Update the build scripts for the test and example plugins to use these things. Signed-off-by: Greg Manning Acked-by: Alex Bennée Message-Id: <20231102172053.17692-3-gmanning@rapitasystems.com> [AJB: use find_program for dlltool] Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-28-alex.bennee@linaro.org> Cc: Paolo Bonzini --- configure | 3 +++ contrib/plugins/win32_linker.c | 34 ++++++++++++++++++++++++++++++++++ contrib/plugins/Makefile | 20 ++++++++++++++++---- plugins/meson.build | 19 +++++++++++++++++++ tests/plugin/meson.build | 14 +++++++++++--- 5 files changed, 83 insertions(+), 7 deletions(-) create mode 100644 contrib/plugins/win32_linker.c diff --git a/configure b/configure index cd6c521bd8..e50ec99fe2 100755 --- a/configure +++ b/configure @@ -1666,6 +1666,9 @@ fi if test "$targetos" = darwin; then echo "CONFIG_DARWIN=y" >> contrib/plugins/$config_host_mak fi +if test "$targetos" = windows; then + echo "CONFIG_WIN32=y" >> contrib/plugins/$config_host_mak +fi # tests/tcg configuration (config_host_mak=tests/tcg/config-host.mak diff --git a/contrib/plugins/win32_linker.c b/contrib/plugins/win32_linker.c new file mode 100644 index 0000000000..50797d616e --- /dev/null +++ b/contrib/plugins/win32_linker.c @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2023, Greg Manning + * + * This hook, __pfnDliFailureHook2, is documented in the microsoft documentation here: + * https://learn.microsoft.com/en-us/cpp/build/reference/error-handling-and-notification + * It gets called when a delay-loaded DLL encounters various errors. + * We handle the specific case of a DLL looking for a "qemu.exe", + * and give it the running executable (regardless of what it is named). + * + * This work is licensed under the terms of the GNU LGPL, version 2 or later. + * See the COPYING.LIB file in the top-level directory. + */ + +#include +#include + +FARPROC WINAPI dll_failure_hook(unsigned dliNotify, PDelayLoadInfo pdli); + + +PfnDliHook __pfnDliFailureHook2 = dll_failure_hook; + +FARPROC WINAPI dll_failure_hook(unsigned dliNotify, PDelayLoadInfo pdli) { + if (dliNotify == dliFailLoadLib) { + /* If the failing request was for qemu.exe, ... */ + if (strcmp(pdli->szDll, "qemu.exe") == 0) { + /* Then pass back a pointer to the top level module. */ + HMODULE top = GetModuleHandle(NULL); + return (FARPROC) top; + } + } + /* Otherwise we can't do anything special. */ + return 0; +} + diff --git a/contrib/plugins/Makefile b/contrib/plugins/Makefile index 8ba78c7a32..751fa38619 100644 --- a/contrib/plugins/Makefile +++ b/contrib/plugins/Makefile @@ -22,7 +22,14 @@ NAMES += hwprofile NAMES += cache NAMES += drcov -SONAMES := $(addsuffix .so,$(addprefix lib,$(NAMES))) +ifeq ($(CONFIG_WIN32),y) +SO_SUFFIX := .dll +LDLIBS += $(shell $(PKG_CONFIG) --libs glib-2.0) +else +SO_SUFFIX := .so +endif + +SONAMES := $(addsuffix $(SO_SUFFIX),$(addprefix lib,$(NAMES))) # The main QEMU uses Glib extensively so it's perfectly fine to use it # in plugins (which many example do). @@ -35,15 +42,20 @@ all: $(SONAMES) %.o: %.c $(CC) $(CFLAGS) $(PLUGIN_CFLAGS) -c -o $@ $< -lib%.so: %.o -ifeq ($(CONFIG_DARWIN),y) +ifeq ($(CONFIG_WIN32),y) +lib%$(SO_SUFFIX): %.o win32_linker.o ../../plugins/qemu_plugin_api.lib + $(CC) -shared -o $@ $^ $(LDLIBS) +else ifeq ($(CONFIG_DARWIN),y) +lib%$(SO_SUFFIX): %.o $(CC) -bundle -Wl,-undefined,dynamic_lookup -o $@ $^ $(LDLIBS) else +lib%$(SO_SUFFIX): %.o $(CC) -shared -o $@ $^ $(LDLIBS) endif + clean: - rm -f *.o *.so *.d + rm -f *.o *$(SO_SUFFIX) *.d rm -Rf .libs .PHONY: all clean diff --git a/plugins/meson.build b/plugins/meson.build index 71ed996ed3..40d24529c0 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -14,6 +14,25 @@ if not enable_modules endif if get_option('plugins') + if targetos == 'windows' + dlltool = find_program('dlltool', required: true) + + # Generate a .lib file for plugins to link against. + # First, create a .def file listing all the symbols a plugin should expect to have + # available in qemu + win32_plugin_def = configure_file( + input: files('qemu-plugins.symbols'), + output: 'qemu_plugin_api.def', + capture: true, + command: ['sed', '-e', '0,/^/s//EXPORTS/; s/[{};]//g', '@INPUT@']) + # then use dlltool to assemble a delaylib. + win32_qemu_plugin_api_lib = configure_file( + input: win32_plugin_def, + output: 'qemu_plugin_api.lib', + command: [dlltool, '--input-def', '@INPUT@', + '--output-delaylib', '@OUTPUT@', '--dllname', 'qemu.exe'] + ) + endif specific_ss.add(files( 'loader.c', 'core.c', diff --git a/tests/plugin/meson.build b/tests/plugin/meson.build index 322cafcdf6..528bb9d86c 100644 --- a/tests/plugin/meson.build +++ b/tests/plugin/meson.build @@ -1,9 +1,17 @@ t = [] if get_option('plugins') foreach i : ['bb', 'empty', 'insn', 'mem', 'syscall'] - t += shared_module(i, files(i + '.c'), - include_directories: '../../include/qemu', - dependencies: glib) + if targetos == 'windows' + t += shared_module(i, files(i + '.c') + '../../contrib/plugins/win32_linker.c', + include_directories: '../../include/qemu', + objects: [win32_qemu_plugin_api_lib], + dependencies: glib) + + else + t += shared_module(i, files(i + '.c'), + include_directories: '../../include/qemu', + dependencies: glib) + endif endforeach endif if t.length() > 0 From patchwork Mon Nov 6 18:51:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447325 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6DF5AC4332F for ; Mon, 6 Nov 2023 18:59:36 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04o8-0002wM-7z; Mon, 06 Nov 2023 13:58:44 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04o7-0002vR-2w for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:43 -0500 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nw-0002Q0-Uq for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:42 -0500 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-408382da7f0so36096885e9.0 for ; Mon, 06 Nov 2023 10:58:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297111; x=1699901911; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3NC0qFh5CwQ8fmbB+yUbn7BEtT8InvNkyBwuc9hPWAc=; b=Ic53S2UA2lVSgT0S/EBu0PMjuBFWfeGGZpCKWoH4snQ8LVpUzxKJ5fmu0bVcjlm+iu JkbuwXLoUXaboOCiHjkP8dND4vGQvlQGuMxc6PwLFsD62iT3CCZm6iazl5h8CMGN6NRQ ci/i16AJ0h8DN/33E2CXGBGN8q2YJ1pe5gyHO4WMHavlLpfMWDTLxmaOMK/CNOfBCBaA Uh5avbSSlV9vyUp6R93R5MEHmyPhE65XFjyuYUPbRajdjeXV0VRYuWp/og7yDI+1GoFy inT8nT16fEfqHDWHeU7LxASgA4ylvifAYTbkv/d1cUEo+MXCRG0lv1h7uZKJUvoGk7kP QLgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297111; x=1699901911; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3NC0qFh5CwQ8fmbB+yUbn7BEtT8InvNkyBwuc9hPWAc=; b=Dua1BBiVl1FeCPrUCSwJY/7Tqn+cBtqmGQgn7ydfYeVZg5KJseTsqI7Lx2aS9ITQk7 epQ3ig/NUCIb6HV7ouaHFKVV4vR5uw3sbBKgVJl07SmCo40KUKMUx/QmRC/iaaLiNnbr ZswQ6L+C7wtuva2MRpI7j8yeIQZexRSck2QLYK/K+URh3cYSjrLItm2NIYfJdkh1KRqx lMyo4mlwBFnj1Pah+huxWFmYsEVxTmyI6+oIGFTUzf+uGO6hTYTjfXodQ29UeoALs5Dk VRA3Lf9ex3/D89JDzmk++OaKMWlLfoNxnXhZfzxu/ISNstm5tGtFXWsoFZ82rwr9Mm6e KsaQ== X-Gm-Message-State: AOJu0Yxzqan9IOMULnlXF+LhHmgNxR8GdqYBiEyzLzSr3mmZNR0gCLcf uncdWfoauBGCGqyirkFjFwBfTA== X-Google-Smtp-Source: AGHT+IHQ8vJL/0GcEdRfC0fcWSYV69yDbbqNJLrZuh1SbIM76rPheW9wrwolcUMSvlj3iddAC/EGTA== X-Received: by 2002:a5d:5443:0:b0:32d:857c:d546 with SMTP id w3-20020a5d5443000000b0032d857cd546mr20701776wrv.64.1699297111632; Mon, 06 Nov 2023 10:58:31 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id z8-20020adfe548000000b003143c9beeaesm327095wrm.44.2023.11.06.10.58.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:30 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id D32A76575F; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Greg Manning Subject: [PATCH 15/22] plugins: disable lockstep plugin on windows Date: Mon, 6 Nov 2023 18:51:05 +0000 Message-Id: <20231106185112.2755262-16-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Greg Manning The lockstep plugin uses unix sockets and would require a different communication mechanism to work on Windows. Signed-off-by: Greg Manning Reviewed-by: Alex Bennée Message-Id: <20231102172053.17692-4-gmanning@rapitasystems.com> Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-29-alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé --- contrib/plugins/Makefile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/contrib/plugins/Makefile b/contrib/plugins/Makefile index 751fa38619..1783750cf6 100644 --- a/contrib/plugins/Makefile +++ b/contrib/plugins/Makefile @@ -17,7 +17,13 @@ NAMES += execlog NAMES += hotblocks NAMES += hotpages NAMES += howvec + +# The lockstep example communicates using unix sockets, +# and can't be easily made to work on windows. +ifneq ($(CONFIG_WIN32),y) NAMES += lockstep +endif + NAMES += hwprofile NAMES += cache NAMES += drcov From patchwork Mon Nov 6 18:51:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447323 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3CC96C4332F for ; Mon, 6 Nov 2023 18:59:21 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04o9-0002xC-I4; Mon, 06 Nov 2023 13:58:45 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04o7-0002wH-Sb for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:43 -0500 Received: from mail-wm1-x333.google.com ([2a00:1450:4864:20::333]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04ny-0002QF-Bk for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:43 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-4083f613272so42115905e9.1 for ; Mon, 06 Nov 2023 10:58:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297112; x=1699901912; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=eQYn9T9uZSh6JgFI7JEYQpVIP7VUC/yhVeEeSSJ6yyU=; b=Ffz08mJmPHnSu1CketK/PB+eYFpgdH/qpoMMKAfhpoZkmD9z7sEXDzLgx8Pa7HP6Nn u+7cmxOwpTdhScL6Yj4uZrsvBCl8HkNTKYtVmeHyHKdLcu3UObrSiGSeiJOs8GdeXI7f Q79Ox1qT55VchkthkGehmExo8SCqHan5iFqbK7O17npmoFOp6qUK6poV5tSJUtvF3Ta0 tbcCQVumTFWas3/6oPSnaETOk2xA05848NWbEdu/VPpAcimtVnOrruZzoF3FMfX3btU5 Vza+DQiB2h9Owa6oN6834CrFsQO3otfOpNNTyB7slJeglgWU5V/Bpw3hKhwhkd7/MXnM zCmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297112; x=1699901912; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=eQYn9T9uZSh6JgFI7JEYQpVIP7VUC/yhVeEeSSJ6yyU=; b=SUJB1PPhjZgNOsj5ZYzMFFIshvtVJBg2aeYkINvT/A8waq6YI5b7zv33OL5yvcjOWs veBiIJUswwRZxCyOJm998Le+j3ytpWjtS0tABrxiSet7dwxbtDpfeqFFK/fuO/pxrN6i oVGNoOSBW3w+9WhtWLrO5d1pZLZl1jrKjW78eS+tf4rwE8WyuKQSQvKomYkekNZNV9W/ VUC6r+sXp1qjFL8yr0+fQ7KCANDncDRuCcM6SeMvLeaHV85P6Ae0sANFWNnn7vUX/FcX 4F/4+rKTb2aMYO+1UyX3v6KtGdNRA84mjsGNyGdMB8Hn1onZdc2M8PUUE1k24KrJAYHt 3Obw== X-Gm-Message-State: AOJu0YyK3CgEcdC2BFzqjKqwiP+FZhaPPlONyZ2yFPR6Ze/TsUQOJ1tv xmuQOOiDImIBBe7RcW7egCKmVg== X-Google-Smtp-Source: AGHT+IGtsF0grBWuUcGA6NZ7mxp6IgMVm9YnBZXjtMggNggfSp3xeYboy9hwkwaqtWSlxyI+vSQmfA== X-Received: by 2002:a1c:4b09:0:b0:408:4eb2:3b1b with SMTP id y9-20020a1c4b09000000b004084eb23b1bmr506592wma.21.1699297111806; Mon, 06 Nov 2023 10:58:31 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id y23-20020a05600c341700b00406408dc788sm12869598wmp.44.2023.11.06.10.58.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:30 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id E75A265760; Mon, 6 Nov 2023 18:51:13 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Greg Manning Subject: [PATCH 16/22] plugins: allow plugins to be enabled on windows Date: Mon, 6 Nov 2023 18:51:06 +0000 Message-Id: <20231106185112.2755262-17-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::333; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x333.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: Greg Manning allow plugins to be enabled in the configure script on windows. Also, add the qemu_plugin_api.lib to the installer. Signed-off-by: Greg Manning Reviewed-by: Alex Bennée Message-Id: <20231102172053.17692-5-gmanning@rapitasystems.com> [AJB: add check for dlltool to configure] Signed-off-by: Alex Bennée Message-Id: <20231103195956.1998255-30-alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé --- configure | 4 ++-- meson.build | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/configure b/configure index e50ec99fe2..abcb199aa8 100755 --- a/configure +++ b/configure @@ -1011,9 +1011,9 @@ if test "$targetos" = "bogus"; then fi # test for any invalid configuration combinations -if test "$targetos" = "windows"; then +if test "$targetos" = "windows" && ! has "$dlltool"; then if test "$plugins" = "yes"; then - error_exit "TCG plugins not currently supported on Windows platforms" + error_exit "TCG plugins requires dlltool to build on Windows platforms" fi plugins="no" fi diff --git a/meson.build b/meson.build index dcef8b1e79..b855224acc 100644 --- a/meson.build +++ b/meson.build @@ -3904,6 +3904,11 @@ endforeach if get_option('plugins') install_headers('include/qemu/qemu-plugin.h') + if targetos == 'windows' + # On windows, we want to deliver the qemu_plugin_api.lib file in the qemu installer, + # so that plugin authors can compile against it. + install_data(win32_qemu_plugin_api_lib, install_dir: 'lib') + endif endif subdir('qga') From patchwork Mon Nov 6 18:51:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447326 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9C4C8C4332F for ; Mon, 6 Nov 2023 19:01:02 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04o3-0002uH-OV; Mon, 06 Nov 2023 13:58:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04o2-0002td-6c for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:38 -0500 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nv-0002PV-Tl for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:37 -0500 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-40842752c6eso37059465e9.1 for ; Mon, 06 Nov 2023 10:58:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297110; x=1699901910; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=00UxKawn1x7IIuLj2PQjPzOk5i/DAv1k///QzmwLrMg=; b=tiK4gFDwsXgQ9+aCaV0ogJMl8FhYqj0oZJ2mQZKSGl1C/YqnX4nr+/rhOaNVMhXS5r 8A7ius2yeqKT9Dl+UpYMLK0/vgem/Qi54AjEeL55N3/Xu/WnoHW+8vG1n7fsoH5Ul4f3 FQs7A9BLE8AXoDoBhAGHxxDbf+t/JJFXyHvBdeyyQlYJHq3UUmX4uFaJPxj2ij2h94fi WyxFlWOOhp3hoj4QfyFq8QaYAWtWYYMFF9oj0Q7E7zSIUcm7PwyVJNqy91WXjIFlLqZY E3QjP+saHyHwKGRMfT4ZprIzSZnxxF2KLFkeEy6d2UI1KorJ1ieXa/NtYLtSRlBky/kw MxFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297110; x=1699901910; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=00UxKawn1x7IIuLj2PQjPzOk5i/DAv1k///QzmwLrMg=; b=lOLQm/0/C5Ip1F9W7HXy3RsjCyfMtpUI9kFCk3c/FlxFw20G2RyDJyjKxKsADZ/7qI vO3GCP+x09HqvKYmw9aJo/z66lFH4zoW+9biweRv/bFYH1BW0LkTIMWUjavpzF/sHeSr IF83iWKCgpAhg7nAqH1b2HZFH6Hk8BPoOZ+wXITxKdH/TXISg++9SssZ/bUG47epdp4o fV6dC7hnM8QEfSIPlcBXPz6dav1DZa4VlU8LbEk/mE2uX5PeI9kUlPmgNw6aORd96YVq KJ6CkPg6WrP6+5U60BsXg36ACp2h5/Q7fNpaYrH5KUY3t8DvbXCXdnuGPAiIx31Gbp2p 0GFw== X-Gm-Message-State: AOJu0YxuKsABtP+FXbLhZdhflhGp7qN0Da79769O344O89fKzkrVEk+R inQzGs6VIz8n5CdFGJf919jLzQ== X-Google-Smtp-Source: AGHT+IEVxn/evBwBhq91x1q864UPUP6yIt7iLIyc+sDzaInOYWHv/fQRIwhB47gIF61HYqfdF1xJaQ== X-Received: by 2002:a05:600c:3511:b0:408:4120:bab7 with SMTP id h17-20020a05600c351100b004084120bab7mr505936wmq.15.1699297110607; Mon, 06 Nov 2023 10:58:30 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id e10-20020a05600c4e4a00b00406447b798bsm13481201wmq.37.2023.11.06.10.58.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:28 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 06EBA65761; Mon, 6 Nov 2023 18:51:14 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Palmer Dabbelt Subject: [PATCH 17/22] contrib/gitdm: Add Rivos Inc to the domain map Date: Mon, 6 Nov 2023 18:51:07 +0000 Message-Id: <20231106185112.2755262-18-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x32b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Whatever they are up to a number of people for the company are contributing to QEMU so lets group them together. Reviewed-by: Palmer Dabbelt Acked-by: Palmer Dabbelt Signed-off-by: Alex Bennée Message-Id: <20231013154424.1536392-2-alex.bennee@linaro.org> --- contrib/gitdm/domain-map | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/gitdm/domain-map b/contrib/gitdm/domain-map index 3e31a06245..e676da8d47 100644 --- a/contrib/gitdm/domain-map +++ b/contrib/gitdm/domain-map @@ -38,6 +38,7 @@ proxmox.com Proxmox quicinc.com Qualcomm Innovation Center redhat.com Red Hat rev.ng rev.ng Labs +rivosinc.com Rivos Inc rt-rk.com RT-RK samsung.com Samsung siemens.com Siemens From patchwork Mon Nov 6 18:51:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447321 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 63FDBC4332F for ; Mon, 6 Nov 2023 18:58:59 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04nz-0002rc-Jt; Mon, 06 Nov 2023 13:58:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04ny-0002rH-2N for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:34 -0500 Received: from mail-wr1-x42d.google.com ([2a00:1450:4864:20::42d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nt-0002P5-VE for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:33 -0500 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-32f8441dfb5so3330639f8f.0 for ; Mon, 06 Nov 2023 10:58:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297108; x=1699901908; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cWjpS4SxyhpG8vcouNGxzG6/OAkqKjRKLB6d8VxGNzw=; b=qcI1SZxPeTfW+rh4U4Xo/hL+SQDRnHs4l4g3ghanxAmpeoEvlVLrRLlA6Ef/Rb+d7Z ArcJsllrvmjlesW1elieXcbXRLu3Fi9PPNjW5uz/ekJDM8ozfDUHazgUUOX79hGrlPnU tJqI/G4ktct8ut42MCToU7wxRfjI7jiJhgbgNhWaY6jyz6nxRcsjDrk71wKKCm379mIX 8rj9COOiw9XoYWix+9ZMpsVlUEq+73fP6Bb7r9+FMULL0ibwMztWzQFsJeP/1brjfL+u 0H9tPxLszjQJLhPE7gOHLXqCgHZ66CYuYYsjGyyjSxNUvRMFUa531HzlRTJxQN7dEsj5 FfOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297108; x=1699901908; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cWjpS4SxyhpG8vcouNGxzG6/OAkqKjRKLB6d8VxGNzw=; b=MUa7xlD9J6aJSiPqcKAKfeZLrxT18IbxeRRHIZh1kftWMvEm8btAjE0hAjO9lkvI1P Ao1GyyCJPVlpKjGNkDGRVLELt+tLPbU28LTNm8E53r0tGVhlBOwNnOnhKl86NEwy1mHK lyMvcfL0ED5d7qfdDPVN/mDLIJbd2tivJ+/PptQfLcKs0+j54MTfCSsyz85gVaxAfG/U YhcXHAbCJrDRDQ4qgt4bSDUBCx3wu2eUOnp25Ko4thJczLDLEMNrK06VzR3toou2ecQd 9ur2IG5gLS213VsgR2ypO2Z/l8jJKRFVnXp+7xPpWriJushpALDjovogz3ezTV1gWvVm otwQ== X-Gm-Message-State: AOJu0Yx2d2LdMJvI6IzcIMWI6NmleZan5UM00OC3xQOwJT5LGmf1jisg 6JsHx3oZKm76UEMSYtJ7p3TdAQ== X-Google-Smtp-Source: AGHT+IGUFplPNCH4jr6UIkMihayOcQPS6n1ePrvdl0aHgCW7Iyi7vH/ohNFX26aI5v7Y6iQZlSVBbQ== X-Received: by 2002:a05:6000:1209:b0:32d:9d3a:d8c0 with SMTP id e9-20020a056000120900b0032d9d3ad8c0mr21565736wrx.60.1699297108460; Mon, 06 Nov 2023 10:58:28 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id k4-20020a5d6d44000000b0032dc1fc84f2sm327003wri.46.2023.11.06.10.58.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:27 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 1989365762; Mon, 6 Nov 2023 18:51:14 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , luzhipeng Subject: [PATCH 18/22] contrib/gitdm: add domain-map for Cestc Date: Mon, 6 Nov 2023 18:51:08 +0000 Message-Id: <20231106185112.2755262-19-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org From: luzhipeng Signed-off-by: luzhipeng Message-Id: <20230628072236.1925-1-luzhipeng@cestc.cn> Signed-off-by: Alex Bennée Message-Id: <20231013154424.1536392-6-alex.bennee@linaro.org> --- contrib/gitdm/domain-map | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/gitdm/domain-map b/contrib/gitdm/domain-map index e676da8d47..38945cddf0 100644 --- a/contrib/gitdm/domain-map +++ b/contrib/gitdm/domain-map @@ -12,6 +12,7 @@ amd.com AMD aspeedtech.com ASPEED Technology Inc. baidu.com Baidu bytedance.com ByteDance +cestc.cn Cestc cmss.chinamobile.com China Mobile citrix.com Citrix crudebyte.com Crudebyte From patchwork Mon Nov 6 18:51:09 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447322 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 57D7BC4332F for ; Mon, 6 Nov 2023 18:59:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04o1-0002tN-O3; Mon, 06 Nov 2023 13:58:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04o0-0002sq-Lm for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:36 -0500 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nv-0002PR-Vh for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:36 -0500 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-32faea0fa1fso2667540f8f.1 for ; Mon, 06 Nov 2023 10:58:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297110; x=1699901910; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=nBk0h96fdhXpmhym+tL6OJZ4Em9fv1dR5en6dOONc7Y=; b=o3HJ5cTe5age5k47XTbZLudSLrOQBuftdUwqCEFsYXVgrdCX0B5JvgvUULZUC3+bU5 VOT/09Y+43XNnbrOTYPHFzJsGO0s9Bj47ZZcErzFRI9u4ktF6oGusv0aYIZ2QjRi1mIj hSM2ANIyLxpJpeg6F+rqYkjqfaOq+C1kl/MxFTcaFwta4L/E7oUn6po66w/tp7mTzaeN eEYcKoKVAnFRux/yPXHaIwFXdZidnENxTl0jk7ufiX3amb607ETF1s1x5BVLYFe8sOW9 7lyHj0HR2ttT3OBdQyXQFloAwG/VgaEpdtuP7NSNuPa0NyOsXXux2ogKNf60Ulma3mVD Ifiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297110; x=1699901910; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nBk0h96fdhXpmhym+tL6OJZ4Em9fv1dR5en6dOONc7Y=; b=uhUy1EeFwHgR1re46cRWl2+R9f1Gv8S+HXpDTLjfLiscf04vtaYZBUzkPC+yHtZ+mX g6yLdtITHD/AdHGsas1J3hDJStXHCk0DFNrW10d7M2FrYt/qjtfgKNBB9kffSSvNUsqG 5We6vPEd4O/Qk31CuaElBHEf/5woBMplKTGGFaCPvlaV4dwKeyvAkbq43yAc7pyJncmv 9IJrDW/hB7UGu8sVKPMAqzci6PIgUW9tgRm4JuY1ih5DQeajwfEEFWsA4tOL7sRHvPPr Ur/RyzqEaMbSqkyg3Drlv/jKmjoxbpTc1AXJA57ONqjGTiFLZh4kk5LV6rt69h8pvKq4 xSSQ== X-Gm-Message-State: AOJu0YwyT0Ds+ktB8O94wUXjDzQwkXRd5BqHz2bBntJkhEEjx+uJzqZ0 0vc12Kyy50JBGJbYYf2Rcudj9Q== X-Google-Smtp-Source: AGHT+IGBR3KFOX6LjpEix52+LLNcxsjj+KM1mxwPwkHEDsiOI5W1PBrlVYH1Vz2O9ZBFWBpldQPc+A== X-Received: by 2002:a5d:5a1b:0:b0:32d:8c67:be05 with SMTP id bq27-20020a5d5a1b000000b0032d8c67be05mr326766wrb.22.1699297110409; Mon, 06 Nov 2023 10:58:30 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id t13-20020adff60d000000b0032f7c563ffasm323158wrp.36.2023.11.06.10.58.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:27 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 2D0C565763; Mon, 6 Nov 2023 18:51:14 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Yicong Yang Subject: [PATCH 19/22] contrib/gitdm: map HiSilicon to Huawei Date: Mon, 6 Nov 2023 18:51:09 +0000 Message-Id: <20231106185112.2755262-20-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42f; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org HiSilicon is a wholly owned subsidiary of Huawei so map the domain to the same company to avoid splitting the contributions. Reviewed-by: Yicong Yang Signed-off-by: Alex Bennée Message-Id: <20231013154424.1536392-7-alex.bennee@linaro.org> --- contrib/gitdm/domain-map | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/gitdm/domain-map b/contrib/gitdm/domain-map index 38945cddf0..42571fc1c4 100644 --- a/contrib/gitdm/domain-map +++ b/contrib/gitdm/domain-map @@ -22,6 +22,7 @@ fb.com Facebook fujitsu.com Fujitsu google.com Google greensocs.com GreenSocs +hisilicon.com Huawei huawei.com Huawei ibm.com IBM igalia.com Igalia From patchwork Mon Nov 6 18:51:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447324 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 79029C4332F for ; Mon, 6 Nov 2023 18:59:33 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04nz-0002rY-5b; Mon, 06 Nov 2023 13:58:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04nx-0002r0-7n for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:33 -0500 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nt-0002Ox-NF for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:32 -0500 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-32f8441dfb5so3330632f8f.0 for ; Mon, 06 Nov 2023 10:58:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297108; x=1699901908; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NwMK92q1ioO5BE1TM8zS+W2srcEmlEKZvS1c4LY3VNw=; b=lFFF61mXGCmplAz3OSvgW5UamvBEvwY4vgTty/vHjAS8xQ9NJT0uKPvmpoVrZz7ESi VYLQ686GkAcPXO+PQ8nR8rTDc6oE2YbCXfyKM1RgdBt1Bi0EMojAM2SE7sM0g0pu4vwe FfY3FS329mIPhEbgoSaNjHWEXPxwz4OZ8szEOrCLmgz2MS/095x01JMNdr1TrOHYymIL ICVoibhHuH+PGHby5fZ74RSq67/Rab5z2Gt83A62YdJV+xN7gk0/K7BaSjT8vUf44CX9 cAhdrEg00xzGk7n2e1vwlsOt7AdvW63kLi/jH7H1MQ/UKs5Qs1nkZWr8xLZpPQ444c9i O72g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297108; x=1699901908; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NwMK92q1ioO5BE1TM8zS+W2srcEmlEKZvS1c4LY3VNw=; b=dDFKw3mNSHli3a/owrKAlgfKP4kalM57PBk0tC8zRPtDdWghQg3aOaY024dLwuXrTs GgZRbu8+xW2tosknp4nBLCxv4V41GzdwfjnAOquDAusZt2KTwti6llsJcQLcIlWAtjoc igVjjrBmSkDKFdbgMgVNmszlRzko4EjiDsd9Fy/EmhSG1bQImEQk6ogVsqXFmAvFx/UU Mj0cEO07XHdYFNqCvfYmHLK8LvEe8wFbe+/RRxvBNsFUGiLREBBQCuyPvrsKLdYEbC3J B6f17kJGbDs5pquKzYgDVTGPyA/sP4RAfiMoGrj8HrpF0Fsgd29RtUcmjgv3AT4OYrQk DNyw== X-Gm-Message-State: AOJu0YzHwUH66UlCDZEWS3zwF6sRUbOEiaUZYxfcrghEMwNKxsd+2MG9 lA1kVzjXxH/buSSdsUHYrmYXOQ== X-Google-Smtp-Source: AGHT+IEdxDNMarLH2UZJNjPU7dTlrjIZ28S/m+6TEoKH3vkVipG+bH6Din6RAoPTyiOIsypOHq3mpQ== X-Received: by 2002:a5d:50cc:0:b0:32d:9a1b:5d79 with SMTP id f12-20020a5d50cc000000b0032d9a1b5d79mr21716520wrt.33.1699297108267; Mon, 06 Nov 2023 10:58:28 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id e12-20020adffd0c000000b0032d893d8dc8sm338136wrr.2.2023.11.06.10.58.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:27 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 41E5A65764; Mon, 6 Nov 2023 18:51:14 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , Akihiko Odaki Subject: [PATCH 20/22] contrib/gitdm: add Daynix to domain-map Date: Mon, 6 Nov 2023 18:51:10 +0000 Message-Id: <20231106185112.2755262-21-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::42c; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Daynix describes itself as a cloud technology company so I assume employee contributions should count as such. Reviewed-by: Akihiko Odaki Signed-off-by: Alex Bennée Message-Id: <20231013154424.1536392-8-alex.bennee@linaro.org> --- contrib/gitdm/domain-map | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/gitdm/domain-map b/contrib/gitdm/domain-map index 42571fc1c4..bf1dce03fd 100644 --- a/contrib/gitdm/domain-map +++ b/contrib/gitdm/domain-map @@ -17,6 +17,7 @@ cmss.chinamobile.com China Mobile citrix.com Citrix crudebyte.com Crudebyte chinatelecom.cn China Telecom +daynix.com Daynix eldorado.org.br Instituto de Pesquisas Eldorado fb.com Facebook fujitsu.com Fujitsu From patchwork Mon Nov 6 18:51:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447327 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E7691C4332F for ; Mon, 6 Nov 2023 19:01:12 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04o2-0002tb-1S; Mon, 06 Nov 2023 13:58:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04nz-0002rj-Pv for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:35 -0500 Received: from mail-wr1-x433.google.com ([2a00:1450:4864:20::433]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nt-0002Ov-NW for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:35 -0500 Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-32d81864e3fso2777887f8f.2 for ; Mon, 06 Nov 2023 10:58:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297108; x=1699901908; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=J5D0D9ESjbdX0p907bmZ29I/+bI182M/W+pRshdrvtc=; b=h6c3Dgo7wzyL4L77lmQpc+q6WiQQUK/kzJeTkdd0imZK4VBdJh4QiwrgcoWBTQVlke ZsDJNFHG2sp94SeTlRRFwdRVV3D6D8UiIrBm8+yCOpWZStS29vg+99Xjui2LblemqgMN 1xONLBiI/7mNfkMZQYQMJMSe3MYjh0oBDZVfzVatq1HEkKUbUFaYHf3PER48s5ijoQcO ZVMdvBdi7NeRT4WNX+br02vjkGs3bI39GjrBVGad//gFaPXbCKlNo6buO/p+mMK1cGl+ vqCtaiNBNoWp4xLIdqu5J/jJg0wfje4zck5+YchgU5u8Hx6vC1Zeciku2wl+ECZvxV31 ztuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297108; x=1699901908; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=J5D0D9ESjbdX0p907bmZ29I/+bI182M/W+pRshdrvtc=; b=js69HTwR8MMvJiCpzrWj4qOgkKE50q3hKziN4sEVHYPMv0dN2QZSsDy4HJQqsTwEll mTyjVQi3hFV8HMHyccByXdUjJRG2goTFEH7b6ENWzYeuJ32ou4ParVl9nt+yIFQmt2W5 hLKT6Ha0ipAXfmlwh4gjzR3/PiNAqnbWCXZRv2sd/RMNcudJALywHSN9JM21sUnXGo+0 s/nOfrnL4oA7D6NH6xeHo9ljKktCLDGPHwy/shI0/CjV4GYDNr0AwWkpI1Rhtix2iPWn AXwUlbmlJw0u5UUGro5U9I/jF3jy/wAuVmdtXb4xvW6LfHp0Rki/wzl43o0XeuAxfofD ycfg== X-Gm-Message-State: AOJu0YxUZE6V0wP9a6lFFRXC+OD0osGGa9bwH/6Nbm3y9hyvFJNG+qQr GfyFxDHsW00yk4cKqOF/oOtpBQ== X-Google-Smtp-Source: AGHT+IEoVmTh5uyRSdi5gVZPiaA9I2GgPigU/Ng0uPYE8DfADm6AIkrrFQlMOBNN2GM7oW3SvsSTqw== X-Received: by 2002:a5d:5848:0:b0:32f:83f4:e611 with SMTP id i8-20020a5d5848000000b0032f83f4e611mr22347655wrf.17.1699297108074; Mon, 06 Nov 2023 10:58:28 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id g3-20020adffc83000000b00323293bd023sm336283wrr.6.2023.11.06.10.58.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:27 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 5689D65765; Mon, 6 Nov 2023 18:51:14 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson , =?utf-8?q?Timoth=C3=A9e_C?= =?utf-8?q?ocault?= , fanwenjie Subject: [PATCH 21/22] mailmap: fixup some more corrupted author fields Date: Mon, 6 Nov 2023 18:51:11 +0000 Message-Id: <20231106185112.2755262-22-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::433; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x433.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: Alex Bennée Message-Id: <20231013154424.1536392-9-alex.bennee@linaro.org> Cc: Timothée Cocault Cc: fanwenjie --- .mailmap | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.mailmap b/.mailmap index 94f19a0ac9..e12e19f691 100644 --- a/.mailmap +++ b/.mailmap @@ -30,10 +30,12 @@ malc malc # Corrupted Author fields Aaron Larson alarson@ddci.com Andreas Färber Andreas Färber +fanwenjie fanwj@mail.ustc.edu.cn Jason Wang Jason Wang Marek Dolata mkdolata@us.ibm.com Michael Ellerman michael@ozlabs.org Nick Hudson hnick@vmware.com +Timothée Cocault timothee.cocault@gmail.com # There is also a: # (no author) <(no author)@c046a42c-6fe2-441c-8c8c-71466251a162> From patchwork Mon Nov 6 18:51:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 13447328 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 45BFDC4332F for ; Mon, 6 Nov 2023 19:01:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r04o7-0002vT-7T; Mon, 06 Nov 2023 13:58:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r04o5-0002v3-Mt for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:41 -0500 Received: from mail-lj1-x236.google.com ([2a00:1450:4864:20::236]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r04nx-0002Q1-9O for qemu-devel@nongnu.org; Mon, 06 Nov 2023 13:58:41 -0500 Received: by mail-lj1-x236.google.com with SMTP id 38308e7fff4ca-2c50d1b9f22so64515001fa.0 for ; Mon, 06 Nov 2023 10:58:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1699297111; x=1699901911; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+fAkKRt+1wt+onAFA8XwPfIt8ZimYX8PK1f+OKUAUp8=; b=MnHy+Jd3ObGC8cBsu0KD6xwgdRlOoBu6Bf3DWTHY7mtondRudmXXmfmp2zHK0F3rp1 bncI0Nf5U+tI8QZTrXl5zp2tD+6Zp0npsCzg49ix1UZUrXyGwyfwDpBDgvlFnwnyz8j/ qDC6uBQGVtXUaEVf2tYhKACHml55OtVnTS4xQUVrF/KP1rALPZJm+d1UmzKdHO8f+IrP f/3+chjXJqja8Zo5SXUdpKJLPmhDxQufapu/zzLcOD75XOYTCTBdL3EzksTqBOiO9fhc HMhfoDwmH7JkEiYhEXyV6/B826QjFykVxKuD+ambO5HeHyqYXHL9+4MZf/fMDnkFudfK PEfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699297111; x=1699901911; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+fAkKRt+1wt+onAFA8XwPfIt8ZimYX8PK1f+OKUAUp8=; b=RUFjbRe1uugidvPA3xEXhdvY4vaEq88xgY0/sgwCtQMPhodW3tzDQG3VhtvxA99Uh5 vNSVETY62qUS9zxsxS5b5NFuwUUenmimRNHwSh24i3Qt4pCbizvU19419GUiQ4jOsXH4 ck0QDKqtRJsWqIUe1dNlp+D2PvnCwOGlBHQiWjnePWqDnjdfBfMS+EWLyW/WZ+qDwnqU NIr8nFAXyFkCmJeIVo5tV/bmI5eaJi4oUg8RA8CexX1MzZ9khkNMvWLe1rhwR5wF9e/U 7bs17SYYwvtOE1YB1HsnFGtYLfi8aYYclgVWtoR5y23uYUwdp691xpnfnlTCzNU9up4x JV6A== X-Gm-Message-State: AOJu0Yz1RcLu5rE1VyHQd+Mtz+LXFHoS03bCXnLyFH0Bgm8sr26ZakzF NpnDBFGZUrH0yzXMgE+SB1hwYA== X-Google-Smtp-Source: AGHT+IET4wgMT1NBuVedNfnzbA5aYyqMU5TnYluJAT4baiXwtcp4UJs1qAKHUFs2nGeQpgW0Bkgyew== X-Received: by 2002:a2e:3307:0:b0:2c6:ef64:3164 with SMTP id d7-20020a2e3307000000b002c6ef643164mr10533761ljc.17.1699297111446; Mon, 06 Nov 2023 10:58:31 -0800 (PST) Received: from draig.lan ([85.9.250.243]) by smtp.gmail.com with ESMTPSA id m13-20020a5d4a0d000000b00327b5ca093dsm300326wrq.117.2023.11.06.10.58.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 10:58:30 -0800 (PST) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 6DCEC65766; Mon, 6 Nov 2023 18:51:14 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Peter Maydell , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Laurent Vivier , =?utf-8?q?Alex_Benn=C3=A9e?= , Mahmoud Mandour , Cleber Rosa , Wainer dos Santos Moschetta , Paolo Bonzini , Thomas Huth , Beraldo Leal , Alexandre Iooss , John Snow , =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= , Chris Wulff , Marek Vasut , Richard Henderson Subject: [PATCH 22/22] Revert "tests/tcg/nios2: Re-enable linux-user tests" Date: Mon, 6 Nov 2023 18:51:12 +0000 Message-Id: <20231106185112.2755262-23-alex.bennee@linaro.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231106185112.2755262-1-alex.bennee@linaro.org> References: <20231106185112.2755262-1-alex.bennee@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::236; envelope-from=alex.bennee@linaro.org; helo=mail-lj1-x236.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org nios2 signal tests are broken again: retry.py -n 10 -c -- ./qemu-nios2 ./tests/tcg/nios2-linux-user/signals Results summary: 0: 8 times (80.00%), avg time 2.254 (0.00 varience/0.00 deviation) -11: 2 times (20.00%), avg time 0.253 (0.00 varience/0.00 deviation) Ran command 10 times, 8 passes This wasn't picked up by CI as we don't have a docker container that can build QEMU with the nios2 compiler. I don't have to bisect the breakage and the target is orphaned anyway so take the easy route and revert it. This reverts commit 20e7524ff9f0cab4c9a0306014d6f3d7b467ae1e. Cc: Chris Wulff Cc: Marek Vasut Cc: Richard Henderson Signed-off-by: Alex Bennée Reviewed-by: Richard Henderson --- tests/tcg/nios2/Makefile.target | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 tests/tcg/nios2/Makefile.target diff --git a/tests/tcg/nios2/Makefile.target b/tests/tcg/nios2/Makefile.target new file mode 100644 index 0000000000..b38e2352b7 --- /dev/null +++ b/tests/tcg/nios2/Makefile.target @@ -0,0 +1,11 @@ +# nios2 specific test tweaks + +# Currently nios2 signal handling is broken +run-signals: signals + $(call skip-test, $<, "BROKEN") +run-plugin-signals-with-%: + $(call skip-test, $<, "BROKEN") +run-linux-test: linux-test + $(call skip-test, $<, "BROKEN") +run-plugin-linux-test-with-%: + $(call skip-test, $<, "BROKEN")