From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380868; cv=none; d=zohomail.com; s=zohoarc; b=Ge8mX5d9HuzFiBJD9lCUZTUFM/D+JKMFIr+jGNef8SxZclAX/fyDrDUyipe21b2nqaSBGOpHt8yifTFb5SkMsnteUA/Uzbxp3yr7b7O8C1udAhiJW/NV1brLL/FrW+E6GfEZBLq7MmEEV26PJc3pd/HgfLUPet1ZO8iUxAaIYtA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380868; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=4fPb3mcKHQMn+mt9R0xeKlU7lt/6avmr2iZZUVi63QQ=; b=ZP3w/CFgtv20DoPpgNUtJ2qpe7lK0bdcI+fSsb8EcZHk1y8tY57DfCmY3Iaiu/PLF3Xxjfrr7LXYUa6W35uknwo+E7zXd7XLgZaF6uAS8Hz/KQYbRfNp8L5yy8Fq3KkeqmVFZmxOFnfRvIz0VHenxZKLpLaocCIgqB++KN6Cx2E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380868575617.729522604061; Tue, 1 Jul 2025 07:41:08 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcA4-0005AL-Px; Tue, 01 Jul 2025 10:40:41 -0400 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 1uWcA0-000567-Pm for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:36 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWc9x-0006o6-Kd for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:36 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-450cf0120cdso34552275e9.2 for ; Tue, 01 Jul 2025 07:40:28 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a406489sm170999455e9.27.2025.07.01.07.40.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380826; x=1751985626; 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=4fPb3mcKHQMn+mt9R0xeKlU7lt/6avmr2iZZUVi63QQ=; b=iW7+ynYnO9WltRh1VJDQdIy4WERJwWmMIv/f5JBzmYDbKZAI9JZ0nbiuFA76nhrZda PGyNjkpRoLaUuJsqyRxE0/ZHk4l23B2F0KCG+6UiIUkiEPWz1+7VOm4lv1ZSEC1Sn7i0 6upEF1K0AUWDNqiK+BGOY/AEorq26siSxlrBPnabyFK+y/Zi3XcPd75KjEFAH68MoN5t wJ+VLTRJ0ulK3gQ8/mfx3qosANxSGQLWcLsjSk/26XEg6APEiYEYHHfwtuAnfyujyxtA +9b2ZlRd3PQyfja+rgxlgDlhzCJe/aSqEseduEvPnCfi6xLPKXgRMcRc09YqsDhuhNfv PHDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380826; x=1751985626; 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=4fPb3mcKHQMn+mt9R0xeKlU7lt/6avmr2iZZUVi63QQ=; b=aoiawGX6BGagQe7YhciJ0YuQqXqsVgdQ4WeyXEWWQy3fZcBANgFDwQyhuyxWHuDppk 7TbkPnjoeXkAS9yhGEhAVurL45OYQPO8HH3f3AmerO2xb/PHOK/FkBVTXQ0Sa0WWxaBk //HVcz8SAfadqPN/8GwCvnqgJufKQqvqGckpCz99J9p2xhvDsvWOJWEe0ZWTzA8VoTQY eZNtoBoSlrWBpoj57U9HgV511U9konJsc+6eLPct6g1VOk1KG5ldCkerx3D03Ht+Einq mVhzCl+2Y+h8wkIjeuW2gSVK05JQsra3h2ATCZWmucizEr9h/OxUobnzyVZjWGTIxCGG 9Vnw== X-Gm-Message-State: AOJu0YwVp5IRyvkjTKzJYmswKg3peoed+BuzeMTgpWN0UruVhiWTWNPp whoelXTQJSfpilxxY7vJCMcagFZne+HrXWkR9yIBsTqOccWejk2DxmfPcVWezhx/FSdY1/42b+j 4a9GE X-Gm-Gg: ASbGncsEcCw1CApwiWdGgzUy7LIsUcZpzAejPLVu6C5pTU8LnNOspLeoOIPPhldkydB 1g22M8FG0tK5unl+sNSpSoeG5dpsZEbkqK7r9T2PdbOewZ8Ozbta0bOfsSktpOZCiDVEkRIWLib 68B1B1RtJPnZL/aMmYhZDDZfqlnBTdZolujzJQ3VramNzsvOZ2demkh0TTx25p8BAq2MRqBJw5D Vr5pYEAk0KqvEljGHf7bikJa4Vk8DOlx1Vhy0xNeXueTghU5Pzh2g5PoLNyUBByzTnK/74+M7gE hLb+Cvxg8RbSNBnRnpngQeP8aNKqvHyWv3ItI7Fj71Nr3yRhcn58Y6ueZ17Azb0Q8AylQgEAl/o /NU1vCDJkGR+Vf49DCVb3WxggU9lS2p+iSMJw X-Google-Smtp-Source: AGHT+IGztxCRMG91WNgylMTXT82QO8ddZ5iWWoLA32uk6jnVtN1wqK9LqLYoaPwxm7vuVSzKiuKajA== X-Received: by 2002:a05:600c:1552:b0:450:d61f:dd45 with SMTP id 5b1f17b1804b1-453a7fa138dmr45666325e9.4.1751380826236; Tue, 01 Jul 2025 07:40:26 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 01/68] system/runstate: Document qemu_add_vm_change_state_handler() Date: Tue, 1 Jul 2025 16:39:09 +0200 Message-ID: <20250701144017.43487-2-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380870072116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/runstate.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/system/runstate.h b/include/system/runstate.h index fdd5c4a5172..b6e8d6beab7 100644 --- a/include/system/runstate.h +++ b/include/system/runstate.h @@ -14,6 +14,16 @@ void runstate_replay_enable(void); typedef void VMChangeStateHandler(void *opaque, bool running, RunState sta= te); typedef int VMChangeStateHandlerWithRet(void *opaque, bool running, RunSta= te state); =20 +/** + * qemu_add_vm_change_state_handler: + * @cb: the callback to invoke + * @opaque: user data passed to the callback + * + * Register a callback function that is invoked when the vm starts or stops + * running. + * + * Returns: an entry to be freed using qemu_del_vm_change_state_handler() + */ VMChangeStateEntry *qemu_add_vm_change_state_handler(VMChangeStateHandler = *cb, void *opaque); VMChangeStateEntry *qemu_add_vm_change_state_handler_prio( --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381974; cv=none; d=zohomail.com; s=zohoarc; b=FXg0xdZ62WTZfwrujtaGcwByQbi7v8I0Ts+KK9YYixM/HWWyBGfl/GJOcppwUhqIuzNjsrC+AUe8zHtWAoLG0KBoeLj6nfStuAxabldHKjkMpjFkpdNH7kAPw9aQ5/Hb8RtBJ5n3KIcDFXI30Le1JZtVlfcb2gnBP7veoa25/LY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381974; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=lvuJfWqGzppF+6GKJm+5+ELCNc5TU9HYoRZM5cWxCY8=; b=Pq4+QhAPvsBSkOiVhzRh2hijBakiiDTPAdPfH+giqPurk9vTURN0dF9wps6+nyL2rdnoB8ZVqCiacISFSJ7yplZkRGStKBFWWDswAgyMF8pGLuHJ5Ij74UDbpf1U5RZT3W4MSudYtlvlY956NO5G4HxEnFN0Op77KgTMxDl63d4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381974338906.6021489205067; Tue, 1 Jul 2025 07:59:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAA-0005Kg-D6; Tue, 01 Jul 2025 10:40:46 -0400 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 1uWcA6-00059a-0Y for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:42 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWc9y-0006oL-ND for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:37 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-4531e146a24so34743915e9.0 for ; Tue, 01 Jul 2025 07:40:33 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e59720sm13394681f8f.73.2025.07.01.07.40.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380831; x=1751985631; 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=lvuJfWqGzppF+6GKJm+5+ELCNc5TU9HYoRZM5cWxCY8=; b=xiRGHGjiIKgrKBKu1kwJicCyEek+J3TjNkK4/ys9ckJ7nJ1U3m9w7u0JMzmLXueThv DawwSwod7gKAIS47WInmqVT6ttGLyM3C6TMwqa1Yq5YqTK6GXf9idQzdY56sGnJxxzCD oz0mVXgyJuIzpciompA4fqtl9FhM5snNmjXKAeXz/AApbHVjUrnnJsrAfRCREX9lZLJx BjgHt6gp/1Am6Qq6kleJebCUAEZorh13QA1mepc/EVvICb4C1Rzd7u5IDdF/MuWzQzph Ox+lxzVfWCGOQ4DSCOobGo5iBfc/7BtvDNDpECzIHO7rtWbFonB0RQei4bqstlA8FkVm iVBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380831; x=1751985631; 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=lvuJfWqGzppF+6GKJm+5+ELCNc5TU9HYoRZM5cWxCY8=; b=i9VRWRMrQwVNqx9P+ugmU4wnPeXgqVTSMR+bx0uvm3CcdASFl/IP2mM3u8b7tg71Kr tElphZbyK1xCarcvyeDpJ83VDjhIP/Rhwr/v91znBzpChva1MObJ1j7/ICTJfUohZhes cBscpQwYswCl/zxdr1rtteRN+eNaQB6KwGfM5r2NSgJF2+g/HCs0W2rUDj9ndyeuWur+ Tm40EJil465kGMeLp0J0UQ9CZb52hXAZMozWHhtt7sknn96cln8p7K4OS5j8HfcDSY9L Asllk6J0LE5zOx6vQ1jujH3rIzHVWqZoj4q4KRjeQ1BFhYlgxZwven7GGkM7sw6kqnW7 z8ug== X-Gm-Message-State: AOJu0YwX30ylziSIYgHgWE4rU952sbuC3dbVEPWA+Xng3O9UlwPSICVr zT9Uj3p8FC1iyA+X//eemGCwrhHxW0jsYXFnzzKtihGNY1EdHLGNRNLVMSnA/+DL4TkqoBAcoEj xmUWv X-Gm-Gg: ASbGncsiGgnoC3Ks28sny6LCoUyj/0IPzjfgZHGNjnd3yQ1PBuq0cowx0mx/2uTpFsC YXFN2pAbnoL6VVZtTD9PdpPpbQbL8xFm3IxHbAwp8Y0IrSu2KbnblywkT09bQVODns9qzv78X8f QCq736mvtgoWVGj8JAlpN0z1Cp/Rlf1Dhek8IVfDtp1+ZDTPPIMt9whzqcGxghyPvpzFNS5aqcd wMKRS8hnPe4aoadYv4b1kHNHtMqsCsBUlBO3G1vvb4vPeciaoKTFnt9wtgqH8Y5Uf79JhyeSyLt Kc1DZ/hqHgGUftYbeKkVBHb0fXOaAe/BtuD46KgLY8G5nm2f6tO4atGEIDpS7WFaU84Pw9SgUZY 2h1SH4hY2mOR+IqUcK6Q1H7M70b2TkrgdLlEh X-Google-Smtp-Source: AGHT+IFmti5Rfu0bgwIeBc6ssNqUMNTrBzt5g3E92IA8qcdxcOxuJfHYzaXCWHHc2+UjPzFoMnc+nA== X-Received: by 2002:a05:6000:4105:b0:3a4:f7e7:416b with SMTP id ffacd0b85a97d-3a8fdff464emr13002876f8f.16.1751380831335; Tue, 01 Jul 2025 07:40:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 02/68] system/cpus: Defer memory layout changes until vCPUs are realized Date: Tue, 1 Jul 2025 16:39:10 +0200 Message-ID: <20250701144017.43487-3-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=philmd@linaro.org; helo=mail-wm1-x336.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381975133116600 vCPUs are not really usable until fully realized. Do not attempt to commit memory changes in the middle of vCPU realization. Defer until realization is completed and vCPU fully operational. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- system/physmem.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/system/physmem.c b/system/physmem.c index ff0ca40222d..8b2be31fa7e 100644 --- a/system/physmem.c +++ b/system/physmem.c @@ -2792,6 +2792,14 @@ static void tcg_commit(MemoryListener *listener) cpuas =3D container_of(listener, CPUAddressSpace, tcg_as_listener); cpu =3D cpuas->cpu; =20 + if (!qdev_is_realized(DEVICE(cpu))) { + /* + * The listener is also called during realize, before + * all of the tcg machinery for run-on is initialized. + */ + return; + } + /* * Defer changes to as->memory_dispatch until the cpu is quiescent. * Otherwise we race between (1) other cpu threads and (2) ongoing --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380868; cv=none; d=zohomail.com; s=zohoarc; b=nhLM5uDyg6es0dZ/uHGmNTyG1fN6FE5ZlQrQeCOuA2+IknsAPjpLuNADH6QzV2AxZ7zSjz0lfd2VwViQmnvmgJueoMp0U8uZHiq2bju+hsUDr/yNU59zJOSvq1nN4Kg8hhwUko0a1Wv1Uehsfvy3YTYBNz5xHiGfrhpJhMwy7fA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380868; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=eMVCQTvVGe/Hz2DEmM07zNOYeNDGY8/7Dwwnom0rM8Q=; b=KBL26SzLt6D4/d3wtXY6oFiOt1/Zn8eERsTr6V0Pwza/eBTUSoaUgJRs26uQVzbvY+KIfu7C0r9O1rCpEsF9cg3GS7ciQzRXkfvs8Vzhf/pVPmfmluFJ/l25Ogl808qG3BEyvuT4n/fEx+sx5Y6Dusyw6UiCiXGPyzTjBTbzjos= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380868688115.77750735942084; Tue, 1 Jul 2025 07:41:08 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAE-0005PP-K7; Tue, 01 Jul 2025 10:40:51 -0400 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 1uWcA9-0005Is-AY for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:45 -0400 Received: from mail-wr1-x42b.google.com ([2a00:1450:4864:20::42b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcA2-0006od-On for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:45 -0400 Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-3a6f2c6715fso3671379f8f.1 for ; Tue, 01 Jul 2025 07:40:38 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538233c523sm196800395e9.6.2025.07.01.07.40.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380836; x=1751985636; 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=eMVCQTvVGe/Hz2DEmM07zNOYeNDGY8/7Dwwnom0rM8Q=; b=phd9Y1Fw+50z9hl8A7dLKl/9Rzh1708BZdlXwjJrDmTk03o6HMhhSFxrGOjjbCsIUH ZKLwFTv1hWdAREjznw8OWEzOD8pyVlVtVVVeLlU5Omik03an5hoqNjjesY9WYdyH4GAG n96XC3SVh0hSSzTwgXEmaemSgq4giXmoEihHdp3TSnrGS92VM5t9niKxFO9Lm/Mo7itI jRQUicyWZxFSHITKftp8582ql1/nLmaN4qziPkDjmOmsO0JVyzXbsd/uLxexOcUzuTiz b9M46kU9EVROIdjYz/6BgXG7lJha4/jMk/MaI9dI4yWsRtUpGoh00zM1/29qsp5VbkUA 19sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380836; x=1751985636; 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=eMVCQTvVGe/Hz2DEmM07zNOYeNDGY8/7Dwwnom0rM8Q=; b=abwzlyOgFsG0ggZtFv5VRWiDuRUY2iTWJ9JPghwWHFAkqfQ1I55ivNc7tYTUbXhsiE TlBmce3PJo482wp7xU2pY5rN/seIM39h9hrr86D28eTWNg6KsTYvvr9RYoVKkWF4ylHc DchB0OV0w1TWEuvUDAXV+n04dzqPB6Zw5mfPJYkVh3PPzWm1c6I8gsA4Ih2LtvIngurA 10Zjb96TVB/AroxiW7h7zTdy6j8j+uX7ja0clJna1qdjslWb1WcD2kcFZEAo3kVOUFv1 D6bJygOvdbF8SrqI3RjUuZHeYDeL4rQ0Dngbn8dm7pF4ARo7ckuQNI0OyR2O1i9X5rDw xQ2w== X-Gm-Message-State: AOJu0YzHYJhEjHYg4OZqP7q1CXlOnom//wnxm4naOLDLcdIc94GxU9AD 9WJ5v+jz/BkutuYSxl6BUFsKjNDnTVRTkR0H2dJH06Pe4ju1VMZFzqwLwufibBwHTBv7pX6Z9+c GiVAQ X-Gm-Gg: ASbGncurApsj1NTwingcJVW398ep5q32OJldOpJgdEksnYxdndYTE6A28NlpyDQjjdt 0/NNJbBjEJYRK3oaK0NL3lMcMAnZ4vBvd856iX/s8P0Ag9SRVmAxO3EZpjzF/XQniHkJK0L+EgY DngM/BtZ6qjxBAhdwTuKqiiM1WIK6YXMvTQkB8Yva9LsBxGMgGES8TlBQCbqbigAfTpLmdjwW9A CKNp5H8XUw7xeOaj2Xk+VfDqC9crAo0Mxc0+elihUx9DMaPAKxtDIJ3GCFFtdx95DSV0nbbLomm YBhdsrALCUuAyeErry8xKC+HvZf4c5xuU3dAIcLUJngO2u2+437JeBFaWdYyr55oGKD+YblGLWY DFMwYuXyARWsy3ATBln809ZWppzzwi+z8Bepa5vWuuvyynq0= X-Google-Smtp-Source: AGHT+IEd5vUg/w03uhBBDAOenwTHQU2oznEuyFtwES0uQ3MWZ2MrTrNRZjsa1eQ3Hu54TTLvTb4ayA== X-Received: by 2002:a05:6000:2a85:b0:3a5:8c27:8644 with SMTP id ffacd0b85a97d-3a8f4ee0ff8mr10754477f8f.24.1751380836510; Tue, 01 Jul 2025 07:40:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 03/68] system/cpus: Assert interrupt handling is done with BQL locked Date: Tue, 1 Jul 2025 16:39:11 +0200 Message-ID: <20250701144017.43487-4-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42b; envelope-from=philmd@linaro.org; helo=mail-wr1-x42b.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_SPF_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380870104116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops.c | 2 -- system/cpus.c | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index b24d6a75625..6116644d1c0 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -93,8 +93,6 @@ static void tcg_cpu_reset_hold(CPUState *cpu) /* mask must never be zero, except for A20 change call */ void tcg_handle_interrupt(CPUState *cpu, int mask) { - g_assert(bql_locked()); - cpu->interrupt_request |=3D mask; =20 /* diff --git a/system/cpus.c b/system/cpus.c index d16b0dff989..a43e0e4e796 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -265,6 +265,8 @@ static void generic_handle_interrupt(CPUState *cpu, int= mask) =20 void cpu_interrupt(CPUState *cpu, int mask) { + g_assert(bql_locked()); + if (cpus_accel->handle_interrupt) { cpus_accel->handle_interrupt(cpu, mask); } else { --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380866; cv=none; d=zohomail.com; s=zohoarc; b=GZNDxyEPFtD2r/FPoxSU/YpsR7bJnTBYxSvs4RQBAchSSKif5X4tFq1s8D4G3sm11k8RW7xFkoDHzVR7BRbzAdnBcylLp48Yb1ufBRfIgbpnSDzYhU6+PMi6UbYuWxJZzKS5qxbF0d/UDbrPH01RjuJLxfVBLwFM0FbP9xn4lL4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380866; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3xbRlHjkCKfI6F0ZyZVDa30naj6O26Xxb9NXVgkrI2o=; b=aQfQfes4FUjiyTglI1iUkE9vH/R60RcGqPoCEctvyGTF2oq2R/RmtpXg2GqKXRtcL42e3YsbL6/fOQAa7rAePY8899tC79UeHEuRcojxOEqtbn8VBbHXrZUKm3oeVy04InAq5aFKrdBu8FUAnlZtJwapwu4fFjWrXeTDYjJmkV0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380866543992.881983342858; Tue, 1 Jul 2025 07:41:06 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAJ-0005RO-Vq; Tue, 01 Jul 2025 10:40:56 -0400 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 1uWcAE-0005Pm-B6 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:50 -0400 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 1uWcAA-0006pJ-Jv for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:49 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-453643020bdso50206645e9.1 for ; Tue, 01 Jul 2025 07:40:45 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fab7asm13412634f8f.24.2025.07.01.07.40.40 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380842; x=1751985642; 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=3xbRlHjkCKfI6F0ZyZVDa30naj6O26Xxb9NXVgkrI2o=; b=eVJCCYm3vBlbaTM2MLSpcJup7Q8PQcCoL5QZMjt0kJUUALHfS4tfgzSGBw4Cvs5ZrK NHwSoTW8p8gUkQewBgY7fSy+znFhaKfD4rAaqJFG5UY+YcCqvQc3kVL7XLeM6MBxA7PH gnf+Y4UMKJ/8Fj8cyG2cv5HaMVtQMw2zb78BtcXZWJvDyEcysvahKc0oZnhetFE3EvQP te4xJWe6V8Yy3PxapFOibAA0m6blDMnrB5DVZcLJRTXnwN6r0hlpNK0fNXFepJASt59a kTSfmfIipV8O672zVdrQrA/7wmosocPgplhnk9mJsWGGqSB/pMeS4KkxGcfNgsmZroZC dz5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380842; x=1751985642; 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=3xbRlHjkCKfI6F0ZyZVDa30naj6O26Xxb9NXVgkrI2o=; b=EURVdAm/Gr72MB2fkbtmJ8FdLnrvfATJjxoOcBspwOUV9jo7/yoLQ2aa/0yWcPU2ap nF9kWnxPWGQolgIf7s6AgLqCrobkXZigqduj0Caq9BaS51hoDEoLAooqMZgydFBoVQDK nvQbTB5UMii6udIMVlbqVncwqfgYLqoXT83LjmRWXv//8tY3AnGfM3g0iLxwm91AB+ia DKMCSAfxkxUE/f8K6E4s3uLVvKQZP3Ua/j/CmdNvrH1746qPVU835a8/bZg9XojzLXCN XmveQgWuB8oydnQqwlHrQuDybrJIoENXAppFdSCFK/KyZ9Tzf4i8ZURBKh4vSOLLXB7R KV8w== X-Gm-Message-State: AOJu0Yy9fEI8b+MtejSIjdUBb23iGHrF7Fch7ALgusOOd2uACnreGlbI XRVyyNgal2pWDM1V/OQFcWJ8vJJAUdoB+xH5R1TS8+qKqetpLldCGoBki3TorkqvdJdofYrOofx HUiMm X-Gm-Gg: ASbGncvcF84dWbUsJ7TKVXGVu8GczVSB6zjBY2Nz3n31RD3FExO+OkbBmMd3GIflUvw Wr5j221FKbwcd0SixcfAsVTNVPM04WyWlDBC+WQlS0qgf0Xa9rfxBKOJo/+SIlwpYZlb+BjepN0 XRUQ7sVd0+VlAJNMiBB9l051OwLtK1Rm2WQPH7m92gQm0qTSkUIZSBcISUfneE1YaoOMHr0i4nT AATQ3JRqWQg8T8YXvIt8lJItejIyjJzhNcozgoeJ9uq5LSUCOxhw6llyxRytXbCfpt/PlgjXd91 m4Cud8OalqLeCeg+NlPizpb2e090CjgwLEtisTFJ4ORsbYaqsq7jRsU4hJLqOA2iIPgdwEV+XB/ oJBKV4FkjuPV8FjWWIWhXV4mKLfe3VU9ValzZ X-Google-Smtp-Source: AGHT+IHOSwoYcbIoigr6HAmF5IOiacdcLvtln6mGWho9moj4J6xRtwmoNwuFWalR9IkJwWQP0RsJCg== X-Received: by 2002:a05:6000:25e8:b0:3a5:3b03:3bc6 with SMTP id ffacd0b85a97d-3a8ffbd4b9bmr12607014f8f.28.1751380841780; Tue, 01 Jul 2025 07:40:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 04/68] accel: Keep reference to AccelOpsClass in AccelClass Date: Tue, 1 Jul 2025 16:39:12 +0200 Message-ID: <20250701144017.43487-5-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380868063116600 Allow dereferencing AccelOpsClass outside of accel/accel-system.c. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/qemu/accel.h | 3 +++ include/system/accel-ops.h | 3 ++- accel/accel-common.c | 1 + accel/accel-system.c | 3 ++- accel/tcg/tcg-accel-ops.c | 4 +++- 5 files changed, 11 insertions(+), 3 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index fbd3d897fef..9dea3145429 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -37,6 +37,9 @@ typedef struct AccelClass { /*< public >*/ =20 const char *name; + /* Cached by accel_init_ops_interfaces() when created */ + AccelOpsClass *ops; + int (*init_machine)(MachineState *ms); bool (*cpu_common_realize)(CPUState *cpu, Error **errp); void (*cpu_common_unrealize)(CPUState *cpu); diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 4c99d25aeff..44b37592d02 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -10,6 +10,7 @@ #ifndef ACCEL_OPS_H #define ACCEL_OPS_H =20 +#include "qemu/accel.h" #include "exec/vaddr.h" #include "qom/object.h" =20 @@ -31,7 +32,7 @@ struct AccelOpsClass { /*< public >*/ =20 /* initialization function called when accel is chosen */ - void (*ops_init)(AccelOpsClass *ops); + void (*ops_init)(AccelClass *ac); =20 bool (*cpus_are_resettable)(void); void (*cpu_reset_hold)(CPUState *cpu); diff --git a/accel/accel-common.c b/accel/accel-common.c index 4894b98d64a..56d88940f92 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -10,6 +10,7 @@ #include "qemu/osdep.h" #include "qemu/accel.h" #include "qemu/target-info.h" +#include "system/accel-ops.h" #include "accel/accel-cpu.h" #include "accel-internal.h" =20 diff --git a/accel/accel-system.c b/accel/accel-system.c index a0f562ae9ff..64bc991b1ce 100644 --- a/accel/accel-system.c +++ b/accel/accel-system.c @@ -85,8 +85,9 @@ void accel_init_ops_interfaces(AccelClass *ac) * non-NULL create_vcpu_thread operation. */ ops =3D ACCEL_OPS_CLASS(oc); + ac->ops =3D ops; if (ops->ops_init) { - ops->ops_init(ops); + ops->ops_init(ac); } cpus_register_accel(ops); } diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 6116644d1c0..37b4b21f882 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -196,8 +196,10 @@ static inline void tcg_remove_all_breakpoints(CPUState= *cpu) cpu_watchpoint_remove_all(cpu, BP_GDB); } =20 -static void tcg_accel_ops_init(AccelOpsClass *ops) +static void tcg_accel_ops_init(AccelClass *ac) { + AccelOpsClass *ops =3D ac->ops; + if (qemu_tcg_mttcg_enabled()) { ops->create_vcpu_thread =3D mttcg_start_vcpu_thread; ops->kick_vcpu_thread =3D mttcg_kick_vcpu_thread; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381552; cv=none; d=zohomail.com; s=zohoarc; b=Rf15AWzqJnioMHIB0IIYntAondNsTtfAmdsMF4jCl1oVA4cesPo3xXRZBS3WJn4V/MYgD25AddDlMSHEQlZgutkNd5p1E6qv2Cna5qPjNOA53tpdXmaWw/8jg/1rlA4HjT/nfPjB6hNlnAye9c7UovjngwYVCahE1azz6glrkeI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381552; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Y/J3/dM6yL9EpwD8nNu/ZbysHMLeoDjMiAJQk/DeNw0=; b=J2YcGpthELw5ejCY2Xrkqd3zdeVbH/Fik0kXYT+2XIKx06eBHjVMShz/iHsAk3+PiNcWWnikiKShWHSC5AqVJoxfVkkXlamnLNYSkbemrtyPGb4DGgIdg9kZFzU7ewSM4xQHHLAlXC5StSwJefYu2dyB4hqTky7TpP2yinLaIw0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381552064890.7803374468551; Tue, 1 Jul 2025 07:52:32 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAX-0005k3-0u; Tue, 01 Jul 2025 10:41:09 -0400 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 1uWcAN-0005SF-FL for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:00 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcAK-0006pu-6y for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:57 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-45348bff79fso33236385e9.2 for ; Tue, 01 Jul 2025 07:40:49 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538234bc1fsm196638085e9.14.2025.07.01.07.40.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380847; x=1751985647; 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=Y/J3/dM6yL9EpwD8nNu/ZbysHMLeoDjMiAJQk/DeNw0=; b=ib9SnsOSNX5K1zujM1TYhxmUSCWhI0dVfSdzDmldmtKLO74UAfS0e1blNNppNkH4BO yDtBqVGGnl/anGeehwCevgnHIO+FrDzMIMDCdUzIroDH7C9n0qfBYndQtElDq23mayho AjKr8AOAvxK5J6/sK+CiPDCVUEa3j7KsRmI3V3alHSn3tKIMSoNDtFTDJtfLByJG2HnH +3Kd/5z9a6GFW4zhDhN2az1+qowdMYt+Y5tSVLg16vUpcX+hQCGRe6Ca2Gq8BOCSh+oY Dat82j2diyzCP2tiS0I6GoR0bxLjdYts03nllO7HP5CRjftXNWN9Ajfm0SQAhCcbpkmm xbFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380847; x=1751985647; 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=Y/J3/dM6yL9EpwD8nNu/ZbysHMLeoDjMiAJQk/DeNw0=; b=mENtZF9IX/ve9LhrXannvlkHZJ1WywqgAdpGqcr7st77Xql3ZL1pITD3ct/aUZn+ng no2g6Vnl8vV58sdn3Ls4DbJ5yY3Y+3kZMLOUfhjXzwCZJ9krigobze2Qgrp9p+FXfAfK bbKgbhg3hOZYwwo3qD8WsxzI18j/FStTVAMedfX6ZZIZ3bVECmArEcEoHgVmPcnExmN4 rcBo0tls81a3AfO/m48luivKEG2J+CP6yLh7AlkBsCNvvvkLGJzQ3FbD7lUtN+mUytJl CyC1Z8lNWBYBi3/QY5VdEAe24RThWdrGvxj6ZIIajULcnVl8btwHxj1hbYz4D9RyGn6+ glBQ== X-Gm-Message-State: AOJu0YzQ/6i0o82bx5AfBQU6FqEeU6OE2vmOwELq3vOFfFNcwhohBusv le7WO4taTJFdMbmGQ7Lpb3AXBUPFcJzm46LwNm6nLUteDSaQxoiUWuewEe+IhXhAaDlMTginw/v t9lVp X-Gm-Gg: ASbGncus2sum+cz4prhZO0O6YMNbkjmNodIokK9XzPk35fzUvEAynjrqz0oQzvQMotr 3cgAmyFUX9dKfsOxbt6tYjptsPZlVrQ1c81jusamtwR2jI/urw+RCRreZmB1EzF0UNYcKffDX9h SqK7tzFeSi9XIo2Sl9oDL5LmAm5tQAjZAZciz0UaVhBNnxaxpZsmWBsL57o/fBoAQqFgKijGqlC L7sZrA9XTL2Wm5u9OaxjmZ/PN2j7zTmlg5696Npf0/ZgqLvi2irv9RfQkGSgt81iQYouGnRUSkt PF3y3iaRlPH8F9TiZ6Y77dHf6d0991xwPdlIHDm4dG8HCe5twk49+uHRWnB/Npg62+fh6dHSbgq 4phhOWHthNQxO+eYmIIcAt6mpD/ktFMqjU79q X-Google-Smtp-Source: AGHT+IEXpHJS8wVbhtFpKIRV7/WijY561Afu9yjuqaQqjO4l13pQV6Fg9cpQK7fKChUL+nuEBRgd7Q== X-Received: by 2002:a05:600c:190b:b0:440:6a1a:d89f with SMTP id 5b1f17b1804b1-4538ee4fd6cmr197240465e9.4.1751380846811; Tue, 01 Jul 2025 07:40:46 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 05/68] accel: Introduce AccelOpsClass::cpu_target_realize() hook Date: Tue, 1 Jul 2025 16:39:13 +0200 Message-ID: <20250701144017.43487-6-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381553495116600 Allow accelerators to set vCPU properties before its realization. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/accel-ops.h | 1 + accel/accel-common.c | 3 +++ 2 files changed, 4 insertions(+) diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 44b37592d02..a863fe59388 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -35,6 +35,7 @@ struct AccelOpsClass { void (*ops_init)(AccelClass *ac); =20 bool (*cpus_are_resettable)(void); + bool (*cpu_target_realize)(CPUState *cpu, Error **errp); void (*cpu_reset_hold)(CPUState *cpu); =20 void (*create_vcpu_thread)(CPUState *cpu); /* MANDATORY NON-NULL */ diff --git a/accel/accel-common.c b/accel/accel-common.c index 56d88940f92..55d21b63a48 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -105,6 +105,9 @@ bool accel_cpu_common_realize(CPUState *cpu, Error **er= rp) if (acc->cpu_common_realize && !acc->cpu_common_realize(cpu, errp)) { return false; } + if (acc->ops->cpu_target_realize && !acc->ops->cpu_target_realize(cpu,= errp)) { + return false; + } =20 return true; } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380953; cv=none; d=zohomail.com; s=zohoarc; b=LfKMizKBbUlsPtsqAb/d42RLGTMbgFLZ4cquitl7kQ5kuAjHxlo2I/HAtobqph8/S4aOYBi4RlXOKEAup3qScQBFQa5+Zx1TwoF8oBTRTb92lZ5HNpi10fsfH0V8q6Ki/tU0C8WD1FQ3LOgEXkuUmmpUNNBIm3oYw7Z15R8tk+k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380953; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=U2Yk9uzbm0hxEuuKUPRhHe024yTVt+FZ6Bo92Z60qs4=; b=jCFcgK2upNBICdtlKG5AloX8BzSBi+EMsmgXkbtttbHzXiyCO8zddmxYeZiLHK+kGKNeJ14eb3bz9VnnXWHxKuc/cSFn7W1pv2sKUHI3LRkS3PONJBDw0MNPKzBpxqq5hZ85BJiZaAFXB6ce7UPZKVhPC4uINXHOpfeyLl1ab54= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380953550245.6873759129088; Tue, 1 Jul 2025 07:42:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAU-0005VB-2W; Tue, 01 Jul 2025 10:41:07 -0400 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 1uWcAK-0005Rw-Lk for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:57 -0400 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcAI-0006qR-QD for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:40:56 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-45363645a8eso40114025e9.1 for ; Tue, 01 Jul 2025 07:40:54 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538f88efffsm140427435e9.17.2025.07.01.07.40.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380852; x=1751985652; 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=U2Yk9uzbm0hxEuuKUPRhHe024yTVt+FZ6Bo92Z60qs4=; b=LvOj/bcdiXwpBYM1fZwVq0LOLwyR+UvyKto+7AMIjrChdRGNkIKnFDwTHUT4EzL8B6 B6H4i5823utcZv1sxUP3919R8FFBy2SXAhwShay0DH9KhC7AApjlk5jlvN83/Lnq6Jz1 BKDlbNnIKAF3/kVCCgpPxf1NLF8mwzYbfprhnJ1Ceb/6nPqCy3GZbhgr/qLN/6FhMTM2 fRbR4bWg2HVsuAWfGJ682G96/R6sgFvXtHkNzp73Vb1oghoVUUE3MZlGNTcZHvrLxfGS o6OgksLpomm8g1xprPPBkSjnjQQzxyvF9D4gc2OVKt0eZD7Y2CO60ksDQ5adAUCFWux5 V9AA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380852; x=1751985652; 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=U2Yk9uzbm0hxEuuKUPRhHe024yTVt+FZ6Bo92Z60qs4=; b=Cp9CTVm3W9AlDQb3c4ZYXanl+jom1v68w3w11yX/dYpS/4Z0obLNwevvgNTv80KFX2 StLPntuFkmpFiBP8VbrpLjlG2h061Fw0acLE9bhAMmrnI5oqbl6qCAOqU19jft8fdMDA JG5k8WeXy1ieecFR/IWvTfUtMTCTlHfw5V0EmgyhuaxRUoYP8UMDi50DijSGSuMXpS9O ctRMyu7DUAwHMUQ5IupdWK1+kku3OwN5+lce51n2BtUUXzQCM/1ZdNQ/0x3fWW/qCOUC PuZMrkcIJAjju1omiWmA5i2mdX+LGE2rPn2U6gNaCCLGOEYW3lRGhFXJxYDj/GCnGbp/ ykkg== X-Gm-Message-State: AOJu0YxmFXKWwFBVKbAJOQiwXdQT9bAvO0loZZUm5nqUMcDa25WZ/iIp 9dxQclPshT+RyuzCbI2mKhPIqCgtETBjbkar9KwGH/Rm3n172FfRNF2QqMLiPBT4TpBy/9o/cer 29DDI X-Gm-Gg: ASbGncuyN+oalqPcg0eWTzIm0kLeF8pdPGLNrJlmIlIokkxmqVGXJlrNmZT2YclefJz T6eXjziBzRv3dv6jHN9qJeCzhPgVNmBpV6LhxwmqXmRXKmO5FRzL2GM2Gy7hk08hqlKADagBETd ucfPBWVvUKxxQjm022ySLYqRfAU3jNoechcVR78D86grS2oz7KOLN00LltcaCVgs4fx22eEvGbu 4Fn6UdoKdijfkob6W0b6uj4vEPTaIC+Bew9QrWFUPWr4mqwAo9HmsjBxPk//LZAq+fwMUf0cOo/ AVBXLz/2dGh2G6jmIcAPe2GQQ19Zseqj1uAsP4kRNu20i1gG4xbT545rfgFuf+F2IISJmfqvkZq c/dzPz05oBMzDeUgyp5VP0Jcqu0f77qIinQZ2/wQj0i74nMk= X-Google-Smtp-Source: AGHT+IHUZMnmOyV8vNofvrGXYlYbX1MR21CRwNezTpLdazX0aDnoeOT0XDSZScHbd+ZHLKlzZmMREg== X-Received: by 2002:a05:600c:4749:b0:450:d37d:7c with SMTP id 5b1f17b1804b1-4538ee5d621mr153991875e9.21.1751380852217; Tue, 01 Jul 2025 07:40:52 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 06/68] accel/hvf: Add hvf_arch_cpu_realize() stubs Date: Tue, 1 Jul 2025 16:39:14 +0200 Message-ID: <20250701144017.43487-7-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380955134116600 Implement HVF AccelOpsClass::cpu_target_realize() hook as empty stubs. Target implementations will come separately. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/hvf.h | 3 +++ accel/hvf/hvf-accel-ops.c | 2 ++ target/arm/hvf/hvf.c | 5 +++++ target/i386/hvf/hvf.c | 5 +++++ 4 files changed, 15 insertions(+) diff --git a/include/system/hvf.h b/include/system/hvf.h index a9a502f0c8f..8c4409a13f1 100644 --- a/include/system/hvf.h +++ b/include/system/hvf.h @@ -72,6 +72,9 @@ void hvf_arch_update_guest_debug(CPUState *cpu); * Return whether the guest supports debugging. */ bool hvf_arch_supports_guest_debug(void); + +bool hvf_arch_cpu_realize(CPUState *cpu, Error **errp); + #endif /* COMPILING_PER_TARGET */ =20 #endif diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index d60446b85b8..b85284017c5 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -582,6 +582,8 @@ static void hvf_accel_ops_class_init(ObjectClass *oc, c= onst void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); =20 + ops->cpu_target_realize =3D hvf_arch_cpu_realize; + ops->create_vcpu_thread =3D hvf_start_vcpu_thread; ops->kick_vcpu_thread =3D hvf_kick_vcpu_thread; =20 diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 42258cc2d88..6551cf1bed1 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -1076,6 +1076,11 @@ int hvf_arch_init_vcpu(CPUState *cpu) return 0; } =20 +bool hvf_arch_cpu_realize(CPUState *cs, Error **errp) +{ + return true; +} + void hvf_kick_vcpu_thread(CPUState *cpu) { cpus_kick_thread(cpu); diff --git a/target/i386/hvf/hvf.c b/target/i386/hvf/hvf.c index 99e37a33e50..28484496710 100644 --- a/target/i386/hvf/hvf.c +++ b/target/i386/hvf/hvf.c @@ -367,6 +367,11 @@ int hvf_arch_init_vcpu(CPUState *cpu) return 0; } =20 +bool hvf_arch_cpu_realize(CPUState *cs, Error **errp) +{ + return true; +} + static void hvf_store_events(CPUState *cpu, uint32_t ins_len, uint64_t idt= vec_info) { X86CPU *x86_cpu =3D X86_CPU(cpu); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381100; cv=none; d=zohomail.com; s=zohoarc; b=iTn+1a2HPTfYSTvghkwVvOGvhISHAorTuvWWiaJdJDhaXCviXYhgwAseAF39bhn0Lki4ulEbNqlxTvZnNbWz+V2cZSfxHDueicne7/G+XkcuUMCThnoN7OBvQ8D076pgGQgR6ClNozU0504iughLNvJ3DWNdXoltd2C18knlhfQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381100; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=GAzT+CGbAi3kvmYQ13E5MHk/eJNqjsj98Rjqkr8WsQ8=; b=CNxfBNjgzgrZRJ2KVacLiDrdY7M1vq8otx4E8qRY5FCkzhhXjQsVs6BUaoZMiAcdIUfF2XUAi4MDV9wrcI18LhXdqCjTbtzeoHUxcY0bqpTrk3VGvlp9yTCOBkTArwQQduByQtw9XDt2P7fdEXSeDujvOZsBTYD61syGRnMX73M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175138110054623.320418658109134; Tue, 1 Jul 2025 07:45:00 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAY-0005oE-5w; Tue, 01 Jul 2025 10:41:10 -0400 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 1uWcAU-0005al-Az for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:06 -0400 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcAN-0006rA-U8 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:05 -0400 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-450cb2ddd46so33900365e9.2 for ; Tue, 01 Jul 2025 07:40:59 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823c42e1sm196647755e9.37.2025.07.01.07.40.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:40:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380858; x=1751985658; 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=GAzT+CGbAi3kvmYQ13E5MHk/eJNqjsj98Rjqkr8WsQ8=; b=Zw1BVUKafcGzXRpdd611MtyaAEYoSEHvClW8y4m34+AmUnTyD3XYCZ+6Wsnz0d7OQl xnmHk2eH0153s+SrKEGIQ9GFKu2ipW31MPVr5wiSeBFB8bcYdapt3RluE36P3D0fiTgP oIAfK//1IJFAC0RL79xRI3ePaW/OeEfYa2OsgIzaPwoKQaZ//4UsUbIC5llaStKa1thB 0EsqTYyZoWtmcAi6/OdUjT2C3bKARwgZyxrVOSaC5E08fSf3SzU+WaCn+vW8Jpn5Nmon P9jIpF1RrPZ3JM40m7VJGsCc96pYXAEmmd6ZGTMFjl8RWGjnPqH5trwl7O57NZfCKjYS YGkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380858; x=1751985658; 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=GAzT+CGbAi3kvmYQ13E5MHk/eJNqjsj98Rjqkr8WsQ8=; b=Ktogak5KEexqEPOyho99531hdgzSOlomDlmL+kqP8C7YXpzWrB1vxg+8+TshwuvAT2 xoE80Tg8QZosv643kMKUykqUdO4xy/90kuHBclw8t8DCsDJscZS6Nue49abd0d9WLi2f zReSiMKpkvC8Gx8RGGJNobo7u8khJpKp6PmwJ9uR9+975wJAj/2avkQzMC0+8RkhIxMd FXJdRZyweg7CWfakjuA0eEWkabJW1/7asvTrGRTn3GtKPHsAwP35kXv9/nZMxW69sskd NcctWe8oNmjQomFmaBRurKPryOqT5WeHYPKCFBwQpknOFvV98Ufk9v4Q+4+dgbsKpmme t27A== X-Gm-Message-State: AOJu0YyPyHOiu/1eNiMpa1PrmAlFGwX4f3CGK0MC5vIDvhEufbuUzjA1 HC4jqKSZ5zmBrHuc9cUG3doiqlXUX2vCHM/zw6aDprobQm4u7mtgM4jN2TxSF2rt/S7ExKjDYUh fxFPV X-Gm-Gg: ASbGncsTGXSN2vljpHrtNldUHKygn6EKMV4XbbiFbex0Oz2d8AZHWSZQVghxWg5+kHn sMKkpcuHPZxRP5u/8k5VJUviDR1eFeiEj7ig5vdcuh4LVSwnax57v3eYMQ7sE0D1f2TQyTvljM6 5uQQd5SYKfVqGAetjBv5n4nEV31GGcdITgae7GZ/OhTfwyIxYjXB9LAenMyTDlCb5Zgr4kCOOB3 WFBXOVvaIG6RQFwo4FLuuz3WV9ckA9AN3bT9U1qmGvzpktoevEUodOZQTcQmDl84zKHRxBu2prG K5QHXeiEu1ylaHFeBg9RYB+W8vbcL9ul7Ec4ZCBThrzFisystSyV9jOC/EyTql9RRZNRCYdgsqJ KNSf39YoPTl9UEEP2s/8C5/8ybr2fl8Xdh7Zm X-Google-Smtp-Source: AGHT+IEAzjJ09ClXunxfbnU7OfXcEup8Be9O4Qw9kppwK6aWZ8ecu6i9eh5ChbbKiuk35AN3XTx6/A== X-Received: by 2002:a05:600c:4f54:b0:442:dc75:5625 with SMTP id 5b1f17b1804b1-4538ee50b15mr171956105e9.5.1751380857627; Tue, 01 Jul 2025 07:40:57 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 07/68] accel/kvm: Remove kvm_init_cpu_signals() stub Date: Tue, 1 Jul 2025 16:39:15 +0200 Message-ID: <20250701144017.43487-8-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32c; envelope-from=philmd@linaro.org; helo=mail-wm1-x32c.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381100984116600 Since commit 57038a92bb0 ("cpus: extract out kvm-specific code to accel/kvm") the kvm_init_cpu_signals() stub is not necessary. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/stubs/kvm-stub.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/accel/stubs/kvm-stub.c b/accel/stubs/kvm-stub.c index ecfd7636f5f..b9b4427c919 100644 --- a/accel/stubs/kvm-stub.c +++ b/accel/stubs/kvm-stub.c @@ -105,11 +105,6 @@ unsigned int kvm_get_free_memslots(void) return 0; } =20 -void kvm_init_cpu_signals(CPUState *cpu) -{ - abort(); -} - bool kvm_arm_supports_user_irq(void) { return false; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380958; cv=none; d=zohomail.com; s=zohoarc; b=gWj91R+48hjPFdGRN1zYk4qk/X4QaNxsa6xEgtIiiCJFA0YSN028Jf9c0Wicay3HwQSUiu61NkYVDCqKJvAIo5l3F5Ub1gHc4ZokcyPgEcOsg3kki/96moaL7QDwU6ef23J9ErTXYjkvHZj1pJfzOvjt9pJZVUKdRprH36uxI6A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380958; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ZLkTPhlZ6ATb7AAc3VGQov8gsRhAPF8MN9ZoezL4e2s=; b=eyN1IgH6jHA0N+ehKGltJyFnNHucex6NUUF1wUMDy8xtjTaDjwYtT3KFWO62Dw5rUf0odo+u6FV8xrWwBn7q8f3YBXEOc/99qduP9vQ/GlbBQLUWlB4CJfd3QvleFLBguOMdgpM47bcZQ1RBJhBeO0wiUNzKlEY/PmwMC3RCn1g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380958128608.8104555521643; Tue, 1 Jul 2025 07:42:38 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAb-0005q5-Tc; Tue, 01 Jul 2025 10:41:13 -0400 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 1uWcAZ-0005pW-V0 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:11 -0400 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 1uWcAT-0006ri-Hd for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:11 -0400 Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-3a4f379662cso2858018f8f.0 for ; Tue, 01 Jul 2025 07:41:04 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3fe28dsm168866135e9.20.2025.07.01.07.41.01 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380863; x=1751985663; 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=ZLkTPhlZ6ATb7AAc3VGQov8gsRhAPF8MN9ZoezL4e2s=; b=edFmb+lxPD8qo79SNcAxLujTET0G+rE2jlmsBK6v4fW4Wp1MIlS/kIHFxqw5bXx4CG z1T/BArw+x/9NksZ7PeEVdEeTDtyn2pokUL9LRZLMFtmQbVkwXBaXdDk7cuVyXI1kxTy whEiyXLHwXP+wVBeQE2u9BAdWpItcbXKJSxRfwazCCCgF6rG1q0ZQLWHLmMXsPDAW1rV FCKHJxPWz6zmT/HL2rvbpqER55RwFaCp3xDrvIluJ3JmLl0g2Wvs+qHzBpo7F17meCKE A9rdVNpi8Nf4MHnRR+vfXwbOGvHEJ31WusCHzvHQf0x4RMf7JmC7ldDOAmmNFREQV0q0 vOXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380863; x=1751985663; 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=ZLkTPhlZ6ATb7AAc3VGQov8gsRhAPF8MN9ZoezL4e2s=; b=ZwtvBDb2dBuN0XUmLURjPUrmq7akgLLGMLUNucZ4qR+7aIT+qRTPwBrUu/WRYM0rv5 GTryB4qVKKzcrPvt6bJ+xv2PNy96b6OJ/b8Gp8FFfnwa37TTWm/bNADprZFmA2DDFae1 l4emn3/kgqiZEKoVxvcCI12wciv63saR9q/4bNSMS2JS0v9RFYd5xz3mKYUPBid7TpVL PJ+wo5LZjteIFlQp+NNkMEgGqTLMbHfjZpSfaNBzArIhoKAHuli+0+HCr3Q43muniFGQ 25G9whaGnDfl+Tehv5ZzQumXNViYFF97GvwTpto8tvm9CrORQMVot6ihPgcu756IR6Ui ypXA== X-Gm-Message-State: AOJu0Yw7YgqO0p6SnUdpUMQ/MJQanfSLqmPHpNBQVV47nUHLAB882P11 9s/yXMbB0sjtypG1kZVVDUgHniQuvgVAtdi6eTTBlq7TJ3J3B1RwfLv57erWaoPtQUHCCb6U6kc em3Fa X-Gm-Gg: ASbGncua4e09tAbOVoWWjswxYXnPKtTI3boMPI4X33Fb69vdSO/olLeIl2ljoFUe1v7 A+v3XhA3KgBQoGsglsi5cDqSM4iQZoL3dPHlGRH6Fqmh0YFU0TPYFE9Kn6e7Vm9vO8w7620Ee9u zV9RCSwh1jdZvJ6zj76cYMOloztXWw4BOyohoAMwpf54xdS8v4ZEMYibv+DhudyUuTTNzTUwowS fbiRacMLUouSiigSDj1loDsnihbvoEuVOS/BFo95vshjoX3v9kwb9cIuvxbzmANe5wEwgg44j5O 4HzvIo/kx3PKqjwhicojyFdpeMZESNUBXp0ErsOOmYBS95vtn13cAtkyqWqLMo1KYh/gU6qG659 YMaAVQ0WclWZ3p30V6EGoMzbkoVEeLNOWvA7J X-Google-Smtp-Source: AGHT+IG3qdvpiwP/Wk7e+yDnsErZ6MeJ3MSSo3EX/Y4F7GB9HLSxaHSWM33tEPWcaNRCx6k9J4Ewwg== X-Received: by 2002:a05:6000:178b:b0:3a3:7baf:f06a with SMTP id ffacd0b85a97d-3a8fe4bce3fmr14556007f8f.37.1751380862940; Tue, 01 Jul 2025 07:41:02 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 08/68] accel/kvm: Reduce kvm_create_vcpu() declaration scope Date: Tue, 1 Jul 2025 16:39:16 +0200 Message-ID: <20250701144017.43487-9-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::433; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380959069116600 kvm_create_vcpu() is only used within the same file unit. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/kvm.h | 8 -------- accel/kvm/kvm-all.c | 8 +++++++- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/include/system/kvm.h b/include/system/kvm.h index 7cc60d26f24..e943df2c09d 100644 --- a/include/system/kvm.h +++ b/include/system/kvm.h @@ -316,14 +316,6 @@ int kvm_create_device(KVMState *s, uint64_t type, bool= test); */ bool kvm_device_supported(int vmfd, uint64_t type); =20 -/** - * kvm_create_vcpu - Gets a parked KVM vCPU or creates a KVM vCPU - * @cpu: QOM CPUState object for which KVM vCPU has to be fetched/created. - * - * @returns: 0 when success, errno (<0) when failed. - */ -int kvm_create_vcpu(CPUState *cpu); - /** * kvm_park_vcpu - Park QEMU KVM vCPU context * @cpu: QOM CPUState object for which QEMU KVM vCPU context has to be par= ked. diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index d095d1b98f8..17235f26464 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -453,7 +453,13 @@ static void kvm_reset_parked_vcpus(KVMState *s) } } =20 -int kvm_create_vcpu(CPUState *cpu) +/** + * kvm_create_vcpu - Gets a parked KVM vCPU or creates a KVM vCPU + * @cpu: QOM CPUState object for which KVM vCPU has to be fetched/created. + * + * @returns: 0 when success, errno (<0) when failed. + */ +static int kvm_create_vcpu(CPUState *cpu) { unsigned long vcpu_id =3D kvm_arch_vcpu_id(cpu); KVMState *s =3D kvm_state; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380950; cv=none; d=zohomail.com; s=zohoarc; b=TtjUUp3tGwYFGR12ntQpMwyFJdZwPL6caLztDzRNSz6q4yHkb6v5uPJoNjbnvH8Uu5E2eyRjR1opZ0IbdTvksXvnKw6JY8hfp+TinFAZi4JKO/66kb2YiB7CiMEKZQI2tgWUIC11QZGneGIj5nCXJhOV4ugcGpmmuKxW17wShU8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380950; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tiAozws8tEvciTyM03dNvOF05xDSKHeJvqFBf9JQPcw=; b=Fko95GSJ6734Ci8bPK3jhrzXHLgfMIhMCEdqdWMo1OG7GqFbzOm469xLXs+igaZ0Y2l9D/cyVA7dHZspEkTXF7+0C3fmtG0B2pNz8xyo/R5/enO5DgnzMsEO51De0zm39eX1ITyy/NDKnV3Q9S9cUT6v3tB19OssilNb3HlpNQ4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380950885524.6360266058833; Tue, 1 Jul 2025 07:42:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAi-0005rT-3m; Tue, 01 Jul 2025 10:41:20 -0400 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 1uWcAg-0005qt-Nl for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:18 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcAZ-0006sA-O7 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:18 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-4537edf2c3cso57397965e9.3 for ; Tue, 01 Jul 2025 07:41:10 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3b2fd7sm171041615e9.17.2025.07.01.07.41.06 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380868; x=1751985668; 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=tiAozws8tEvciTyM03dNvOF05xDSKHeJvqFBf9JQPcw=; b=KQjVP1HXV7QLHhChclZSdvGizj3LQ5+5Gqp7TbYuK2MMcA+ulwhGY7GxvEJvAks9N7 gGrYOy5q8noNCmL7H6V1GGh/uijSdSwzP2s5MzN+ncwBLgT5KoWtflcnvyf+UmN4svjl DJ4zcHZiMy4PKEkOXOjkWNSpc/Z04WNiRQhP6JmHxe2cZO1haSCk182yeXOhZXHECqCy xPpcmIweqvPf2mePObZx2sj9q2a8MrXex685cnSjI0lAilyNIudZ1KCU7eBwkNupD0lo ma75+TxNoeVT044M4m8xopnHe29Z93KVt3Yn9ZS0z/urh3AvbhbUV7OL5Vo7NQXxG4tR TOIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380868; x=1751985668; 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=tiAozws8tEvciTyM03dNvOF05xDSKHeJvqFBf9JQPcw=; b=OCF8gWfkew5HbRV61M1GD5pRC3YQZvpPiNslogL9410W2As6d39qGbmZRHWU43Q2WB 5K25A0yUA38HmMQhgJCztCBsfPPeqsixDTnZ5u9O0FDxiadX7jKhYaqn6pqoqkLoI+lh meiInduyd3Oa622Mj5KZYhMUDj3c3hf82G9oC7N78o/ShutGVU5I21ViPPao8Ycpi52l /AoKEvGsvlNc3JheRhVxWn9QuMSZv/GedDnBOuoT4pc3fQMOqYgaNMKJDeew81SSKdR8 8GZ6aCaBfYP5/UPrf8TJN/Gx8+EgAzNr6aONvdIwBB/Vyz1J2D1LQQPkB83f3Yl9DroZ OVOw== X-Gm-Message-State: AOJu0YxQpu7AGvI0CcBQC0dmC93IcqmCGC8CfFRRGvVZCDo9RuUcL/VO qEHHnr4qh1JF6stWbkvjnt3Ybu2BpHygsgoDCYaf1z93S/7PrUdPEFQa7GDVskjjU3uup0lu8md GM0Mx X-Gm-Gg: ASbGncs3Ag4O/FrWfd2bx+m8JGHNjjrsd5Exg2bdQqhOEc47bxroDosncHEv7HqFBOa UX7oKs1AAIFj9NV4oBN1NH3S0BmmRcoi/h6CvRyjiT0u265izrjkgOt88bWs6CBpB6qREqWgJ2x X9R2s4E660URT3mCITvdejc6Wzfkk2lDly7RTymt9v9gWSkKaX/0XApiWtSPxxOxiwkKSUg85+f 5ngS3X7UirdWv9PRHLljLJbQ3I7hVSWj3BFwLTAQD/H4dZFoGK+sJ4xg0vXm0aPLvsIc23R4wa9 rDAM8d2pbWYrx2ZyUmJ5Y4nXRs6hbs8pZDItgQYTC//hfF4sC86wwB9vtpQZFWVCjna/F3EZkBX 56ZeE7j5nyy8i+VjqCF/zOybUeNsRE7a+KtBI X-Google-Smtp-Source: AGHT+IHwwH99e9NtGbG85+OAxSYQ+cebt33sA4BsR9GiUbSRDC34uDDteV6qhI73CcTX5MSoH0YQag== X-Received: by 2002:a05:600c:4752:b0:453:a95:f07d with SMTP id 5b1f17b1804b1-4538ee27811mr231543505e9.10.1751380868317; Tue, 01 Jul 2025 07:41:08 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 09/68] accel: Propagate AccelState to AccelClass::init_machine() Date: Tue, 1 Jul 2025 16:39:17 +0200 Message-ID: <20250701144017.43487-10-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380952918116600 In order to avoid init_machine() to call current_accel(), pass AccelState along. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/qemu/accel.h | 2 +- accel/accel-system.c | 2 +- accel/hvf/hvf-accel-ops.c | 2 +- accel/kvm/kvm-all.c | 2 +- accel/qtest/qtest.c | 2 +- accel/tcg/tcg-all.c | 2 +- accel/xen/xen-all.c | 2 +- bsd-user/main.c | 2 +- linux-user/main.c | 2 +- target/i386/nvmm/nvmm-all.c | 2 +- target/i386/whpx/whpx-all.c | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index 9dea3145429..b9a9b3593d8 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -40,7 +40,7 @@ typedef struct AccelClass { /* Cached by accel_init_ops_interfaces() when created */ AccelOpsClass *ops; =20 - int (*init_machine)(MachineState *ms); + int (*init_machine)(AccelState *as, MachineState *ms); bool (*cpu_common_realize)(CPUState *cpu, Error **errp); void (*cpu_common_unrealize)(CPUState *cpu); =20 diff --git a/accel/accel-system.c b/accel/accel-system.c index 64bc991b1ce..913b7155d77 100644 --- a/accel/accel-system.c +++ b/accel/accel-system.c @@ -37,7 +37,7 @@ int accel_init_machine(AccelState *accel, MachineState *m= s) int ret; ms->accelerator =3D accel; *(acc->allowed) =3D true; - ret =3D acc->init_machine(ms); + ret =3D acc->init_machine(accel, ms); if (ret < 0) { ms->accelerator =3D NULL; *(acc->allowed) =3D false; diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index b85284017c5..24c21c582f8 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -315,7 +315,7 @@ static void dummy_signal(int sig) =20 bool hvf_allowed; =20 -static int hvf_accel_init(MachineState *ms) +static int hvf_accel_init(AccelState *as, MachineState *ms) { int x; hv_return_t ret; diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index 17235f26464..264f288dc64 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -2573,7 +2573,7 @@ static int kvm_setup_dirty_ring(KVMState *s) return 0; } =20 -static int kvm_init(MachineState *ms) +static int kvm_init(AccelState *as, MachineState *ms) { MachineClass *mc =3D MACHINE_GET_CLASS(ms); static const char upgrade_note[] =3D diff --git a/accel/qtest/qtest.c b/accel/qtest/qtest.c index 92bed9264ce..8b109d4c03b 100644 --- a/accel/qtest/qtest.c +++ b/accel/qtest/qtest.c @@ -37,7 +37,7 @@ static void qtest_set_virtual_clock(int64_t count) qatomic_set_i64(&qtest_clock_counter, count); } =20 -static int qtest_init_accel(MachineState *ms) +static int qtest_init_accel(AccelState *as, MachineState *ms) { return 0; } diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index 6e5dc333d59..d68fbb23773 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -80,7 +80,7 @@ static void tcg_accel_instance_init(Object *obj) =20 bool one_insn_per_tb; =20 -static int tcg_init_machine(MachineState *ms) +static int tcg_init_machine(AccelState *as, MachineState *ms) { TCGState *s =3D TCG_STATE(current_accel()); unsigned max_threads =3D 1; diff --git a/accel/xen/xen-all.c b/accel/xen/xen-all.c index de52a8f882a..1117f52bef0 100644 --- a/accel/xen/xen-all.c +++ b/accel/xen/xen-all.c @@ -76,7 +76,7 @@ static void xen_setup_post(MachineState *ms, AccelState *= accel) } } =20 -static int xen_init(MachineState *ms) +static int xen_init(AccelState *as, MachineState *ms) { MachineClass *mc =3D MACHINE_GET_CLASS(ms); =20 diff --git a/bsd-user/main.c b/bsd-user/main.c index 7c0a059c3ba..d0cc8e0088f 100644 --- a/bsd-user/main.c +++ b/bsd-user/main.c @@ -474,7 +474,7 @@ int main(int argc, char **argv) opt_one_insn_per_tb, &error_abort); object_property_set_int(OBJECT(accel), "tb-size", opt_tb_size, &error_abort); - ac->init_machine(NULL); + ac->init_machine(accel, NULL); } =20 /* diff --git a/linux-user/main.c b/linux-user/main.c index 5ac5b55dc65..a9142ee7268 100644 --- a/linux-user/main.c +++ b/linux-user/main.c @@ -820,7 +820,7 @@ int main(int argc, char **argv, char **envp) opt_one_insn_per_tb, &error_abort); object_property_set_int(OBJECT(accel), "tb-size", opt_tb_size, &error_abort); - ac->init_machine(NULL); + ac->init_machine(accel, NULL); } =20 /* diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index f1c6120ccf1..eaae175aa5d 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -1153,7 +1153,7 @@ static struct RAMBlockNotifier nvmm_ram_notifier =3D { /* -----------------------------------------------------------------------= --- */ =20 static int -nvmm_accel_init(MachineState *ms) +nvmm_accel_init(AccelState *as, MachineState *ms) { int ret, err; =20 diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index cf6d3e4cdd4..f0be840b7db 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2505,7 +2505,7 @@ static void whpx_set_kernel_irqchip(Object *obj, Visi= tor *v, * Partition support */ =20 -static int whpx_accel_init(MachineState *ms) +static int whpx_accel_init(AccelState *as, MachineState *ms) { struct whpx_state *whpx; int ret; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380937; cv=none; d=zohomail.com; s=zohoarc; b=Ldep27cuMmh8jouGf0Hm8jr6gL7/1nL4dBFxvp1btJZdCsgwYxmqHfiQ1tYBa4gsKO8HsHrwXoGWylTUGv54w/YuDahzRPVcU9iTPONLNzkzvb3Pml9uAf/LWHcswVNECE3+d6aRrTVyk5PqQUUWVOidf/YgNTYnwBXHdXrPMpI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380937; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=K7agq2/z/dMVKZ8AYrQE6GIlp8fdEIwRrjWbdb+ua6k=; b=hdbfhHxYPNhZDbpFmtKsZhxvywue9VggnkuP9usmTPDFyqQAmxc4kZZYL9wH4cIizKIc9iJfN2BlRpMEfSgnp6trxWQJfiuy5EoVET2wlXjmIdK/HEwpRS0oxzuAnv1isZ491aIyuJrYi8T04KkoBzejx/LeRWtepQ7CzdDFn1o= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380937669909.3446931486192; Tue, 1 Jul 2025 07:42:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAi-0005rp-Sj; Tue, 01 Jul 2025 10:41:20 -0400 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 1uWcAg-0005qy-Q5 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:18 -0400 Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcAf-0006so-0C for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:18 -0400 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-3a5123c1533so1926139f8f.2 for ; Tue, 01 Jul 2025 07:41:16 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453a1914d10sm58341935e9.4.2025.07.01.07.41.12 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380875; x=1751985675; 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=K7agq2/z/dMVKZ8AYrQE6GIlp8fdEIwRrjWbdb+ua6k=; b=jjuCx7Gz+iXAJheRCbyJZLBb0FujXqAaJPFmgp+VZnbzKuhPggKBhyrmkTBPIBQUFd w3XAAVRGi+VnRJLo4J5VFfcxl26vczTslsQCUf987EqWMf2CJqgR3JDYPll2ZI1MtyPX JYaO0nU1HxW++ceg0CqwO/+bxRD5cxjot9tNR3mXpXCuxIZCWgsSBGrKN+1by4Cz0YG/ 8NIcoBbvX4sR7m1kYMLKlf4QbCh42gERRlFkYEfZswB5TmxB8ZRH87vmfC73SK6d/zJE u38PaDA7XGX1q+PqDgt5c4LMFFncztO9lDe3S7PXhyUrQ3/U8Bf7k5HsDwuwnfxs/ZGT XDSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380875; x=1751985675; 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=K7agq2/z/dMVKZ8AYrQE6GIlp8fdEIwRrjWbdb+ua6k=; b=dCAjV32QTuIsYUz90se0C2WfJ4G/l5Sba2edf1c8ivcjy/n+f/nCgYgZIcrU/LQJV1 rPSwLP8xkRbAs+9tw1AOZU/Q7Q4bM09lmiKkonByHGRtnyPyu3JQChr8w7KiYIvzUghT UZc3qC1Wtb3Qx0YwubccDvE2JTYRqmxnWQ4kFLZ5M34gIToDNq4KmGYrhfCi3PvCIGXF tKgiBvr1j7PLOCFwDesr5XpjacozKApo69M9l9B80ZambJOa1Co2naxI8S4pyNms2AIV Pi8dL2X7RQ4cUt94wuYg7MByFyIfCke9SQTndT2LwOlxuTb+j87lyM93GduG5tosY/Qs uyWA== X-Gm-Message-State: AOJu0Yw/pX0BgPPSOzntIPQCQ8fDcDYcAhsrKGdJQ3bYLoS5NfxEV1AB yHnjGdyj7OXBXTuYk30/J20q4xU5tkZS532LbzZqvalul4eusUwPwvHBAF06zOSxhd5mUkLiveY i+fkn X-Gm-Gg: ASbGncvwC8GhkQjmdC3GfPMuBnkApQPi+j+mNCNymaoTWMpSr1wwuJEEwYqo943okKi mVaODbeafA678sBM3PHaVRPiN26rdhMMv6ErLDv4ChvwrKbbgOxQZ/om8AuROuUPRsbq9zHuno5 o4otp5tKy9bMRdIwG432Tm5sNuTjdy9gtOJxhZYVIUb25jixpXuZPkVVxUmstC1uH2L/rmrReww gIKI7nTU9/qXZy4LGSyh9rzo+JaV+YVVXkaTpeA3W6XFCd9tuZGCjMrUzlSkChuORD7g4r2Lakh ALw0/2Zi/5kVptBpWbYLOrXyy7ZlbbOQDWBo3g5bxooGUSPtwpA5eebAsz0Dp+ovTeQh+HIufSU M80oTDY/2d+NOb6QFCeZiZo69yWlO+dPUNKQT X-Google-Smtp-Source: AGHT+IG9Ufx4S27vj8PJ0dVg1fsqPttGlvZIlwc3d/qh0VSyKeP23PAYmO0uhTWz1DrCNO+mYmSzKA== X-Received: by 2002:a05:6000:200e:b0:3a5:8a09:70b7 with SMTP id ffacd0b85a97d-3a8fe5b1d02mr17437287f8f.38.1751380874925; Tue, 01 Jul 2025 07:41:14 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 10/68] accel/kvm: Prefer local AccelState over global MachineState::accel Date: Tue, 1 Jul 2025 16:39:18 +0200 Message-ID: <20250701144017.43487-11-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::434; envelope-from=philmd@linaro.org; helo=mail-wr1-x434.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380938824116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/kvm/kvm-all.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index 264f288dc64..72fba12d9fa 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -2588,15 +2588,13 @@ static int kvm_init(AccelState *as, MachineState *m= s) { /* end of list */ } }, *nc =3D num_cpus; int soft_vcpus_limit, hard_vcpus_limit; - KVMState *s; + KVMState *s =3D KVM_STATE(as); const KVMCapabilityInfo *missing_cap; int ret; int type; =20 qemu_mutex_init(&kml_slots_lock); =20 - s =3D KVM_STATE(ms->accelerator); - /* * On systems where the kernel can support different base page * sizes, host page size may be different from TARGET_PAGE_SIZE, --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380993; cv=none; d=zohomail.com; s=zohoarc; b=SPhRpypL/9QlfybKO9MFAjTqOv2ZD0SBklV13ni4DAn9VTdBNXCaVPUxSSSXSKIqdon1buntjLbAeT2pYHqdTBxOw+3tgPlciD9+RwncA+nCVixMgI+Udwub0AJ3nyYNfTmssvmYlAvi7R5wJDu8yGbtLD+buHKqHTYBXpyyJAg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380993; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=af2GPZo5Jp9qdPnKPAF/APVL/x4FGZ5cIgr1W/DbocY=; b=LV9DO0IkaQ23/YUQufZQLb5NvfapNabNid88auNyOGB86y4lXWr9jFxZRb15uEQc9bcRhv7r3/TLQ5tevkyLDXhlesL0pxGdpPyBz52aTm2qKcyzobRVoYra/IphP4Pp9MsCJfVZ3FIcDI2c6gMN7gV/1ypOsrhrOiNwyvKcSS8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380993004553.5571115321287; Tue, 1 Jul 2025 07:43:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAn-0005wW-P0; Tue, 01 Jul 2025 10:41:25 -0400 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 1uWcAm-0005sk-1s for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:24 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcAk-0006tZ-7l for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:23 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-450ce671a08so22554605e9.3 for ; Tue, 01 Jul 2025 07:41:21 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3fe587sm171408545e9.19.2025.07.01.07.41.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380880; x=1751985680; 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=af2GPZo5Jp9qdPnKPAF/APVL/x4FGZ5cIgr1W/DbocY=; b=H1l/7Zo12Sg1emHT01QrTVOvmhVBU4x/XdVssQnKxI2U/Njucitqw2tLTrJbyjpvGr 6gsTzDGJhZcbIg9eOWfwwU3byLV7glFSSHrheSfjlej28MKFTaqkX91ILjuzKZycMM7d Z3Y02nRTX/1WcBy2sJArgJBBl3O7IS2OEZ/bQe+gBesMJS97BGkiDGAbXBw7jbVeVuxT oe4rfH9rtZi6qY4mfkP/ko+mt5za+Acx/Iwz7MO4NWnAklSz9k2AY1oImWQANp7Z5qlN PbQ2UO9hB6ecRl5YP0KVK1pwZusyFS3CMbjF3hnsb6CtXxoag/s1RGNBKUjDffCJ0u0v s31g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380880; x=1751985680; 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=af2GPZo5Jp9qdPnKPAF/APVL/x4FGZ5cIgr1W/DbocY=; b=bcV0ASQkQHFSPGiY5m6zbkS/t06Tb9DGy0+1Ua2eVqHSimvYVIkgNZ6kBxgkTpP4MU 2WQEGWVAVXYojrYqBe3Fp+RtPlsLZadEULR/1zclkZKx4C90mDYGdVWCj+Z1YiWEy6BH YuIZ9WJs1jdTEvSXeemntNamwi2QY7HPAwzrzesajAHojC/xbwXYba2F+k6FLJxLpuf9 /Qd8XG3Bxc+9W44CIAaRfZwUO4ArvwUdR0W8GuY0A+qw5xi06o4b93R1j3noUNsOIRK/ gBML4rMO7bMv2N6oRIBD/DGRNJ1U4wcRW2P7r7pKapFDl0pU+a/WFgRHZgai7IQGplUH kuXA== X-Gm-Message-State: AOJu0YyJWvPZa2PNGGNTZvbb1RXpMv6XMQhI8tLIyjJU5/nT2DaCU2dN UDf2a5mNJkNS8Rz3AWC+WizAerKCjge+O0YxgWVtG+sTyD++YvlAOe6wHJd7czC/EX9E/XoMg7o JqmIo X-Gm-Gg: ASbGncv5RFbgcTXfRlLKtys+UMnA9xUpcwikgS1qb92xhasn8iAIQ175espySYgb2dU aalQlQuCC7BG0KRrfh6jHJRuNXQTeanA9BHBeFfHUx842xabkv+f+BZx/1bnhiHmTmBEJmnOdF9 K59zrzgiFhCrnXlz7P1xVICVhNmpOkoobSM2BjsXEBNfVT+DsauHZmvmT6UQiXzgg0KgsW6lrPg sqXuQav84tctCq0HszXlCQjTGI/dTvRhL9mkHc9MunNlUwdESQVlCoMLlEbS2D57Hawrd0orMFc 2ynO7TOJZTK3PulEh5D0Lev/W0WYKvRSiTll1EiUEMn9etRLmoXkbroGg71ojJZidSpl8AKxP09 vN1hk2PMAYDyXjYd2+b2DeUkeW4LyFsijVUGy X-Google-Smtp-Source: AGHT+IG6Gyq4jlY2tl3YubLFdGEwiKMGZklvh0L3jiWylM4uyTztqqdKfcKpEizw0VMm673DFAQvXA== X-Received: by 2002:a05:600c:138d:b0:442:f482:c429 with SMTP id 5b1f17b1804b1-453a84069b7mr34447715e9.8.1751380880135; Tue, 01 Jul 2025 07:41:20 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 11/68] accel/hvf: Re-use QOM allocated state Date: Tue, 1 Jul 2025 16:39:19 +0200 Message-ID: <20250701144017.43487-12-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380993614116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index 24c21c582f8..c24bc1e9c28 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -319,7 +319,7 @@ static int hvf_accel_init(AccelState *as, MachineState = *ms) { int x; hv_return_t ret; - HVFState *s; + HVFState *s =3D HVF_STATE(as); int pa_range =3D 36; MachineClass *mc =3D MACHINE_GET_CLASS(ms); =20 @@ -333,8 +333,6 @@ static int hvf_accel_init(AccelState *as, MachineState = *ms) ret =3D hvf_arch_vm_create(ms, (uint32_t)pa_range); assert_hvf_ok(ret); =20 - s =3D g_new0(HVFState, 1); - s->num_slots =3D ARRAY_SIZE(s->slots); for (x =3D 0; x < s->num_slots; ++x) { s->slots[x].size =3D 0; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380947; cv=none; d=zohomail.com; s=zohoarc; b=RlkzIz1RlShqoLMCphJIGSjB2yyHN4QsU+PEFgyIGYOwnle9jC/j5VfjXura7KFCYK5FY7QCKLcqDKgX6UcQLfHh7L2TvatWFZ9aYL5ndMvL/g+MElihdCNFb5JHBNyw/roRUKLsO0SFgjI9NaOMkcVYYdA2SI2224HE3r8BBBo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380947; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Etx308N3I1KijyhBGAM+HBbz94lNBN0h4vUS6IObI1U=; b=KjNuZOUTQTaKliak3bUfwTZrgoEqQmat/zCrgeDdhIuoTvjBRiq7+B3ep7cO569EklWBwZJnRZ7yOuL+CA7OqUIh4/roNr/2fUy2WIQaUT92Xs0KW4LRa3BbASAaRuCERQWcUMVkHxxIVBzFvplGRCfHYT1Tgz/UUp0xwsjSCRU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380947620745.3846922837117; Tue, 1 Jul 2025 07:42:27 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcAv-0006G3-9J; Tue, 01 Jul 2025 10:41:33 -0400 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 1uWcAt-00065F-7g for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:31 -0400 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 1uWcAr-0006ts-GM for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:30 -0400 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3a503d9ef59so2661167f8f.3 for ; Tue, 01 Jul 2025 07:41:27 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c80b516sm13127569f8f.41.2025.07.01.07.41.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380886; x=1751985686; 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=Etx308N3I1KijyhBGAM+HBbz94lNBN0h4vUS6IObI1U=; b=jYr4xBdGUdF0mZmiNvEIcRNilYiRxfAnyTOs88nbbSYA73z4wZAGKbQ1kDRysSdik2 5Jho8o1BrzkldoNeVLmeOySb0jPkJbenpSWGated7YSVNVKnSra28sUyUJ7eZk6FABiu 7ECMVh0l2WpEHNyM0dGd0r6ugi05KzpI7uvTsn6GWCmngf5zInNvILBHz7XwwSoqp41y bobRYrWo1xesXsZdjBTVauVODw6ESGVi6nm6u8VBhx8qCu/E0khhJIAOyLFjx/AvPIiM e8Y21ilyCkMPFUHWbCzbrgglV+ggTfcyNIG1f+2EVNcGswkuaz+3ScR/5LLKKxRD6kvi H5hg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380886; x=1751985686; 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=Etx308N3I1KijyhBGAM+HBbz94lNBN0h4vUS6IObI1U=; b=BMg4V7iJbptjeD//9K/9jaxNBlOG045zps9z8e2fUwLYER7ZJ38Ev5aZcRfsula1EX fpcAqaBhdSYz7Aqm1RS2RMtyag9xHiAHXmhK757jYmPQFeI9vUe4UMDbnvIHZixEUj9/ ACVZvVJMFZatnJwRbJB63PuC0rjuFWBfP0kFXjxLlVtm+7bgHd4mZSLv6kpfi6tkLv39 LufVRVIpOg+iFmVO/kKI3yCvcEssyrixHU385DMzSMFnaqGbgZ+yTuqWZaWfYL0x6fyv rPVEbB4gAo3wnluJX11rHYK3SMIKMN8AxPmRLKE059OR9ogbBw0EBrbmuhqZmUNU2Ac3 GmwA== X-Gm-Message-State: AOJu0YwwKophO7TOGxRyLX4KJHajRQWDl6o8rnQsqJS+RfS+6GWp6unB qaYxMv9+wBRsb+g3L0sPbh/PiAk9CDBDGobGE7cxI9vWnzAjv81ejKhJa+YkB5EGMXdUig15gJO z1vFe X-Gm-Gg: ASbGncsqQzx47uIz4w0jsMzaTwXZ+d8F+WWXJAmCp78e23fgxd1m15KZtvU0uB9EXC7 h/sQLT1JVO/vLxwqGxnCIt839WdKQCiBDPq8ONOmsrBpd5yblX78ZHDw/1imcR+WJi96lFQQCgI /J89/97SWGUKd2vRVc4N5EfX0A8eA8aXNWE9ApGjGaRWwt7XHhScKEakMWAOJz2ck7wZRmjbadB bACkN7OHw0ea6VvbHGLmIyvLQdDeyGV0L3CvOQ7Awe4fmHLZLwx30ixr/W2zvtZ9G9r60XOKFb4 SvIwTcI7SJr9Z52diXM+Mp1LTDwI3SZ26+9A158lyav6JzU2pt6x+c7Y/k7fg7frpTvdp9cxTXi sEt+5JMLsGzv0tmHstRr+2ObT+hokqW2qVnLrz0phWco9D30= X-Google-Smtp-Source: AGHT+IEM9Ta0wApzTaYBFL+f7zVWjerX0IRuoepj+Pt1ShEMtLgTneA++jrgGaaConVIc5FII/qMpg== X-Received: by 2002:a05:6000:2d08:b0:3a4:ec23:dba5 with SMTP id ffacd0b85a97d-3a8f435e55dmr11808340f8f.5.1751380885663; Tue, 01 Jul 2025 07:41:25 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 12/68] accel/tcg: Prefer local AccelState over global current_accel() Date: Tue, 1 Jul 2025 16:39:20 +0200 Message-ID: <20250701144017.43487-13-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380948901116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-all.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index d68fbb23773..c674d5bcf78 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -82,7 +82,7 @@ bool one_insn_per_tb; =20 static int tcg_init_machine(AccelState *as, MachineState *ms) { - TCGState *s =3D TCG_STATE(current_accel()); + TCGState *s =3D TCG_STATE(as); unsigned max_threads =3D 1; =20 #ifndef CONFIG_USER_ONLY --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381897; cv=none; d=zohomail.com; s=zohoarc; b=Xsfd7+MVivrjWzkZpHhuinYhCVGDLzdVwAkYaVHakJhVUVP8EEeR9y6VcWYGXjl8K/MPxNNj9LDWYffHa3HxlM836PClmwaUmeqDiWA/RQQhVBp9cHPYaaTblSluaZo96DZhvA/VhyW98QXugVuR0Br31TMDiz+Aq1Cq4o8PHdM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381897; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=kXF6WGGmmwy/yt/TE6WKliMeWMxcd7vOuV1UqDr79LQ=; b=Qm3k+W8wMUSzwTPcBWKwwnNUkl8Hlh3RiwFXfD9q1wOBtg/bv6luEWjf1NenpJNAynTfzvBjMgoZGKzFgI2o+BkR/G1YhIO9kokAGdgjHBfbLGyCc22/zY8EnQED2LQM0QEsiq5ZpsV9XLs7ociMbcIaL8/ZtrO47ZQP5ghqcQk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381897255326.61826306898445; Tue, 1 Jul 2025 07:58:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBL-0006pK-Rb; Tue, 01 Jul 2025 10:41:59 -0400 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 1uWcB3-0006TP-Rk for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:46 -0400 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 1uWcAw-0006uU-2E for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:40 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-453749aef9eso21787835e9.3 for ; Tue, 01 Jul 2025 07:41:32 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823c0812sm196534185e9.34.2025.07.01.07.41.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380891; x=1751985691; 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=kXF6WGGmmwy/yt/TE6WKliMeWMxcd7vOuV1UqDr79LQ=; b=gJdJwos7UTphOKhtxgPWZdMinZTZhaXrj9P6Mn96zL+kHgWVAUw+j4DbNzDtNxZ7C8 mqOrHEKP39yOOpiLRUrteYrv0NAzCZcwEFUg8r4DgoKaoio5XDtvfFMcuMXEtOL2/n0z VA88MyBdCJP9YKvX6M7tl50qV8KQgM9xrSj5oWPGWreuRCT5dRh1rW3Ln0nu0UBfG66b dVEYZ4g4F/CL5rDx3jVVl/cmlYmfusLtLhnjriHqQfueb0qM65lg7ROJ+ieLVoc2o/A4 e+KDzBt1Z0ZUr4CpdhFfQCmQeKkZeelqWxV/Bczn2DcamacwIljO09qSHhKTJ/Z2s30N RYNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380891; x=1751985691; 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=kXF6WGGmmwy/yt/TE6WKliMeWMxcd7vOuV1UqDr79LQ=; b=M7jQJtSg4DJRM1eU2tqsadz+j0+dDH3nckEFoQ43hL7YPnxbXgU6csOglJgSgQNbH7 w09ZuJj4UzQmUj8cVLiFvJDTi6uqATVr2gIDoZHFDHvYbQ6lIVjNHSgksyJehGX0Mqdm bHMnhaf4KZ05wXyjf3Q2tmvC7V98L3X07z7+Ohs2H3RFjlR4La8Y9tI9RnwpMh2SszU9 M0WBirKVEMB5DktqauWjYYxfyYpT/qXq0S1lVtlwtwZaa7+FB067UxcItli4cg87/7u/ NFVzFsQCjpyQ8enL4wQliOzyCWFiM87IoFy+hnOYkkmEaXFCGUG9GaMJcoEPc7WrfLd6 d7vg== X-Gm-Message-State: AOJu0Yz30GTnHLJx4OgYYYKgzPTOzP4+e2hRwqsebLYHyWfe15pv80Dr fFaIn6zjI0kZLEWWkKskJPxu9n29l/qd3rM8FoSy+EdCGhnV7BQ70ZQ1V7tOK7MtVJCqRVGHhmW 9pDRX X-Gm-Gg: ASbGncuMRMJieKZKLlsdeUclYmZP5nXSIVJvkFV7rWJnyiM2FdfiW7hOy8EWAxYXIFL Z4MOPi+hkzK7yQCJ9KaZ6nkcTN7QryAArKVS59ymToZpqBJIdJqQ+R632orE8XN4ADeDqNFa/rk sdXZNaavINuDRzvIq5ymTrRs0No04MpbEace6ZMhbgJEU2KCUods2XnnL+OzzcarqTunjwSXZwg HS+rQFw83mDxJpzZNFt7mSQtP4kvNcalcL92nWvQPIQ+6buv0betdiDNnOe+NhbnVibqCSaeBmE KLOwXilvF/dD6ykAqZL0/uE+kYW128TJrw2vwnsr3Ejg3YcBFV5RjZJcHPmd12+BXtqhM1iyRjH c2zUcvqaLuRB9JEPLLbT+exxF1B3JMkfhfPeq X-Google-Smtp-Source: AGHT+IEITtpWbZiA9JDh3WDYl7w7vzNGkQdrQhwe8qf2qBM7DI3TMkXY/yvEDPRQ32Be/Aho1pAsew== X-Received: by 2002:a05:600c:4e52:b0:450:cfcb:5c9b with SMTP id 5b1f17b1804b1-4538ee2a8cbmr153061925e9.1.1751380891020; Tue, 01 Jul 2025 07:41:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 13/68] accel: Directly pass AccelState argument to AccelClass::has_memory() Date: Tue, 1 Jul 2025 16:39:21 +0200 Message-ID: <20250701144017.43487-14-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381897865116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 2 +- accel/kvm/kvm-all.c | 4 ++-- system/memory.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index b9a9b3593d8..f327a71282c 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -46,7 +46,7 @@ typedef struct AccelClass { =20 /* system related hooks */ void (*setup_post)(MachineState *ms, AccelState *accel); - bool (*has_memory)(MachineState *ms, AddressSpace *as, + bool (*has_memory)(AccelState *accel, AddressSpace *as, hwaddr start_addr, hwaddr size); =20 /* gdbstub related hooks */ diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index 72fba12d9fa..d56ac2a058f 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -3789,10 +3789,10 @@ int kvm_get_one_reg(CPUState *cs, uint64_t id, void= *target) return r; } =20 -static bool kvm_accel_has_memory(MachineState *ms, AddressSpace *as, +static bool kvm_accel_has_memory(AccelState *accel, AddressSpace *as, hwaddr start_addr, hwaddr size) { - KVMState *kvm =3D KVM_STATE(ms->accelerator); + KVMState *s =3D KVM_STATE(accel); int i; =20 for (i =3D 0; i < kvm->nr_as; ++i) { diff --git a/system/memory.c b/system/memory.c index 76b44b8220f..e8d9b15b28f 100644 --- a/system/memory.c +++ b/system/memory.c @@ -3501,7 +3501,7 @@ static void mtree_print_flatview(gpointer key, gpoint= er value, if (fvi->ac) { for (i =3D 0; i < fv_address_spaces->len; ++i) { as =3D g_array_index(fv_address_spaces, AddressSpace*, i); - if (fvi->ac->has_memory(current_machine, as, + if (fvi->ac->has_memory(current_machine->accelerator, as, int128_get64(range->addr.start), MR_SIZE(range->addr.size) + 1)) { qemu_printf(" %s", fvi->ac->name); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381837; cv=none; d=zohomail.com; s=zohoarc; b=LKOaZo7RzIn5w8dxQLHZcuVfEtVD/UvjFb6tlRMFxcCTSZDKeg+hfsuSzKQPRYMUlAJ5YHp2YjAIBffzoTgF3wWaQV09DGPbb/ze9W7GOrPKCda+TTtv4Fx7Hd62788fMSoYnvvAt/lM9tZG6L0iilpGrGWgtHY8wbuFt9rPneo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381837; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3SH0pS4fp8TlecYwMv/fmZPdym5FUucioNm4YGwf2IM=; b=WkuNAKGgad6nwzuICOSU35v/E8yjaOUF2mBSN67ym2ACXpLR5NGalKikVLdyQMqruw/ECLcL2e2zaZf0r2Wyzu+XnRtQ87/vDfCEsE2MYuYSXpD5Ot8OIFDtmc6+dO8lFfTfpLkUrPQ2NDXW1R8wYXgnoNvkqYYFaSwmEsfmUuI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381837730179.14139518075626; Tue, 1 Jul 2025 07:57:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBL-0006op-HQ; Tue, 01 Jul 2025 10:41:59 -0400 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 1uWcB7-0006ch-P9 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:47 -0400 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 1uWcB2-0006ui-RA for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:43 -0400 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3a582e09144so2550635f8f.1 for ; Tue, 01 Jul 2025 07:41:38 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e595c6sm13791537f8f.66.2025.07.01.07.41.34 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380896; x=1751985696; 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=3SH0pS4fp8TlecYwMv/fmZPdym5FUucioNm4YGwf2IM=; b=XLXsuA+N2FLb6iLSc2za1W2VbJrQDndgfOAs0C2D7LstNFPM1fW02qJ33zq5a2mHTb cIxTg3biw5aW4xHDafk6b73hyIZ3eDmYknZ6Q8eKZ3K+Lm/L7hHtu85064Axv64Du0SV YaIRJnloalnS97MTop2m5WQds8eyHmqXaV45TWDieKbTbjoP3VMC3qyzXj9X+XFg6Y0T oiecIiS3wzeARP5HO9/7oPPufd1D88yEFEm02wXAS5v9i+6poQaQ84K5pgnAlGuc+y3R GX0I6MPNo6DTPZbhT39YYquzzFCcDdj7wovK9Jwj7YYbWxi6+DHBcZakM6AJU5BQs0uK ygoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380896; x=1751985696; 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=3SH0pS4fp8TlecYwMv/fmZPdym5FUucioNm4YGwf2IM=; b=ktI1ZmSu7oIaRaUXlj1wvY6krsyRXPgiOve2VVNeOufpYOOORZNYoQbvG0SlAvpv/T lw9M4xlvUA6Jf2DbGj63Y27KeyJOWdxvdnLCW8bBmGjK1mRw3TP0IX1reYZUOE482EjS eDGT4NfQGUIodMCF3cWOaN0FdkXYuu5UAm+OLXzihTb/uWSwSOZUKcTpNW6+1vV5CoUb 7YdmjCAhIoCgdeV1abi7u8bDkKaU0mnkmCiWIUBzLyVAT4uhBAx2s4yTF/4ptTKoCxrv GXm8CARscsdgXXCTa1tkMm/o0e46mKeXln4Tfgjm5bL1hIhtCoicmoPSjUu6M3+wRo23 S/NA== X-Gm-Message-State: AOJu0YyIvLNLQYvmEk93btJ/YbE4t5bMBjd5fhaqA9GWftf82yGwFuzM jfo4YTowlN7zCHMUh6GtGiaufP1dEaTmwjnc/SE2Y2ZuBYG8JhNJtPjGYjLdPpdlJiC2YgAiWCZ fPklP X-Gm-Gg: ASbGnctAFHS1y7xRbCNwZaIHT9fyWJMZNz7xu3+InHGZbB6bV9tZB8gEVLazdUAmLgk 0+gfPeNdAmC80ddSdmzYMC/t2Ijvro0E2EjOflzPLxossPzOIXMvt9er+S0uBu6ucIVO+grq6md 2niAuLUUu7M7TgKKBkaESDqNHSD9XmTnq4P7TDQeXUrcLChmV7xMMaq8Pkfb6s7no3+K7AmleIK fJYdPq8RYYZX1zmDbi+7EzdeyJTNklHE5Wf6CpD43YI96//lnyR3m5sVAdjc/zEFJ3vaSsICNih vwdeT+Evr48ld3E6FOo00JNGpqDo8C14APBYUYGDY5MAdR7TbLGkjVsRJdUFsPCZEdCSkjIREap lJm2AoK4Q/luXolwa016zpOWvKut2jzgoGAjC X-Google-Smtp-Source: AGHT+IG9fO00aPWeVJ/Ubkv0fNQcI0Y/F3N9DaHy+sCH6YBXVaEPOEiMGUbR/CnVXrueG/BFm5Dzxw== X-Received: by 2002:a05:6000:1786:b0:3a4:dc93:1e87 with SMTP id ffacd0b85a97d-3a8f577fdf7mr16322538f8f.1.1751380896114; Tue, 01 Jul 2025 07:41:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 14/68] accel/kvm: Directly pass KVMState argument to do_kvm_create_vm() Date: Tue, 1 Jul 2025 16:39:22 +0200 Message-ID: <20250701144017.43487-15-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381839148116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/kvm/kvm-all.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index d56ac2a058f..d5917c0a344 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -2470,13 +2470,10 @@ uint32_t kvm_dirty_ring_size(void) return kvm_state->kvm_dirty_ring_size; } =20 -static int do_kvm_create_vm(MachineState *ms, int type) +static int do_kvm_create_vm(KVMState *s, int type) { - KVMState *s; int ret; =20 - s =3D KVM_STATE(ms->accelerator); - do { ret =3D kvm_ioctl(s, KVM_CREATE_VM, type); } while (ret =3D=3D -EINTR); @@ -2646,7 +2643,7 @@ static int kvm_init(AccelState *as, MachineState *ms) goto err; } =20 - ret =3D do_kvm_create_vm(ms, type); + ret =3D do_kvm_create_vm(s, type); if (ret < 0) { goto err; } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381933; cv=none; d=zohomail.com; s=zohoarc; b=fbmYv10sRPOE6rRorm3v20HZOTZGKZUYsq3y7XxNuDrlAruNPQTPjkUqi81+4HUNx08Eb7tyB96eK7iwiy4bN256tI+SP/q2ui6BNei9aw5aEsuF7d82RelwBIiPDyZvwG0/heuDNIiItwGa2ELRvRQ8ibTkmQx2Xhetj9R210k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381933; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=4o//Ahs6RE7G9qm1Fruj6+tSusgMKx7qzxtzsPrU+gU=; b=nrpLgkDnmpHVPmGF9U8nB68pKKyni4dXid3em5ZzUQOFcD15TjlOR8ouwPyeK6LKMEtCRGZlDvk4u6Ne0QMpNDjRvxuprtK6teozfb6MQEMOhVv8MEY+y7k3AKnN5OFLPGjeMY2YpTLLS0bxqPK1ku9hMvAgdcI+MOxwZzSOKu0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381933015606.240972642194; Tue, 1 Jul 2025 07:58:53 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBO-000746-RZ; Tue, 01 Jul 2025 10:42:03 -0400 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 1uWcBB-0006g6-7y for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:50 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcB5-0006wC-PO for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:48 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-450cb2ddd46so33910115e9.2 for ; Tue, 01 Jul 2025 07:41:43 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453883d81besm181507495e9.38.2025.07.01.07.41.40 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380902; x=1751985702; 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=4o//Ahs6RE7G9qm1Fruj6+tSusgMKx7qzxtzsPrU+gU=; b=xPdWt0l+NQY6rd5vel+1zjVGxzttmUbo8WiU5SkQZj0qykPxhdJRzp1U48POy61bDU 3cJ89wP2nlDU74qlvvFxKJ2SMC7x6mVGC10QFE5FDBz9HbY6899WmChN71kSXhvcPtpY 85uCvKqAcaLAAf53MsvyC/mRpK+diqka/B1PcB8Xh/nxZgdt231rb0NPbaoV1GbWGtvW 53TgYjlO82zuD+YpDeakXtzlKORS1XYEPhhOt9wwLiyP18s+lcSJSWWX6wp9gQHiNIe9 8cs75kA1owmgmjW65GoNh5GJ8r3tJDHLYl7C/Pcg0/CDXvq5hiiW0jdY8Lxml0bl66FN AVpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380902; x=1751985702; 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=4o//Ahs6RE7G9qm1Fruj6+tSusgMKx7qzxtzsPrU+gU=; b=AFtWYGOIkS6Bt0mKyyGi44MI1p2YoPeOWf3lLUewxjvKChAqNp5EKN4zaBQsTA4QZZ afu+hsJQjJforDwZ1qqH2w8wr52H/UXBObkjVNe5uPaJ5Vt/wPjDYUvysJWeJBd2lJFH hth/6q9NCKEo34IqiZLZXhyfaPr6K2rYCKEjc4S+vj0BNJWDlECINnhY6m8N4kpOXybt Brw5w3mRLqGgzNUjF2iUH8ZK5Nza1ZYKqBSiq996OGkI91ShceHx3NctXMFek2CmxwTM L9sM9smqtwxyQ+x+ig6jq47kcuwc5J6LRf64i6+szwCDK4KO+3ZEWT4yIJ9GOWTorOls YXug== X-Gm-Message-State: AOJu0YwuWOxA5N2ttKyPqLM/7WnPf9dyzIlFNK9XwDMo09gWoVc3JlDP 0phdx9jgr0XUrFcp+aREZa+HUeLsNrolfsZXCf4hyXqCvnk1uuLbNQeVtvmTQIoA24MKAzgD/s2 Hk7r6 X-Gm-Gg: ASbGncvrfc2rF+amzhthyfDh2Ofzdb+pWEk+AekqRWutCaUys50aKd3YeIIF1walxU8 C3xoqOOc3DxZfNRF24ruYt6f9+o/SSzi3eFqfsGsIeTQDeMhuR30yfXVCL+1hgISyLpKQzWh0ac Y2dQLlOz1sopDIDHfRLzybf7Lepm8e3U09ym9+Gr8hLxaf175o9ogQneLapOUZQeblv0ohTn+m6 w3zCSP0vF+cqbOZA4nT8QX+I/BZExtklr5l7f7IhFd3UBc9z23fwKahRWuf65x55jVM8NOh21BA Nu0SfUdCx92S+Bm6vWkGMVMpIG683dyPbms6ujNwv/KGc6LUvDn2akSYbZZrKel4FRTNyvqHf03 vF3WThykptCkEokIUvZ78kbk0FbZz/yjGtVv3A3RIY3NUWIY= X-Google-Smtp-Source: AGHT+IHkIeIkmmaL1DeIrAj1zDWqAFBMo1nLnPhzMXKcnT7k8hytvQM/TRUt5vNJ4Dqbd52x5dFZVQ== X-Received: by 2002:a05:600c:8712:b0:451:e394:8920 with SMTP id 5b1f17b1804b1-4539341e446mr154120445e9.27.1751380901649; Tue, 01 Jul 2025 07:41:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 15/68] accel: Remove unused MachineState argument of AccelClass::setup_post() Date: Tue, 1 Jul 2025 16:39:23 +0200 Message-ID: <20250701144017.43487-16-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381934288116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 2 +- accel/accel-system.c | 2 +- accel/xen/xen-all.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index f327a71282c..a6a95ff0bcd 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -45,7 +45,7 @@ typedef struct AccelClass { void (*cpu_common_unrealize)(CPUState *cpu); =20 /* system related hooks */ - void (*setup_post)(MachineState *ms, AccelState *accel); + void (*setup_post)(AccelState *as); bool (*has_memory)(AccelState *accel, AddressSpace *as, hwaddr start_addr, hwaddr size); =20 diff --git a/accel/accel-system.c b/accel/accel-system.c index 913b7155d77..af713cc9024 100644 --- a/accel/accel-system.c +++ b/accel/accel-system.c @@ -58,7 +58,7 @@ void accel_setup_post(MachineState *ms) AccelState *accel =3D ms->accelerator; AccelClass *acc =3D ACCEL_GET_CLASS(accel); if (acc->setup_post) { - acc->setup_post(ms, accel); + acc->setup_post(accel); } } =20 diff --git a/accel/xen/xen-all.c b/accel/xen/xen-all.c index 1117f52bef0..ba752bbe5de 100644 --- a/accel/xen/xen-all.c +++ b/accel/xen/xen-all.c @@ -63,7 +63,7 @@ static void xen_set_igd_gfx_passthru(Object *obj, bool va= lue, Error **errp) xen_igd_gfx_pt_set(value, errp); } =20 -static void xen_setup_post(MachineState *ms, AccelState *accel) +static void xen_setup_post(AccelState *as) { int rc; =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381267; cv=none; d=zohomail.com; s=zohoarc; b=L4En10ArUfmFQan2Mmujxx7YS0HXC8LgJT7GS+JiTaNC3RBJ2SdeS3Cc5T/5eukccoUnjMXRNHlS00fCwXaU340oipKo0YG5xHxNyBwyOU+oCIxstvUYkGNGTQbV+obyDsPHyXunnWOS9SywvpNK46Z+HImo1PSHBUVsqTuR8hU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381267; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=WEs2Qm2L7ZL6HJmlAKGXkcdaY9znIdbK36UK/TTpkxY=; b=OdJZqVCvyr19G4lcY34bkjkJtFcAJRn27hH7wuqkU0lxtwBI1f0WpTPg851ktHqs76gzRkiSuaYvNFZRJjRp+oG4Mesdep/RG0AcT9M0Bj2jzrdYDSHeApL1u2PEc6stn3TYhZHVGZ0y8ePFx/Hsvb7/8fng5qGZj4OUqkNc1lA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175138126727545.50538682053434; Tue, 1 Jul 2025 07:47:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBN-00070u-MO; Tue, 01 Jul 2025 10:42:01 -0400 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 1uWcBG-0006jM-VJ for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:55 -0400 Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcBC-0006wj-TN for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:54 -0400 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-3a6e2d85705so3197152f8f.0 for ; Tue, 01 Jul 2025 07:41:49 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45388888533sm180242245e9.21.2025.07.01.07.41.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380907; x=1751985707; 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=WEs2Qm2L7ZL6HJmlAKGXkcdaY9znIdbK36UK/TTpkxY=; b=gi6WcyTkjiIemlM5iHsvdDmvbi7VvA+6TTb4He8Jfup+cC9/mnbd6+SXpwWFFEY0fq NaBnW5KdzFXxRWz4VWnHgY+jc6i9gLGvQ9Ez1qU1b8fOMaVQv9aHtnsnfBdkRHaLJ2Ls 6FIR3IuJmHr/N6ElUOu7++qTvZ+3UiRQiiKTIokumqWF22qNW0yeBBY/s1uwC9zgas92 GI5SgUBfkpvjbX0VVGrc8iJ4lKpzCH6BjAXtT1lfyBxcS5SSIr0EIf3pRTmnx8/OsAV7 SGBy81u4HRwHJIE3I0eglvM58OeUwCHe55S6k5uvL+SKItZM04O2SqNRmeJuhbPEuEO0 MjIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380907; x=1751985707; 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=WEs2Qm2L7ZL6HJmlAKGXkcdaY9znIdbK36UK/TTpkxY=; b=OH9BBf79bQnE4SpJwxJ8P99o7S6WRckvAe/4EdRS/E5CKV0Ak6jJ9sA5r9d0bSsLd2 fN6QXjcXqMpcmPDVElZdzM+H2ISaruxwilE4rHJ7Pb5s8KA9wH1UUTHadPBV9EtDnPMd Tn8JhJtFc7udcg7kAaralT4o2WcPdZF7VO2xfmNx+spx2V7+1XfxPSEq9jj+0kh5kZof EvAMXSkrlIZ+40wuUvzIabjteTE/+GSGVPBfFe0nvwVKnq1Yh486JJEa3lt1I6ZdPoxx VmZwMJHATKHcJdFma50nF4D99TRtSHOv1Ed/sWN9CsHMK8yW9MHP+UWdGgsZ5xEPFseU VYJA== X-Gm-Message-State: AOJu0YzYKPmHaT8whg0yDHR2xbAwqD5CrGUOjKMYZJc9xXyOKhjf3PkO 1TIFWZLRxyqb9h/1KdA64XGTls+sEYemwwyxnwHB7GcyzlB65ZQxORunma0PulYWzQEeIdKknh9 n92i9 X-Gm-Gg: ASbGncsBw23KFcU941QVbwNguVZxuiluWLjVD27V9Kf7Bwupo9NIObIwNVHKIIb8gKN rF0xhP1cAo2kuzHXrKTRbqD1SvX/vbwZX1r0NCSHlFnqAXXzu3suFZAErLCKD/2EHmfqDu840ah tkZpEEamlMPq6na4wvk8ih0jPteUPsRfZizoW+FwdYtNPDieYgJqtHp8Ogu1hnRojF8pXEhKc0/ /yRxBe0aDZGysZcgTnTFSrnHf3BuW7L9WCvIEv4pkrxatyrMGbW0e+FG71TtK9oOHz5coDxSa/l kwZsYuVxb918U7+1RPSAuG+2NuP5FCeTE0gNz+8AwXB4LbYh+jdIGQMu1WAE1RGzzGaFevuCIYe dO8SoB7y5xolc7nAdXdBuESC5vRgjgW/e9qek X-Google-Smtp-Source: AGHT+IHZQ7/4fTVljLrAhA4ZBeY7iK69vMF0cJhw7vzUBKwVo03JKhpqCOYY03gGZ/fqTBdB24caNA== X-Received: by 2002:a05:6000:400b:b0:3a4:e4ee:4ca9 with SMTP id ffacd0b85a97d-3a8fe5b2bc9mr14407249f8f.23.1751380907135; Tue, 01 Jul 2025 07:41:47 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 16/68] accel: Pass AccelState argument to gdbstub_supported_sstep_flags() Date: Tue, 1 Jul 2025 16:39:24 +0200 Message-ID: <20250701144017.43487-17-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::434; envelope-from=philmd@linaro.org; helo=mail-wr1-x434.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381269508116600 In order to have AccelClass methods instrospect their state, we need to pass AccelState by argument. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 2 +- accel/accel-common.c | 2 +- accel/hvf/hvf-accel-ops.c | 2 +- accel/kvm/kvm-all.c | 2 +- accel/tcg/tcg-all.c | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index a6a95ff0bcd..1c097ac4dfb 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -50,7 +50,7 @@ typedef struct AccelClass { hwaddr start_addr, hwaddr size); =20 /* gdbstub related hooks */ - int (*gdbstub_supported_sstep_flags)(void); + int (*gdbstub_supported_sstep_flags)(AccelState *as); =20 bool *allowed; /* diff --git a/accel/accel-common.c b/accel/accel-common.c index 55d21b63a48..1d04610f55e 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -128,7 +128,7 @@ int accel_supported_gdbstub_sstep_flags(void) AccelState *accel =3D current_accel(); AccelClass *acc =3D ACCEL_GET_CLASS(accel); if (acc->gdbstub_supported_sstep_flags) { - return acc->gdbstub_supported_sstep_flags(); + return acc->gdbstub_supported_sstep_flags(accel); } return 0; } diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index c24bc1e9c28..b57a75f83e3 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -347,7 +347,7 @@ static int hvf_accel_init(AccelState *as, MachineState = *ms) return hvf_arch_init(); } =20 -static inline int hvf_gdbstub_sstep_flags(void) +static inline int hvf_gdbstub_sstep_flags(AccelState *as) { return SSTEP_ENABLE | SSTEP_NOIRQ; } diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index d5917c0a344..5cd38d536cf 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -3980,7 +3980,7 @@ static void kvm_accel_instance_init(Object *obj) * Returns: SSTEP_* flags that KVM supports for guest debug. The * support is probed during kvm_init() */ -static int kvm_gdbstub_sstep_flags(void) +static int kvm_gdbstub_sstep_flags(AccelState *as) { return kvm_sstep_flags; } diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index c674d5bcf78..5904582a68d 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -219,7 +219,7 @@ static void tcg_set_one_insn_per_tb(Object *obj, bool v= alue, Error **errp) qatomic_set(&one_insn_per_tb, value); } =20 -static int tcg_gdbstub_supported_sstep_flags(void) +static int tcg_gdbstub_supported_sstep_flags(AccelState *as) { /* * In replay mode all events will come from the log and can't be --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380980; cv=none; d=zohomail.com; s=zohoarc; b=KDyisTaKFtcY84uN1QY7uQwXGUq3TnNiEtdUaU2Mzbu1iugCJhc0+UBFBzpZ245UOwuwfDsBhalhLc2M3QZR2M7HhQWU8IbhI6olA5t74+kmeJxufvfTy3LGXpCQvjyqBI4IlFypbR3d4jdaGtjqhLd5pFfgiRX9s1/luwOGg14= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380980; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=/f32srrQFtVjI1/fpLwO8kbOY7BvaFI4sQ1UNMe9p/w=; b=nDuxxxrudI6VLNFh1WM+v0J/TAqZAgk76uXSEtcbW4UqT5H0yEXLh+KjEmJXa6Lnkoj7lgjeg7Jr1xudilXtxt2UofY46HGVvpd/noBee6gURVVyHbQXVfzKlX+VsApf3lanenYYvXoqs4nEfXeuqnm/1Pg5ulbqLxwNeyE7CAI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380980494819.858589114283; Tue, 1 Jul 2025 07:43:00 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBR-0007Se-Dc; Tue, 01 Jul 2025 10:42:06 -0400 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 1uWcBM-0006tz-4h for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:00 -0400 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcBJ-0006x5-Ng for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:41:59 -0400 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-3a50fc7ac4dso2707838f8f.0 for ; Tue, 01 Jul 2025 07:41:55 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7e9d1csm13642956f8f.13.2025.07.01.07.41.51 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380913; x=1751985713; 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=/f32srrQFtVjI1/fpLwO8kbOY7BvaFI4sQ1UNMe9p/w=; b=GLQ+QCasYTnWC4GBqxedHrpvRYQb4o7lhGD2s0+RVQFa2jtIJ6HI+1zH+7ZDuH6LrM pYjgcpA0lIOuOZxZ7r51ESAj6aOVKHh66CenX4dJT5pEOtYLpbtJ4ED8ba/FEPrC3AZy 2sSL3/dUV4QBOrJUazBVYXePRlOuGtXtJ/iGCppHJi9kbw26S+sCtpF+SwcK7a/cbz8W 3peGQOnXtYQR3Ku5fcWVtvqtI6ZxjPGSYqdF5tBPjF8xAA9SRkt8P41XXHMbEjMGNB0K ZbiHCN0eD3AA+xVTIhagPfg5k/ulx2E2PMiyOJODC+bHx301BieOhLdHGmR81aymwzC/ /5Fg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380913; x=1751985713; 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=/f32srrQFtVjI1/fpLwO8kbOY7BvaFI4sQ1UNMe9p/w=; b=JBJCD9+ytcyEJY8f7NXBlQuMcIZpFkzZsNqVpc+PPloEUiImKEiMKNanCZM8IFIkla Iv3sHInMjm3FvVg237wS9bvxQkpn0mUcmmheX8oOD7V0J/FeecelLlhRyUoax0OTQTte xLWIAC4bykOd8y65CKYQJy0a0e9h7s9LpJA6+dei9hLeVixSfTISND3zYcLfgktyd6Ua QNhgMlETNlbZ7nqKZI6xfvf3rpB6wQIntI+RzW7COWCov3qHx4kjEDCOpH1FS8tu1FtW KheOt/wTAbRJ91R1J9VtH39+l3c0XpwEXuNuZhDIR3wYDBNubPjFfFCkPXUuYNbRj8Z0 RL6Q== X-Gm-Message-State: AOJu0YxhlNyOTjfgqYqCf73hPZlNdHogkmapAtWq+wjZBKKkh5I1LEaN nNX2BGTpsIatKfPaqen2sXjzmVQ38w/LRrSfSc/7fg6/eqIJDGQQ8U0QEj6oAnjSvbf1rCOpjdp tuULz X-Gm-Gg: ASbGncsqYQ7u/8NXBTkMDFmzFYJsTxQ/XQk1gfwuqoqGNL219Yh9zw84pJJox2oIZ0F cwvZMAMN7YlZOwCWdx0ZnZCXVAZlz+gWgfAVMcEDRsqpf4WXDcmpARGuHgZTz7OG7EGJuZElB+L tWY9O47RdHd+yNDr/nll0FTYjDRQjLwA1CQYB8OdwVbuPDlflM2kdOhToUpYpaDdpnSaCL6wTaE 2Efk84ISbeeKbfanG76EhrLYStFBYyHqyOMUFlAZpxK0rnWoRKNOg9J8/8U4vivefPsiyH1TZc/ /XBRq/jQ593KukApMFwykQGk+AS55n88ZJpG+NvrSdBtcA2u7py5b7UdSJXIEq+rUlL8Ypq+tKx VOv6WCzVsS5L0bJkLGH8/x3DNBLxfS6UTvyIK X-Google-Smtp-Source: AGHT+IGoAe0fPs3T5IvXlgKgLtXDYC6dG4Aks5Kd9cGZlblleypCjNZIvgiwT36sjHlOuwuGvwCKpA== X-Received: by 2002:a05:6000:1448:b0:3a5:2653:7308 with SMTP id ffacd0b85a97d-3a90c07d619mr15228331f8f.57.1751380913441; Tue, 01 Jul 2025 07:41:53 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 17/68] accel: Move supports_guest_debug() declaration to AccelClass Date: Tue, 1 Jul 2025 16:39:25 +0200 Message-ID: <20250701144017.43487-18-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::430; envelope-from=philmd@linaro.org; helo=mail-wr1-x430.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380981585116600 AccelOpsClass is for methods dealing with vCPUs. When only dealing with AccelState, AccelClass is sufficient. In order to have AccelClass methods instrospect their state, we need to pass AccelState by argument. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 1 + include/system/accel-ops.h | 1 - include/system/hvf.h | 2 +- accel/hvf/hvf-accel-ops.c | 2 +- accel/tcg/tcg-accel-ops.c | 6 ------ accel/tcg/tcg-all.c | 6 ++++++ gdbstub/system.c | 7 ++++--- target/arm/hvf/hvf.c | 2 +- target/i386/hvf/hvf.c | 2 +- 9 files changed, 15 insertions(+), 14 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index 1c097ac4dfb..c6fe8dc3913 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -50,6 +50,7 @@ typedef struct AccelClass { hwaddr start_addr, hwaddr size); =20 /* gdbstub related hooks */ + bool (*supports_guest_debug)(AccelState *as); int (*gdbstub_supported_sstep_flags)(AccelState *as); =20 bool *allowed; diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index a863fe59388..51faf47ac69 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -65,7 +65,6 @@ struct AccelOpsClass { int64_t (*get_elapsed_ticks)(void); =20 /* gdbstub hooks */ - bool (*supports_guest_debug)(void); int (*update_guest_debug)(CPUState *cpu); int (*insert_breakpoint)(CPUState *cpu, int type, vaddr addr, vaddr le= n); int (*remove_breakpoint)(CPUState *cpu, int type, vaddr addr, vaddr le= n); diff --git a/include/system/hvf.h b/include/system/hvf.h index 8c4409a13f1..7b9384d816c 100644 --- a/include/system/hvf.h +++ b/include/system/hvf.h @@ -71,7 +71,7 @@ void hvf_arch_update_guest_debug(CPUState *cpu); /* * Return whether the guest supports debugging. */ -bool hvf_arch_supports_guest_debug(void); +bool hvf_arch_supports_guest_debug(AccelState *as); =20 bool hvf_arch_cpu_realize(CPUState *cpu, Error **errp); =20 diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index b57a75f83e3..a2e0f890463 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -358,6 +358,7 @@ static void hvf_accel_class_init(ObjectClass *oc, const= void *data) ac->name =3D "HVF"; ac->init_machine =3D hvf_accel_init; ac->allowed =3D &hvf_allowed; + ac->supports_guest_debug =3D hvf_arch_supports_guest_debug; ac->gdbstub_supported_sstep_flags =3D hvf_gdbstub_sstep_flags; } =20 @@ -594,7 +595,6 @@ static void hvf_accel_ops_class_init(ObjectClass *oc, c= onst void *data) ops->remove_breakpoint =3D hvf_remove_breakpoint; ops->remove_all_breakpoints =3D hvf_remove_all_breakpoints; ops->update_guest_debug =3D hvf_update_guest_debug; - ops->supports_guest_debug =3D hvf_arch_supports_guest_debug; }; static const TypeInfo hvf_accel_ops_type =3D { .name =3D ACCEL_OPS_NAME("hvf"), diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 37b4b21f882..07b1ec4ea50 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -106,11 +106,6 @@ void tcg_handle_interrupt(CPUState *cpu, int mask) } } =20 -static bool tcg_supports_guest_debug(void) -{ - return true; -} - /* Translate GDB watchpoint type to a flags value for cpu_watchpoint_* */ static inline int xlat_gdb_type(CPUState *cpu, int gdbtype) { @@ -218,7 +213,6 @@ static void tcg_accel_ops_init(AccelClass *ac) } =20 ops->cpu_reset_hold =3D tcg_cpu_reset_hold; - ops->supports_guest_debug =3D tcg_supports_guest_debug; ops->insert_breakpoint =3D tcg_insert_breakpoint; ops->remove_breakpoint =3D tcg_remove_breakpoint; ops->remove_all_breakpoints =3D tcg_remove_all_breakpoints; diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index 5904582a68d..93972bc0919 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -219,6 +219,11 @@ static void tcg_set_one_insn_per_tb(Object *obj, bool = value, Error **errp) qatomic_set(&one_insn_per_tb, value); } =20 +static bool tcg_supports_guest_debug(AccelState *as) +{ + return true; +} + static int tcg_gdbstub_supported_sstep_flags(AccelState *as) { /* @@ -242,6 +247,7 @@ static void tcg_accel_class_init(ObjectClass *oc, const= void *data) ac->cpu_common_realize =3D tcg_exec_realizefn; ac->cpu_common_unrealize =3D tcg_exec_unrealizefn; ac->allowed =3D &tcg_allowed; + ac->supports_guest_debug =3D tcg_supports_guest_debug; ac->gdbstub_supported_sstep_flags =3D tcg_gdbstub_supported_sstep_flag= s; =20 object_class_property_add_str(oc, "thread", diff --git a/gdbstub/system.c b/gdbstub/system.c index 8a32d8e1a1d..bced226fd94 100644 --- a/gdbstub/system.c +++ b/gdbstub/system.c @@ -634,9 +634,10 @@ int gdb_signal_to_target(int sig) =20 bool gdb_supports_guest_debug(void) { - const AccelOpsClass *ops =3D cpus_get_accel(); - if (ops->supports_guest_debug) { - return ops->supports_guest_debug(); + AccelState *accel =3D current_accel(); + AccelClass *acc =3D ACCEL_GET_CLASS(accel); + if (acc->supports_guest_debug) { + return acc->supports_guest_debug(accel); } return false; } diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 6551cf1bed1..3fb0b49df8a 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -2343,7 +2343,7 @@ void hvf_arch_update_guest_debug(CPUState *cpu) hvf_arch_set_traps(cpu); } =20 -bool hvf_arch_supports_guest_debug(void) +bool hvf_arch_supports_guest_debug(AccelState *as) { return true; } diff --git a/target/i386/hvf/hvf.c b/target/i386/hvf/hvf.c index 28484496710..bcf30662bec 100644 --- a/target/i386/hvf/hvf.c +++ b/target/i386/hvf/hvf.c @@ -1024,7 +1024,7 @@ void hvf_arch_update_guest_debug(CPUState *cpu) { } =20 -bool hvf_arch_supports_guest_debug(void) +bool hvf_arch_supports_guest_debug(AccelState *as) { return false; } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380959; cv=none; d=zohomail.com; s=zohoarc; b=GivBN6om3f1LoGrV2fOyoifmD9nHRlsM4bcXTpDoyrxbZrL8XgPdRa6mj0Wjy+FMtk49q79BfQ3datvOekYr+CZOqNIPbose6AQEPC+1xzTu7lL+tAJjewjvMt1B6bX1+494BulHTYEy3R8CLvZWFw1HpKKdO7C5G8TmQQ2ZyH8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380959; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=cvHH8ESXc2uoylBtlyeI37L8kgeEqdtaN6TEVZK1w0Q=; b=TNCEIZ1IzRsrOjOEBI7nQ22Hy/5uO/MvjAe0NxHFucR0B5egKXTllo3/EFhgRCMbyk4iTwUbDonwRShL47mrOciSiJgagjGcNJJxLHKBcNhqvykbrfrjCnp0/VyW937skLz4aUnylB0PIRKF6bN7rEQXy5uNEAubHIh3p/s2T7Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380959034102.38460847262195; Tue, 1 Jul 2025 07:42:39 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBd-0007hl-Gv; Tue, 01 Jul 2025 10:42:20 -0400 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 1uWcBU-0007Yf-MJ for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:09 -0400 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 1uWcBN-0006xk-Eq for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:08 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-4537fdec39fso10931255e9.0 for ; Tue, 01 Jul 2025 07:42:00 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a390d05sm171206525e9.2.2025.07.01.07.41.57 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:41:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380919; x=1751985719; 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=cvHH8ESXc2uoylBtlyeI37L8kgeEqdtaN6TEVZK1w0Q=; b=m5e8R6kogPLxePOEQmuF2Te8CiUMMCLbydjRbN/8vySBemYUZFmobxeNvhMajS3wRa rZuWOy0scgEeQy3vSz48myRZHUtVFE1c7/kROSy8qKFsSGmIek/Af0lKTwBjybo3W6Py mO6kA1Di3X+jNNbAL/OEkbhZKD7I+VImQzGQmijfRaRKzlwn4MYXroe59nLTbed3rAgJ gEcMoBo4aX+qzxIF6hdSziUnwLMUUieNRDXNIaZgoj5nQyk42E/MQXtUPQmVDSa61s8a mhvBhbFMiVX4o8azFgsSSLYuXnfODuv9H3onDHFqDAO8l57uS9jSjSzyzIXjMljm+K0D KHMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380919; x=1751985719; 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=cvHH8ESXc2uoylBtlyeI37L8kgeEqdtaN6TEVZK1w0Q=; b=UoVQNX0EnF/UB7UKGWiUhVI2sZoJIUoUxmugu8xv3yyUoYjszuSdkSP3PUE5SS0P8H SBYx3VVPaSA/kimPdHiDo9WiqrOBPuWsznJZ34uTeOYb9Zmso6C32LoylRzFT1tFs48A zX09TzwFND/vTSCxYiiStCGEoULX0KyQRbr6Zg0S5sYrf+DQ9VWOuGyJ4wwwj5IO+kpJ +VztDDhG8GoHqoG/dkUwKaUHs/rRdRLwHnhiMSuN08o/rVyRyIeJO0TTskF/75GdVoRl PxoKo/VubmluN7JcaTC4iKRJGfn4fDh8YBIK8cHcLdBmv+Qn1D3iYuz4yQXKyX5NgWi+ dpeg== X-Gm-Message-State: AOJu0YzydTGvLMmhq4RACzdT6RCFTL1kCiYAw12s5KuSP1JjhB3GXrkR xvIWRSKiTuddt1ua/2PWJpVARRL1XS5w9f7055sDH5bhjqRzJwRForxtYudc62HmXYOHfYoEiy0 VKyZn X-Gm-Gg: ASbGnctkO4GhV63DuogR2ITLEFvCJmB9gtMnwKcTJBItaku5X5CBI3MNcGFt7jP6yEU cSQqmP9+CJUSIZ7y4FzWlW9f5kTrpMujv6H2eLwTe430WBViZv6g8lqm5+c1AvsS7vilMoup8Ps 4opr1hwBdoFXLj65UwMCbyGttYfTO7zMh3rAlS8xN5IGls6mj33fLQ/zTNuR6kSoz2SfFS+tBBp dOaHXLlqERrQhsi+6ix/1EBEDh/itw8BEwtBA2J1+J+71iYvvjpZAAcIzlmXVzEh2nrmCxMZeb5 0Lmu4yHbk8drYi1KV09LnZlraI2fXkbQFnhG9wDIGYkv5DGlunHMoPovHF/BSkI/t4BjND1FTLn QZ9S5G4URYcG+tqYVmkqqU1Nsb0WpW9RM5YFK X-Google-Smtp-Source: AGHT+IFCMGCDC5yCCcpPerktcRBDOt41gxQp9SoBmaN7qcSKYlHNtmUTG1RzcHCDZ/u7iUrRs0rRJg== X-Received: by 2002:a05:600c:138b:b0:450:d4a6:79ad with SMTP id 5b1f17b1804b1-4538ee6e564mr170459015e9.23.1751380918941; Tue, 01 Jul 2025 07:41:58 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 18/68] accel: Move cpus_are_resettable() declaration to AccelClass Date: Tue, 1 Jul 2025 16:39:26 +0200 Message-ID: <20250701144017.43487-19-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380961248116600 AccelOpsClass is for methods dealing with vCPUs. When only dealing with AccelState, AccelClass is sufficient. Move cpus_are_resettable() declaration to accel/accel-system.c. In order to have AccelClass methods instrospect their state, we need to pass AccelState by argument. Adapt KVM handler. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 1 + include/system/accel-ops.h | 1 - accel/accel-system.c | 10 ++++++++++ accel/kvm/kvm-accel-ops.c | 6 ------ accel/kvm/kvm-all.c | 6 ++++++ system/cpus.c | 8 -------- 6 files changed, 17 insertions(+), 15 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index c6fe8dc3913..3c6350d6d63 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -48,6 +48,7 @@ typedef struct AccelClass { void (*setup_post)(AccelState *as); bool (*has_memory)(AccelState *accel, AddressSpace *as, hwaddr start_addr, hwaddr size); + bool (*cpus_are_resettable)(AccelState *as); =20 /* gdbstub related hooks */ bool (*supports_guest_debug)(AccelState *as); diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 51faf47ac69..d854b84a66a 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -34,7 +34,6 @@ struct AccelOpsClass { /* initialization function called when accel is chosen */ void (*ops_init)(AccelClass *ac); =20 - bool (*cpus_are_resettable)(void); bool (*cpu_target_realize)(CPUState *cpu, Error **errp); void (*cpu_reset_hold)(CPUState *cpu); =20 diff --git a/accel/accel-system.c b/accel/accel-system.c index af713cc9024..637e2390f35 100644 --- a/accel/accel-system.c +++ b/accel/accel-system.c @@ -62,6 +62,16 @@ void accel_setup_post(MachineState *ms) } } =20 +bool cpus_are_resettable(void) +{ + AccelState *accel =3D current_accel(); + AccelClass *acc =3D ACCEL_GET_CLASS(accel); + if (acc->cpus_are_resettable) { + return acc->cpus_are_resettable(accel); + } + return true; +} + /* initialize the arch-independent accel operation interfaces */ void accel_init_ops_interfaces(AccelClass *ac) { diff --git a/accel/kvm/kvm-accel-ops.c b/accel/kvm/kvm-accel-ops.c index e5c15449aa6..be960bde5c4 100644 --- a/accel/kvm/kvm-accel-ops.c +++ b/accel/kvm/kvm-accel-ops.c @@ -78,11 +78,6 @@ static bool kvm_vcpu_thread_is_idle(CPUState *cpu) return !kvm_halt_in_kernel(); } =20 -static bool kvm_cpus_are_resettable(void) -{ - return !kvm_enabled() || !kvm_state->guest_state_protected; -} - #ifdef TARGET_KVM_HAVE_GUEST_DEBUG static int kvm_update_guest_debug_ops(CPUState *cpu) { @@ -96,7 +91,6 @@ static void kvm_accel_ops_class_init(ObjectClass *oc, con= st void *data) =20 ops->create_vcpu_thread =3D kvm_start_vcpu_thread; ops->cpu_thread_is_idle =3D kvm_vcpu_thread_is_idle; - ops->cpus_are_resettable =3D kvm_cpus_are_resettable; ops->synchronize_post_reset =3D kvm_cpu_synchronize_post_reset; ops->synchronize_post_init =3D kvm_cpu_synchronize_post_init; ops->synchronize_state =3D kvm_cpu_synchronize_state; diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index 5cd38d536cf..f29e5c4eed4 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -3974,6 +3974,11 @@ static void kvm_accel_instance_init(Object *obj) s->msr_energy.enable =3D false; } =20 +static bool kvm_cpus_are_resettable(AccelState *as) +{ + return !kvm_enabled() || !kvm_state->guest_state_protected; +} + /** * kvm_gdbstub_sstep_flags(): * @@ -3992,6 +3997,7 @@ static void kvm_accel_class_init(ObjectClass *oc, con= st void *data) ac->init_machine =3D kvm_init; ac->has_memory =3D kvm_accel_has_memory; ac->allowed =3D &kvm_allowed; + ac->cpus_are_resettable =3D kvm_cpus_are_resettable; ac->gdbstub_supported_sstep_flags =3D kvm_gdbstub_sstep_flags; =20 object_class_property_add(oc, "kernel-irqchip", "on|off|split", diff --git a/system/cpus.c b/system/cpus.c index a43e0e4e796..4fb764ac880 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -195,14 +195,6 @@ void cpu_synchronize_pre_loadvm(CPUState *cpu) } } =20 -bool cpus_are_resettable(void) -{ - if (cpus_accel->cpus_are_resettable) { - return cpus_accel->cpus_are_resettable(); - } - return true; -} - void cpu_exec_reset_hold(CPUState *cpu) { if (cpus_accel->cpu_reset_hold) { --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381369; cv=none; d=zohomail.com; s=zohoarc; b=McDZV4GuCmgh+4eo2JK84zfsq5HG/d4/rMTCvqupEmnYDhxc0U7pdewBQcbYMX8GJqzyWXB2Ai2/q8Sz6if+blQUj1tF30rGRY8/SCtRrUXI7gbg0ZmJ4MJJ0vwspSprV01SW3Sw7FuZG6nIuUFiHhDwT5gJiGHWPN88raeCuD4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381369; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=LFRxRvBg/Kw+lCEJUMnsPGlqNMegEysmKneUwCu7PxI=; b=nh/nle7qwtREC5A9c8j9NDis2ExZnVyA4UyYSy86i4cXL0k4c/HbmmQx7afzITSj3vTaKMmju/mj6fwXVg2faIMGskrRViZW9D04RWQnqyZ+fJZSM9du28c0nvmuMzpxjYhyj9BzOYLvu4ups6jQ2YYSXi6SJ6yGJ+uMcv1VHuM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381369773699.1789039147868; Tue, 1 Jul 2025 07:49:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcBj-0007tf-CN; Tue, 01 Jul 2025 10:42:23 -0400 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 1uWcBX-0007eC-I5 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:12 -0400 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 1uWcBU-0006y4-Ci for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:11 -0400 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-3a503d9ef59so2661717f8f.3 for ; Tue, 01 Jul 2025 07:42:07 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7ec6aesm13453631f8f.5.2025.07.01.07.42.02 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380924; x=1751985724; 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=LFRxRvBg/Kw+lCEJUMnsPGlqNMegEysmKneUwCu7PxI=; b=t64ScGOKqx7l/2Z3n6TxcfqOIWjiaUOEVOeCw611W05tYQn1y9MnbiRbX/NjZ8V0GX UDld39GOOf5BUDJvyVH9KLnddpUMfxPKOTkKYw7jlRGCc8nw4ekhqMc9JtQm7LQpt+8N nuqZ1hejEC+KY2JYKwMRYDhRStuggxAu/kP7+fv/TQvFZ8e9VDGsiADQ4pZj8bnsLAZn rle1whYJMRAR06iv9oVABKYWp4hyiN4XL1BsZRjutcMM9Fd47BI1p7evwQ2PZUbKJCHO VOaP9shzzQU7BoGyDpR+P4UaIxY9mNs7WbeWT3L5dsdeQP1BgblL7xaU/url+PkPcC1w ldKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380925; x=1751985725; 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=LFRxRvBg/Kw+lCEJUMnsPGlqNMegEysmKneUwCu7PxI=; b=oS04UYgtfRv/gDKEI7FElV2bJI8BVRE2kDHzydxmBX+NFywZBkn/DjZIDbZpuyqEaD d5EA0xgsWCp5m5iW0iHZfqUzj/t9ukS/KrQz+/vFgC/6sJwPmBPcK27tp5icsG1Nd29+ gwMCovoXUNZtx0FKFiuLScB/+IUx4DhQaOYP3o8RDWDmanlYlzrywbQzEODmMpKuIXLV lNDPkpKfyVGlbOjvgj0JRrR88Fh6/renLP2ktXd+UDcWw2Txt1NWv4up9ezcUyhJOMUV 25UMJWPEDXvBHWCPtb21IEmgz01IJiSiFxrd7PgBtnbaDDbQV+J0VD4NEYOdXuTKP6rd RYXg== X-Gm-Message-State: AOJu0Ywvb8swZuuy5aX8iJWGMS+1QF8XezBaS2+5M2xYvWDFTOfi2bpX w2WKg0E+qEKa/37bt8O9wNQxPhcAPgQCtxnKxbQyeApybuWybOKR0Mh8EmPyQHZrcPWQ8Ux6nmt miqG9 X-Gm-Gg: ASbGncvVyz/UlWUlTQl6N6xN8yVQ++xDG9GK4KKGQ8+6RZz/8UGeF4u8nxyDeqCXK1D 6EEYwrcs4mXL/OzJzJq0LcOy7yGP0x8WIIZxQwPGaiMoKBqL/VomGneqdXO/WDD+W4cmQThFI22 QMvrx1cukt27iFbalJpHMi6IlZv9zLg/dm6O2VJGMbGB+Ci7AS3sg0kfY5zrjD5vUSgoufFCvNW qsx7xkdHF7Ou1UHE+DK9rxGBXGHW8m2wluTx07GeEbGNSaZ5Lj2+aRWeBxLYmCIGYI9Kk6CJpUm rbIxfVaWM3ik8+t1lSlKTzD0a/P6I+NN8H87SgfLYtWWNn8/nSVakbhpS4CV2D6BQzqwE83XdBm cFen9Cp5akdtV0jHoWm2JTxvZspC/zYEpKILM X-Google-Smtp-Source: AGHT+IF93A9KwT/lUdcnOGKDkHe1rS81T1pd/gHS1KwzdA1SIql09KPq0erhR6pRIH+B1EWZ+HdpYg== X-Received: by 2002:a5d:5849:0:b0:3a5:8934:4940 with SMTP id ffacd0b85a97d-3a8feb70269mr15510902f8f.50.1751380924437; Tue, 01 Jul 2025 07:42:04 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 19/68] accel: Move cpu_common_[un]realize() declarations to AccelOpsClass Date: Tue, 1 Jul 2025 16:39:27 +0200 Message-ID: <20250701144017.43487-20-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381370658116600 AccelClass is for methods dealing with AccelState. When dealing with vCPUs, we want AccelOpsClass. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 2 -- include/system/accel-ops.h | 2 ++ accel/accel-common.c | 10 ++++++---- accel/tcg/tcg-accel-ops.c | 3 +++ accel/tcg/tcg-all.c | 2 -- 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index 3c6350d6d63..518c99ab643 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -41,8 +41,6 @@ typedef struct AccelClass { AccelOpsClass *ops; =20 int (*init_machine)(AccelState *as, MachineState *ms); - bool (*cpu_common_realize)(CPUState *cpu, Error **errp); - void (*cpu_common_unrealize)(CPUState *cpu); =20 /* system related hooks */ void (*setup_post)(AccelState *as); diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index d854b84a66a..fb199dc78f0 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -34,6 +34,8 @@ struct AccelOpsClass { /* initialization function called when accel is chosen */ void (*ops_init)(AccelClass *ac); =20 + bool (*cpu_common_realize)(CPUState *cpu, Error **errp); + void (*cpu_common_unrealize)(CPUState *cpu); bool (*cpu_target_realize)(CPUState *cpu, Error **errp); void (*cpu_reset_hold)(CPUState *cpu); =20 diff --git a/accel/accel-common.c b/accel/accel-common.c index 1d04610f55e..d1a5f3ca3df 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -102,10 +102,12 @@ bool accel_cpu_common_realize(CPUState *cpu, Error **= errp) } =20 /* generic realization */ - if (acc->cpu_common_realize && !acc->cpu_common_realize(cpu, errp)) { + if (acc->ops->cpu_common_realize + && !acc->ops->cpu_common_realize(cpu, errp)) { return false; } - if (acc->ops->cpu_target_realize && !acc->ops->cpu_target_realize(cpu,= errp)) { + if (acc->ops->cpu_target_realize + && !acc->ops->cpu_target_realize(cpu, errp)) { return false; } =20 @@ -118,8 +120,8 @@ void accel_cpu_common_unrealize(CPUState *cpu) AccelClass *acc =3D ACCEL_GET_CLASS(accel); =20 /* generic unrealization */ - if (acc->cpu_common_unrealize) { - acc->cpu_common_unrealize(cpu); + if (acc->ops->cpu_common_unrealize) { + acc->ops->cpu_common_unrealize(cpu); } } =20 diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 07b1ec4ea50..95ff451c148 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -46,6 +46,7 @@ #include "tcg-accel-ops-mttcg.h" #include "tcg-accel-ops-rr.h" #include "tcg-accel-ops-icount.h" +#include "internal-common.h" =20 /* common functionality among all TCG variants */ =20 @@ -212,6 +213,8 @@ static void tcg_accel_ops_init(AccelClass *ac) } } =20 + ops->cpu_common_realize =3D tcg_exec_realizefn; + ops->cpu_common_unrealize =3D tcg_exec_unrealizefn; ops->cpu_reset_hold =3D tcg_cpu_reset_hold; ops->insert_breakpoint =3D tcg_insert_breakpoint; ops->remove_breakpoint =3D tcg_remove_breakpoint; diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index 93972bc0919..ae83ca0bd10 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -244,8 +244,6 @@ static void tcg_accel_class_init(ObjectClass *oc, const= void *data) AccelClass *ac =3D ACCEL_CLASS(oc); ac->name =3D "tcg"; ac->init_machine =3D tcg_init_machine; - ac->cpu_common_realize =3D tcg_exec_realizefn; - ac->cpu_common_unrealize =3D tcg_exec_unrealizefn; ac->allowed =3D &tcg_allowed; ac->supports_guest_debug =3D tcg_supports_guest_debug; ac->gdbstub_supported_sstep_flags =3D tcg_gdbstub_supported_sstep_flag= s; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381189; cv=none; d=zohomail.com; s=zohoarc; b=ZJtq4PzV82nhJFLRaldgOAhs4miR54rE37dd3eF6Jv2N0XSkx4FHU4FTAO5QpbmFglP0TOOdhwZAcpmaFbC/wkfraMNiplciru/yLj85b3lqL3gKQfGkOdG1/JEmiXXHZGENEiJUJ109LisYN2eLRz0Nlc1UV8LLfl/RtpgTB64= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381189; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=axJArW7R6hoHyM0cZ+bFREhZztYbwYGa0vAn/8d4yVk=; b=PFbDZP30PNl49yXJrrc4pNrQvBFrPyXm7aLl4Pkf3Rf7v72Wr+TtGuLOhX/ZoGbwcKIo3w1UlIvN4aU3KGuZBiTr02j+s3SPCoW5+uTvi2j4dN0kU09TyqYoPefq1rGvkN6gfnBreJDbAVsUONkIJTP26MELtIh9L4qELvKvuRs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381188989313.25874930030295; Tue, 1 Jul 2025 07:46:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcC7-000058-Fo; Tue, 01 Jul 2025 10:42:47 -0400 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 1uWcBr-0008JB-Kk for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:33 -0400 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 1uWcBe-0006yo-3Y for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:25 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-450ce671a08so22563115e9.3 for ; Tue, 01 Jul 2025 07:42:12 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3fe592sm164217925e9.21.2025.07.01.07.42.08 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380930; x=1751985730; 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=axJArW7R6hoHyM0cZ+bFREhZztYbwYGa0vAn/8d4yVk=; b=ddBPGMpJjRoa52iNEgp0I54wHuKlov9N5SdxnxWMvsRhaoXnPgOJm+k0AIrod2rHjW D3Uz9ucHwPLhPN3E8xA2wePR0Ikp8t9QbFYDHXJn33Yr7L5Of9VJ3mCZ6TwuNgYEDtrp 3q1JlKvA4Lg2J8J9JG8lyO2Sufog8zFWZYPs8nUwIfL+zLDtTnGMRrcmK5MCAWN7aBsQ wl5EmHOz7PGAq6sHrjpBAu+Rhhy/lE+nk67BnzwY5Bs4dN0z0t6GO0uOZB/rCcbZHv9g Bt4GH48yIiB+4k2/4+Hz/Shlf3uR4pct50iRazVWL5sLaUu4bpTLu8GF2hRtr+vqSp9o A09Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380930; x=1751985730; 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=axJArW7R6hoHyM0cZ+bFREhZztYbwYGa0vAn/8d4yVk=; b=oHwKRa6DqXzBV1spNlYDW4QIGZrg1aBJYEvGWVtBbM9gHEbTqIFMnT0w6hqwoN0eTb W+3Nf2+cYZkJKwRrvQ4WLTGkk3pvel2ZiZZv7ze1GsE3AQtLERKXDWmTuI5TZutrEFe5 z55ydqHV32mFcmzNBRRPRgeha+41A6K9zIXexvmLyYpoSdOLAOjr8zl4y7siUu+UvPST +yhHFiNnXDCSng+1djcs8dRWNtZAgJgrg+K8jYNQCVeiD/7k8MNz0Vt8GLCngIdiy53x ClaFt/xTLBa1nfPaKzxqLh3t0kuecSKsDGcnYmwrpHO7DQEnOu+95wmCkqIA0K/VXMZz g8Ng== X-Gm-Message-State: AOJu0YzkBUacbFTFFIsrANuDWygU8jLxqfgczN20RfZkM9qXBHApkHB7 bIYfFz9xDjR7Kgs3oqaGXK5rUjprCyI+oZMY+DolrJAdopDML4GnZFxHZRzMNK5cJiGSHM3vUin hGFBd X-Gm-Gg: ASbGnctamQXvP3UGclRnJn+PqD3PdGBwPuW2iI0mANws6jDVnDh+TCTtQ2QUGkvRYSx BGfqT1eABbSQoBfnMPDbUkWTRYs0sw6MKBJc1SwgBiRpKZ4SbfE8zlyrTcgetRZalD74cdCAyor 2DtIvXi9FsnF1+bPZPuC5rhOzpfoRdEKC/BuLOKE0Rt/hZ6DUFjqXjejsTw7PAyRscto/jIHDY1 U8/tHK641HcPP4T9ixe/odThR2015UViAP4PCZ1HMlvaP3FwWkePrAZ8lHdVqmgP+OipCluINR3 BdHiD4J5cgRo1m1hPDwfDx0/iG0TZgN7aIDsrAAVjcQsLeer6ex9b3iKIH03WhKGzjGjOdKXO3b 5E3Z2YyC/wuuzZOc59MiMKsPZDLnaeHAFc8k8 X-Google-Smtp-Source: AGHT+IGOED0ImNa5ldjUFK5Zrb55YA5GMnIZJ6zfdkIvh7Q7j7YNibEgUM3rgWPHtSZPSq5MA4Ea2A== X-Received: by 2002:a05:600c:138d:b0:442:f482:c429 with SMTP id 5b1f17b1804b1-453a84069b7mr34476825e9.8.1751380930116; Tue, 01 Jul 2025 07:42:10 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 20/68] accel/system: Introduce AccelClass::pre_resume_vm() handler Date: Tue, 1 Jul 2025 16:39:28 +0200 Message-ID: <20250701144017.43487-21-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381190668116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 3 +++ accel/accel-system.c | 9 +++++++++ system/cpus.c | 1 + 3 files changed, 13 insertions(+) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index 518c99ab643..065de80a87b 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -47,6 +47,7 @@ typedef struct AccelClass { bool (*has_memory)(AccelState *accel, AddressSpace *as, hwaddr start_addr, hwaddr size); bool (*cpus_are_resettable)(AccelState *as); + void (*pre_resume_vm)(AccelState *as, bool step_pending); =20 /* gdbstub related hooks */ bool (*supports_guest_debug)(AccelState *as); @@ -86,6 +87,8 @@ int accel_init_machine(AccelState *accel, MachineState *m= s); /* Called just before os_setup_post (ie just before drop OS privs) */ void accel_setup_post(MachineState *ms); =20 +void accel_pre_resume(MachineState *ms, bool step_pending); + /** * accel_cpu_instance_init: * @cpu: The CPU that needs to do accel-specific object initializations. diff --git a/accel/accel-system.c b/accel/accel-system.c index 637e2390f35..11ba8e24d60 100644 --- a/accel/accel-system.c +++ b/accel/accel-system.c @@ -62,6 +62,15 @@ void accel_setup_post(MachineState *ms) } } =20 +void accel_pre_resume(MachineState *ms, bool step_pending) +{ + AccelState *accel =3D ms->accelerator; + AccelClass *acc =3D ACCEL_GET_CLASS(accel); + if (acc->pre_resume_vm) { + acc->pre_resume_vm(accel, step_pending); + } +} + bool cpus_are_resettable(void) { AccelState *accel =3D current_accel(); diff --git a/system/cpus.c b/system/cpus.c index 4fb764ac880..98ae8b1e271 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -765,6 +765,7 @@ int vm_prepare_start(bool step_pending) if (cpus_accel->synchronize_pre_resume) { cpus_accel->synchronize_pre_resume(step_pending); } + accel_pre_resume(MACHINE(qdev_get_machine()), step_pending); =20 /* We are sending this now, but the CPUs will be resumed shortly later= */ qapi_event_send_resume(); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381005; cv=none; d=zohomail.com; s=zohoarc; b=SDwc8rIJr9l2RoaaXltpFXVQyBMvGTmqoK8LVHAIkbojvfsCezuknPgIApQMp7S2P9Ubd5LokHo5rDQQlyi+vhclmgaIgfB0bUkJvxUdugxjWlkB0umi1HTQqR3Heq7kBJQcPcxF9MT86c0wjEWQaZ+fpFZKIPBZID/TfXGcHQY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381005; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zIAleiBBdRo51bhet36WmYxY2vl2Zoe+P6XPtSaFgX0=; b=ND3p3BhWin4vKviVgtopQ2nS1Mas0vx5M/MW8TYiisqFKl4ZWHVQaCCBPP9LXd2M1hZaghOQLxn5imNBOpJwpgJijoD3pspItc8zQoFRnJ2/mCgmFDwn81rhodA8/ruY16U6tZGlySFcYm2/G3vwXKzw6wO4KTER8Pjv1yK3+3w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175138100525876.73375801376494; Tue, 1 Jul 2025 07:43:25 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCI-0000a2-Fo; Tue, 01 Jul 2025 10:42:58 -0400 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 1uWcBs-0008JA-IE for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:33 -0400 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcBe-0006zL-Bk for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:24 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-451dbe494d6so36151575e9.1 for ; Tue, 01 Jul 2025 07:42:17 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823c3c7csm197370415e9.36.2025.07.01.07.42.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380935; x=1751985735; 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=zIAleiBBdRo51bhet36WmYxY2vl2Zoe+P6XPtSaFgX0=; b=yliDx/ND+KBI6+oroVo5sy3tzUC2ymx8kSrRck2bXw51oS6ZckAyFvaBOeNtEEnPO2 QAaeYJtjc5vqQgcgBNk+z5E+VJFArGbSNWM3rjn2eVp4zuCnM+NR2XHqHaWPBFj76ceQ eaAfYXTNwbBAwewVYYGi1rhcxHt14wFrNDKNfvVlqDRcv7rNtb5nlX/vDEQpzqI4S1Dx hBAWTKv3PSVaXBOLeNqa8EGKGn45aJch6YEwUYFQC8g6DhhxmAEb5tJStTO87CNBa9y4 g3/a31HM3gfFRTHmdd2Ya30zLQQHpXqsfDFTvuKA19tXSrw9HZSGhHORbmFRJBjX4XAP v/GQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380935; x=1751985735; 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=zIAleiBBdRo51bhet36WmYxY2vl2Zoe+P6XPtSaFgX0=; b=Z5Yltp8KcANV0hylllk8H/uYg/YeJUklcKUJUzosY7f6maBDFjDlXhKYXXb9JzwN5P hcbzrprSBBaQD8jzaS3d328FwMwGXYqbuWMyvjugsJQfZ5JQhLDudXeITZfPeJyYtfRf Z2rvrcmF5r0FgFE0Ih45SdWwMnP3AFfYjh9rPBo7xfrBZpwbcG6Qte+apwdUzquif1vI zn+B8XQon765TcQPAjEkDvgV4gpRrRhWuCpOVEQW8o+T6Lm/1Z0qYT1uMNFkMt6d1Ppc fJoVPZB9NtZhYzxvGJjMqHLec/4r/fcoaNgOfVZ7sVCXhbvoIJSyQtWXyGDrAZIQ+TPI zSaQ== X-Gm-Message-State: AOJu0YzQ2KMQdizl7hDF+ZRaRs+jVSuwlXmwJR84zuEFgTpy7/tFef6s JnbTcnaNMTg1LvtJCFP5c+F3svpIJjLx5IpSIkP7Zn2txjkNkyKHFyCoRLLNsPI7+f5MxJ5QwzN Nsnup X-Gm-Gg: ASbGncvTf+zDGo/ePyQQRbryR7x70/AmGp5V/5EGwbbD0DZ532wSMT16GVjw1tO597c 03NwfhjcLtYPr/t67bmb2A0tawclk6ybeRRC7PiAcMqc24XAwrzonT/xme3J6hxSDKpox4CTq9n LkCSCWvOqrdxfltMzvKDvASdPTGpyIow84r6JqbX4t+PMFsgmMFwWq6dOf9PERqFQcrXfff3JOn IyGd5P9JZqyXk3r4HaVJoM5dUufDSvVOTAL0+q1A1cIx3jJ56tJWzE/9L/GFzRLjxyZyTZDPyfp P5ESUSBpImoKOHa/OkXvHGmJZjjMH5ndUrAuNeySe/Icmb9WQAubQtAsqa9V0um+u4bLlv0Cgnh 0ICn7Y1oH1zHAyqiQRjULMs4R9jbvz92dznBQ X-Google-Smtp-Source: AGHT+IEqQJLJDybRM8jlFo2oCKMQcM90zvhxXi+XeLAeLmth4ftJBkyu/AfzJgqGPSiTkMS0HzU7gw== X-Received: by 2002:a05:600c:4e01:b0:453:6146:1172 with SMTP id 5b1f17b1804b1-4538ee4f7cfmr201697325e9.3.1751380935224; Tue, 01 Jul 2025 07:42:15 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 21/68] accel/whpx: Convert ops::synchronize_pre_resume() -> pre_resume_vm() Date: Tue, 1 Jul 2025 16:39:29 +0200 Message-ID: <20250701144017.43487-22-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381005723116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- target/i386/whpx/whpx-accel-ops.h | 1 - target/i386/whpx/whpx-accel-ops.c | 1 - target/i386/whpx/whpx-all.c | 3 ++- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/target/i386/whpx/whpx-accel-ops.h b/target/i386/whpx/whpx-acce= l-ops.h index e6cf15511d4..54cfc25a147 100644 --- a/target/i386/whpx/whpx-accel-ops.h +++ b/target/i386/whpx/whpx-accel-ops.h @@ -21,7 +21,6 @@ void whpx_cpu_synchronize_state(CPUState *cpu); void whpx_cpu_synchronize_post_reset(CPUState *cpu); void whpx_cpu_synchronize_post_init(CPUState *cpu); void whpx_cpu_synchronize_pre_loadvm(CPUState *cpu); -void whpx_cpu_synchronize_pre_resume(bool step_pending); =20 /* state subset only touched by the VCPU itself during runtime */ #define WHPX_SET_RUNTIME_STATE 1 diff --git a/target/i386/whpx/whpx-accel-ops.c b/target/i386/whpx/whpx-acce= l-ops.c index b8bebe403c9..011810b5e50 100644 --- a/target/i386/whpx/whpx-accel-ops.c +++ b/target/i386/whpx/whpx-accel-ops.c @@ -95,7 +95,6 @@ static void whpx_accel_ops_class_init(ObjectClass *oc, co= nst void *data) ops->synchronize_post_init =3D whpx_cpu_synchronize_post_init; ops->synchronize_state =3D whpx_cpu_synchronize_state; ops->synchronize_pre_loadvm =3D whpx_cpu_synchronize_pre_loadvm; - ops->synchronize_pre_resume =3D whpx_cpu_synchronize_pre_resume; } =20 static const TypeInfo whpx_accel_ops_type =3D { diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index f0be840b7db..821167a2a77 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2106,7 +2106,7 @@ void whpx_cpu_synchronize_pre_loadvm(CPUState *cpu) run_on_cpu(cpu, do_whpx_cpu_synchronize_pre_loadvm, RUN_ON_CPU_NULL); } =20 -void whpx_cpu_synchronize_pre_resume(bool step_pending) +static void whpx_pre_resume_vm(AccelState *as, bool step_pending) { whpx_global.step_pending =3D step_pending; } @@ -2703,6 +2703,7 @@ static void whpx_accel_class_init(ObjectClass *oc, co= nst void *data) AccelClass *ac =3D ACCEL_CLASS(oc); ac->name =3D "WHPX"; ac->init_machine =3D whpx_accel_init; + ac->pre_resume_vm =3D whpx_pre_resume_vm; ac->allowed =3D &whpx_allowed; =20 object_class_property_add(oc, "kernel-irqchip", "on|off|split", --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751380998; cv=none; d=zohomail.com; s=zohoarc; b=C7UY0BC0gGcNAIFuYifdkdydbdZjeUa2P5VGdgcJy3NaH6n7NTMLWChqud7NaL3DKSjFmvKucUdyRwQM73N07Qs2Z8bOxtNfdWwGUWViMcq2ueYRs00PYgGO5oFdK/f1YhhauYAmJRmxGV3ULtt2kFcnSzkOAWEx/50cd/cm8y8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751380998; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=p7czh0UpphEfhU1XJFzgghIJVXGp1wbIMbp91nI0b7w=; b=f2fttZDhIUOSeO7DoP2KaxRo6+I4yB+aHDre9FxGJICJzQ4JAaWFKBPHR+nG5fFTWuL3eMFh+hNfRfWwcF0w733uA798njXJ0yBjojxETXCAAwPvRakxAGt2p5DFy5RUHUkQhh8VrFre0Cidac0sQhSERhMOLYiRjNhb1wrhtUg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751380998391124.21287708916248; Tue, 1 Jul 2025 07:43:18 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCE-0000PE-3G; Tue, 01 Jul 2025 10:42:54 -0400 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 1uWcBx-0008Rx-JI for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:41 -0400 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 1uWcBq-0006zf-BU for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:37 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-453749af004so31491235e9.1 for ; Tue, 01 Jul 2025 07:42:23 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a421434sm170100685e9.37.2025.07.01.07.42.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380940; x=1751985740; 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=p7czh0UpphEfhU1XJFzgghIJVXGp1wbIMbp91nI0b7w=; b=XsctoRyMwRFjWe3WM7goYqxQzyhGek9HTy1oxfV2w5OQJriEre0+3ZjnycfuE0F1fW 97y6UPytE001wPJvLytawN+/urCte64SAhTs0ufx/XPXvPkAIUQTR+Em43o09nKcVzvy Jc6vx5L0Z80eDbhe7JTqidu8NxqYfaeivR/kr6PPEYdqP1mO4gP3b2ctP6fER/Epkuee Cn4sQq93q2MomQWGpvJ1InX3X3BGrbzwhIIm7SA5/To9xNYaUki1wWsdstR0JiExW0fK tuQ27C1fSK2CuCAHETUderkcEC129qii6Vtlc+VKRmyjGwD4oUgUJnObtV72Dxx1f2Zo qNpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380940; x=1751985740; 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=p7czh0UpphEfhU1XJFzgghIJVXGp1wbIMbp91nI0b7w=; b=S50WfZBDiv9Vd0/vLevGHRB5Tjpwa7wdLVmVXzsQ9MrENLXs/LXp2LfCbUaU8fPrr0 vwv0Kz9U6C9IJO51dKzEywmtQUA19rSwDDQ1glxgISokH43E/2fZAbpV+wQBUS/llVxz dQWBmQTqPTxyfhMiadG6KQbBLhbDOIVXdROoA5Opwym8VwVshmjTdtZp+fEY8If8O78T lRWgRgPZOv3Df7JufOJfLpZgOXy8qN+CcOKYWzT59QDla6FmJqS/bxIVvfnoVnGPwjlc Wjq1z7prq+CyVf3kKEy1jfKPLPrCRrvmH3SOh7w2/sKVrZPmlMgzxs6ufJqMjoeztepT TwDA== X-Gm-Message-State: AOJu0YziStm9AdONqkQIjz2aTa5WQIdjRr8GAqRtiMBv4ruUeFl5sfzr 5fZsstgStHSXEJ12uIh4uT1mi1kdLqu/HM2U1eBJUySRheKGct2Jb+/zkT6ZWvS/PgdfAa524rq JDi5V X-Gm-Gg: ASbGncsOB3bWC0Ub/728eFPmMWOi1gKnKswE5CoWkWXA++cl978ca1yT9K5mV+O5fBV 7KAz5UeeiK+uHfZSEdXyohO2sYF7VKH5STKuL7Oi82WQDSjg07nqkrNlP23d4UUpG8VBVKa0+z9 P6+x6ntDbi3zdFnMcqTu+M1QCFBdst8MWfXKpP8vg5oIVT2HkK5isBAcDdb+MorL8UY/Xa6gRPp ZcrDrwbaAvxMIsPW1kG4mIz5t6OOHbbKafDY16xMoZOPLcJtkVAbz06ZoVSn8tpbKgjjW1RYSbF 3eT2fBJKG9R0+xgyDLsWJ0ED7TCcLM98qpjmBcbYNwQLAlwGguDF++OIUxAM02YsUU/UC5PcTgF +nrF4+XsX4yprzZ0iAdQo8jXCJQHhsLTJ1WOT X-Google-Smtp-Source: AGHT+IGTmEw5CpiuoqoKCuB4ef1Buqx1fcm/24fB8+6JKolsDHnB1MyExyLovfIzA/p2FNXlI3PuXQ== X-Received: by 2002:a05:600c:138d:b0:442:f97f:8174 with SMTP id 5b1f17b1804b1-45394de29aamr153470745e9.18.1751380940355; Tue, 01 Jul 2025 07:42:20 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 22/68] accel/system: Remove AccelOpsClass::synchronize_pre_resume() Date: Tue, 1 Jul 2025 16:39:30 +0200 Message-ID: <20250701144017.43487-23-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751380999658116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/system/accel-ops.h | 1 - system/cpus.c | 3 --- 2 files changed, 4 deletions(-) diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index fb199dc78f0..af54302409c 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -47,7 +47,6 @@ struct AccelOpsClass { void (*synchronize_post_init)(CPUState *cpu); void (*synchronize_state)(CPUState *cpu); void (*synchronize_pre_loadvm)(CPUState *cpu); - void (*synchronize_pre_resume)(bool step_pending); =20 void (*handle_interrupt)(CPUState *cpu, int mask); =20 diff --git a/system/cpus.c b/system/cpus.c index 98ae8b1e271..2c3759ea9be 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -762,9 +762,6 @@ int vm_prepare_start(bool step_pending) * WHPX accelerator needs to know whether we are going to step * any CPUs, before starting the first one. */ - if (cpus_accel->synchronize_pre_resume) { - cpus_accel->synchronize_pre_resume(step_pending); - } accel_pre_resume(MACHINE(qdev_get_machine()), step_pending); =20 /* We are sending this now, but the CPUs will be resumed shortly later= */ --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381977; cv=none; d=zohomail.com; s=zohoarc; b=nG3dRmFrsIOl1sKHG/c/e9beagjK+hqq43e/7C9jOvtaozeOo85yTxRcqMdIy+Ktw23iJLyEOyASli7MxbHBlA5ZjudB8CrDbniMaFJeVl+Ly2ElSejcqRJcfRBRvYZ9racUC3IAIJy5P3D1P67OLe5iyp4b9QQu/96BXwdsDZI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381977; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=I1OZb9Kl+4lZDh9KBCT1cYYDblubQbpp2G1iwduVoYo=; b=oJAGctiaxrkIKZX8Jg/56cYbQtYVPQlVcQiaINYcoAZDwTmcEBmz14gg5b7O/OtSF7d4ugNGcHiXwWgEOBFv8KNrmUU4oMQrnVCQSZozb6MVwja0WvMrpKKUj4kRe2LtJJlJKvRV3OaV7uXnQhDvXauG4Z59rjaipyXhaQ/+ISw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381977115991.3346448730726; Tue, 1 Jul 2025 07:59:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCA-0000HI-JE; Tue, 01 Jul 2025 10:42:52 -0400 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 1uWcBz-0008Tw-NN for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:45 -0400 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcBr-00070B-FM for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:39 -0400 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-4538a2fc7ffso38407325e9.0 for ; Tue, 01 Jul 2025 07:42:28 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3a5b7fsm171981125e9.10.2025.07.01.07.42.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380946; x=1751985746; 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=I1OZb9Kl+4lZDh9KBCT1cYYDblubQbpp2G1iwduVoYo=; b=yr2+/lOVXhTqJE4qC820cQwa+1L9AsYe2l5JvIoiddhGaq9IM9bZuQ5RxH4sqOiUs2 CpO+t7euRwzVtTInlWq+TXbQ2cURTU9EjxP0qoA4SGhuo10+AULaZGnKfyrVL2fkyiAg oHNJRFAjJpmpSIIP7pkCfREnuamWBgNoE3aSRLDbSO1pKA4FWKv8BhEDoadVGSkyElHN boBxrvLEs9xyVyF0XOtn7c193/A8qV0myfz5LeYcGFPDl0TLZN4vO0hnGZsmvqcO9GBv sUCIJBEkKevstbkv2G1xls7C5SOET4pckv4ew32QMEPRj22qsplutowSo66ZIAwtml/9 ytjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380946; x=1751985746; 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=I1OZb9Kl+4lZDh9KBCT1cYYDblubQbpp2G1iwduVoYo=; b=NE29XeqwAuYOCe2y0J0xSeNMuWJn7lxJswv1L3jyIJSMDj6+ZQxoFNwSpf2l0BLjta QiXkVL0jQRAQYiMJCzFKXG9ytIkoa48QnleNPsQOeWSWL7lY/kewn2m/S2QWmKwS0mYL dfZZTukBZAjWz84wPcj5w+xedZ2p9V1sjtHe8UqO+kPe1VWURRXOR8PxfRK1wJNtmpDt U+//m3z4CwoEVS5xca1w4ayrm7vU9xBH4iIe+69e14v5XCU3lRIV84753xMhNt1NNepr pVMP6fmy5I5mr+W8rRrMbaQgsUJt2E82KEGi8ZYrsXIMDBx2H+7pM8o0WpSxHba+cAlG 7+IQ== X-Gm-Message-State: AOJu0YzjOLeqhc4OyipRFU3JuYe9v78HQ8jDfzkK/838CRwCqrFrdNuG 8G7/Z4l1nmMin49o/cLOrCQP/nxivzeOR8gCkcN6ku1Lzt2XWvYmPNAu86tOhaXhrpXMustd1M4 JBoMS X-Gm-Gg: ASbGncsRwxvg5GzIEVdaoprMUSLL+LB+TS4CwEyTwzjGNbLeHY7/lCYmKGIO/7JNnr7 p2KYRzMZcyKqHotpezoQFjQ51cA1Cft3+FHQljQbIQwp4lalKXqX+jYKdXZEGrw2zrhIWjRp4d7 uHmJlfDDtatClcy8ydzHdAUPT3UWvV3VYi40bgxu3z+rdPZQj6zhU6VUHZSzjVazlpZw+2s/nKT 9WrMl4uoZH/SoB42/408PCtjqG6DyuoB0A60LQAVnhVlWSvNRBz3sM00TR1iK1zIFes/U1Yet2r C2ilcbu0qVOacnH4qZL/Q9WaZKdWvEpLK28P0Ai4F1CV+R4xg118JHFaR3vsH7GzxbZAKHIfRJO +qbiM54tEYYoMhofhrujtONnT2Jb/gelG9Q4L X-Google-Smtp-Source: AGHT+IHwKkT2ZOaapDzSpT+XG+VDyQuPaXyh0D/HJBnATBYYTY20yeVzDGAKfXqXXlE4+oS5wm56Vg== X-Received: by 2002:a05:600c:a119:b0:453:45f1:9c96 with SMTP id 5b1f17b1804b1-453a7c8fc79mr30674785e9.14.1751380945936; Tue, 01 Jul 2025 07:42:25 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 23/68] hw/core/machine: Display CPU model name in 'info cpus' command Date: Tue, 1 Jul 2025 16:39:31 +0200 Message-ID: <20250701144017.43487-24-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32c; envelope-from=philmd@linaro.org; helo=mail-wm1-x32c.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381979165116600 Display the CPU model in 'info cpus'. Example before: $ qemu-system-aarch64 -M xlnx-versal-virt -S -monitor stdio QEMU 10.0.0 monitor - type 'help' for more information (qemu) info cpus * CPU #0: thread_id=3D42924 CPU #1: thread_id=3D42924 CPU #2: thread_id=3D42924 CPU #3: thread_id=3D42924 (qemu) q and after: $ qemu-system-aarch64 -M xlnx-versal-virt -S -monitor stdio QEMU 10.0.50 monitor - type 'help' for more information (qemu) info cpus * CPU #0: thread_id=3D42916 (cortex-a72) CPU #1: thread_id=3D42916 (cortex-a72) CPU #2: thread_id=3D42916 (cortex-r5f) CPU #3: thread_id=3D42916 (cortex-r5f) (qemu) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- qapi/machine.json | 3 +++ hw/core/machine-hmp-cmds.c | 3 ++- hw/core/machine-qmp-cmds.c | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/qapi/machine.json b/qapi/machine.json index 0650b8de71a..d5bbb5e367e 100644 --- a/qapi/machine.json +++ b/qapi/machine.json @@ -80,6 +80,8 @@ # # @thread-id: ID of the underlying host thread # +# @model: CPU model name (since 10.1) +# # @props: properties associated with a virtual CPU, e.g. the socket id # # @target: the QEMU system emulation target, which determines which @@ -91,6 +93,7 @@ 'base' : { 'cpu-index' : 'int', 'qom-path' : 'str', 'thread-id' : 'int', + 'model' : 'str', '*props' : 'CpuInstanceProperties', 'target' : 'SysEmuTarget' }, 'discriminator' : 'target', diff --git a/hw/core/machine-hmp-cmds.c b/hw/core/machine-hmp-cmds.c index c6325cdcaaa..65eeb5e9cc2 100644 --- a/hw/core/machine-hmp-cmds.c +++ b/hw/core/machine-hmp-cmds.c @@ -40,7 +40,8 @@ void hmp_info_cpus(Monitor *mon, const QDict *qdict) =20 monitor_printf(mon, "%c CPU #%" PRId64 ":", active, cpu->value->cpu_index); - monitor_printf(mon, " thread_id=3D%" PRId64 "\n", cpu->value->thre= ad_id); + monitor_printf(mon, " thread_id=3D%" PRId64 " (%s)\n", + cpu->value->thread_id, cpu->value->model); } =20 qapi_free_CpuInfoFastList(cpu_list); diff --git a/hw/core/machine-qmp-cmds.c b/hw/core/machine-qmp-cmds.c index d82043e1c68..ab4fd1ec08a 100644 --- a/hw/core/machine-qmp-cmds.c +++ b/hw/core/machine-qmp-cmds.c @@ -47,6 +47,7 @@ CpuInfoFastList *qmp_query_cpus_fast(Error **errp) value->cpu_index =3D cpu->cpu_index; value->qom_path =3D object_get_canonical_path(OBJECT(cpu)); value->thread_id =3D cpu->thread_id; + value->model =3D cpu_model_from_type(object_get_typename(OBJECT(cp= u))); =20 if (mc->cpu_index_to_instance_props) { CpuInstanceProperties *props; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381011; cv=none; d=zohomail.com; s=zohoarc; b=beW9TNs0rg72pK8CbRoUUTTsz4Bkdx/RLQYpxtOK8pAyElbzx0Lgdjht6HPGN92dPEBB/DDiAHXRVZsrBhs3MWjcf4I9yGFQ54DChvcwXZmALRhpZqWv9/7pIWbEgAtBpzsw75gfSFMHz42og1agvs6xooY7Oos+uJxJdrm5gEo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381011; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=sBntsVr1Y6zHOAmwd2m7NhcLZN4vsokXucO/PBfodqM=; b=GRwqR4DJSRe8Zq+H+ZsfCI09Z26oy3rizb6giqFYNk92b4S+ROsFhnmWZtXHRKTiUZPXzvNd5G6WOdpiWQWQW57FU7/ku+6TBJYQUkXlVkC1V2MM4fr9YZHz2UtxbgKKsJqhvoZe8h3qgdPnLyryYqTz4oI5a7WmjVmCdXyqbu0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381006489378.65506321558496; Tue, 1 Jul 2025 07:43:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCK-0000uW-U9; Tue, 01 Jul 2025 10:43:00 -0400 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 1uWcC0-0008Tz-Es for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:45 -0400 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 1uWcBu-00070Y-W6 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:40 -0400 Received: by mail-wr1-x42d.google.com with SMTP id ffacd0b85a97d-3a50fc819f2so4150853f8f.2 for ; Tue, 01 Jul 2025 07:42:33 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e5b2a7sm13504267f8f.69.2025.07.01.07.42.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380951; x=1751985751; 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=sBntsVr1Y6zHOAmwd2m7NhcLZN4vsokXucO/PBfodqM=; b=cs/e0zRZIRzJxgl+tUmm1pijptAhs0OXfGx0yKQIA0nDTB54etah7X81K8FqJBcQMC nbQ6G20cqKuBRIghWA/tWw57urpqNfToUQ9GaxqqjO1Jgn0yPH6zjBIJhErxmj96EclN b//UBd7fem/6mOm5Ee+d0p2u9HhIqWp+QN0g3MQK3RTrf8xf08abGJ3PiVzfNrP906lh 8gPKTWPVYbo3zjxeMDNgMoMl3N6cKc2Ky0LW+Wgo0Nh05ht0wu2nmSAtUlUpmmG1Yin0 ojufGplwLKfEt9/qmTCYDqFIaLSB3yjxdIIagQkgYvS6XfZuXWoJkwm07qvRYmrFvEMg Kp0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380951; x=1751985751; 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=sBntsVr1Y6zHOAmwd2m7NhcLZN4vsokXucO/PBfodqM=; b=t8pdwRKxHaQBGu6ngJ9rWpswlYfQO0GdwcdLD/cwj8maAvemtU//74G7tbBP95KURS 6+B3I10RDFRw2hpCd9VnlL0ln51WvOuGASxU02W179jkGgOyByELgS8sMFFoaYJGN8hw 3zI0lHI6t0zKKZaen2q/1ttTnjHIpwB/3+H18rMyPK2SF0/Kes4FSvjILplh23Uf5+35 EaWTs3QcnBHZ2MUa/p3Z/EqNZ8/0Z3tzIPGFe4+bSLx+ZilJ+suMuJQOrD1sJQTBTKH7 AKJoRfgNJIv9tnI00u/R2Jbm/8bufr78NU6ED0yvjR30qRBmHw+OIpSswFySQaUVsFi0 hI2g== X-Gm-Message-State: AOJu0YwQhFPqWpTT4xSAWreOXlvV2GAdT0lHcZ8OK3AFZbth7xNcVWal EBlQ/bM79wNS1NAVEC1pOkt53L6e8aZBoqpzEYjhnMrIZpsBmPelAfLAQVwsbv+lbd0ar4n7DhM XCF9T X-Gm-Gg: ASbGncuBUVlD+VmdjJgLhw+bINEHPIIgp2DIa4iVZ9cD6+1PKvyiO3Ojz14ArWJN+ST X8i+ulOLueafIuGBd+Q8Yn2XWUc4/jWbEEdyoz6imjoWnTg7xWhpJzwpcjRSsBb5WzVrrY8QoCP 6OR/k/yzkB0Zl+IFmJRISQobar6eRQhS8tAJp0z3QLaLnLfQbPyAlRzqisAH436uhv+wek6+wHt TqqnLD85CZQai6tzvHGcdELtVYDr1cItSUAYFvThYzd3wXvoN+6WnV5oV0Cv2/hAKkzFz9axQp1 C86PlfHKtgurV+Uv96dRqJa6jWYkuNlV3nJt7WMUQYnBR5V1DWKqS+5Tpju/nwZFeH82usueD8U Jzhr9LKYkUnrBxrTP2GrJqeb982e4JF0o5PYH X-Google-Smtp-Source: AGHT+IHzpyiFAUUmmUath4/BN/Mt8Ok0y3N/0/VqZY21EhrbtxCB2HESnPLMi0VfAspGXmYjQG2a3g== X-Received: by 2002:adf:9ccb:0:b0:3a4:f787:9b58 with SMTP id ffacd0b85a97d-3a9187514aemr11881947f8f.58.1751380951445; Tue, 01 Jul 2025 07:42:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 24/68] accel/system: Add 'info accel' on human monitor Date: Tue, 1 Jul 2025 16:39:32 +0200 Message-ID: <20250701144017.43487-25-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42d; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381013879116600 'info accel' dispatches to the AccelOpsClass::get_stats() and get_vcpu_stats() handlers. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Richard Henderson --- include/qemu/accel.h | 1 + include/system/accel-ops.h | 2 ++ accel/accel-system.c | 28 ++++++++++++++++++++++++++++ hmp-commands-info.hx | 12 ++++++++++++ 4 files changed, 43 insertions(+) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index 065de80a87b..80bfe3c4d0f 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -41,6 +41,7 @@ typedef struct AccelClass { AccelOpsClass *ops; =20 int (*init_machine)(AccelState *as, MachineState *ms); + void (*get_stats)(AccelState *as, GString *buf); =20 /* system related hooks */ void (*setup_post)(AccelState *as); diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index af54302409c..106ff56d880 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -50,6 +50,8 @@ struct AccelOpsClass { =20 void (*handle_interrupt)(CPUState *cpu, int mask); =20 + void (*get_vcpu_stats)(CPUState *cpu, GString *buf); + /** * @get_virtual_clock: fetch virtual clock * @set_virtual_clock: set virtual clock diff --git a/accel/accel-system.c b/accel/accel-system.c index 11ba8e24d60..918900a0a8a 100644 --- a/accel/accel-system.c +++ b/accel/accel-system.c @@ -25,6 +25,8 @@ =20 #include "qemu/osdep.h" #include "qemu/accel.h" +#include "qapi/type-helpers.h" +#include "monitor/monitor.h" #include "hw/boards.h" #include "system/accel-ops.h" #include "system/cpus.h" @@ -81,6 +83,26 @@ bool cpus_are_resettable(void) return true; } =20 +static HumanReadableText *hmp_info_accel(Error **errp) +{ + AccelState *accel =3D current_accel(); + AccelClass *acc =3D ACCEL_GET_CLASS(accel); + g_autoptr(GString) buf =3D g_string_new(""); + + if (acc->get_stats) { + acc->get_stats(accel, buf); + } + if (acc->ops->get_vcpu_stats) { + CPUState *cpu; + + CPU_FOREACH(cpu) { + acc->ops->get_vcpu_stats(cpu, buf); + } + } + + return human_readable_text_from_str(buf); +} + /* initialize the arch-independent accel operation interfaces */ void accel_init_ops_interfaces(AccelClass *ac) { @@ -111,11 +133,17 @@ void accel_init_ops_interfaces(AccelClass *ac) cpus_register_accel(ops); } =20 +static void accel_ops_class_init(ObjectClass *oc, const void *data) +{ + monitor_register_hmp_info_hrt("accel", hmp_info_accel); +} + static const TypeInfo accel_ops_type_info =3D { .name =3D TYPE_ACCEL_OPS, .parent =3D TYPE_OBJECT, .abstract =3D true, .class_size =3D sizeof(AccelOpsClass), + .class_init =3D accel_ops_class_init, }; =20 static void accel_system_register_types(void) diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx index 639a450ee51..0496be6abfb 100644 --- a/hmp-commands-info.hx +++ b/hmp-commands-info.hx @@ -281,6 +281,18 @@ ERST .cmd =3D hmp_info_sync_profile, }, =20 + { + .name =3D "accel", + .args_type =3D "", + .params =3D "", + .help =3D "show accelerator info", + }, + +SRST + ``info accel`` + Show accelerator info. +ERST + SRST ``info sync-profile [-m|-n]`` [*max*] Show synchronization profiling info, up to *max* entries (default: 10), --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381901; cv=none; d=zohomail.com; s=zohoarc; b=lQZ6/zLFG27LKDuxqtrNBEnXF8UB2pm3RNOmLupRnrSlZ85trMomSfx07gKJ0f0zZA5Ki+C0FGIp62iv/f1dkciDLpURHlW02OcI8cz3PNBWibuB1Vn5DOGlrkhkYsZOUxzFAl06FxUpHzg+C/XJtAaOvxJiHbgGX/TjdHa6SyA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381901; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ak9lJ0hh+/7PhnazZCq52FhrKz95d2xKMt0q99+YMRA=; b=V0yGN0n5/bOvi09gk5wDfXKSche8DmdZ0WVyN4cpH2oFPiDBzYYXuOXyOTm07h7BSRhuWbfQNFQlx4u9v0YDKx6w5mGe49D4B020GZc8CIE6m0Q9bi/O8trbWcZRgiYSfH+jsvXMbbHZQ0zpfZmbBmKqdbncFjp4pp1QtBe6Vgc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381900697302.8712078681548; Tue, 1 Jul 2025 07:58:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCH-0000aP-Pn; Tue, 01 Jul 2025 10:42:58 -0400 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 1uWcC5-0008VC-Ep for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:46 -0400 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcC0-00070z-6j for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:43 -0400 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-453749aef9eso21795835e9.3 for ; Tue, 01 Jul 2025 07:42:38 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e528a9sm13688798f8f.60.2025.07.01.07.42.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380957; x=1751985757; 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=ak9lJ0hh+/7PhnazZCq52FhrKz95d2xKMt0q99+YMRA=; b=oVn1WuhV+Sd5NUj4Y8ZIlHrcIZ68bJ6wAnOT/n3Kkb2AlqDdG2BcuzIhGvc/QFUVUG +rQbWWWaeOiblNV49feE5WxxZsV5GHzALD9YG/xGjsriv0UwEkgaMiyrs+RpGMRgUcGb YeOs+Bq6ZLuzw9+7qE7yDeZgtf97KBwu1PrBLmzaYudK6IDgMcHBQSdOrX6mAibp0kXe V/Ye7OoRZx9TP2/8xAegVdsUyL/O10qyFloiFmx3x3iXPFLUfwVqQ99dRWStqpGqbiuX wuGm6AcoJ86TRHbdu+k42V2nFTc40Gm1Zt5kyc8iwHEEViMr/Dih4wVSrMquZoJD4WoN Sg9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380957; x=1751985757; 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=ak9lJ0hh+/7PhnazZCq52FhrKz95d2xKMt0q99+YMRA=; b=YRu06PA35hafxuGCQmKSlbLruiaOYqXvXyKJd1DzBFmXY081QcibXBL5lmYBEoOF40 b+Ba3YX1hCtmi55+NnWWEDyNjbVAk1ru0XYy+/GtCIemiXLqkh3oXXG2P9SLDWD6qYEh Mvwutzi9kwD/uv119pKEsQgAQxx89vCVpptgmd8SCZyKbWULSwfNYZM3QY8BWyNm1Zg1 EToBqFy0Xnxc9PMNcDbLjPc4XJgb70ZxDtcG802+inuDT/neNjVFQK5xFIoVIdcd8BGz OIzjlmmHIakvnINx7QZa/RxWj2IOGAVyDytJBO0J4kVC3hA8X3XZmkzahcsVy5zV2DUv Hv0w== X-Gm-Message-State: AOJu0YyTljTpTpASiH/+l4gvZg/EYeYEkDRBRFFhqwnaHMZJ/+SWDuNp O4O1pUWQcCbtTBLd+A+xhf/ZEUmJbBkJjLAhvqnHGn6peMFENfaY9UXrAh9hOTkBOy2G7GpuWkw NR45j X-Gm-Gg: ASbGncv4z1kb0SAP2QXID0vFmSZcPp3c26umeZ7wY3GUcs0MN0VlJyLpmjQRkW8tiMh mQUbGujqowyh3BsC4ZAXMvxWDJhgGcHr0AqzlNqQ7QvTaKIqAUNt8GQJmb5NKe9rTQC8NbysYVo wpIAmTen0f/F31cn7BCMoMJqTAZXs01wuWZfjqvw+kQ7ZV6IUnaVG0UJvVDUKNKNz3A6v819XDx AHhA4+JwKGg/w86jNjqW3QP2ySxGxug/G3heW9FhHuogtLXSEgEBsO7eBmi7e2B1M882+TfPGFE 69nZB3otP4ngrzGeu4Ds2dFnUJO8fsIAfa8zYtk1I256sh6hvbK7THMZ0hkLEDc/59qL617/Iq4 2Gfiw5Qmsq5mYqA8pS9JbG3pHCoc9TNrnJ6H+ZF3eojbtyjU= X-Google-Smtp-Source: AGHT+IEtlY42MMUw43RFNymXkYTRYGuOzaf0Ffxi+95ETpN5dU5eUllvEu7j6F7jb90EBlMCyAkPwg== X-Received: by 2002:a05:600c:a089:b0:43d:b3:fb1 with SMTP id 5b1f17b1804b1-45391c5ae8dmr165982725e9.27.1751380956627; Tue, 01 Jul 2025 07:42:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 25/68] accel/tcg: Factor tcg_dump_flush_info() out Date: Tue, 1 Jul 2025 16:39:33 +0200 Message-ID: <20250701144017.43487-26-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32f; envelope-from=philmd@linaro.org; helo=mail-wm1-x32f.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381902332116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/internal-common.h | 2 ++ accel/tcg/monitor.c | 27 +++++++++++++++++---------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/accel/tcg/internal-common.h b/accel/tcg/internal-common.h index 1dbc45dd955..fb265d0cefa 100644 --- a/accel/tcg/internal-common.h +++ b/accel/tcg/internal-common.h @@ -139,4 +139,6 @@ G_NORETURN void cpu_io_recompile(CPUState *cpu, uintptr= _t retaddr); void tb_phys_invalidate(TranslationBlock *tb, tb_page_addr_t page_addr); void tb_set_jmp_target(TranslationBlock *tb, int n, uintptr_t addr); =20 +void tcg_dump_flush_info(GString *buf); + #endif diff --git a/accel/tcg/monitor.c b/accel/tcg/monitor.c index 1c182b6bfb5..5f74881f2a3 100644 --- a/accel/tcg/monitor.c +++ b/accel/tcg/monitor.c @@ -146,11 +146,26 @@ static void tcg_dump_info(GString *buf) g_string_append_printf(buf, "[TCG profiler not compiled]\n"); } =20 +void tcg_dump_flush_info(GString *buf) +{ + size_t flush_full, flush_part, flush_elide; + + g_string_append_printf(buf, "TB flush count %u\n", + qatomic_read(&tb_ctx.tb_flush_count)); + g_string_append_printf(buf, "TB invalidate count %u\n", + qatomic_read(&tb_ctx.tb_phys_invalidate_count)); + + tlb_flush_counts(&flush_full, &flush_part, &flush_elide); + g_string_append_printf(buf, "TLB full flushes %zu\n", flush_full); + g_string_append_printf(buf, "TLB partial flushes %zu\n", flush_part); + g_string_append_printf(buf, "TLB elided flushes %zu\n", flush_elide); +} + static void dump_exec_info(GString *buf) { struct tb_tree_stats tst =3D {}; struct qht_stats hst; - size_t nb_tbs, flush_full, flush_part, flush_elide; + size_t nb_tbs; =20 tcg_tb_foreach(tb_tree_stats_iter, &tst); nb_tbs =3D tst.nb_tbs; @@ -187,15 +202,7 @@ static void dump_exec_info(GString *buf) qht_statistics_destroy(&hst); =20 g_string_append_printf(buf, "\nStatistics:\n"); - g_string_append_printf(buf, "TB flush count %u\n", - qatomic_read(&tb_ctx.tb_flush_count)); - g_string_append_printf(buf, "TB invalidate count %u\n", - qatomic_read(&tb_ctx.tb_phys_invalidate_count)); - - tlb_flush_counts(&flush_full, &flush_part, &flush_elide); - g_string_append_printf(buf, "TLB full flushes %zu\n", flush_full); - g_string_append_printf(buf, "TLB partial flushes %zu\n", flush_part); - g_string_append_printf(buf, "TLB elided flushes %zu\n", flush_elide); + tcg_dump_flush_info(buf); tcg_dump_info(buf); } =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381836; cv=none; d=zohomail.com; s=zohoarc; b=cyT9y2bBas/t9Gz9oNfjW+9jx2EjsjTwX5c6rcNi7CdVaSv3lV++f+5XU97eEKvVZAVEHJ6csv3DoGob0ZhJC/4ysfkJlSqolKbXM9/p7koM/TXZMis/2LK1f7rGXvRl911uHEN0j751TrVlzqyIlqBeDFYrwUUYvuv0wN3K4dI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381836; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=NlBOE8V4jVPken7WCnMtNpY/1Zbf/V//8TkK0yzKABw=; b=dEMSmhfG8wsu5Rhw5xJ9k57eNAarTatkNc1OO1AfDHE+DqsOgFgHw+vfscm0bTKwBe+onH8Z4J6M0/Y3ZU0o2gYaW3GChyhKBhXfIf0MnwiTe0c6KoeS+p+FoQUf3QsUgKKbt+W1DcKhRD3IwtrajTVx9GEWgbxDaFY+pLvju4I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381836285947.3506021486119; Tue, 1 Jul 2025 07:57:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCL-0000v9-NR; Tue, 01 Jul 2025 10:43:02 -0400 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 1uWcCI-0000ZN-Pl for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:58 -0400 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcC6-00071Z-Ub for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:53 -0400 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-4538bc1cffdso32594625e9.0 for ; Tue, 01 Jul 2025 07:42:43 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7e7518sm13271565f8f.2.2025.07.01.07.42.40 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380962; x=1751985762; 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=NlBOE8V4jVPken7WCnMtNpY/1Zbf/V//8TkK0yzKABw=; b=qdC6myM4BtOz7rNBS4HkDPNXNf/DSIU/n3ik3HyU8VaY7zh3xNQf/okSpxfscnNWg0 Z5fgupG5fz1xKFppjv5Q+ncNSmMsFjjYzd34BqMBEP29Vw8NLd74MnYVJxk/g6ODsOs7 EcpBPNZV3tc+AtFEyWjCIjrNjFyVifrCcozdtC95yoHsN590hQuV2xQw4f+TlDCG9yFC gxO0nfGEAif/6bDU3ln4B5OYJIMoBTUWNTXhL1k9m401lHNNYTOqLj7UcwA0QuGQ/TP6 qPC0REXZ8/1Haba0nks40kIX2rFj42jyDZWrXTglyUz7aqg9YBo22HokwvyZhric0+wI P3YA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380962; x=1751985762; 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=NlBOE8V4jVPken7WCnMtNpY/1Zbf/V//8TkK0yzKABw=; b=w2rA2Eo+JFXywgO3DbRNVp7psKqT98H/jW1pE2JbQ4lOeyFiYG6tB0xWxSSopVatMT Wn2RItQSvcnGnJHgtkxZGU42l+0DmA8wG/OUYDvuUTT1G9UxAUY/zEuQkquKrpPNrXLj cV7ACnPnbqQtQig/hPfWdcBiIHPTnDuDlmk1koeli5oFZq+BLn9+jQK9MWWhlJJmJ0wR 1zlAmVQAYYFUlevQ74XaK4CWkQIw0evwq/fSE1fBUcaYKMdhO8yIxO1pDlYO+DBM4ovJ kSeYGS30tU86LaACUiMB2pfe1ehBegVBQiYZ7Hh5WdB1buO/34HiHEj6kQOZElRekAwF JAuw== X-Gm-Message-State: AOJu0YxQ2QXijI7cOlsi2uHXFMXJX/tnB5gec76oAYPu/RFsz8QrHU+9 euqPFJ+oKT08dBoc2PnKrZ9IaCWYR4Bg/Ywp9rGm8kRtdexXspMqdoASM4GT5KmLW9BYKNw3NIH AZT5x X-Gm-Gg: ASbGncuMJF71vMTilKqNl9jJKa1BobDdb0CW5oxVfDQU/2c9AiSAwfrZ62aMg93siFV ljMqjdCajZIUw46MPvT4/iEZn8gdtqvgmfqf7HhqNuQgsnSJzBEflTVfGs7sE1+ZCdzeHV92s8o 1E80KXglC+5BdtfRtr/E8puvT1Ki/Szb65y7qE1y8AXnuFs4tyowp+tD9co+7rP+OEiwaI49Gd1 4fvIBIMH7jOThyCWxeXgIikD11OBolzvrwk12S89nQJxoxaka1Nryz0RNHyYd98Can8jCsD1YAV BC+NoxUWAd6pXLkraGxenrwK7YulKE5/7n+MPETsMLqtuXNwlbJZ3k/3vMZvCoMFMHUSh3EvAq0 Ebxs3Jv7KP4/mhMlBFEsCHsFGpiuzH9+2mupy X-Google-Smtp-Source: AGHT+IEwTRDJbNzYZH79wUbixBg5SHr84V0InY6n3JHu9/TmxHzTiuujDwOiBoHzOImgvvfDI15Mfg== X-Received: by 2002:a05:600c:3b01:b0:453:745:8534 with SMTP id 5b1f17b1804b1-4539605125bmr142294465e9.12.1751380961666; Tue, 01 Jul 2025 07:42:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 26/68] accel/tcg: Implement get_[vcpu]_stats() Date: Tue, 1 Jul 2025 16:39:34 +0200 Message-ID: <20250701144017.43487-27-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381837252116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-all.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c index ae83ca0bd10..d49d2b3b0fa 100644 --- a/accel/tcg/tcg-all.c +++ b/accel/tcg/tcg-all.c @@ -239,11 +239,17 @@ static int tcg_gdbstub_supported_sstep_flags(AccelSta= te *as) } } =20 +static void tcg_get_stats(AccelState *as, GString *buf) +{ + tcg_dump_flush_info(buf); +} + static void tcg_accel_class_init(ObjectClass *oc, const void *data) { AccelClass *ac =3D ACCEL_CLASS(oc); ac->name =3D "tcg"; ac->init_machine =3D tcg_init_machine; + ac->get_stats =3D tcg_get_stats; ac->allowed =3D &tcg_allowed; ac->supports_guest_debug =3D tcg_supports_guest_debug; ac->gdbstub_supported_sstep_flags =3D tcg_gdbstub_supported_sstep_flag= s; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381722; cv=none; d=zohomail.com; s=zohoarc; b=c65zVleC+7fzHhOb8SJLDGsY33+jVHRUwA4mD1iiy9Y0QRixtw/AOMmEmXvZlq1xEpZIbZcERKoqKY2UbApJ0J0u5CMSF4qDszsKHa5xPgaPdksOYuaDj2Re1kJ+h84MtEbr/UED0Oby9aRjKM9zcHXXkvSHos/R2b/0PP7GKZU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381722; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zyDwPMt6YxbjjGXo86a69tBngv13ZljrHl0yFXEhOMk=; b=UcGGpO0XsBTkALL3q5cYchW94x3Jqq1VG4cVZ31h1m46RDy7eqrwjlENKucRy7nYcYA7xid0QoYhu7LigOYpjwr2s7+6ZvpGMtaFrNwwh0gkHQbelhBiqsrqM97yulJMKvobSLTdGbLyfvSh7ZxwXBoqgWbXSgrqRUryb37x4lw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381721998346.2599616136256; Tue, 1 Jul 2025 07:55:21 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCM-00019I-IO; Tue, 01 Jul 2025 10:43:02 -0400 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 1uWcCG-0000Zl-QW for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:57 -0400 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcCD-00072B-R2 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:42:56 -0400 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-453643020bdso50231025e9.1 for ; Tue, 01 Jul 2025 07:42:49 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c8013b3sm13451048f8f.39.2025.07.01.07.42.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380967; x=1751985767; 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=zyDwPMt6YxbjjGXo86a69tBngv13ZljrHl0yFXEhOMk=; b=Bice8yNjNA0P4hVy6bU9ibOdz8WUuJWprvVCyyXwG8d1jCwdYRU/MKObiOCbEIPkf7 cxTzag03sarjVAuG2vkwiIpANQqzEg6KxUg/T42zDTrVPqpCFjUEU8bmfFvwYXmWQNxm ZIm8aRmYLsM8YXPuagNrwXPL9eRTWRLvNqaNykUdOYVhIYPhXtCSkxV5xlLpUdUryleS mWh6ndBrAoFFth3UbJbdP9L0TCsjYZ6OQKZ5cjS0IozBpwDAJyg1vqa6kLc736QcKWk7 lxnL3exKObjM11RudlAmS1irzvld+viLhtUcDm6cbTe19gzhI4+rTTn6Rk8xkm/I9uJf bttA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380967; x=1751985767; 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=zyDwPMt6YxbjjGXo86a69tBngv13ZljrHl0yFXEhOMk=; b=VA0Il7OYMKuS3hcRbNNLEmT2jP6FoUHgNs075vk5LfA7WZ+Dol+nVlzzntA1dcorJt +jZUg8jwXJZVruYNhGju1vGSs6513wrDiA11vj2W1qIKRnk5wCpieT5Bx7yRPqEF2QyU ZXk0QfkO7RPFUvgXCv6cXZptprqh0ht7rGbOBH0rDWyc46sU+oOMCfOxHm7mqNYLSM35 OXP2WcUjvAi5Vf6XD0EAS0/jNR1qrqCNk8liXCKYRVNh1OJc0bxsgpB6gAv0YXLOWVcq RFPonaMGBYIj8tZGRk3PXENbJDjTUMefyB2rQA/yrr3q3NpBJWYmdUSCZa3Su/DSt234 Yj1w== X-Gm-Message-State: AOJu0Yw73Rwgx7yrCWwEHofKLsX4NhAtv5nw03Q+I4lD4l5wjQSN3+AR dwWQGIIiiPWr37HE7ZCe6fSnl3Cpzq8Tn/uJqBt6qhtjASFmLiNsNglCOsCm+3rysKCGibZZIX0 cHNBZ X-Gm-Gg: ASbGncs7Zi21nLpTaxi1LgXCjiggttOEzMn/lGwpmQRNPybQNHIPl6rldiWVkS1eN6o VoNH+xV1rr8KFCodHZC9pO45r7ND0Pr0sR6kZTUAjKbzqTHdb6yBf1TIrpn0xa29SvlKsQ1EnvF SUj+5PCLweE3Mz3y1cxODqWsIJFbzPjCmrnEHF9fYQJkXJcNPj+zI+f84lyz223bV7Ho2/Pt7Kj ol3KXJdgQkJ9UUydLjygQW7VYjojipZyb7tBATdiAY8n8AyngIvKV7YN/6uRJ+4kuvLwyrMkZaK LLOlWlxFuxaBpe/KawZgxz00FNSZQJk42ZUwRJjjl+gIAugwZ/X9EYHzt93ldU4zMMTOgdzB6uv /dlDd8etEgCh6xt+Sg2/rK6OkM6OW92/VHjNx X-Google-Smtp-Source: AGHT+IF/ghJgw3V/Yrak0VimZ4GXm36KLrzWsMS4M8xrB1+yTav3Atw7uZoCQh/ykgIuo1C4UiYwaQ== X-Received: by 2002:a05:600c:1547:b0:453:cd0:903c with SMTP id 5b1f17b1804b1-453a8fc441emr30712075e9.2.1751380966625; Tue, 01 Jul 2025 07:42:46 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 27/68] accel/hvf: Implement get_vcpu_stats() Date: Tue, 1 Jul 2025 16:39:35 +0200 Message-ID: <20250701144017.43487-28-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381723670116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index a2e0f890463..ca85922356b 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -352,6 +352,12 @@ static inline int hvf_gdbstub_sstep_flags(AccelState *= as) return SSTEP_ENABLE | SSTEP_NOIRQ; } =20 +static void do_hvf_get_vcpu_exec_time(CPUState *cpu, run_on_cpu_data arg) +{ + int r =3D hv_vcpu_get_exec_time(cpu->accel->fd, arg.host_ptr); + assert_hvf_ok(r); +} + static void hvf_accel_class_init(ObjectClass *oc, const void *data) { AccelClass *ac =3D ACCEL_CLASS(oc); @@ -577,6 +583,16 @@ static void hvf_remove_all_breakpoints(CPUState *cpu) } } =20 +static void hvf_get_vcpu_stats(CPUState *cpu, GString *buf) +{ + uint64_t time_us; /* units of mach_absolute_time() */ + + run_on_cpu(cpu, do_hvf_get_vcpu_exec_time, RUN_ON_CPU_HOST_PTR(&time_u= s)); + + g_string_append_printf(buf, "HVF cumulative execution time: %llu.%.3ll= us\n", + time_us / 1000000, (time_us % 1000000) / 1= 000); +} + static void hvf_accel_ops_class_init(ObjectClass *oc, const void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); @@ -595,7 +611,10 @@ static void hvf_accel_ops_class_init(ObjectClass *oc, = const void *data) ops->remove_breakpoint =3D hvf_remove_breakpoint; ops->remove_all_breakpoints =3D hvf_remove_all_breakpoints; ops->update_guest_debug =3D hvf_update_guest_debug; + + ops->get_vcpu_stats =3D hvf_get_vcpu_stats; }; + static const TypeInfo hvf_accel_ops_type =3D { .name =3D ACCEL_OPS_NAME("hvf"), =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381937; cv=none; d=zohomail.com; s=zohoarc; b=kiFJh0nVIp5dQtjKYoEQLUIPGK/ldytI7Czy2bOoG8P1VugN2qpySWG0or1BlxBqX+khyhimWUubsl+P40Z8QYI6qsZv739jjnZmfO1Vt/EEygUKOJxEZTBiqqUxxYMfzbPCWm1WFQcxl2kFv2vVM6ZbpkFefycStC5bf/oMv30= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381937; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=bRIToFZay2CxShEmbO/ZmevC3m9y13hXBh1sSsLv6b0=; b=OLJFCclbgjc+5PNPOd+vSp25Sl6z1IpweI5cOaez6PMnPBiF3Xv4myw96p9lZ+uBDiAqSYeHdJ7sAPI6iqyNbuOcewAE96RxWrUYaUlHd+e7S3w+6doKpRusoLXS/nJQk5HxqBuAYll5zI+fwfEVtx1ze8rytEHjwo3SdBxGivE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175138193787628.12827365960095; Tue, 1 Jul 2025 07:58:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCV-0001XH-S0; Tue, 01 Jul 2025 10:43:14 -0400 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 1uWcCO-0001M7-CP for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:04 -0400 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 1uWcCF-00072T-Jk for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:02 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-453643020bdso50232055e9.1 for ; Tue, 01 Jul 2025 07:42:54 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fa8fasm13377117f8f.28.2025.07.01.07.42.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380972; x=1751985772; 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=bRIToFZay2CxShEmbO/ZmevC3m9y13hXBh1sSsLv6b0=; b=QvwZwlVMguaMWLzZgc46bOBjikryypPlF4pwxzroOEZXPpeFw7abAFh+Hod8dIHY22 aX/Ct7Hv8YIWRd01gR3Xpx9LZXEF8nBt/yoyjVHC7NNdkYHGdSTOCckX21whoeppCKZk naeIUQDYtBxgcziP1L6acN6N9DaQUSOHqZBSRhVSUqfqDg1sHqJ1d5jIKK0QZy+xrW9E LX5YZco8gsdMx8sHYaBT7NuzaRHWAGFMfrxHZrSNUGSLszdBuqY0uPSKLDGWs+/FNg3Q 5LGYGTqgfXEsNg1bAjkq44q8YXBPNvSPDabeyVk1Kkuo4ponv+LY574gK9eqSo1UhkmX BBBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380972; x=1751985772; 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=bRIToFZay2CxShEmbO/ZmevC3m9y13hXBh1sSsLv6b0=; b=T0Rf+eJeMoOjQ+ccg90DRRRCgGptryD37Ddj2ZRb0qayrN7qn89ICs6u6usId57wI4 dARkogfDGiG4qE9vdrbSBm4o1dyEOxoBpVFM9HB/AdT62uI0VhQUFyWzIPGMOfed8ZsF TNhKQELWWZtqJaG2nOnszf9c+xgylW3vsGCgXX0+uVRZqhH9uQummuU50V9hLwf97rI/ f8em4HOP9yh61UZv0gHydXQRoJftt6j4fQopNa2I3w+1rpjxK7VIvv0b8943eZv5CX1p gkdw88ggYW3lVyJvPTPB0uB+aLF3Y2J9SbTLmejg4TtBw2CW9EbJXaVAUDc/xWgNj7ru Ik7g== X-Gm-Message-State: AOJu0YwhJZEIjIpFoE2+vFxDSWQAp7BY7FGfdBNPaA4YTsakh4K4PW8R hDIQe66m3E1nDKs8ZBNiPtoeJ9TSrsJPbxpV3cwup9knJVDHnXYz/7dJsUBWtDCCGLLjW3YyyMU RCmzn X-Gm-Gg: ASbGnctkM/Ajc2Kfb4UyZEruCW7g5adNVaSuctsX+a20JgUAMVS02KZah97mogFqKyM ln4dh1i3CcuWe+Hu5Yxn29kUOgV8qvvnjIQ1d9OknJ6Y/xB12bgNSNlQAvj5pFtgZEfySrRkSb+ F4zcehq8TK8PgrkuLuxX5uJPnIXJJhZbaB6H9MIhsU23ESB2z/9aKHnljkVViPQ9OIGH7qgq4wX JuRmg+vopn0zUN9SkDVeUy9zB1QAm8u2B7406n7jreVYndynU1FHKrwBhIc8TU1yy4179kMidyW MpYdP3LihU87s/LxXUCyOaIZCXj8p9/aW8oEr8EImsiHdWxExQZj98IKKrg9zP1kHSGReU+2BiW kLMZqFHhsGnDPU2/Ap8wlgPGp5CSaa8MHFJVt X-Google-Smtp-Source: AGHT+IGDlDYFTQA06UJupt59/FlgQnMOqv9FMTE0SuPhuzutfKGtJHiwgh4/UD7R8I83qSqHl2n2wQ== X-Received: by 2002:a05:6000:144d:b0:3a4:fc37:70e4 with SMTP id ffacd0b85a97d-3a90c07daffmr15696770f8f.58.1751380972024; Tue, 01 Jul 2025 07:42:52 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Shatyuka Subject: [PATCH v3 28/68] accel/hvf: Report missing com.apple.security.hypervisor entitlement Date: Tue, 1 Jul 2025 16:39:36 +0200 Message-ID: <20250701144017.43487-29-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@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_PASS=-0.001, T_SPF_HELO_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381938470116600 We need the QEMU binary signed to be able to use HVF. Improve the following: $ ./qemu-system-aarch64-unsigned -M virt -accel hvf qemu-system-aarch64-unsigned: -accel hvf: Error: ret =3D HV_DENIED (0xfae= 94007, at ../../accel/hvf/hvf-accel-ops.c:339) Abort trap: 6 to: $ ./qemu-system-aarch64-unsigned -M virt -accel hvf qemu-system-aarch64-unsigned: -accel hvf: Could not access HVF. Is the ex= ecutable signed with com.apple.security.hypervisor entitlement? Suggested-by: Shatyuka Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2800 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index ca85922356b..8876a026120 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -331,6 +331,11 @@ static int hvf_accel_init(AccelState *as, MachineState= *ms) } =20 ret =3D hvf_arch_vm_create(ms, (uint32_t)pa_range); + if (ret =3D=3D HV_DENIED) { + error_report("Could not access HVF. Is the executable signed" + " with com.apple.security.hypervisor entitlement?"); + exit(1); + } assert_hvf_ok(ret); =20 s->num_slots =3D ARRAY_SIZE(s->slots); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381900; cv=none; d=zohomail.com; s=zohoarc; b=G1vW8pECT4aUKW/IRGYVCYJ0182s4hPvxmtW6Q79n5eBCTgpsU7Fap6OKOn6D+rejI9b2V0fbwGn8/IqLgM2khxCfp1RmYhwYJb3RQeal+BISpguKl7E9hPnOhl8HvZZFxk54aH5w0jKF5cETcDkKKXmy9d5vewjnzdMGQVNoFc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381900; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=QgP4tqYRygNF/qbfEH0O4ZbQcscHGETVIN7Hvn8iOoA=; b=g4oTl/PHJZbxrJHEC58h5rD77YFAcdNuCgk4sM8SvrY6YXC9szntCTl48UNjsjJmZozLOlSCCgJsW4A7e5xZPwPKsGhetZwe8tVtOcIjMaVvcJ0J98niqqZzRM7+EM+nN1TmqJ0Qz7fXSzCg8K5YIeGBDEdd6Strt7G7fvRkgT0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381900887226.29748590926965; Tue, 1 Jul 2025 07:58:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcD0-0002TB-Cw; Tue, 01 Jul 2025 10:43:42 -0400 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 1uWcCS-0001Xb-C3 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:11 -0400 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 1uWcCM-000735-Jm for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:06 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-451d41e1ad1so38356915e9.1 for ; Tue, 01 Jul 2025 07:43:00 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fa8fasm13377364f8f.28.2025.07.01.07.42.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:42:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380977; x=1751985777; 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=QgP4tqYRygNF/qbfEH0O4ZbQcscHGETVIN7Hvn8iOoA=; b=xZ6mB6/O9wURv4AaqwfZlidY8vWllO+rwehEqIAGAXwOZnZuYtLr3US9hTRLnhrmnw /yw08lJnLiPQx+ZUgKHoz7iylkyi2ir4U16fMDuLTfmjHMMPutmRD5W+NpLDMRIOwUSX Ly9c2jqWDvSKWI1+/I55zhWbHOayH38f+cLpdQN6bz0jLsSVv8WkTc4qk6i6QEicyxdn y/kfc6grJIMfiSD4P/HSOUzOdsi0K+hEtZYLquqzrGdfn+rrt5+Qt24YdJcBqKH8OOS9 U+ffi0I+brmgBLJFLe7kZy5qp2rDFn/bqpnhyUg5iM7ZOz3aaOO3aYI9uQIQY7jy2gEi f8zQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380977; x=1751985777; 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=QgP4tqYRygNF/qbfEH0O4ZbQcscHGETVIN7Hvn8iOoA=; b=Id2QlSPOGcZhxSqIair1wd5+53yhyiCxjPqlGslLz52XADIjehf1pQ+PskkRyotEnR PYRNUq7r9oGtUrunlg4agsAUdvIONIUQLyBuVmkZbUFhi6Mkuwfef5LcwpRPzrdGjAoW ZNulgzzF1/u8rpKgbYegCpVzLnIWmyAe5InL8ieuRJ845gDljDg7Q7xsxyyraizxexnG fNGfCnB8aLT0pU25/mpx6NmfrwjRgX5ki9JMQHw8QX3hfmVkRcdOWThJ/UWdRznMowHG xYJats5yS+h6AXgosgSHt74siVwomNA8myG+yFevOfaVXireoC9It0BED1Aqae31H+A6 DnPw== X-Gm-Message-State: AOJu0YzS1NpmA4Kms7gjmkCGHfNBrvIppEszI64dJ2/rKktr6ykrhyaV ZybIz4jwEnF/S9C6kR6awUPm5S/md2bW2u/r9Fd9PgKKaz4niKIvVhuDZEZdXDX4ZyG2p1RjGw3 XsPrz X-Gm-Gg: ASbGncv0jnZR9RRm57hclyCl1eskPCYxLe1otJ0dTYlYaaXZ7lERp/iKDhwAaKjnw+I QAIx5G9V7WoUUuU9pnkQjwJsj0AqlpZHCHeA+2VUoRBgJfn4coKXwLk2XBe9+wRGxFZLSewYG+s JuqCJXbU6FvwaHHjlnaG/GKJDZXDv4beIvUgTsydD3Fypgoat791EGtHvo3Ml6U/s5f2OmBcblW 8ANZNA4esnKslh8DodnHYBpZsH9a0O1G7HO61u3iZhuxSkM+j0EJw6QrZ3of87XJPawLbXt3vPS gbEOQpgam+7DJ++u1zE8rrGFPin4ig67v3h3FJwzoRMZp9yVpbgEDxBNPBAOQJaUpfLMRkg3aYT I17N0H5vS4VjJuSIQb1WfmaFoHGOAPIfLKdT3 X-Google-Smtp-Source: AGHT+IGxmZ48PnEKW2Iuf076bEtlA53LyyCQeT3muqYLsz0zHXzQ/Te10GCglQQeN3XH89NhWjxE+A== X-Received: by 2002:a5d:5f8b:0:b0:3a5:8cc2:dabc with SMTP id ffacd0b85a97d-3a8fda359d7mr16627589f8f.5.1751380976861; Tue, 01 Jul 2025 07:42:56 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 29/68] accel/hvf: Restrict internal declarations Date: Tue, 1 Jul 2025 16:39:37 +0200 Message-ID: <20250701144017.43487-30-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381902307116600 Common code only needs to know whether HVF is enabled and the QOM type. Move the rest to "hvf_int.h", removing the need for COMPILING_PER_TARGET #ifdef'ry. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/hvf.h | 41 ---------------------------------------- include/system/hvf_int.h | 36 +++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 41 deletions(-) diff --git a/include/system/hvf.h b/include/system/hvf.h index 7b9384d816c..d3dcf088b3f 100644 --- a/include/system/hvf.h +++ b/include/system/hvf.h @@ -14,10 +14,6 @@ #define HVF_H =20 #include "qemu/accel.h" -#include "qemu/queue.h" -#include "exec/vaddr.h" -#include "qom/object.h" -#include "exec/vaddr.h" =20 #ifdef COMPILING_PER_TARGET # ifdef CONFIG_HVF @@ -40,41 +36,4 @@ typedef struct HVFState HVFState; DECLARE_INSTANCE_CHECKER(HVFState, HVF_STATE, TYPE_HVF_ACCEL) =20 -#ifdef COMPILING_PER_TARGET -struct hvf_sw_breakpoint { - vaddr pc; - vaddr saved_insn; - int use_count; - QTAILQ_ENTRY(hvf_sw_breakpoint) entry; -}; - -struct hvf_sw_breakpoint *hvf_find_sw_breakpoint(CPUState *cpu, - vaddr pc); -int hvf_sw_breakpoints_active(CPUState *cpu); - -int hvf_arch_insert_sw_breakpoint(CPUState *cpu, struct hvf_sw_breakpoint = *bp); -int hvf_arch_remove_sw_breakpoint(CPUState *cpu, struct hvf_sw_breakpoint = *bp); -int hvf_arch_insert_hw_breakpoint(vaddr addr, vaddr len, int type); -int hvf_arch_remove_hw_breakpoint(vaddr addr, vaddr len, int type); -void hvf_arch_remove_all_hw_breakpoints(void); - -/* - * hvf_update_guest_debug: - * @cs: CPUState for the CPU to update - * - * Update guest to enable or disable debugging. Per-arch specifics will be - * handled by calling down to hvf_arch_update_guest_debug. - */ -int hvf_update_guest_debug(CPUState *cpu); -void hvf_arch_update_guest_debug(CPUState *cpu); - -/* - * Return whether the guest supports debugging. - */ -bool hvf_arch_supports_guest_debug(AccelState *as); - -bool hvf_arch_cpu_realize(CPUState *cpu, Error **errp); - -#endif /* COMPILING_PER_TARGET */ - #endif diff --git a/include/system/hvf_int.h b/include/system/hvf_int.h index d774e58df91..ea6730f255d 100644 --- a/include/system/hvf_int.h +++ b/include/system/hvf_int.h @@ -12,6 +12,8 @@ #define HVF_INT_H =20 #include "qemu/queue.h" +#include "exec/vaddr.h" +#include "qom/object.h" =20 #ifdef __aarch64__ #include @@ -77,4 +79,38 @@ int hvf_put_registers(CPUState *); int hvf_get_registers(CPUState *); void hvf_kick_vcpu_thread(CPUState *cpu); =20 +struct hvf_sw_breakpoint { + vaddr pc; + vaddr saved_insn; + int use_count; + QTAILQ_ENTRY(hvf_sw_breakpoint) entry; +}; + +struct hvf_sw_breakpoint *hvf_find_sw_breakpoint(CPUState *cpu, + vaddr pc); +int hvf_sw_breakpoints_active(CPUState *cpu); + +int hvf_arch_insert_sw_breakpoint(CPUState *cpu, struct hvf_sw_breakpoint = *bp); +int hvf_arch_remove_sw_breakpoint(CPUState *cpu, struct hvf_sw_breakpoint = *bp); +int hvf_arch_insert_hw_breakpoint(vaddr addr, vaddr len, int type); +int hvf_arch_remove_hw_breakpoint(vaddr addr, vaddr len, int type); +void hvf_arch_remove_all_hw_breakpoints(void); + +/* + * hvf_update_guest_debug: + * @cs: CPUState for the CPU to update + * + * Update guest to enable or disable debugging. Per-arch specifics will be + * handled by calling down to hvf_arch_update_guest_debug. + */ +int hvf_update_guest_debug(CPUState *cpu); +void hvf_arch_update_guest_debug(CPUState *cpu); + +/* + * Return whether the guest supports debugging. + */ +bool hvf_arch_supports_guest_debug(AccelState *as); + +bool hvf_arch_cpu_realize(CPUState *cpu, Error **errp); + #endif --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381307; cv=none; d=zohomail.com; s=zohoarc; b=ljYroEuMwpP9UE4P6qdJCWSkzRBhngk6Ox4yEzccO5yvXM60tHTFWEzGAujsxVqGmaTVd7LY295bvZksFfUG35GK2PRAdj+I42QyTuR2HpRBSu8nHH/XJS34JPZ3PF4xIW4Bb1buPvpA0cPgnbVouAYEdoYpaV4BToOCdmJCReM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381307; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=KZVwfUaPu+BzW1eaAwnv15woF4igMTOdkeJWF9UPUpQ=; b=KasAjR5x8/RoC3zXpxn9fvjqX3L07aOndEj0IDqcoMN2RpdAvf1va5i5H3P78hWeic30t0upASpAfHdFhDaAQwZ8ouwDLo9PUSWmfRfqseIamg4Kyj1kZiBj4ly1hCS7FxtM8nkCkMKE8L5gZcDHJmwM+gUjjGVTNYYamw2CpSc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381306854522.8227656260159; Tue, 1 Jul 2025 07:48:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCy-0002RD-Ln; Tue, 01 Jul 2025 10:43:41 -0400 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 1uWcCY-0001kt-Eg for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:16 -0400 Received: from mail-wr1-x435.google.com ([2a00:1450:4864:20::435]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcCR-00073O-1T for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:14 -0400 Received: by mail-wr1-x435.google.com with SMTP id ffacd0b85a97d-3a54700a46eso3061104f8f.1 for ; Tue, 01 Jul 2025 07:43:03 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e52c2esm13637518f8f.53.2025.07.01.07.43.00 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380982; x=1751985782; 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=KZVwfUaPu+BzW1eaAwnv15woF4igMTOdkeJWF9UPUpQ=; b=sj5tnHS+yyF4VrRbkEk68E7wW3RymwEo1WhS207Afoi+J86jhwCnvCQUIcV4o6Q06h YZb9Cbgm6SuY/QA/7oyMfD7CkBgaHv9Q+07ok2haIV+Pd/JzsLWaJdlzfwy6fzMBQ3OV UxPyztzghnChiNemeqdSFfHqhodwrEMHxxz3iBy2w9CyB4ASUOu3shYSXQ6mN485OXdU ZhK5JbTCqUcGafe/kEQWkcpkn2gNJrmUWF9OT5qO9l2m2cYYTZomK1xjJm22rSu57BQP MHtGkOXx75nwZ3vUVvn+o1UlFK1NpBXDxx+gBINGLeJqDtwJcF20H8+Zb2yjR/pzIJPy jBoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380982; x=1751985782; 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=KZVwfUaPu+BzW1eaAwnv15woF4igMTOdkeJWF9UPUpQ=; b=Pu/IGxlf3UNwv+9KwUc9xYIvpgitQ9WSmQUMH1T7XSCpEAFmhY5l79lRfHXwHmbdyK JO6Fm4Nt0CnEadl1DWfieYxQ5XAiPxB0DVdUwhlyh7g+syo31lWRj4rz2CHE6KIe8MSc YGWhyX6AwxUh914SWEeae36paPMVef+QUzKWyWjdDJJ+HncIA+qumBVbUHSs8vXzyVyT cdt87Jmse2uiCemk3WvfrqI8Yszfakdom74h9EqTrCKtUe/WtEfByB3IigLg4xSAUsGr iGVDYfat2ef/H7u731p55olfdP6S4kDIRSNabagAOhnugzrqO6qxuJPAoEcrKmmXhHtZ MD1A== X-Gm-Message-State: AOJu0YwhcQSLxH/CvgI/PjRaxT78qx05y/DoF2IrkbNQ3CuJy9mfLp0o qY4X+foKWmDQ4hCcKg+GNOErpu4dfDG3IZ/RTI3lfCaZVdnKBc2vCoFazBCMtAUCkfk6R7HWQFF PJQCv X-Gm-Gg: ASbGncuThPesSbdpKsuiEa133c6ao/CJ2Ais/A6z2bWOLIZICE/q6+08PzYLmT5eGRh NVWhqtl54WLJDb48/ocA/wkjbn9LnfWPACQHCLpMwjUsW7DK0IWwOtyNCNfDo8zZzmk+Z4YiDy7 P9Jv138CJ7p3waWifPzoeGGbKSajGMw7dRZzeoUGP7vH4SSqMRctQA9xuF3Cx1vuAhmPkgqVPuy PfSLb7qgo5TYGuG8KBiV6x/yBJEFJZzqaCKu/5bu4RJWochaer6R4igACeMcjueFxpG5DiBB1Z7 iCPLAFCgL5e7fWvbCRxcVXhK7PrUdgeRMLc4ns9XC7LosBIAP2BSscxFgBmkR4TBpaXlJ25QP8w ZtvaKG1suK7ZsUn1S+q3zcIXbvWBFmGtmJ2i2 X-Google-Smtp-Source: AGHT+IFgQw0afPbX8ExizgihQzU0li8a6NF/2DsckfF/vBjg0FRNBFO1B5K6Mcgi31L53K79mmcJlg== X-Received: by 2002:a05:6000:41fa:b0:3a4:fc52:f5d4 with SMTP id ffacd0b85a97d-3a90b6dfbb5mr16443651f8f.47.1751380981636; Tue, 01 Jul 2025 07:43:01 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 30/68] accel/hvf: Move per-cpu method declarations to hvf-accel-ops.c Date: Tue, 1 Jul 2025 16:39:38 +0200 Message-ID: <20250701144017.43487-31-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::435; envelope-from=philmd@linaro.org; helo=mail-wr1-x435.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_PASS=-0.001, T_SPF_HELO_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381313723116600 hvf-all.c aims to contain the generic accel methods (TYPE_ACCEL), while hvf-accel-ops.c the per-vcpu methods (TYPE_ACCEL_OPS). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 29 +++++++++++++++++++++++++++++ accel/hvf/hvf-all.c | 29 ----------------------------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index 8876a026120..8242a78c0c0 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -50,6 +50,7 @@ #include "qemu/osdep.h" #include "qemu/error-report.h" #include "qemu/main-loop.h" +#include "qemu/queue.h" #include "system/address-spaces.h" #include "gdbstub/enums.h" #include "hw/boards.h" @@ -486,6 +487,34 @@ static void hvf_start_vcpu_thread(CPUState *cpu) cpu, QEMU_THREAD_JOINABLE); } =20 +struct hvf_sw_breakpoint *hvf_find_sw_breakpoint(CPUState *cpu, vaddr pc) +{ + struct hvf_sw_breakpoint *bp; + + QTAILQ_FOREACH(bp, &hvf_state->hvf_sw_breakpoints, entry) { + if (bp->pc =3D=3D pc) { + return bp; + } + } + return NULL; +} + +int hvf_sw_breakpoints_active(CPUState *cpu) +{ + return !QTAILQ_EMPTY(&hvf_state->hvf_sw_breakpoints); +} + +static void do_hvf_update_guest_debug(CPUState *cpu, run_on_cpu_data arg) +{ + hvf_arch_update_guest_debug(cpu); +} + +int hvf_update_guest_debug(CPUState *cpu) +{ + run_on_cpu(cpu, do_hvf_update_guest_debug, RUN_ON_CPU_NULL); + return 0; +} + static int hvf_insert_breakpoint(CPUState *cpu, int type, vaddr addr, vadd= r len) { struct hvf_sw_breakpoint *bp; diff --git a/accel/hvf/hvf-all.c b/accel/hvf/hvf-all.c index 8c387fda24d..481d7dece57 100644 --- a/accel/hvf/hvf-all.c +++ b/accel/hvf/hvf-all.c @@ -12,7 +12,6 @@ #include "qemu/error-report.h" #include "system/hvf.h" #include "system/hvf_int.h" -#include "hw/core/cpu.h" =20 const char *hvf_return_string(hv_return_t ret) { @@ -41,31 +40,3 @@ void assert_hvf_ok_impl(hv_return_t ret, const char *fil= e, unsigned int line, =20 abort(); } - -struct hvf_sw_breakpoint *hvf_find_sw_breakpoint(CPUState *cpu, vaddr pc) -{ - struct hvf_sw_breakpoint *bp; - - QTAILQ_FOREACH(bp, &hvf_state->hvf_sw_breakpoints, entry) { - if (bp->pc =3D=3D pc) { - return bp; - } - } - return NULL; -} - -int hvf_sw_breakpoints_active(CPUState *cpu) -{ - return !QTAILQ_EMPTY(&hvf_state->hvf_sw_breakpoints); -} - -static void do_hvf_update_guest_debug(CPUState *cpu, run_on_cpu_data arg) -{ - hvf_arch_update_guest_debug(cpu); -} - -int hvf_update_guest_debug(CPUState *cpu) -{ - run_on_cpu(cpu, do_hvf_update_guest_debug, RUN_ON_CPU_NULL); - return 0; -} --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381297; cv=none; d=zohomail.com; s=zohoarc; b=OkAAvK8dbV7cbmgKN9/iC4BsQCjpL+22Mx4KbCT0r1ptKGo77e47BikBeOL16pfakGhP0ICjcjsYpqqQanD3dOVRrYQUUapdD2dsidVyxjihlfN2lRQz0naG5YWDlIGzb/dNZgZSzR7QHUxfp3356nnvp0+g2CdUNsiv9M9fPoQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381297; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=g+IwmJ1NG0zVH0VQcqPzhnO9SOfkgqtP1sLv5w2thnQ=; b=Zplze+q3DSUN8z05Lua2Ne7mV89sunoKeHDzcV/MN8pouuSz1uLnOtJ684vzTqXU2mivW2Z47QSWhtSGjDrMKjV6yuteMQ/CXPEWlMiOIqBZQ8jaU2bYIvqfLczHBPu77qIYbjbYRULXMlOcW5fpHgfgLevLC7nxsLlPHxKsfnc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381297766660.4305066812731; Tue, 1 Jul 2025 07:48:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcCt-0002MK-1U; Tue, 01 Jul 2025 10:43:35 -0400 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 1uWcCb-0001rg-Gi for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:20 -0400 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcCV-00073j-0V for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:17 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-450ce671a08so22572695e9.3 for ; Tue, 01 Jul 2025 07:43:09 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7e74fbsm13643445f8f.10.2025.07.01.07.43.05 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380987; x=1751985787; 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=g+IwmJ1NG0zVH0VQcqPzhnO9SOfkgqtP1sLv5w2thnQ=; b=og+Iqes6y3IX0BohHaBD1ab4V/LpiL8KHmZDBl08MBcS1cpNuHEsHj+ra0X1VTCt8a MUJUausZcTIwlvi9tWytogLnvhFY1UE8nCggEgd1iuF18zHv7zV7/eqU9D5DCJsHubQU f3tDdyYTnIkLBwpSWLBTbYRmtehZsT5JCNn+fu+fdFhg0kGGwtt/77K8qa4g7NP+LEc/ tdnobvDMGCn4cXTzGtmJR2gmQ+QSY5DKTI6tAguaMAYEGZkBOR3DmtFMGvrIQaV9DQ8n jmlvxVVdQtlh7jiFl3uMmV/6om9BqsfAFxZ0ZzIZ8DSMp0AUIgSCb5pUvivRkZ2tU7+g DPtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380987; x=1751985787; 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=g+IwmJ1NG0zVH0VQcqPzhnO9SOfkgqtP1sLv5w2thnQ=; b=r9z7tcsnLhq0JoAXWBuMT+Hg636a+LgAXX9TcbsiSP3w+DxmvX6jnEqv3cUl6KYF1H 4w9bhSqqsuWKseF7mPBxIltfA3zjwcBqM+PGdNh+vuV5mxqAFngftNWe3d0sZRPzxmk/ EAUehUj8i6i95R9/DV1908BCxwTCo+WiH3DokFZY9kA4EydmeJa+IOzxIgJiiEW0vXxy fRMKmfI+CHCVKDzA/WUJ7PoYEQafWGhYGXDxkgmEbzUKjLcjdaNb1Ia8Doi7elI9lATU StvKeGwQbtudo1E9d2Z+1Zd5npwu7BpCJxG9yqv5NTxox7anfhtlOzA5471GtOLjQRZa UD5g== X-Gm-Message-State: AOJu0YwpZBFraOhLyNZjQKane1RdyzM98ID4uD8USTY2Zs5kBfiuNyKa U3Pl+SHO/sAETE9iGQ9CdgDWFFDIIbG0BjBA67JSr9Lr4I5r8PKkRpibD5rrO9woZFbu+S+8lcq //xij X-Gm-Gg: ASbGncsehxYqygRVriur4hIKkKHDBl2/Cc0/cD0gO93Cn2li2tMJBvwKD8wZyW5N11V LySDgCapjLQeyQ4sHz5O6vfH9eLt7IEth6TbZkDFF7K2fY2uUxvHR53Mq+YVgEoHPN1V3nH3WFn vlVY14E9D2TQJBODsGa/nLznImtwdR1bm06yB3ZNPAG/HUfhExbgyJSJKE06rNkvAvnHb+iWJQN TIwajYujIkG68OsZfK/0idC5kCkeyE6eVzMXrGZ9UPG8TsAXjjSt3YpxyuEuagpn7ln8vrPdq1o zEfhtMxHW7WGluDnxiDIN8eg4f5i6aBhUBcoMty2TJWFFb98YLXClTC9sC7iA1r1GY/CcKcj96S /20ATDGrV5RRQRy4cfy0aPOA0M+JTR23PF4PQ X-Google-Smtp-Source: AGHT+IGP0GvG9Le9VminYJ8q0sbotsXsf1rrMA7mASupz1Dfhwz7q1h1syuT1sAzEWfcj2yduLESWA== X-Received: by 2002:a05:6000:4719:b0:3a4:f72a:b19d with SMTP id ffacd0b85a97d-3a8f577fcb4mr13179239f8f.8.1751380986600; Tue, 01 Jul 2025 07:43:06 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 31/68] accel/hvf: Move generic method declarations to hvf-all.c Date: Tue, 1 Jul 2025 16:39:39 +0200 Message-ID: <20250701144017.43487-32-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381300017116600 hvf-all.c aims to contain the generic accel methods (TYPE_ACCEL), while hvf-accel-ops.c the per-vcpu methods (TYPE_ACCEL_OPS). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 272 +------------------------------------- accel/hvf/hvf-all.c | 267 +++++++++++++++++++++++++++++++++++++ 2 files changed, 272 insertions(+), 267 deletions(-) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index 8242a78c0c0..319c30f703c 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -48,18 +48,16 @@ */ =20 #include "qemu/osdep.h" -#include "qemu/error-report.h" +#include "qemu/guest-random.h" #include "qemu/main-loop.h" #include "qemu/queue.h" -#include "system/address-spaces.h" #include "gdbstub/enums.h" -#include "hw/boards.h" +#include "exec/cpu-common.h" #include "system/accel-ops.h" #include "system/cpus.h" #include "system/hvf.h" #include "system/hvf_int.h" -#include "system/runstate.h" -#include "qemu/guest-random.h" +#include "hw/core/cpu.h" =20 HVFState *hvf_state; =20 @@ -79,127 +77,6 @@ hvf_slot *hvf_find_overlap_slot(uint64_t start, uint64_= t size) return NULL; } =20 -struct mac_slot { - int present; - uint64_t size; - uint64_t gpa_start; - uint64_t gva; -}; - -struct mac_slot mac_slots[32]; - -static int do_hvf_set_memory(hvf_slot *slot, hv_memory_flags_t flags) -{ - struct mac_slot *macslot; - hv_return_t ret; - - macslot =3D &mac_slots[slot->slot_id]; - - if (macslot->present) { - if (macslot->size !=3D slot->size) { - macslot->present =3D 0; - ret =3D hv_vm_unmap(macslot->gpa_start, macslot->size); - assert_hvf_ok(ret); - } - } - - if (!slot->size) { - return 0; - } - - macslot->present =3D 1; - macslot->gpa_start =3D slot->start; - macslot->size =3D slot->size; - ret =3D hv_vm_map(slot->mem, slot->start, slot->size, flags); - assert_hvf_ok(ret); - return 0; -} - -static void hvf_set_phys_mem(MemoryRegionSection *section, bool add) -{ - hvf_slot *mem; - MemoryRegion *area =3D section->mr; - bool writable =3D !area->readonly && !area->rom_device; - hv_memory_flags_t flags; - uint64_t page_size =3D qemu_real_host_page_size(); - - if (!memory_region_is_ram(area)) { - if (writable) { - return; - } else if (!memory_region_is_romd(area)) { - /* - * If the memory device is not in romd_mode, then we actually = want - * to remove the hvf memory slot so all accesses will trap. - */ - add =3D false; - } - } - - if (!QEMU_IS_ALIGNED(int128_get64(section->size), page_size) || - !QEMU_IS_ALIGNED(section->offset_within_address_space, page_size))= { - /* Not page aligned, so we can not map as RAM */ - add =3D false; - } - - mem =3D hvf_find_overlap_slot( - section->offset_within_address_space, - int128_get64(section->size)); - - if (mem && add) { - if (mem->size =3D=3D int128_get64(section->size) && - mem->start =3D=3D section->offset_within_address_space && - mem->mem =3D=3D (memory_region_get_ram_ptr(area) + - section->offset_within_region)) { - return; /* Same region was attempted to register, go away. */ - } - } - - /* Region needs to be reset. set the size to 0 and remap it. */ - if (mem) { - mem->size =3D 0; - if (do_hvf_set_memory(mem, 0)) { - error_report("Failed to reset overlapping slot"); - abort(); - } - } - - if (!add) { - return; - } - - if (area->readonly || - (!memory_region_is_ram(area) && memory_region_is_romd(area))) { - flags =3D HV_MEMORY_READ | HV_MEMORY_EXEC; - } else { - flags =3D HV_MEMORY_READ | HV_MEMORY_WRITE | HV_MEMORY_EXEC; - } - - /* Now make a new slot. */ - int x; - - for (x =3D 0; x < hvf_state->num_slots; ++x) { - mem =3D &hvf_state->slots[x]; - if (!mem->size) { - break; - } - } - - if (x =3D=3D hvf_state->num_slots) { - error_report("No free slots"); - abort(); - } - - mem->size =3D int128_get64(section->size); - mem->mem =3D memory_region_get_ram_ptr(area) + section->offset_within_= region; - mem->start =3D section->offset_within_address_space; - mem->region =3D area; - - if (do_hvf_set_memory(mem, flags)) { - error_report("Error registering new memory slot"); - abort(); - } -} - static void do_hvf_cpu_synchronize_state(CPUState *cpu, run_on_cpu_data ar= g) { if (!cpu->accel->dirty) { @@ -237,157 +114,16 @@ static void hvf_cpu_synchronize_pre_loadvm(CPUState = *cpu) run_on_cpu(cpu, do_hvf_cpu_synchronize_set_dirty, RUN_ON_CPU_NULL); } =20 -static void hvf_set_dirty_tracking(MemoryRegionSection *section, bool on) -{ - hvf_slot *slot; - - slot =3D hvf_find_overlap_slot( - section->offset_within_address_space, - int128_get64(section->size)); - - /* protect region against writes; begin tracking it */ - if (on) { - slot->flags |=3D HVF_SLOT_LOG; - hv_vm_protect((uintptr_t)slot->start, (size_t)slot->size, - HV_MEMORY_READ | HV_MEMORY_EXEC); - /* stop tracking region*/ - } else { - slot->flags &=3D ~HVF_SLOT_LOG; - hv_vm_protect((uintptr_t)slot->start, (size_t)slot->size, - HV_MEMORY_READ | HV_MEMORY_WRITE | HV_MEMORY_EXEC); - } -} - -static void hvf_log_start(MemoryListener *listener, - MemoryRegionSection *section, int old, int new) -{ - if (old !=3D 0) { - return; - } - - hvf_set_dirty_tracking(section, 1); -} - -static void hvf_log_stop(MemoryListener *listener, - MemoryRegionSection *section, int old, int new) -{ - if (new !=3D 0) { - return; - } - - hvf_set_dirty_tracking(section, 0); -} - -static void hvf_log_sync(MemoryListener *listener, - MemoryRegionSection *section) -{ - /* - * sync of dirty pages is handled elsewhere; just make sure we keep - * tracking the region. - */ - hvf_set_dirty_tracking(section, 1); -} - -static void hvf_region_add(MemoryListener *listener, - MemoryRegionSection *section) -{ - hvf_set_phys_mem(section, true); -} - -static void hvf_region_del(MemoryListener *listener, - MemoryRegionSection *section) -{ - hvf_set_phys_mem(section, false); -} - -static MemoryListener hvf_memory_listener =3D { - .name =3D "hvf", - .priority =3D MEMORY_LISTENER_PRIORITY_ACCEL, - .region_add =3D hvf_region_add, - .region_del =3D hvf_region_del, - .log_start =3D hvf_log_start, - .log_stop =3D hvf_log_stop, - .log_sync =3D hvf_log_sync, -}; - static void dummy_signal(int sig) { } =20 -bool hvf_allowed; - -static int hvf_accel_init(AccelState *as, MachineState *ms) -{ - int x; - hv_return_t ret; - HVFState *s =3D HVF_STATE(as); - int pa_range =3D 36; - MachineClass *mc =3D MACHINE_GET_CLASS(ms); - - if (mc->hvf_get_physical_address_range) { - pa_range =3D mc->hvf_get_physical_address_range(ms); - if (pa_range < 0) { - return -EINVAL; - } - } - - ret =3D hvf_arch_vm_create(ms, (uint32_t)pa_range); - if (ret =3D=3D HV_DENIED) { - error_report("Could not access HVF. Is the executable signed" - " with com.apple.security.hypervisor entitlement?"); - exit(1); - } - assert_hvf_ok(ret); - - s->num_slots =3D ARRAY_SIZE(s->slots); - for (x =3D 0; x < s->num_slots; ++x) { - s->slots[x].size =3D 0; - s->slots[x].slot_id =3D x; - } - - QTAILQ_INIT(&s->hvf_sw_breakpoints); - - hvf_state =3D s; - memory_listener_register(&hvf_memory_listener, &address_space_memory); - - return hvf_arch_init(); -} - -static inline int hvf_gdbstub_sstep_flags(AccelState *as) -{ - return SSTEP_ENABLE | SSTEP_NOIRQ; -} - static void do_hvf_get_vcpu_exec_time(CPUState *cpu, run_on_cpu_data arg) { int r =3D hv_vcpu_get_exec_time(cpu->accel->fd, arg.host_ptr); assert_hvf_ok(r); } =20 -static void hvf_accel_class_init(ObjectClass *oc, const void *data) -{ - AccelClass *ac =3D ACCEL_CLASS(oc); - ac->name =3D "HVF"; - ac->init_machine =3D hvf_accel_init; - ac->allowed =3D &hvf_allowed; - ac->supports_guest_debug =3D hvf_arch_supports_guest_debug; - ac->gdbstub_supported_sstep_flags =3D hvf_gdbstub_sstep_flags; -} - -static const TypeInfo hvf_accel_type =3D { - .name =3D TYPE_HVF_ACCEL, - .parent =3D TYPE_ACCEL, - .instance_size =3D sizeof(HVFState), - .class_init =3D hvf_accel_class_init, -}; - -static void hvf_type_init(void) -{ - type_register_static(&hvf_accel_type); -} - -type_init(hvf_type_init); - static void hvf_vcpu_destroy(CPUState *cpu) { hv_return_t ret =3D hv_vcpu_destroy(cpu->accel->fd); @@ -656,8 +392,10 @@ static const TypeInfo hvf_accel_ops_type =3D { .class_init =3D hvf_accel_ops_class_init, .abstract =3D true, }; + static void hvf_accel_ops_register_types(void) { type_register_static(&hvf_accel_ops_type); } + type_init(hvf_accel_ops_register_types); diff --git a/accel/hvf/hvf-all.c b/accel/hvf/hvf-all.c index 481d7dece57..66a4a201c34 100644 --- a/accel/hvf/hvf-all.c +++ b/accel/hvf/hvf-all.c @@ -10,8 +10,24 @@ =20 #include "qemu/osdep.h" #include "qemu/error-report.h" +#include "system/address-spaces.h" +#include "system/memory.h" #include "system/hvf.h" #include "system/hvf_int.h" +#include "hw/core/cpu.h" +#include "hw/boards.h" +#include "trace.h" + +bool hvf_allowed; + +struct mac_slot { + int present; + uint64_t size; + uint64_t gpa_start; + uint64_t gva; +}; + +struct mac_slot mac_slots[32]; =20 const char *hvf_return_string(hv_return_t ret) { @@ -40,3 +56,254 @@ void assert_hvf_ok_impl(hv_return_t ret, const char *fi= le, unsigned int line, =20 abort(); } + +static int do_hvf_set_memory(hvf_slot *slot, hv_memory_flags_t flags) +{ + struct mac_slot *macslot; + hv_return_t ret; + + macslot =3D &mac_slots[slot->slot_id]; + + if (macslot->present) { + if (macslot->size !=3D slot->size) { + macslot->present =3D 0; + ret =3D hv_vm_unmap(macslot->gpa_start, macslot->size); + assert_hvf_ok(ret); + } + } + + if (!slot->size) { + return 0; + } + + macslot->present =3D 1; + macslot->gpa_start =3D slot->start; + macslot->size =3D slot->size; + ret =3D hv_vm_map(slot->mem, slot->start, slot->size, flags); + assert_hvf_ok(ret); + return 0; +} + +static void hvf_set_phys_mem(MemoryRegionSection *section, bool add) +{ + hvf_slot *mem; + MemoryRegion *area =3D section->mr; + bool writable =3D !area->readonly && !area->rom_device; + hv_memory_flags_t flags; + uint64_t page_size =3D qemu_real_host_page_size(); + + if (!memory_region_is_ram(area)) { + if (writable) { + return; + } else if (!memory_region_is_romd(area)) { + /* + * If the memory device is not in romd_mode, then we actually = want + * to remove the hvf memory slot so all accesses will trap. + */ + add =3D false; + } + } + + if (!QEMU_IS_ALIGNED(int128_get64(section->size), page_size) || + !QEMU_IS_ALIGNED(section->offset_within_address_space, page_size))= { + /* Not page aligned, so we can not map as RAM */ + add =3D false; + } + + mem =3D hvf_find_overlap_slot( + section->offset_within_address_space, + int128_get64(section->size)); + + if (mem && add) { + if (mem->size =3D=3D int128_get64(section->size) && + mem->start =3D=3D section->offset_within_address_space && + mem->mem =3D=3D (memory_region_get_ram_ptr(area) + + section->offset_within_region)) { + return; /* Same region was attempted to register, go away. */ + } + } + + /* Region needs to be reset. set the size to 0 and remap it. */ + if (mem) { + mem->size =3D 0; + if (do_hvf_set_memory(mem, 0)) { + error_report("Failed to reset overlapping slot"); + abort(); + } + } + + if (!add) { + return; + } + + if (area->readonly || + (!memory_region_is_ram(area) && memory_region_is_romd(area))) { + flags =3D HV_MEMORY_READ | HV_MEMORY_EXEC; + } else { + flags =3D HV_MEMORY_READ | HV_MEMORY_WRITE | HV_MEMORY_EXEC; + } + + /* Now make a new slot. */ + int x; + + for (x =3D 0; x < hvf_state->num_slots; ++x) { + mem =3D &hvf_state->slots[x]; + if (!mem->size) { + break; + } + } + + if (x =3D=3D hvf_state->num_slots) { + error_report("No free slots"); + abort(); + } + + mem->size =3D int128_get64(section->size); + mem->mem =3D memory_region_get_ram_ptr(area) + section->offset_within_= region; + mem->start =3D section->offset_within_address_space; + mem->region =3D area; + + if (do_hvf_set_memory(mem, flags)) { + error_report("Error registering new memory slot"); + abort(); + } +} + +static void hvf_set_dirty_tracking(MemoryRegionSection *section, bool on) +{ + hvf_slot *slot; + + slot =3D hvf_find_overlap_slot( + section->offset_within_address_space, + int128_get64(section->size)); + + /* protect region against writes; begin tracking it */ + if (on) { + slot->flags |=3D HVF_SLOT_LOG; + hv_vm_protect((uintptr_t)slot->start, (size_t)slot->size, + HV_MEMORY_READ | HV_MEMORY_EXEC); + /* stop tracking region*/ + } else { + slot->flags &=3D ~HVF_SLOT_LOG; + hv_vm_protect((uintptr_t)slot->start, (size_t)slot->size, + HV_MEMORY_READ | HV_MEMORY_WRITE | HV_MEMORY_EXEC); + } +} + +static void hvf_log_start(MemoryListener *listener, + MemoryRegionSection *section, int old, int new) +{ + if (old !=3D 0) { + return; + } + + hvf_set_dirty_tracking(section, 1); +} + +static void hvf_log_stop(MemoryListener *listener, + MemoryRegionSection *section, int old, int new) +{ + if (new !=3D 0) { + return; + } + + hvf_set_dirty_tracking(section, 0); +} + +static void hvf_log_sync(MemoryListener *listener, + MemoryRegionSection *section) +{ + /* + * sync of dirty pages is handled elsewhere; just make sure we keep + * tracking the region. + */ + hvf_set_dirty_tracking(section, 1); +} + +static void hvf_region_add(MemoryListener *listener, + MemoryRegionSection *section) +{ + hvf_set_phys_mem(section, true); +} + +static void hvf_region_del(MemoryListener *listener, + MemoryRegionSection *section) +{ + hvf_set_phys_mem(section, false); +} + +static MemoryListener hvf_memory_listener =3D { + .name =3D "hvf", + .priority =3D MEMORY_LISTENER_PRIORITY_ACCEL, + .region_add =3D hvf_region_add, + .region_del =3D hvf_region_del, + .log_start =3D hvf_log_start, + .log_stop =3D hvf_log_stop, + .log_sync =3D hvf_log_sync, +}; + +static int hvf_accel_init(AccelState *as, MachineState *ms) +{ + int x; + hv_return_t ret; + HVFState *s =3D HVF_STATE(as); + int pa_range =3D 36; + MachineClass *mc =3D MACHINE_GET_CLASS(ms); + + if (mc->hvf_get_physical_address_range) { + pa_range =3D mc->hvf_get_physical_address_range(ms); + if (pa_range < 0) { + return -EINVAL; + } + } + + ret =3D hvf_arch_vm_create(ms, (uint32_t)pa_range); + if (ret =3D=3D HV_DENIED) { + error_report("Could not access HVF. Is the executable signed" + " with com.apple.security.hypervisor entitlement?"); + exit(1); + } + assert_hvf_ok(ret); + + s->num_slots =3D ARRAY_SIZE(s->slots); + for (x =3D 0; x < s->num_slots; ++x) { + s->slots[x].size =3D 0; + s->slots[x].slot_id =3D x; + } + + QTAILQ_INIT(&s->hvf_sw_breakpoints); + + hvf_state =3D s; + memory_listener_register(&hvf_memory_listener, &address_space_memory); + + return hvf_arch_init(); +} + +static inline int hvf_gdbstub_sstep_flags(AccelState *as) +{ + return SSTEP_ENABLE | SSTEP_NOIRQ; +} + +static void hvf_accel_class_init(ObjectClass *oc, const void *data) +{ + AccelClass *ac =3D ACCEL_CLASS(oc); + ac->name =3D "HVF"; + ac->init_machine =3D hvf_accel_init; + ac->allowed =3D &hvf_allowed; + ac->supports_guest_debug =3D hvf_arch_supports_guest_debug; + ac->gdbstub_supported_sstep_flags =3D hvf_gdbstub_sstep_flags; +} + +static const TypeInfo hvf_accel_type =3D { + .name =3D TYPE_HVF_ACCEL, + .parent =3D TYPE_ACCEL, + .instance_size =3D sizeof(HVFState), + .class_init =3D hvf_accel_class_init, +}; + +static void hvf_type_init(void) +{ + type_register_static(&hvf_accel_type); +} + +type_init(hvf_type_init); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381293; cv=none; d=zohomail.com; s=zohoarc; b=lJarAMS6uWkbsqlJs5rDAUfw+LpNQYhyUnNhWcuf76kgKI3KAXIB6qhj1Qn1IpGLBjZU19804xYAusZW8eryxmmW7a22Q/mDWp7VN8/lQk1+RZKpSWwhdJYPp2cy7cm/i3xKUncrnsbV9GH4zfPQBri3RE7I6zTmR3KeJsNNnXE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381293; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=/Uuv2h3s82hPAzYpnhwyO1+75T5oRaTFf+ZSAVIOeJ0=; b=eyuKGEudleZPXpxKuFgswDUsHmdQbr4h5fKIgSyB5S2yLdAaBtRlwFrnyhTN9PNT5w4j6drUuW9f7JS4QI4i4KejAxVfK66QET/X0cC2fHCoXYHMMbnxlPkR/grDHrvrsxvh8JWjbdnMpE7a8259vIh3p4+lWwd/eNS7MCnpbzA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381293712667.6862687815361; Tue, 1 Jul 2025 07:48:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcD3-0002al-KE; Tue, 01 Jul 2025 10:43:45 -0400 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 1uWcCc-0001rx-7X for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:20 -0400 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 1uWcCa-00073w-7W for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:17 -0400 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-45348bff79fso33266545e9.2 for ; Tue, 01 Jul 2025 07:43:13 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453923a22fbsm126724855e9.34.2025.07.01.07.43.10 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380991; x=1751985791; 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=/Uuv2h3s82hPAzYpnhwyO1+75T5oRaTFf+ZSAVIOeJ0=; b=RGvl/U5TjtgFBMqHdWAOkA6KOkijXGiukg9LAcdXgxmJrZiMyEXdVUAoKR2E5CtNUK OW0Gbq6yYU2jAUl0pXwt3t3/pWACzxzA+E0r1+H/Do+vDd+qa40jCJOUKmnVYQwVSR7A JTvBVj7uvKEk62jspceciBhUmzejkgB1iERbEcAiKfV6+8YINgM/6txvQBEmNcTind/I vfek57zEnO/LMBnkcDc3WGjSdttiLqBH3qzpWAa6r8Br5P3NH+bjm/J8pGrTdX6OLHuq OGFtjfea0t8N5mZYpK7qipTYKah4tC+LTxU685fYSikfrQzveajjeIDahXND6Qgmha4p OjHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380991; x=1751985791; 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=/Uuv2h3s82hPAzYpnhwyO1+75T5oRaTFf+ZSAVIOeJ0=; b=uKTdSniIS5KBKkSdWUzIGalvzc52bTo6ndWg+rs21JfcXHTYERAIS27Evf9EyIDJbx mnbcH2qT1owh8MwpuqS3373X0/SkpkCqdjZwOxmvzLJ9FfVv2iCsWcAsHHvG8QSlfDEq rwpZvnnGVX7itPPx7U8ycl8iXEvzdF3SJVqZKlOIl+w3UemB8sz9R0euFGCj8+P3//Qq M3YqD/Sm0yP8nIP0aHEGuW0dHMbou/qMIxhufVZQfJw7HK5/MNRcwAL/jz/wKze/W9yN UmlILl63eNXZ0SPq2X8m6k3UwpwwU6AVCHJeRmUWURruRjAcJxpGm3FNV6DrRoT30AYu zFBw== X-Gm-Message-State: AOJu0Yxs4IrssGSiG9/dHouTpN/L7vOLtanMWbc2hTNUCJ5giwftsdwY yU28wyLz1zrj7Z9SaQmkLBj8cE+tta1KdJwlmkazUhCCTCxfvufCMdcFDgVLDviP4QQzHYX+qbC Xtzsh X-Gm-Gg: ASbGncuHiUiW0nbeUt6CtPRJoiCYt2K/TgV4D1pkdEatp6G54LIwKquR6mYvNU0Svgw 6wsa2lBBIIrFdvVr5twVrq5GFrmwC9wSwteJPCGlikneEoW0xjdkYHnLl6ESzJGwpPmR9Sdg0qi TiYOa46X/XhU06qMDy7rwzPRwXk4Bw/dSohvsquULnyz2dDzRi4jsL3xcKI/cNAxU8dHbqLsVqV /NEmYx0d4hVdqYefs6OYwGG6LpQ73MnSyywwXgHzQ8ZRCBY9uSe1RLk3YCUPBXoI3YXoU0bI5hp mkUYKymhDqWHp5Pab6FXisK/wSQQqbtWz/xdDtO5rrd6h8fvPWVjr8/bBgx4ff+VTuV7pUcvOdT 54ot1qsSrrnh1Tt3vljTfBvaKhGZdbptmg8J3 X-Google-Smtp-Source: AGHT+IH1FlGkVQVjNTmzz5bs7GJytt6TF1Z1nClpaY0hy6zWXByUB3OsAYkwGESvvTnAy4Gi1LejCA== X-Received: by 2002:a05:600c:828e:b0:43d:fa59:a685 with SMTP id 5b1f17b1804b1-453900db0e0mr154901405e9.33.1751380991502; Tue, 01 Jul 2025 07:43:11 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 32/68] cpus: Document CPUState::vcpu_dirty field Date: Tue, 1 Jul 2025 16:39:40 +0200 Message-ID: <20250701144017.43487-33-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::333; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381295590116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/hw/core/cpu.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 33296a1c080..726427449da 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -441,6 +441,7 @@ struct qemu_work_item; * @opaque: User data. * @mem_io_pc: Host Program Counter at which the memory was accessed. * @accel: Pointer to accelerator specific state. + * @vcpu_dirty: Hardware accelerator is not synchronized with QEMU state * @kvm_fd: vCPU file descriptor for KVM. * @work_mutex: Lock to prevent multiple access to @work_list. * @work_list: List of pending asynchronous work. @@ -537,7 +538,6 @@ struct CPUState { uint32_t kvm_fetch_index; uint64_t dirty_pages; int kvm_vcpu_stats_fd; - bool vcpu_dirty; =20 /* Use by accel-block: CPU is executing an ioctl() */ QemuLockCnt in_ioctl_lock; @@ -553,6 +553,7 @@ struct CPUState { uint32_t halted; int32_t exception_index; =20 + bool vcpu_dirty; AccelCPUState *accel; =20 /* Used to keep track of an outstanding cpu throttle thread for migrat= ion --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381096; cv=none; d=zohomail.com; s=zohoarc; b=cOuCfOC7z4yL+GxFCzaS4bO0LvDkQ2lqUUcOy2G5lEcC2pSadCKJp5HotzYC3ULQSIynZLx6ZRtrxhG9F6KCQA1quRHdeH2mEpEgDZBJcZboyAw08oDEmhV4pKFfHmM6ytANR3RPtqVgOoe1DcVMuYX2b255i8IkSVzomY8aTdE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381096; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=db1O6737cUvXEcrxQJckebve6nRy9MFZBmUtv6n+W3s=; b=JtCWnnYNTi9RcMPTLemdNMoa5sDMUwr21xpZKt3y+x0YRiHTtxE3xQoeJslZiggirp/PLxnmfFl1K/7vNFf0w5qnS7Py7k0lZxNYecJt5SBSsFYJTmX4MU2Muw6zciTGcBRifPYjoaSQs20/j3ZZhR3bMS+K/uiqQE3v1xWKMeE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381096324578.9428394593998; Tue, 1 Jul 2025 07:44:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcD7-0002fU-AD; Tue, 01 Jul 2025 10:43:49 -0400 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 1uWcCi-0002BN-BE for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:27 -0400 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcCe-00074e-DF for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:23 -0400 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-4538bc1cffdso32602155e9.0 for ; Tue, 01 Jul 2025 07:43:19 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3b3213sm165918405e9.18.2025.07.01.07.43.15 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751380996; x=1751985796; 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=db1O6737cUvXEcrxQJckebve6nRy9MFZBmUtv6n+W3s=; b=hkH5NJo0EZC6wScla702E6pUBpk8D+Zfny9biUHupaO7v7IHYDJLpoD8ANakoAJF9v yQoWUyr+meapP0X7zm09zePRBISUSwjJMShm+hXQpN+tcI9VEcbjrVrtXQM0Mhvwdj02 XxXhBCf83MX86ssDM7iQnII85zGmIZ1gP1kzpFnnjL6A83vQATQgu7zgNX6OH1FgXz6E CmCYQX+E29FgK3m4oa+2waEQhjx8tsL4CjfhMXS6WW3hbK3XudiTRvL+jKHd8v/eozTU 116G6/P3AEimlPSEylOf1kqzTA3/Qrsy4pkiPZJ972bZOKHNYvb+5FQNH8ABSp3UDTvh nz9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751380996; x=1751985796; 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=db1O6737cUvXEcrxQJckebve6nRy9MFZBmUtv6n+W3s=; b=v8x/yzrsznhzGrBIy+UENVpqyihrjxX1uKoKN05waVRDrCKFDXE1zDv8omb7XI7Kbj 6dKhKKejFU0u7mhg6jp7SeODPXDNIShydK1b1NWjNuG5c7qGcGJIKhzD54Gz0DRXp2ng C68uFObgRSmsTlgAznHBXlBaTE0YifUbZ+nNzgKzP3Uy2dyN+asTGyEtj5SrYkFrL9Mk AaR4jn4/NStwAYDn9/WblmEdcm37iFK8lrcpWmuV7/nxuEOW68yqzbTycKOLxcwEJJGX Uqn9UFvBa8JH/JZ8I8Sksa8d7YQjehzP7sqwhQbk053uccSYMeaa4jZ5LvKJWJlAmObO dASA== X-Gm-Message-State: AOJu0Yw3uAKehT7oAmPGnY7K7q6jF58YHu056o+ieCkGWljv/o/MCehm xuo+x5fOu0YqQ4Rvqp43tIz7y0PYv8IuC01MPdC1yCm2NDknDghBWXd6F/gFa8MGq/KkxCkJvOt cZuQr X-Gm-Gg: ASbGncu9qN4yfwxbySlXFbt0o5q+byx51oaXUgIzA1n+GQFc2Mgj4Mp2O4MtvFFECB/ f64vrNye1aEIKGuI+4eOV0vdEvT/oZas67w3IaEkaJmgZ+qNmrB+o+ZJ/rIFS/AsfTHHL5Rji9O LsXvpPfud08EtzhWlopUtDtcRird9N1TJGF9FddPKFpRPjN7TABIqjmmjBqWQ3JEwOhzOzQ9bCa m7JdTJKvTAxGJ/Tu7O8Z2sn5qsBXcx7gXif7jql7MUy0vHHXQDxxqVuRREkCZ0hAkyIU4K7sgCU abzyWd6u5U9Dp9e9myi/EAVycNfa0t+nVZTuyzePlI4xSbx9BpbxvzmpPEFxnC4ivmNJ0hTx0GI Wk6KCEIqaO2MJXJqK7xWqHeOBfcq9RUITG0BF X-Google-Smtp-Source: AGHT+IEq2XxPOyHeLpM/1GRTY6h2ojLqztnC1Y8fjicAkz3Rd39wns4mmkEG6giYM8b+CA/peOWg7Q== X-Received: by 2002:a05:600c:8112:b0:442:ccfa:1461 with SMTP id 5b1f17b1804b1-4538ee5d268mr196225945e9.13.1751380996368; Tue, 01 Jul 2025 07:43:16 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 33/68] accel/hvf: Replace @dirty field by generic CPUState::vcpu_dirty field Date: Tue, 1 Jul 2025 16:39:41 +0200 Message-ID: <20250701144017.43487-34-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32f; envelope-from=philmd@linaro.org; helo=mail-wm1-x32f.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381097024116600 No need for accel-specific @dirty field when we have a generic one in CPUState. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/hvf_int.h | 1 - accel/hvf/hvf-accel-ops.c | 10 +++++----- target/arm/hvf/hvf.c | 4 ++-- target/i386/hvf/hvf.c | 4 ++-- target/i386/hvf/x86hvf.c | 2 +- 5 files changed, 10 insertions(+), 11 deletions(-) diff --git a/include/system/hvf_int.h b/include/system/hvf_int.h index ea6730f255d..a8ee7c7dae6 100644 --- a/include/system/hvf_int.h +++ b/include/system/hvf_int.h @@ -62,7 +62,6 @@ struct AccelCPUState { bool vtimer_masked; sigset_t unblock_ipi_mask; bool guest_debug_enabled; - bool dirty; }; =20 void assert_hvf_ok_impl(hv_return_t ret, const char *file, unsigned int li= ne, diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index 319c30f703c..c91e18bc3dd 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -79,15 +79,15 @@ hvf_slot *hvf_find_overlap_slot(uint64_t start, uint64_= t size) =20 static void do_hvf_cpu_synchronize_state(CPUState *cpu, run_on_cpu_data ar= g) { - if (!cpu->accel->dirty) { + if (!cpu->vcpu_dirty) { hvf_get_registers(cpu); - cpu->accel->dirty =3D true; + cpu->vcpu_dirty =3D true; } } =20 static void hvf_cpu_synchronize_state(CPUState *cpu) { - if (!cpu->accel->dirty) { + if (!cpu->vcpu_dirty) { run_on_cpu(cpu, do_hvf_cpu_synchronize_state, RUN_ON_CPU_NULL); } } @@ -96,7 +96,7 @@ static void do_hvf_cpu_synchronize_set_dirty(CPUState *cp= u, run_on_cpu_data arg) { /* QEMU state is the reference, push it to HVF now and on next entry */ - cpu->accel->dirty =3D true; + cpu->vcpu_dirty =3D true; } =20 static void hvf_cpu_synchronize_post_reset(CPUState *cpu) @@ -156,8 +156,8 @@ static int hvf_init_vcpu(CPUState *cpu) #else r =3D hv_vcpu_create(&cpu->accel->fd, HV_VCPU_DEFAULT); #endif - cpu->accel->dirty =3D true; assert_hvf_ok(r); + cpu->vcpu_dirty =3D true; =20 cpu->accel->guest_debug_enabled =3D false; =20 diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 3fb0b49df8a..c3876cead18 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -812,9 +812,9 @@ int hvf_put_registers(CPUState *cpu) =20 static void flush_cpu_state(CPUState *cpu) { - if (cpu->accel->dirty) { + if (cpu->vcpu_dirty) { hvf_put_registers(cpu); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } } =20 diff --git a/target/i386/hvf/hvf.c b/target/i386/hvf/hvf.c index bcf30662bec..c893aaac1b0 100644 --- a/target/i386/hvf/hvf.c +++ b/target/i386/hvf/hvf.c @@ -738,9 +738,9 @@ int hvf_vcpu_exec(CPUState *cpu) } =20 do { - if (cpu->accel->dirty) { + if (cpu->vcpu_dirty) { hvf_put_registers(cpu); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 if (hvf_inject_interrupts(cpu)) { diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c index 2057314892a..17fce1d3cdd 100644 --- a/target/i386/hvf/x86hvf.c +++ b/target/i386/hvf/x86hvf.c @@ -427,7 +427,7 @@ int hvf_process_events(CPUState *cs) X86CPU *cpu =3D X86_CPU(cs); CPUX86State *env =3D &cpu->env; =20 - if (!cs->accel->dirty) { + if (!cs->vcpu_dirty) { /* light weight sync for CPU_INTERRUPT_HARD and IF_MASK */ env->eflags =3D rreg(cs->accel->fd, HV_X86_RFLAGS); } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381834; cv=none; d=zohomail.com; s=zohoarc; b=SPnQ6c1mAZsyginjPRlPuu7LebdAd77RUJa0G22vNexH+y3i+p9mtIdzjldF5lOISsUSBdwZGKdRtnKCgpLxwjMr6pPiRQBNBreN/kOZUIPan5xBd+jDTNipifPfkLCIQSMQZrl7r43FHN1AE1i/uSwoF2xMeTV2NtzzMp6+340= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381834; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=7EjicFj3mKLXmtsZdVU/gL847hxXqbjFGE9VNE1eVX8=; b=Z6rjJt68wSSgR6C4GIkDy0MaeYRq6faJKiJEvfvjEkwJ5b+tT6rA7QMGrRvapLu9Cl2OIwkpx1nPOd1ODBL8aqGXRIbYwI2Z3h/m3q8N02E7TZoop9SfVKcI14tvjZxNWh7l9qNk0fxclVhnqVNvi7IAh8T0QyYvvO1k2RPBXaY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381834753703.3891250163645; Tue, 1 Jul 2025 07:57:14 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcD9-0002iF-IH; Tue, 01 Jul 2025 10:43:51 -0400 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 1uWcCs-0002N7-9c for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:34 -0400 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 1uWcCj-00074n-4E for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:34 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-451d3f72391so35407445e9.3 for ; Tue, 01 Jul 2025 07:43:23 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3a57c2sm167703985e9.12.2025.07.01.07.43.20 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381001; x=1751985801; 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=7EjicFj3mKLXmtsZdVU/gL847hxXqbjFGE9VNE1eVX8=; b=dlHuoFPnyKRzJUIeohGLMgmIfPgualPyg96OCUCIL5K8pMEaU0giGVa/qreC3vaBHh +lv8a7jEZgHd80g5l3Sf/82YFJnusW+aBIwCsHCr4gSOH0ZB8eKf/9nzOzlMhGIKkZI0 uIX4YBaCkExOAflPl7weU1o0xKAFHcXtQX8eyezvijjZWPm/MuHzE4uJbETX5aMTPCp+ /S4C+Ll98fDjrOThGnb8y13wmcZMdnZqpa1ihBktRtW/TFggTlgvs/PWI8fu3QZCdsHr O4RlXD1pyHWfJluv5ZlSJ89ijRiIMnRfA10aHI790oth5TAz7RtCwAGmuNz5BY22iHoy P8GA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381001; x=1751985801; 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=7EjicFj3mKLXmtsZdVU/gL847hxXqbjFGE9VNE1eVX8=; b=OMGqEWQxJGDvG0L+LOnXF1y3bVq+bSFgUxzcEgaufvMaDrJfNis/FYgGNNgGwl/A9T ImW6onDr1fsdbIxwO2uYFQzcMmWnCzpMgcyTgOqwqE+52RUTupmiM45Lxs+X9zwk2a8u dS0fukwg15jGueawovPpf28rFVfvuzIYJoFOxDtLaPc/m+CzancnOMAHKR2qi5VcYHu3 I1kZa6QxcdjiIrPhVRV7zH39tpBL6V6UI3g8w5+RHRCeYcgdUSLvCP5GEXO1zHc5+afx qYKUjRvhT5eH9EPvYWfk5MPbdUG9txMgk9g07ez5yMxZN/47h+pHadEQmWdHRupG20XG Mgiw== X-Gm-Message-State: AOJu0Yx1G2Avc/Xe+0f99oZ7O5NJoeB2o3ymgl4kU0HgKRC4ACP2ysoq sovluojR2GPOCyC1/vCWdvWoAq/QkU4Lnxyr/sLcDxbkEgpbsH/LqKCyxtsV/GmSvGjcfHuibyx wqSeK X-Gm-Gg: ASbGncvNWi+3dDl5q4Cz0LiWgdnGaxSWCuof/hX9hd3AG/HS3dhA7xwbKnUFyE+n/H2 eqWB+x3gsYYCGIoNnRrXdyPXQF7TOp3CVTABfR4sS+dAJQdtx2ytuH16fu8QDd+rTzrF5vfmTSj fBnUMedAMwgjBWuTJNi198iAE4GgYHNQHwAqbELq2SusdsLzmjgl1/rj8ldMhLwfga/GzsCg38V Die7mLlEvT1aOVT6448IQtfihX4lTxhRlpQaOTms8iEx6pryj1kWzaxfQ7k3zt0oyFt3dP7BrBj unoHrHyZaq2gAZN+TZyvQlmIpds9qwMmoLnSWkA0pz2+Y22aTw8iCyVRhwe6xiNmnqfHl602JJ2 dtVhfg//nMBT5FxKPGITAZXUQTNK+sdsyUDE0 X-Google-Smtp-Source: AGHT+IGPIFdIVCv7ShCYVOQDWmMRtChceLu/PhYtFQfmgEcq3I/IkPBcOouEFqbhP8YSKnDp3Sg5lw== X-Received: by 2002:a05:600c:a46:b0:44d:a244:4983 with SMTP id 5b1f17b1804b1-4539726acc1mr148594725e9.3.1751381001440; Tue, 01 Jul 2025 07:43:21 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 34/68] accel/nvmm: Replace @dirty field by generic CPUState::vcpu_dirty field Date: Tue, 1 Jul 2025 16:39:42 +0200 Message-ID: <20250701144017.43487-35-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381837155116600 No need for accel-specific @dirty field when we have a generic one in CPUState. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- target/i386/nvmm/nvmm-all.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index eaae175aa5d..f521c36dc53 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -30,7 +30,6 @@ struct AccelCPUState { struct nvmm_vcpu vcpu; uint8_t tpr; bool stop; - bool dirty; =20 /* Window-exiting for INTs/NMIs. */ bool int_window_exit; @@ -508,7 +507,7 @@ nvmm_io_callback(struct nvmm_io *io) } =20 /* Needed, otherwise infinite loop. */ - current_cpu->accel->dirty =3D false; + current_cpu->vcpu_dirty =3D false; } =20 static void @@ -517,7 +516,7 @@ nvmm_mem_callback(struct nvmm_mem *mem) cpu_physical_memory_rw(mem->gpa, mem->data, mem->size, mem->write); =20 /* Needed, otherwise infinite loop. */ - current_cpu->accel->dirty =3D false; + current_cpu->vcpu_dirty =3D false; } =20 static struct nvmm_assist_callbacks nvmm_callbacks =3D { @@ -727,9 +726,9 @@ nvmm_vcpu_loop(CPUState *cpu) * Inner VCPU loop. */ do { - if (cpu->accel->dirty) { + if (cpu->vcpu_dirty) { nvmm_set_registers(cpu); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 if (qcpu->stop) { @@ -827,32 +826,32 @@ static void do_nvmm_cpu_synchronize_state(CPUState *cpu, run_on_cpu_data arg) { nvmm_get_registers(cpu); - cpu->accel->dirty =3D true; + cpu->vcpu_dirty =3D true; } =20 static void do_nvmm_cpu_synchronize_post_reset(CPUState *cpu, run_on_cpu_data arg) { nvmm_set_registers(cpu); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 static void do_nvmm_cpu_synchronize_post_init(CPUState *cpu, run_on_cpu_data arg) { nvmm_set_registers(cpu); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 static void do_nvmm_cpu_synchronize_pre_loadvm(CPUState *cpu, run_on_cpu_data arg) { - cpu->accel->dirty =3D true; + cpu->vcpu_dirty =3D true; } =20 void nvmm_cpu_synchronize_state(CPUState *cpu) { - if (!cpu->accel->dirty) { + if (!cpu->vcpu_dirty) { run_on_cpu(cpu, do_nvmm_cpu_synchronize_state, RUN_ON_CPU_NULL); } } @@ -982,7 +981,7 @@ nvmm_init_vcpu(CPUState *cpu) } } =20 - qcpu->dirty =3D true; + qcpu->vcpu_dirty =3D true; cpu->accel =3D qcpu; =20 return 0; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381276; cv=none; d=zohomail.com; s=zohoarc; b=mgPBtiA+U+IFXQfK+iXJ0gsJb+PrWN/K1mcyTwgekRKxHtf+vO6hUJZCbMwHX+X/IOBWHM7Odp9MGpD2R2rL45jMvWaSMcKfY83rVlORGfT9J4yyniF1h+kImyifc9yW+jntaSsPcHOAp2lQMxBqN5YZg7S7oFeq9CybabiCojY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381276; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MRl+/jVdTWn/SE6FcpjjRNWIdDFt+7efEy/k/a0kODs=; b=TLYU9Ir1gqh9+crsp4N5VLw/Mgtki3lU07bbOi82BJd6deMwzfqOqN1Sj8EJzCpbsLK7KZRf9sq970Jwj6zve4uSO3lNfyb6ZEX/jxiQyiMpvdDQOPdo0OQ7hvqxctjp1JUMrcbSdfBkJfJmAGQXM6g9H2DimukzpOh9hVTrdwk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381276585915.9725160296538; Tue, 1 Jul 2025 07:47:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDB-0002lW-TH; Tue, 01 Jul 2025 10:43:54 -0400 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 1uWcCu-0002PJ-0t for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:36 -0400 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcCo-000754-F7 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:35 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-4531e146a24so34769875e9.0 for ; Tue, 01 Jul 2025 07:43:30 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453941c67c2sm124253035e9.5.2025.07.01.07.43.25 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381006; x=1751985806; 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=MRl+/jVdTWn/SE6FcpjjRNWIdDFt+7efEy/k/a0kODs=; b=waVpAmTKk95pCsl8Yf+z+YXm7fPNxG0ChGHwwfJWUOH/WJrm0s3KFO5u95gAM7qgzv plEbgS8iLu/svQgYgBtDnHMNB5DhiEaXQC3CyZQ+JO39Q3WMHl1AlXtq88nU5ZxTaQUt Zq2EzcqVw57YB9Uh26V+V1RDBSpQcutiNau61ASk9r20jkvL8Ra0OAk77n183bBpSvh+ 9Cg3ABE4FWGiK3x0RJQVW0sJk+GkW5Fc7kErKjhHL6pwhwLgU1zVKqOfEk9CL++z0Mii gpk52wnco4BN4BcOST3iVrj2mRun6TZb18JHbcbUGe1hCt6e0CNLf8JBpOZg3HOxzkMU 7MGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381006; x=1751985806; 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=MRl+/jVdTWn/SE6FcpjjRNWIdDFt+7efEy/k/a0kODs=; b=QQKqQkwlLSEyMHuC9WaPPwhyB7YwnjucGuHMROHcGxVFFLbGgKkCArCS9WQ5X39iay tBrMYw6Z/VFHiahaj6kvl2xilRGbpKjMrBbK3kk5VWYtWTuld4lB49IVkeGLbBShxXuA FTeQDTw7s03a0VCtmwP4E5dBZyROIsaPPy2JZsevk/CAgOhyAaMBqEBaK+mXYw58R3ox /umcf1x2U3+stZ0257CtdWjy/0WeHm5H+Ld6/BQtYRk6BApxNLLUK+JmzAAvcJAT+Er0 2JvAKb97GeVUIJh/pa9VBGBtrI9h1/7AS8gFDG6KT6BoXz/cliwwZTNE17OFvoIKhutl J3aA== X-Gm-Message-State: AOJu0YyUXnsubcK1iYbkgyjhXym0DheOV8oU5mXJQSMF3MPCOFLMpyk1 XM15sIqUhzRVbrdnFahmpOO/ews+qsTjWhhb7S6wBdCDd2HI2j2TrChvKRFnG/J5CWbtNhqIYy5 KIJ1a X-Gm-Gg: ASbGncsDGF1E37T2edAk5rHkf4H6PgkvhmaN0YBm1dO6BbkXLzyxunsgQbYGRGf8QRe 6bPvswooVJgxHXlzFC45G99pspJ0L0UnFNYOo8yRjAPLJ12LQ6CLRNuZ8qSNnqTbfYUyrxAo1WU BvP02m65eCE5H2Ihl7Kz0405fjRQWl4nUnX4c7XeH5KIUVBVHw5Ow9rBUEdKqedn6FLD5QO1VX2 uGSY+XfxX41ViDraAe03gZ33gYLub8i2l8iSIUo6JSon03IQ9qybGbRWwOy0MyyhG/XyRMfFAHc IaC/fIT+pSJbuMTKh3Q/NtAmxLS8yd56cJkZ1Z9sbMb7MqiYn05owQVt301Bzu4D0ZMTbX+qMBU VB2MPMR1ousOK86o0vLeMqUliDjSNoFk/++cc X-Google-Smtp-Source: AGHT+IFxWp6nbGft+2Udb6trDd3chSg8KN721L6q7FT0sfnWydH1/CQo33anu/jWB4LOlYZ8Ipbeug== X-Received: by 2002:a05:600c:4e09:b0:450:c210:a01b with SMTP id 5b1f17b1804b1-4538eeb8e0amr207871345e9.17.1751381006363; Tue, 01 Jul 2025 07:43:26 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 35/68] accel/whpx: Replace @dirty field by generic CPUState::vcpu_dirty field Date: Tue, 1 Jul 2025 16:39:43 +0200 Message-ID: <20250701144017.43487-36-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381277528116600 No need for accel-specific @dirty field when we have a generic one in CPUState. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- target/i386/whpx/whpx-all.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index 821167a2a77..f812aa36c46 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -237,7 +237,6 @@ struct AccelCPUState { uint64_t tpr; uint64_t apic_base; bool interruption_pending; - bool dirty; =20 /* Must be the last field as it may have a tail */ WHV_RUN_VP_EXIT_CONTEXT exit_ctx; @@ -836,7 +835,7 @@ static HRESULT CALLBACK whpx_emu_setreg_callback( * The emulator just successfully wrote the register state. We clear t= he * dirty state so we avoid the double write on resume of the VP. */ - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; =20 return hr; } @@ -1391,7 +1390,7 @@ static int whpx_last_vcpu_stopping(CPUState *cpu) /* Returns the address of the next instruction that is about to be execute= d. */ static vaddr whpx_vcpu_get_pc(CPUState *cpu, bool exit_context_valid) { - if (cpu->accel->dirty) { + if (cpu->vcpu_dirty) { /* The CPU registers have been modified by other parts of QEMU. */ return cpu_env(cpu)->eip; } else if (exit_context_valid) { @@ -1704,9 +1703,9 @@ static int whpx_vcpu_run(CPUState *cpu) } =20 do { - if (cpu->accel->dirty) { + if (cpu->vcpu_dirty) { whpx_set_registers(cpu, WHPX_SET_RUNTIME_STATE); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 if (exclusive_step_mode =3D=3D WHPX_STEP_NONE) { @@ -2054,9 +2053,9 @@ static int whpx_vcpu_run(CPUState *cpu) =20 static void do_whpx_cpu_synchronize_state(CPUState *cpu, run_on_cpu_data a= rg) { - if (!cpu->accel->dirty) { + if (!cpu->vcpu_dirty) { whpx_get_registers(cpu); - cpu->accel->dirty =3D true; + cpu->vcpu_dirty =3D true; } } =20 @@ -2064,20 +2063,20 @@ static void do_whpx_cpu_synchronize_post_reset(CPUS= tate *cpu, run_on_cpu_data arg) { whpx_set_registers(cpu, WHPX_SET_RESET_STATE); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 static void do_whpx_cpu_synchronize_post_init(CPUState *cpu, run_on_cpu_data arg) { whpx_set_registers(cpu, WHPX_SET_FULL_STATE); - cpu->accel->dirty =3D false; + cpu->vcpu_dirty =3D false; } =20 static void do_whpx_cpu_synchronize_pre_loadvm(CPUState *cpu, run_on_cpu_data arg) { - cpu->accel->dirty =3D true; + cpu->vcpu_dirty =3D true; } =20 /* @@ -2086,7 +2085,7 @@ static void do_whpx_cpu_synchronize_pre_loadvm(CPUSta= te *cpu, =20 void whpx_cpu_synchronize_state(CPUState *cpu) { - if (!cpu->accel->dirty) { + if (!cpu->vcpu_dirty) { run_on_cpu(cpu, do_whpx_cpu_synchronize_state, RUN_ON_CPU_NULL); } } @@ -2226,7 +2225,7 @@ int whpx_init_vcpu(CPUState *cpu) } =20 vcpu->interruptable =3D true; - vcpu->dirty =3D true; + vcpu->vcpu_dirty =3D true; cpu->accel =3D vcpu; max_vcpu_index =3D max(max_vcpu_index, cpu->cpu_index); qemu_add_vm_change_state_handler(whpx_cpu_update_state, env); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381597; cv=none; d=zohomail.com; s=zohoarc; b=JOuOeP9P/MrqWIUSPPUjfQ13wjgKG4597nQJDE6c5KgBtdj43zN1MIpRZez1/MxC+FioL42w94pWT6uY9M6QWhTqdeAmZ8p8iepdpwqfpaPSPkQeFKcrEaXqaGqFuzUZcTOvjtlFpaHWGf+gg1OOASCSHuPqBTvwHXIIHu2pOhw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381597; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zOj2l0QjwiOWVtDmZos93I73sy6okOj775eGXYWLug4=; b=VL0b6uQh7GTOjPoG+PB7ci2vQ8oCcwKbbc/3Z/semfRTp8X2/he3TQgU4sMYIY91TUvuslUATyZAtygxe7X1zpagaHU6HfRcnSZg0WinmVag1wqwrE7EieM8018d7Nl88P701GYiZcowUfwC1YWT7jhBXX4iZS+xEEkTLWAsa2o= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381597423606.5995074391138; Tue, 1 Jul 2025 07:53:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDD-0002q7-R2; Tue, 01 Jul 2025 10:43:55 -0400 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 1uWcD1-0002Xe-7h for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:43 -0400 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcCs-00075S-S4 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:42 -0400 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-45348bff79fso33270475e9.2 for ; Tue, 01 Jul 2025 07:43:32 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538233c49fsm196722935e9.7.2025.07.01.07.43.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381011; x=1751985811; 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=zOj2l0QjwiOWVtDmZos93I73sy6okOj775eGXYWLug4=; b=CXxQHAkeRXxb2aXxpDkrP9TniwfePunpRwLYpHtpkl5fXgcAxm3f/1R0BBD57QlCS6 s5/XHvJ8Ma3mpPeQ5ypch2gpQV4x+Tx94UaZTXCo1VUihAYMGNjPW4lmEUbPT5fPGY15 au4g22YRrV+A6eoyDWbSpwwxRoWCbpNrCxm+RbGbvdNz84CdVgNkZTMMcraPPRujlz9B qB1F+Himb4LAebvyRNQXaDFtXpyyTRswsV+kvvd3k+17imLN9d4s1HJ+1cMJ+XSmdGxO cmq7PqSl0xxPE77vf9+hs+ynxz+L4juQxlUB3NBwGIBWSSOIuwaWvd5inmibxAHHL7tZ qMcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381011; x=1751985811; 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=zOj2l0QjwiOWVtDmZos93I73sy6okOj775eGXYWLug4=; b=X8a2T1lavO4F0WsCWYA5MfMVJqU+pc+Oca83cZ4vDN03F9dBtbO0m9H37Ae8PQPyyw WViaa6M0TZKFr63coIlKkWsqUmYzJ+cum7b3BNc9BotVg2U9vFnXvf7dN/6ndTyvdtkM OpUjrdbjhmnFvCmw0D0nLmMEnkxYaV2xGYjZczSDsT2IXhDPcPiwiZJxdiZnh85dtlaT S7rcMcgjvpoCpjygZvprNBKhg8B2KMLei9uQU0ISaZuxiddn+lhUR0fvBvVeQsbjLs6M Lt05moR6Zz+RPGnvu4h5ViBXaaXauLPgZ5sNzGDXUHU/Hft+As2mQ2YKs856yFF4evq7 3X/g== X-Gm-Message-State: AOJu0YzZ00mVlqPgsZBQ4hwQH7/XL4xa2is89AY5Mpazx8V5y5lLnu4V NUy5apWI1jAVggvYstJ9MurZC5/sme0EuNSpJZP/t5lzYmdn0LoUpYO5tguBPfepLOXH5ppbgb2 tKr7Y X-Gm-Gg: ASbGnctTdVfFX3jeD6jXD0q9jnWjIjMJmqPkcXxlXdwr0SHy5nqCFJKLnjLh1PT3Enf cDT9EiERq0+pkUu7HGdTqaoUwIIfH6K5//KejaydLDZkE6jZs+l6zcdGg8BCenqR2ZDj2YnE8ew XlFSyeBXzZQ4nMqaknrO0HiybRqKA88wxFIamgJURatGDMOOZYYHHVcroP5x9sMwLudR4AcJVrs xwxIYefLP3NgK0QNvs2IBB1Cin4wivEZkklvghXNJeUQfH3WLFx+5SrlXyNSB56D+8zzzL+j9IM llwBxWYOnHl7Qv3Sojn0g13NfrmsubsT79rysRl0gl/2N32B8iwFVW/qmn+8MaoaHg/wvpwmq+h Wv5caFCm0IdKKrmFiQ0FR931SpitLWk00uOW1 X-Google-Smtp-Source: AGHT+IFDgs27rF5aT3DZSi9tV0BJMuNSr5Rf8VyHqKO1wPRfB/7Xyhej5iiOtcfCWNGxOG1HbD8w2g== X-Received: by 2002:a05:6000:1a8f:b0:3a5:541c:b40f with SMTP id ffacd0b85a97d-3a8f435e1c6mr15395089f8f.9.1751381011234; Tue, 01 Jul 2025 07:43:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 36/68] accel/kvm: Remove kvm_cpu_synchronize_state() stub Date: Tue, 1 Jul 2025 16:39:44 +0200 Message-ID: <20250701144017.43487-37-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32f; envelope-from=philmd@linaro.org; helo=mail-wm1-x32f.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381597949116600 Since commit 57038a92bb0 ("cpus: extract out kvm-specific code to accel/kvm") the kvm_cpu_synchronize_state() stub is not necessary. Fixes: e0715f6abce ("kvm: remove kvm specific functions from global include= s") Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/stubs/kvm-stub.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/accel/stubs/kvm-stub.c b/accel/stubs/kvm-stub.c index b9b4427c919..68cd33ba973 100644 --- a/accel/stubs/kvm-stub.c +++ b/accel/stubs/kvm-stub.c @@ -29,10 +29,6 @@ void kvm_flush_coalesced_mmio_buffer(void) { } =20 -void kvm_cpu_synchronize_state(CPUState *cpu) -{ -} - bool kvm_has_sync_mmu(void) { return false; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381741; cv=none; d=zohomail.com; s=zohoarc; b=Pw4sQ4mpY3YV7RbXvaT0AJX+0eciiCLajfLf/4iKJkeXtpydj2plQpCdJCkbIrm9sYotB6KPO/a++VddIivXjNANrojh97s7gQPSEFeq7PjMTBbqmV+XjHk5O8gzSvd2p7philExp843fANLjbPR+zQ+YO8N6ive6RT7THjzO3s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381741; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=4LMdB5rdj7iJY8MWJoU9iJ4flVpEl2P/b1SOEUaavlU=; b=AnmnnZBeYUDToTdysZhH19nF/mtufPFxi5ptS8ddCked2O5cv0XiojJTgRbXWCsxSDiz05VkIDySx5ILXjgd5difJNRQp138ZGoeu+AUDTyrysfozUyMbpuKgIbXq6fmdShzO5O8RNvn+faIC0WkApJtYzjCUEIrNKLjAfz8kog= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381741003494.1246501638469; Tue, 1 Jul 2025 07:55:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDH-0002uf-18; Tue, 01 Jul 2025 10:43:59 -0400 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 1uWcD3-0002ac-6X for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:45 -0400 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 1uWcCx-00075x-99 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:44 -0400 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-451dbe494d6so36169525e9.1 for ; Tue, 01 Jul 2025 07:43:37 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538234be76sm198394635e9.15.2025.07.01.07.43.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381016; x=1751985816; 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=4LMdB5rdj7iJY8MWJoU9iJ4flVpEl2P/b1SOEUaavlU=; b=dV+vzAOgBfeoDbQQH0HAyxqxyquOPBdV21SglErwhDGb9TTBBxqte9UetONQLnrVBl wfqOlQgFTE89m5z6h62OjKt/CNE3J4KTz9PKhk9afJvM7ExKLGbJV7bRNUp4zJIG4Tqg U1cubGeVPKClRLmgkZafM7Hbf6hOfmw0zccfub39Ths5GK/IBl4mDF/TKGX375DFA+mJ By38tdvW3iakSzS14t4ULTiwULP5pSyB5TANtJY1Jfy/EhX7jfps8UvMMTOEg58d52vl EvYfZiPf/RR8uk4hKPX0Q5x+6tyZIVQA5hPdE5iiUQnxxY4FcYgVFO4qGsfrmWBRux/A HNjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381016; x=1751985816; 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=4LMdB5rdj7iJY8MWJoU9iJ4flVpEl2P/b1SOEUaavlU=; b=CGhJDRnQs1YjMyKAywm5HTWv7EY2SnSvtHhLQezL0iHk5FUA/Sr6p/vslZH9tQbmLk R5ZYwWvkxn6jHpsc3+TXT5LE6fsIuCJOqXZ/a45tbjVmzwQztgARkm3TprEdo0j33LU4 teGqFifpTH9Zs9lL5hQrPvs5/v7a8CXJGPYvLE1RuhdVp/eCQM0l5xrHXOY5WRubv3Of 6VknqKp3UB0Wdn5NCQeTkMdAKyXyruulO7ZdYdvM4LJHBPC0i4uvJMO9rz0hFcA06Cb8 JBcVk+lQ/yWSQJCOylai36GQO0K61+6FgkUb+TPRSrEJN74+ME17t8EWWHwWzUbQ1mGL G/xA== X-Gm-Message-State: AOJu0YwTFpZ39k6dtCESCoxEc6xHMvQn1wQBcmaSBarwMA70IefIHfAx GEUc0a2uM4eAp0gTUd5oAX3XTT0S6LwnQAnu7nq/FKie5YfGCg9uItVNK/MrJgOoEr2elQd7B1L TrHNc X-Gm-Gg: ASbGncvmIg/miPxuwkEnT1+zFrx4hhACHUJbr2cLYs3Ls7j4tGXdRNK5tyIzRGBgVhE EshNmWqX11Oxg+R87gm6JIQxC1mPN3PaXd9K4r6RLhx9fUeDrORtfdIEB2LcXjnUBIpegSSSqv2 3HkuCBh0TQUMfDsMIUKrmh7gqqiZsuW+zPp0b8DV4gkNM9XyBai1V4AogVoEMhSfG8egJVrMXAK 8HW8a7ywE3gHKxYooT+MYOKkoK+pV8dZyJL9QMOLmT87waz/SVBAVM+Qmi8vq3qhmqj3XnXmKym duhDv2RE1hnxuG9cLcSUtJFJmuI0k2ZFolh0o7fhIE9ChIt19EltZggUJeY81zP4nlSmGnmbqnI ve76+fd5Ts8+FyH2Z3ZXpGb124B6z5ItbbpCogR1suCN+61I= X-Google-Smtp-Source: AGHT+IH4ZZLhjc2gVnqZh+GSOZDENGbz7RXFOsXUA3DiG7THYsRRTJ8RD4CVR3hmlThnxlnfP/A9xw== X-Received: by 2002:a05:600c:444e:b0:450:cf00:20f5 with SMTP id 5b1f17b1804b1-453a7c18ecdmr46522295e9.9.1751381016016; Tue, 01 Jul 2025 07:43:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 37/68] accel/system: Document cpu_synchronize_state() Date: Tue, 1 Jul 2025 16:39:45 +0200 Message-ID: <20250701144017.43487-38-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381741848116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/accel-ops.h | 8 ++++++++ include/system/hw_accel.h | 13 +++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 106ff56d880..6f9aebbee8f 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -45,6 +45,14 @@ struct AccelOpsClass { =20 void (*synchronize_post_reset)(CPUState *cpu); void (*synchronize_post_init)(CPUState *cpu); + /** + * synchronize_state: + * synchronize_pre_loadvm: + * @cpu: The vCPU to synchronize. + * + * Request to synchronize QEMU vCPU registers from the hardware accele= rator + * (the hardware accelerator is the reference). + */ void (*synchronize_state)(CPUState *cpu); void (*synchronize_pre_loadvm)(CPUState *cpu); =20 diff --git a/include/system/hw_accel.h b/include/system/hw_accel.h index 380e9e640b6..574c9738408 100644 --- a/include/system/hw_accel.h +++ b/include/system/hw_accel.h @@ -17,9 +17,18 @@ #include "system/whpx.h" #include "system/nvmm.h" =20 +/** + * cpu_synchronize_state: + * cpu_synchronize_pre_loadvm: + * @cpu: The vCPU to synchronize. + * + * Request to synchronize QEMU vCPU registers from the hardware accelerator + * (the hardware accelerator is the reference). + */ void cpu_synchronize_state(CPUState *cpu); -void cpu_synchronize_post_reset(CPUState *cpu); -void cpu_synchronize_post_init(CPUState *cpu); void cpu_synchronize_pre_loadvm(CPUState *cpu); =20 +void cpu_synchronize_post_reset(CPUState *cpu); +void cpu_synchronize_post_init(CPUState *cpu); + #endif /* QEMU_HW_ACCEL_H */ --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381306; cv=none; d=zohomail.com; s=zohoarc; b=Qd9T5Qk9up46HbGP9wiecW0xp96UO2rRuRRaMxBIjqrDZGCuD1J8Bjc0Rl/rmTZOmf4t9HC6467tdQhcM+LRTVqv3L08PckFoBobN3TrbvGqHsGh2M2hzhQq82TNSgyhPcADkWk6G09FS1dq/JXoIlNcSvOFAFHan1MQV/K7ok4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381306; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=L5D49Z9XCFxUaDjkyBITf0w2sDJEmWM2AObcY1hT7No=; b=k2BTTzMzDQ6luwphmGoiaaWwcW+QW11has+r8d+7v85J8Jca8SqEGa4tUIO/hNnUU0HBnlCbV4wmEiyYPMlMNSNEuVfDAlpT/X7XqRz3+fScS+9WpbvxCNoThBplt1ibjf/PNK2f0dkevS37hJcKXQagBApHcBQQPUEetYIwjCo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381306307892.8761461856266; Tue, 1 Jul 2025 07:48:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDB-0002kJ-8J; Tue, 01 Jul 2025 10:43:53 -0400 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 1uWcD7-0002gb-RB for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:50 -0400 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcD1-000768-Mp for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:49 -0400 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-3a528243636so3635690f8f.3 for ; Tue, 01 Jul 2025 07:43:43 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7e7386sm13321652f8f.20.2025.07.01.07.43.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381021; x=1751985821; 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=L5D49Z9XCFxUaDjkyBITf0w2sDJEmWM2AObcY1hT7No=; b=CbI1g+kIU/uHw4mnuhAknYMFY45Orn02vqfmaU8OXFwU/7R+YNzC9UH35GEuJCqvTs jBERDdnK+2hbayMKXyBXBbSXy1gCJ4mMcbG1QS6H4yslOa9EiQsPWb+cn9OP+3HLhTAr NG6UsFUqn2Hgt65n7XbM8n9AKu6Xzz0OrsnC16C9rXhkVJelMphAQWpamKW5MGoKSeVx /FSjXcW7aZx2QaQZsH8/rq+Q6eEuoX9otU9RsafE2R6tbnj/V9mvGfeovdRvSUsoR0Jo k2JhIhi+VQouebrQH7nt8kYMsVEtySZ5uxsElhN6CKyuF6prGpv8JGiC3R+hQsLsUTdW HTBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381021; x=1751985821; 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=L5D49Z9XCFxUaDjkyBITf0w2sDJEmWM2AObcY1hT7No=; b=GRvwf5qLhUTuNOHAOMiXncbVWKh20dAk+YjuiMeR2Q6Jh0GN19oahceFdE77QjUYzy c17oTc+gZfunNrgCtCoMsEFMamWs1iQPYUyhHcnsvniHfB2Iqo25GvF96Zbj51MQBpqU UWgcoG8T0MJRBKxUA8kRAc04XOuDDyBrY8EvH3JfYzS2HfzJd/J2J2EezMYhTI44Q96C 7TjJgyzynx+40bv1Cb3KVJn2C+MKJY+vzuTCMzynBemVK1fpf0TULf8346dHQPc5k3Wq NzOHaHatU6g+nOzs1Yl8oPMVO9Jtv1K75sTONa11kSjZm6lMyv84JadyjvwtIS00plvl n5LQ== X-Gm-Message-State: AOJu0Yz0If+yL7cgOEyEKp4h0RSDq6DIfokPW76UyK4rNhI7ASau8u+/ H4s6MS34/Ww/JXHAekO3FB6Hh6EvY6sTOUy0nNBGo5WHSf/TQHTF8yoKzAO4NYtHGPKrgKAEtPG lpJmC X-Gm-Gg: ASbGnctVcZYnAv9gZmT713nZIeTWp73t1uouRZLXUAAQ8UGFiSrPPwd2hZEzgMCfHYF qW584nzud3EsZOEbGfntp5yz0mcIIQJPXRm/TvIb9lv6ri39TM630Q3qFkEmVaWzxYIBg4wSFRV mU85T3sXtFhvVGNtjpK/c3zffxKXr0Dbhc6/Yp8Uig6CRTX8fjtg+6rpa21iuCmn0588aYJpq5H X/c9qbpxKU/QCMz80p7tBTmnFfCwOo8ZilyqBdoyg7F6gZ35s62mK8pYumQMYVIGTJXuj5Ed/jM PGEZ2Pjg9LFJrvmQwgtrkNclmvlTQWuWoZ9mgu799nqPx3KxIy0NmCQG7iF1W+h/2YwKKeXBx24 idh4KUAq2h4yw8L4XMNGwKRz20C95CAjj5hwi X-Google-Smtp-Source: AGHT+IFAnWxMJPRJxeCqSPcNXzKttmyIo/hxKdhWVvFtL09cmOIBoivMAXNOgTshJCs+453vRvYAjQ== X-Received: by 2002:adf:b60b:0:b0:3a6:d7ec:c701 with SMTP id ffacd0b85a97d-3a8ffcc9eccmr11495743f8f.30.1751381020816; Tue, 01 Jul 2025 07:43:40 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 38/68] accel/system: Document cpu_synchronize_state_post_init/reset() Date: Tue, 1 Jul 2025 16:39:46 +0200 Message-ID: <20250701144017.43487-39-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381307571116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/accel-ops.h | 8 ++++++++ include/system/hw_accel.h | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 6f9aebbee8f..14113bb5c10 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -43,6 +43,14 @@ struct AccelOpsClass { void (*kick_vcpu_thread)(CPUState *cpu); bool (*cpu_thread_is_idle)(CPUState *cpu); =20 + /** + * synchronize_post_reset: + * synchronize_post_init: + * @cpu: The vCPU to synchronize. + * + * Request to synchronize QEMU vCPU registers to the hardware accelera= tor + * (QEMU is the reference). + */ void (*synchronize_post_reset)(CPUState *cpu); void (*synchronize_post_init)(CPUState *cpu); /** diff --git a/include/system/hw_accel.h b/include/system/hw_accel.h index 574c9738408..fa9228d5d2d 100644 --- a/include/system/hw_accel.h +++ b/include/system/hw_accel.h @@ -28,6 +28,14 @@ void cpu_synchronize_state(CPUState *cpu); void cpu_synchronize_pre_loadvm(CPUState *cpu); =20 +/** + * cpu_synchronize_post_reset: + * cpu_synchronize_post_init: + * @cpu: The vCPU to synchronize. + * + * Request to synchronize QEMU vCPU registers to the hardware accelerator + * (QEMU is the reference). + */ void cpu_synchronize_post_reset(CPUState *cpu); void cpu_synchronize_post_init(CPUState *cpu); =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381301; cv=none; d=zohomail.com; s=zohoarc; b=hDVJ1CwtCi8HzfQ5wrAtpn8nRuxh7V3hE6quA8WbOvske5fPyLdJ7P1VeZtw6mZ7+h57nVO+Q7eWI55SH8/Hc3Q8k2Fg6llSwSDrCqyPeDPggmrGWk6yZqqkIlzm3xqaz0xQaXaDATf1TXdafBjbWBOY3sAc1t6Xa5wgyRyAK2g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381301; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Mdy11kA+VsWt7cboODkHkD4f2jxHCHYlzGKA8G7vb4M=; b=MmAXpd+awZJsrhYda26SzGkVftT33oT4l7rOZrMoABN0N+615Q2TmDnxGVDUtyXCUir5qQNzgIGnLT2qGNBQgBJByxcLAli2EyNQerGnsqk1r4lchNmZ+Dt20yFgkPAuvx4FrhehKSWj3qLOxOJhLV5mOEQQEC3KS5m7B2BIVI4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381299698662.8830302671663; Tue, 1 Jul 2025 07:48:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDI-0002wn-6w; Tue, 01 Jul 2025 10:44:00 -0400 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 1uWcDF-0002sQ-AH for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:57 -0400 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 1uWcD7-00076P-QP for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:43:56 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-45310223677so24227185e9.0 for ; Tue, 01 Jul 2025 07:43:47 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a306a01sm177036505e9.0.2025.07.01.07.43.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381026; x=1751985826; 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=Mdy11kA+VsWt7cboODkHkD4f2jxHCHYlzGKA8G7vb4M=; b=ibTulCYvsEMS/qTtlv6oNrnQhfvC1v78JqWTcI3thYJctbP+7vX0woysuc2sQHLtvn 0ErOa6YIYq653CB4Fijpn2S1Gkm4YGqK/SmETZhsjQjlJMwk9MawOCaQ98Tan22Wof7c y41IijoxBXPm9qeINkpqT6A5vUAfTEEK0Duyr1vEauvuWczU/gzXqNbYzoX9vMTLqZPn EO0DYHHsDSbq8XlXBzbL41kIP0Lzv8w7Jjs2WZ5odjkRUvwM6j8iEhTnuk03O390X79w wEWFAi5AbNSvQh1s7OIisdhkpoQON5hyca0CWhl1RQeaw4r/M5Ci89DiESv33415nXch dncw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381026; x=1751985826; 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=Mdy11kA+VsWt7cboODkHkD4f2jxHCHYlzGKA8G7vb4M=; b=tPaKird0+5wHlIcIn6708itNAipJs4uWTkd/8Utd+u1lB13QkKPD9NB/oZQT5djlPW nEnNCICHz2xLEqcxR7RYPUN9KyK0uaiKKTNAyDBv3GNKDURQCPsIBwfYooLKvlxvQ6gO rfSsfuRpJrl6+p4nwOj1C+tPputynTRhdJ8APmUyT5CIT5PIXzPQLfQ0pb4334bD9/3m nW40ur6NtiIPuWE6ZQkBv/TkeLxJ0zPkzWA4sQbJnLKY/ji5puW88CPHA715W03WFD+f ebTJ2b34slrams5HsMFLjKLzEtBHqjnePnxKNJ8LKxx8vu29iZ+cpCAjzv9OBTa0awZO M/hA== X-Gm-Message-State: AOJu0YyJZmMmsXGuVkbG4SiVfOAglemvpoTUjdFuxz+1TFi1lVnNJ6Ve hG/pRTDUQS/ZHqTs0/yLjEr+g9N+xV7qjGpEhenUvQjZBpcr6QcFkEDrp7kJWrNWApoGJVwKthk c5/Ei X-Gm-Gg: ASbGncuVyuPxFMYjqQ2FwPTxzyRLCHCR3QOiDu10UyAZotINSzlB980WFTWlXe0yQQC SZSQ5M6TuqJ6AK6HZy6wxxe74Ia44u2aKusjEbKQuRfdM7RXDy6cSNiYnM3HmE5vVMbTlRDfUZM GLuanoHxKr8xhvXfU9a9GAL94WKp22tmIowmHGPeZbhIs0onn3+6Lc5qUYKGJsZ320k1MnDUe8e JCyEG/xs4C2QMaKn+0UMGGx6J9v0Yr6VYAX4ClnjX7lP5lzMUKKbp2XfyTGoi88KBa/7OhIJlrz K/DsP3dUQSK9e+xOhj/YOUDVUCCim+2YsCPkm5h65J87vHk3/H9toHMIgqkKR7/IkeZCoJdZJQW FVILb5yR2Inh+6GDd9FzKgow9iKQ09NSXgcxH X-Google-Smtp-Source: AGHT+IFMkAtJvlPraumzpgR1tLTRb8JUOcf54OxbA7yF2dh0kjB4emNmlqf/6vD1uL189gLrzDBNrw== X-Received: by 2002:a05:600c:1e87:b0:43c:ea1a:720c with SMTP id 5b1f17b1804b1-453900db0f6mr162058525e9.18.1751381025591; Tue, 01 Jul 2025 07:43:45 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 39/68] accel/nvmm: Expose nvmm_enabled() to common code Date: Tue, 1 Jul 2025 16:39:47 +0200 Message-ID: <20250701144017.43487-40-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381303735116600 Currently nvmm_enabled() is restricted to target-specific code. By defining CONFIG_NVMM_IS_POSSIBLE we allow its use anywhere. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/nvmm.h | 23 ++++++++++++----------- accel/stubs/nvmm-stub.c | 12 ++++++++++++ target/i386/nvmm/nvmm-all.c | 6 ------ accel/stubs/meson.build | 1 + 4 files changed, 25 insertions(+), 17 deletions(-) create mode 100644 accel/stubs/nvmm-stub.c diff --git a/include/system/nvmm.h b/include/system/nvmm.h index 6971ddb3a5a..7390def9adb 100644 --- a/include/system/nvmm.h +++ b/include/system/nvmm.h @@ -13,17 +13,18 @@ #define QEMU_NVMM_H =20 #ifdef COMPILING_PER_TARGET - -#ifdef CONFIG_NVMM - -int nvmm_enabled(void); - -#else /* CONFIG_NVMM */ - -#define nvmm_enabled() (0) - -#endif /* CONFIG_NVMM */ - +# ifdef CONFIG_NVMM +# define CONFIG_NVMM_IS_POSSIBLE +# endif /* !CONFIG_NVMM */ +#else +# define CONFIG_NVMM_IS_POSSIBLE #endif /* COMPILING_PER_TARGET */ =20 +#ifdef CONFIG_NVMM_IS_POSSIBLE +extern bool nvmm_allowed; +#define nvmm_enabled() (nvmm_allowed) +#else /* !CONFIG_NVMM_IS_POSSIBLE */ +#define nvmm_enabled() 0 +#endif /* !CONFIG_NVMM_IS_POSSIBLE */ + #endif /* QEMU_NVMM_H */ diff --git a/accel/stubs/nvmm-stub.c b/accel/stubs/nvmm-stub.c new file mode 100644 index 00000000000..cc58114ceb3 --- /dev/null +++ b/accel/stubs/nvmm-stub.c @@ -0,0 +1,12 @@ +/* + * NVMM stubs for QEMU + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "system/hvf.h" + +bool nvmm_allowed; diff --git a/target/i386/nvmm/nvmm-all.c b/target/i386/nvmm/nvmm-all.c index f521c36dc53..a392d3fc232 100644 --- a/target/i386/nvmm/nvmm-all.c +++ b/target/i386/nvmm/nvmm-all.c @@ -1192,12 +1192,6 @@ nvmm_accel_init(AccelState *as, MachineState *ms) return 0; } =20 -int -nvmm_enabled(void) -{ - return nvmm_allowed; -} - static void nvmm_accel_class_init(ObjectClass *oc, const void *data) { diff --git a/accel/stubs/meson.build b/accel/stubs/meson.build index 8ca1a4529e2..4c34287215f 100644 --- a/accel/stubs/meson.build +++ b/accel/stubs/meson.build @@ -3,5 +3,6 @@ system_stubs_ss.add(when: 'CONFIG_XEN', if_false: files('xe= n-stub.c')) system_stubs_ss.add(when: 'CONFIG_KVM', if_false: files('kvm-stub.c')) system_stubs_ss.add(when: 'CONFIG_TCG', if_false: files('tcg-stub.c')) system_stubs_ss.add(when: 'CONFIG_HVF', if_false: files('hvf-stub.c')) +system_stubs_ss.add(when: 'CONFIG_NVMM', if_false: files('nvmm-stub.c')) =20 specific_ss.add_all(when: ['CONFIG_SYSTEM_ONLY'], if_true: system_stubs_ss) --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381889; cv=none; d=zohomail.com; s=zohoarc; b=WlQtC2DT49o4YJVt40oa8dY2x2TuSseIlBqyZ5LdlJEUTA5q5t2/FegkJht1bSYS+DLLRp3kBRByka0UYKUvc3n8o+rH8l5W2g18p7ztylZh+CMrfpLaSuWWnJuN5EzX33xeEIYPYi42+oDr1DctwlSLWYhio2j/XNEyiQCHrFo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381889; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=wciRvu6Mv5iLkeR7CaW4jXpg3dCUm5JQrl1yg9dituM=; b=KhfOoxfB3QFD/onenBhtrD2tSh2fBgQcRq2YJhGtbRG5jV0NgJtv6ybXIpUTKHv4XvvOGn2JcORKA8uAN2ntHzROxH/Q3/I8sUnO5t8HCFAPUsuDghd/ts3URPCeZTZoxQD9PznVdEhraN4UUb2DA3kq9NPt9V900ucnG4E/S/s= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175138188914011.039101386155266; Tue, 1 Jul 2025 07:58:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDL-000310-Px; Tue, 01 Jul 2025 10:44:03 -0400 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 1uWcDJ-0002yJ-3A for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:01 -0400 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 1uWcDC-00076y-AM for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:00 -0400 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3a575a988f9so3785162f8f.0 for ; Tue, 01 Jul 2025 07:43:53 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538233c4acsm194797115e9.1.2025.07.01.07.43.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381031; x=1751985831; 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=wciRvu6Mv5iLkeR7CaW4jXpg3dCUm5JQrl1yg9dituM=; b=hGdcwdlHC1j8ybLPNX8nYkPBFf+BmLwuN8nFZgyl2uaigPoSo762R+NeI70Id3+MhC 94Yg6OFHusTAEi7UEOaG3tB6ViDyJBO46tzdKj/RcWhQ0v666ECYkTPsLFquMT6ncn3S btYhQxvv7hXTiJadjVG8KW5eGhoLARw6IPPj3S5NZ3kkfEjJdNLTly4D+Y5LCVVnX/no 87lkzI3A7OqniB//gRF6dBOre6hzzcbyK4Ivg4tYNk5KdLWgq/Xhubw3XfLqLEOn3S8j 4etpor3CRHbI/V8yBU81t2IwWc5ktNJBxI9VLghi5gQyAIR6AEHemqpU3u4op0qAfUWZ KbeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381031; x=1751985831; 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=wciRvu6Mv5iLkeR7CaW4jXpg3dCUm5JQrl1yg9dituM=; b=pgW5BYHHtGvEp7rsDX0KXZ442sWGwf37UiPgalJqfVHT0ub4UGwJycg6kLBqQW5WQQ deY0DtmHaE4knT3JAp8Iq7l3aUWzYbctAzNHHRsIPNYJd6g9cCKJpt7M5+FNycJzH+Jk 860VEveQcq5jBfdEFLIm3OPG4RPpOrHGyOesIsegKDagcgiCmCb3clNgaiwa1H/N9Hs1 JKKiwYyvQZNnwHzhNszPr/XlDH/uEgKOUJ752v/xSSAZfAO/xjstJ1d5BTtb8mPjrUI2 wD9wCgwFh7zMApLxW69MF7XZwAZnOUAZA2tDfk8QoCRMyXz4q1dbO4v5KJ3gRRN0pLLN P2DA== X-Gm-Message-State: AOJu0YxiAWhYwNOgBOXnpgXFdTb+G+BTTkkkjeUMCwbTbxaVO1KIj2Wa Pn9ZxfOqy4v/63Iu+/GoJT+1cEimBiskTtrmu9mFvOWpxxLoe8wBC1UGNFNRe4y7pThq6OZQa9M oCR3a X-Gm-Gg: ASbGncvO7PnT1HIg5YYWNtS2ZHcL5zOvkUrf539G/oVSZf9+2rsnyoXg0jwXEu9YaQp jMzY+ZRVpL9VQYs327D4y4B+wQXuLcd4+zYYzROQpu/EdLW5VrkAn2mDwdYhbFq9SGdgc9NMTkS niQ2XbX3TFECk+kIER7GRI/aFQHdhSMgysCi51ifOx2WQVi9EXuVCituidArn/gh4SUPZwLSet/ kv7phM6bEpzxWizMSaViv6lmY3zRoR+zUzIfVfe/ceX9XQnoyb6L6hU34Oxa18ApAuQvwv74sVi R9Sq20iAPbIqhl+jcwFmWtl4nLlNQSMaGFzZjck3I+/a5GuOzALyTyqORbxUnNELsMcih/TncgU HB899XvOmEODqS7fwhVzrXmgjGh6i5nndcDnE X-Google-Smtp-Source: AGHT+IHWrqI0mk+ZW/TuTbctyClgd1FQLW8HANcGmYYuozbepQ+aDEI8GgUVx30VvEK56qqkYdbNaA== X-Received: by 2002:a5d:6a0f:0:b0:3a5:8cc2:a4a1 with SMTP id ffacd0b85a97d-3a9001a1921mr13703246f8f.39.1751381031229; Tue, 01 Jul 2025 07:43:51 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 40/68] accel/whpx: Expose whpx_enabled() to common code Date: Tue, 1 Jul 2025 16:39:48 +0200 Message-ID: <20250701144017.43487-41-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381890017116600 Currently whpx_enabled() is restricted to target-specific code. By defining CONFIG_WHPX_IS_POSSIBLE we allow its use anywhere. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/whpx.h | 27 ++++++++++++++------------- accel/stubs/whpx-stub.c | 12 ++++++++++++ target/i386/whpx/whpx-all.c | 5 ----- accel/stubs/meson.build | 1 + 4 files changed, 27 insertions(+), 18 deletions(-) create mode 100644 accel/stubs/whpx-stub.c diff --git a/include/system/whpx.h b/include/system/whpx.h index 00ff409b682..00f6a3e5236 100644 --- a/include/system/whpx.h +++ b/include/system/whpx.h @@ -16,19 +16,20 @@ #define QEMU_WHPX_H =20 #ifdef COMPILING_PER_TARGET - -#ifdef CONFIG_WHPX - -int whpx_enabled(void); -bool whpx_apic_in_platform(void); - -#else /* CONFIG_WHPX */ - -#define whpx_enabled() (0) -#define whpx_apic_in_platform() (0) - -#endif /* CONFIG_WHPX */ - +# ifdef CONFIG_WHPX +# define CONFIG_WHPX_IS_POSSIBLE +# endif /* !CONFIG_WHPX */ +#else +# define CONFIG_WHPX_IS_POSSIBLE #endif /* COMPILING_PER_TARGET */ =20 +#ifdef CONFIG_WHPX_IS_POSSIBLE +extern bool whpx_allowed; +#define whpx_enabled() (whpx_allowed) +bool whpx_apic_in_platform(void); +#else /* !CONFIG_WHPX_IS_POSSIBLE */ +#define whpx_enabled() 0 +#define whpx_apic_in_platform() (0) +#endif /* !CONFIG_WHPX_IS_POSSIBLE */ + #endif /* QEMU_WHPX_H */ diff --git a/accel/stubs/whpx-stub.c b/accel/stubs/whpx-stub.c new file mode 100644 index 00000000000..c564c89fd0b --- /dev/null +++ b/accel/stubs/whpx-stub.c @@ -0,0 +1,12 @@ +/* + * WHPX stubs for QEMU + * + * Copyright (c) Linaro + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "system/whpx.h" + +bool whpx_allowed; diff --git a/target/i386/whpx/whpx-all.c b/target/i386/whpx/whpx-all.c index f812aa36c46..4052fadb97c 100644 --- a/target/i386/whpx/whpx-all.c +++ b/target/i386/whpx/whpx-all.c @@ -2688,11 +2688,6 @@ error: return ret; } =20 -int whpx_enabled(void) -{ - return whpx_allowed; -} - bool whpx_apic_in_platform(void) { return whpx_global.apic_in_platform; } diff --git a/accel/stubs/meson.build b/accel/stubs/meson.build index 4c34287215f..9dfc4f9ddaf 100644 --- a/accel/stubs/meson.build +++ b/accel/stubs/meson.build @@ -4,5 +4,6 @@ system_stubs_ss.add(when: 'CONFIG_KVM', if_false: files('kv= m-stub.c')) system_stubs_ss.add(when: 'CONFIG_TCG', if_false: files('tcg-stub.c')) system_stubs_ss.add(when: 'CONFIG_HVF', if_false: files('hvf-stub.c')) system_stubs_ss.add(when: 'CONFIG_NVMM', if_false: files('nvmm-stub.c')) +system_stubs_ss.add(when: 'CONFIG_WHPX', if_false: files('whpx-stub.c')) =20 specific_ss.add_all(when: ['CONFIG_SYSTEM_ONLY'], if_true: system_stubs_ss) --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381724; cv=none; d=zohomail.com; s=zohoarc; b=OojpcHaSEASDc8Ms+/yXwcCMEC+YNbJBdD+QYjwZsJLHa1avkRNJXZKhP4xuBKg8/9OPcrI0l69MBEccqMZxqealt9TOuXeYr+6LT3W5wKkJTRKona1cG5etYLLCKdjJkovRMInqhwwshk8Jv24Pl4tptOLBoaJLqyiQ6C4Qmso= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381724; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ZFCbZLFh6s5gvUITNzPlcEyRjZnGKZlhwWXK151kWbs=; b=AjdDfpBXNSvU6w4fp/Qpm+NCDGrRiZhIbCDV9ow5Dd5BiebyM6600yu93hCglihao570ni1A+Lq4iI0kKA57mTdW+KG91s/nwcBH99uXhE33hbE+BzWTq+MKezXy0hVZ51zhUbDeXnIGS67fdcSj8xvUfcPza1zOIHIzeiHuUUw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381724119702.9652948950646; Tue, 1 Jul 2025 07:55:24 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDM-0002zm-22; Tue, 01 Jul 2025 10:44:04 -0400 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 1uWcDI-0002xB-Bv for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:00 -0400 Received: from mail-wr1-x42b.google.com ([2a00:1450:4864:20::42b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDG-00077D-C8 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:00 -0400 Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-3a4fd1ba177so3784027f8f.0 for ; Tue, 01 Jul 2025 07:43:57 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e595d1sm13591058f8f.71.2025.07.01.07.43.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:43:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381036; x=1751985836; 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=ZFCbZLFh6s5gvUITNzPlcEyRjZnGKZlhwWXK151kWbs=; b=sN15M4IA97mNnyqSGaMKksolscUa5cNDZ+t7voA37JV2pddx1uSUFtUaHaLiAwWMHk Nt9QrDWZ/AIPXg3VjpYmyIv/P98XGFW6VDthhQSntoZMU/LRyLiXGrFaRXUYF5hq9aYL xS2LiJaSC8eDMW+lC9MX+spBvMaHjehCRPaeDm0D26yAU6Ki1tcEC3cvRi/NS9a2kzIB qYns4WWCYwcyIMiwXbiB8pFRb3yPygGGpX2hAgRvBDX138n7aPafiga0m2R/CXgWOp2S pfVIqVgGcBsci3TsPw7PPmZpt8lT2JRubGtjVEI2MR9e72yfD36i7swFHq3bLk88pQt3 J1Rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381036; x=1751985836; 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=ZFCbZLFh6s5gvUITNzPlcEyRjZnGKZlhwWXK151kWbs=; b=ccxCbJru0gkOs7vn4pFBp1AGguIWV8Eb0wIfUHgohVtfM1h13Ha1dzbtRUs1wdCRqZ kY61RsvYqK7iXTUpcx/SBbYj59H8DWLNVLzwo63/v2iHOjys0l0jRhaJ3W5WZaNqPtaW RGWaLzHtwHNI+OTRzd0B2ByLK1oK2T26FRjM5wR5DjTy6R8gj1/pMZbwhS+WfiZIJmAo NxAGbKLa6W2o5qW9YjUXGPZpOyT76DqoCivodI60fA52yqt4yLWAjh0k6FsS6JCswSek FdC0y//Ugmf9Y8ssqTTDNB1VXnWoUZlBsFQe2HV0dbNsab+ktxs3iorh0NSy28Z7/54A PBVQ== X-Gm-Message-State: AOJu0YxDxSrDol9d4BVFrZRsff4hKkRKrlRMETxzbkT+jj+UrfFxCY4t Ra4flkM5WWA6zUTe4bt0NmmRHOCI3wEpYt2E8ayZS8qpbI1fkUoM13pmpAyYfM8VkqAK6ccELYW W2uJr X-Gm-Gg: ASbGncvlNTGWaCuAObCv7A3Bi6HZQTR5scUHJl9NyFUz2eMF+hmYWpmixC2LwzoB1ym U67SGEeLimzxrsC+do3seNbWJkDEizx+4iDKMfmDnGKnhKYBvjOkTEC4sdzdsbYkl3AEhflapXc fh8RL9suRbmckaQBcv7j0RGMAaqEjUzg9GVt7hDQxaV/JIJdw/v/s5bRnwZdbEAExWWLHZDi7Im Bd7OAih5d3dsj18fr830Z5dPXN+3vxfggKwrP9iaP+N1OeXww2N/QcJNRnhlVLDuWgri6ubE7bl 3VzrAs1PrDpmZiOO0KaLos9539vThJ4/fmN0AF/c2JQR8/XXtTC7CXuQ5/P6mQxjYKpuMJIPKt7 sj+G+jNZ0a6aRXh8Qy6e+fS6ARzmF8aC/zk8gkqjIv+e0VEU= X-Google-Smtp-Source: AGHT+IFOTbskEVRdVyr2VPYQ8HCH+54/ldz8ZH9pvO+AnV9itN4fvGKp1fQja6eg68GYO1rLqxpOJQ== X-Received: by 2002:a05:6000:240d:b0:3a5:7895:7f6b with SMTP id ffacd0b85a97d-3afa1b09aa8mr2475669f8f.7.1751381036136; Tue, 01 Jul 2025 07:43:56 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 41/68] accel/system: Introduce hwaccel_enabled() helper Date: Tue, 1 Jul 2025 16:39:49 +0200 Message-ID: <20250701144017.43487-42-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42b; envelope-from=philmd@linaro.org; helo=mail-wr1-x42b.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381725648116600 hwaccel_enabled() return whether any hardware accelerator is available. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/hw_accel.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/system/hw_accel.h b/include/system/hw_accel.h index fa9228d5d2d..49556b026e0 100644 --- a/include/system/hw_accel.h +++ b/include/system/hw_accel.h @@ -39,4 +39,17 @@ void cpu_synchronize_pre_loadvm(CPUState *cpu); void cpu_synchronize_post_reset(CPUState *cpu); void cpu_synchronize_post_init(CPUState *cpu); =20 +/** + * hwaccel_enabled: + * + * Returns: %true if a hardware accelerator is enabled, %false otherwise. + */ +static inline bool hwaccel_enabled(void) +{ + return hvf_enabled() + || kvm_enabled() + || nvmm_enabled() + || whpx_enabled(); +} + #endif /* QEMU_HW_ACCEL_H */ --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381193; cv=none; d=zohomail.com; s=zohoarc; b=WVfcGeEs0bfPunV9meR1Y5QIDu20Bt0HOrsfR4+i0m/wmKZI/yGWB1CZNujFnN3dA6/KofN/pScfhdMjZP4r7PP6ui5KHKwWqJiH4uuWKFDiVErKejIt1tgqmRGbkR4oSwuQ+85C/8+xZq/7EZx/GJ3s7aBfZu5wmVdFYEMFhwc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381193; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=mASTgkLVaSCN2uwTTMG88n2cx+5cADn+bdq+fXVtXuo=; b=T2s33J63i2TzQbfMr2M8PJ197jJ9/KyNT4PoyOUTJebqJiDFwJoUFAEtqCqranxdvyi1RYcqUkqgI5IuY1D8n0fjIZElsJXI+LCfM2VpaGdiUFTJYsvkj/Cp+sBSH+yJTEyq0DSBwIbFG4ZfdvT0wLfcZAyGwULZ6IOMAHkxxGI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381193539173.5172607047091; Tue, 1 Jul 2025 07:46:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDS-00035w-JP; Tue, 01 Jul 2025 10:44:10 -0400 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 1uWcDO-00034E-Qf for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:06 -0400 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 1uWcDM-00077w-Nf for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:06 -0400 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-453608ed113so34696165e9.0 for ; Tue, 01 Jul 2025 07:44:03 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fa5easm13196496f8f.26.2025.07.01.07.43.59 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381041; x=1751985841; 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=mASTgkLVaSCN2uwTTMG88n2cx+5cADn+bdq+fXVtXuo=; b=gHsHMbh97wI8mzzAM8uXfmTCX0TBD3irPisEt4kUVuYQXooyeSCazD7xKhJ4NwYjeH QphyuX0emMhydOD4iYPpHlqP33hDVtUnONlKWRajZFCvy7W4tYlO/q0+Wdjnn6T6fYA6 8zyxufyZOIKTTx+UA2eqq+Nn7WSRPRTTjqS5Pv22OFjbmo6t+HAoHXOVhLAe1OLnvOo/ XjUlh7t+CIDYvYmdwxJ95dsGtHPkNPeBpS7DK3SkY1w8JDXh1Z2Q0ImjfCeq5QpWIuZO qCM4+V0ZScZFzOODZU6jAPQNTkEFLf3eoc/jq626FUS9HM25cv92vFkPmjnUdv9kxXGZ 3muw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381041; x=1751985841; 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=mASTgkLVaSCN2uwTTMG88n2cx+5cADn+bdq+fXVtXuo=; b=uLucVHCPtXtgr4kVTXWCrztnIeMO+pNP4REPAR5/ApAc+IUVWMQe7TukGtM4wHbvdr iN7MWT1D0T+velRlW5m1062XIfMkjY5mTWFnexCUZIvOvsQgrRYJGo93I9nxtPwxUMlk L+UNrBpETjsf7pX3lQDr46Kdd8515FmbDUJ5TmuWhbTHjHJBTeK2ozAGD0uehlNYqh5S AWGyKvBQGbVqovtWLY5/ZG/GE38Ikn/cODUkxMMPxcrLJSX/8m6R7iYbNnfN0kpOIb7x MI2xDyzaR9HH5PKsB5RAQr6BiR/e9fnybwH0hnUatLtsY6xlEAjj17EP1TGQoF/oeOyb quuA== X-Gm-Message-State: AOJu0YxlhIqTRie6q/gxwyBBoSX4UFBmqGGH3Znvg0gxrbslPV+VDUOi J3TNEz0oEc3VZyKQ87vic17bZXokZQ9Bdb+EkrheGhpzx9dASApRBrOcKDjmTk0XjnvDgJ4TWcg xKpig X-Gm-Gg: ASbGncu0X6vZbPHTPVIwnhDKJNqQpGGoeihVll51cmZ3P7IF3/wneiAMgvAH+ZKYANv hK7DBub+J8OY5/87ozEDIzoahz8IuqeEyI/fAz5EF/bjPRCXMVlGajrGNbMi7sUXS4hgduBxQ+F gS0Ruk21xF9iaI2jcCY+lTyFa5/Bv2/ZDkEIiVBsCavBLrTlKkiDepj87zq1agssDiiSuMeAP2M iNKNToaXA07s7XkBgWGPka0gj5UWQ7lRWlb2Gz38ISfQbVGJ5HsGCIzzr73mLDz/fgP4KD27ft+ 2tRIX7XO0br42T991BpLdRV3HxLR5YYgmrl8a2LrSEFhPt8J2EDMFlg6mRNfbtbtC1dG8p7AVl4 DDgkATcu0LbMNVhWhh6DUA8r3uhl/jwJuucmji/gIjOaonsA= X-Google-Smtp-Source: AGHT+IE6OGrvvhsGpN9+DkyWq61xbCbSq/o2NA6HVmCsbpjFVqj7ptKMtvl6ueumMSFr1t2Cj5+gFQ== X-Received: by 2002:a05:600c:1c94:b0:43d:1b74:e89a with SMTP id 5b1f17b1804b1-453a9171809mr37223495e9.9.1751381040885; Tue, 01 Jul 2025 07:44:00 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 42/68] target/arm: Use generic hwaccel_enabled() to check 'host' cpu type Date: Tue, 1 Jul 2025 16:39:50 +0200 Message-ID: <20250701144017.43487-43-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381194463116600 We should be able to use the 'host' CPU with any hardware accelerator. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- target/arm/arm-qmp-cmds.c | 5 +++-- target/arm/cpu.c | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/target/arm/arm-qmp-cmds.c b/target/arm/arm-qmp-cmds.c index cefd2352638..ee5eb1bac9f 100644 --- a/target/arm/arm-qmp-cmds.c +++ b/target/arm/arm-qmp-cmds.c @@ -30,6 +30,7 @@ #include "qapi/qapi-commands-misc-arm.h" #include "qobject/qdict.h" #include "qom/qom-qobject.h" +#include "system/hw_accel.h" #include "cpu.h" =20 static GICCapability *gic_cap_new(int version) @@ -116,8 +117,8 @@ CpuModelExpansionInfo *qmp_query_cpu_model_expansion(Cp= uModelExpansionType type, return NULL; } =20 - if (!kvm_enabled() && !strcmp(model->name, "host")) { - error_setg(errp, "The CPU type '%s' requires KVM", model->name); + if (!hwaccel_enabled() && !strcmp(model->name, "host")) { + error_setg(errp, "The CPU type 'host' requires hardware accelerato= r"); return NULL; } =20 diff --git a/target/arm/cpu.c b/target/arm/cpu.c index e025e241eda..f3bde82b3a6 100644 --- a/target/arm/cpu.c +++ b/target/arm/cpu.c @@ -1976,8 +1976,9 @@ static void arm_cpu_realizefn(DeviceState *dev, Error= **errp) * this is the first point where we can report it. */ if (cpu->host_cpu_probe_failed) { - if (!kvm_enabled() && !hvf_enabled()) { - error_setg(errp, "The 'host' CPU type can only be used with KV= M or HVF"); + if (!hwaccel_enabled()) { + error_setg(errp, "The 'host' CPU type can only be used with " + "hardware accelator such KVM/HVF"); } else { error_setg(errp, "Failed to retrieve host CPU features"); } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381100; cv=none; d=zohomail.com; s=zohoarc; b=QLzxrqoFTTQTT1wox9mPP5A8GlBuanWZOtgxGhO6I+OD4eQUOkdchP5lJ5sfHm5y6MfcrQP6lIE1a1kb08BDijPic+bzJv9+WcEwB/xd1UvKlm9Sli0WSFzuAWM0qlz/+RB5lB71WO7urzFigiOpAbbDuuLdotO+BoKdSny0nwE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381100; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HZMQYrWloyNmvDDuKbJbuu4yfXxhqFOo1POIBU2tgl8=; b=k0QVQpj22kUNk3oEAxYJs8BCQU7ICWXQL5eZ6ZXnUF/gZRiGoCInta+DAsjLzhOv7jwNBCnHb8fRY30inEg0llbAY4QoI4ZCd3AFkvsYM72VdrH5z8JoMkMPz1gofSd2hPjtZ+mt8UQcxJUdPdHiLrm0Wr+avEdw0/1nBo/AH/I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17513811002061010.7831103715766; Tue, 1 Jul 2025 07:45:00 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDU-0003BG-RF; Tue, 01 Jul 2025 10:44:12 -0400 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 1uWcDS-00038n-Hd for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:10 -0400 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDQ-00078B-CZ for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:10 -0400 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-4530921461aso38188405e9.0 for ; Tue, 01 Jul 2025 07:44:07 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823ad20bsm198444415e9.20.2025.07.01.07.44.04 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381046; x=1751985846; 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=HZMQYrWloyNmvDDuKbJbuu4yfXxhqFOo1POIBU2tgl8=; b=GDUReQ0j6I1nDcW1dDZXMtIpxjn1I8sxxKwtZPIUvdjVe5UZesJ2nkyJOcRF/6rpME jp3vefSAj+wgSiG5HPLHFwOiXj9t9KNRpWFvhPL/koN8cFsfPREyl0rsvrGouRQ0dYiY 6YtvqG8MqGNO+/FYLqZCDsVpLsq95/kSzHhPfinxz8qkfeNKbgZfAAEtHfLLThDfMHFi 0zorQdAjLknO4ivMcNwm5OQ/TmYwq1L9eFiMY7SnGmuHQhySGIVTWRijE5y1qIbx1s4H L6zPxd5sH+SrYpQ5hPbLspoZzB/ZqeVqcD44J6axdj5a2xrOMoHY313WOjseQEKgBg0Y nh0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381046; x=1751985846; 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=HZMQYrWloyNmvDDuKbJbuu4yfXxhqFOo1POIBU2tgl8=; b=WTwmz11ZVxMytgWXxCZ2FgQqHllJ+WZeahLAx4V+2gHdpxkI6YZNEvTXgaK4v1bmiL 7A/SwBO2p/DTiWmc6TGSwa9SL/RnrcmDjafXh/geypOZFGMtRPoFzKOew4QNVHyqgCaP mgrVahUKfOdeGpVecPM976NZX2y+Hkk/kJfYHu80tB3ti6pmTFWkh7Mfr5sJZJTV/JeQ tOkg44KpJQhEL/lTM5bG184ZC75jP4kcrLU5ZT+imIkmyrj1i9tj/hjqT0OnXf0G5WMn ylNA25k1VkI57B90m5Sqwte+/liNpz1TTW0PoM7+C9EIKR5g1s5zr81ptMKuLWfe/cuf GetQ== X-Gm-Message-State: AOJu0Yx1DWZdo12hjp95yLHBLdbIefu33hUcTXRN43zTBQ8KgL406Ocs ecWcye01EX1WY4HAgjrKk8ybmTUc8cGQbmQuFSmkHKuuEmMyLKZJ/uVfwz9RE73OXsAl5ajzscC rNkLh X-Gm-Gg: ASbGncvdZx770RYacmEyv/PIqCSusJfIte0jVImE6mM4gVy1ILhRpCD4JzUXOlGGx0/ 2shtWrH7WDDUW3kT7Cm49JMrI5rfD+jizMBig+V44pqy7KyFpj9WSMCmD92eXg3F7ogqn60JxoD /DhugEHFDFEKgatp5qDSs9PxyRENMvId2oNmTycm2u+wJlCFK5v5kiR0gWzwleZI7etqc79CskB b/wA77wCj17bMsj3zdzfp1w1Y1GuAJRLgNmpctsdcZyBrpUAWnvKDTMrhWN9Q6tpRRLUGo/vOf/ RcnGXkiDfzljPC7Teubenw4+SgFdiwchaIEm4rYfa9S8K460KlUes9QXzP7tnzSTN3tyq5JncTa gCI6qh01YsNO6oe4KNrR7b+LXLp7EyBDW4g8n X-Google-Smtp-Source: AGHT+IEAE043y6B+qAmq1mstGLsycdlMzPC+RDCFiq1L4Pk9vUjoazV3ikfXZ1vHhUDP09hFDQJUfA== X-Received: by 2002:a05:600c:4f46:b0:43b:ca39:6c75 with SMTP id 5b1f17b1804b1-4549ff26757mr25937905e9.16.1751381045655; Tue, 01 Jul 2025 07:44:05 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 43/68] accel/dummy: Extract 'dummy-cpus.h' header from 'system/cpus.h' Date: Tue, 1 Jul 2025 16:39:51 +0200 Message-ID: <20250701144017.43487-44-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=philmd@linaro.org; helo=mail-wm1-x330.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381100959116600 'dummy' helpers are specific to accelerator implementations, no need to expose them via "system/cpus.h". Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/dummy-cpus.h | 14 ++++++++++++++ include/system/cpus.h | 5 ----- accel/dummy-cpus.c | 1 + accel/qtest/qtest.c | 1 + 4 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 accel/dummy-cpus.h diff --git a/accel/dummy-cpus.h b/accel/dummy-cpus.h new file mode 100644 index 00000000000..d18dd0fdc51 --- /dev/null +++ b/accel/dummy-cpus.h @@ -0,0 +1,14 @@ +/* + * Dummy cpu thread code + * + * Copyright IBM, Corp. 2011 + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef ACCEL_DUMMY_CPUS_H +#define ACCEL_DUMMY_CPUS_H + +void dummy_start_vcpu_thread(CPUState *cpu); + +#endif diff --git a/include/system/cpus.h b/include/system/cpus.h index 3226c765d01..69be6a77a75 100644 --- a/include/system/cpus.h +++ b/include/system/cpus.h @@ -7,11 +7,6 @@ void cpus_register_accel(const AccelOpsClass *i); /* return registers ops */ const AccelOpsClass *cpus_get_accel(void); =20 -/* accel/dummy-cpus.c */ - -/* Create a dummy vcpu for AccelOpsClass->create_vcpu_thread */ -void dummy_start_vcpu_thread(CPUState *); - /* interface available for cpus accelerator threads */ =20 /* For temporary buffers for forming a name */ diff --git a/accel/dummy-cpus.c b/accel/dummy-cpus.c index 867276144fa..03cfc0fa01e 100644 --- a/accel/dummy-cpus.c +++ b/accel/dummy-cpus.c @@ -17,6 +17,7 @@ #include "qemu/guest-random.h" #include "qemu/main-loop.h" #include "hw/core/cpu.h" +#include "accel/dummy-cpus.h" =20 static void *dummy_cpu_thread_fn(void *arg) { diff --git a/accel/qtest/qtest.c b/accel/qtest/qtest.c index 8b109d4c03b..2606fe97b49 100644 --- a/accel/qtest/qtest.c +++ b/accel/qtest/qtest.c @@ -24,6 +24,7 @@ #include "qemu/guest-random.h" #include "qemu/main-loop.h" #include "hw/core/cpu.h" +#include "accel/dummy-cpus.h" =20 static int64_t qtest_clock_counter; =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381554; cv=none; d=zohomail.com; s=zohoarc; b=neRIGRHVND8haHk2ENfm/MTtimNymXO6Vrwp+xr8Cv8AC5Cljh8RhEXl13/qyE5kCvPVZB9TG4Bq9gHZv3i/Kf0wjJewpTy6olJp6f+bumiOStBl3n+ieKOu2fZiAJYovVNELnNl3HADHLdrfXi+1Qc3i/91H36KOcPNzxMnWJk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381554; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MatxngaEO94wJIDihnh1PuQvEdZF8b672v9QuG9ABiI=; b=A/trkdlN4vNiPcI7+negGCz2tiX1aVpsHf+z2ib2ODahWCqzWJS+bAxRdOpgKA8bMWzr/dyOlCScnFnrrmsfH0jRCIqnyzKBkyuEGKfbNsRexTkQlg6ex61G5YpzS8UekdPcZDlQjXJr3H5jxm3WW7eqpYf8RbWfBtTfwoiVWP0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381554751559.3215156438131; Tue, 1 Jul 2025 07:52:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDc-0003NR-Du; Tue, 01 Jul 2025 10:44:20 -0400 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 1uWcDZ-0003JF-B7 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:17 -0400 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDU-00078S-US for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:16 -0400 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-453608ed113so34698655e9.0 for ; Tue, 01 Jul 2025 07:44:12 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823b6d50sm200949905e9.30.2025.07.01.07.44.09 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381051; x=1751985851; 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=MatxngaEO94wJIDihnh1PuQvEdZF8b672v9QuG9ABiI=; b=gQzvLSNWxtcLY3vBvXA/FkBVfiLBKOifgpOduJXSX1kIVh3PWDzwile1g9tTmI2kXZ dQ8bwx7egV18z2z1wLnQxCWxWDIe33c7h8nrod+TS21ZDwPdPje822WpsOUByv+h4YEc w0DOOGNJ0Wwtp0on2ouQHwbvSYRUfGUXvZPiu9oinRfg4mn5qQnDSMwKiXAJDwrYHYC8 g5pvSAkqBrZQTht3g+m3YwFVfciAreuuqiT5ahyBp6N+25ZiT4xSVK0/Ezc62RZaV4My O1gWdzagXB/mVBmlekOws1xT2r9B6y5pu7E5AqY9QQMjIPjoDEJUX7/mepvYFFYJkk+7 hwNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381051; x=1751985851; 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=MatxngaEO94wJIDihnh1PuQvEdZF8b672v9QuG9ABiI=; b=aAYkwaNheOKE3thQsCEbElQRvQexbcttZcqf02NYkkMLlyRatuFFWmZqvLjtpmr7sU dIV4McnuM60AAzPQVM5u5tjgOJ+Rkh0ZwAKDASYhUOMxxT+SGLIXGWNOapSc7ap+JWti Qot7XRz83MiQlvQO0ZlKxq4XbpC0IIASX1BEr6XvAYGLs9zvLr5qtK3VXnoQxQ2FuE5T HQM27tYWEvDonRnT3VTzJSsakifkGFwSckSL6vUOo9tnhy/bmFnkWMya83WrskDZEUx4 lh9HPJBoUiIphTQj0Uco6Cjch0EKbiiibU8iMWJpKJwy3BC4RqJmtPnOEcRnt4PeQr0J hrVQ== X-Gm-Message-State: AOJu0YwgsY4q4aQRhuRe0U8nVT15i8epANgODK7S831TjvNAxfJOPVQv CNUkqV0Ge5xlbCaUgCcvnQ7sU+NZOLXXb9w725rQQrfG7AqTxITQkfAFcvHRMFwrlaDbWjnbZkk b1iCh X-Gm-Gg: ASbGncss9/TfPRsD5r9QwwM19N+3fzOlDE8n3YknbsLPnwyrQOn2yG8GXeb9xkqKa7K NEOCgZjgLSCXmRpKertdgx7iZfs1n00WJ6iL+neyNGDQ17zcJQtK9EiKUsTGTZl3z8aASD6WafS bk92iCtPR9mOad3D965ntOkFuFfdleBK9DBNibjWF2IljMRan3LJ4i9O6zahR9k9KOQPQQ2xixQ gX7ZGpOtQUnj5NxWl4wrBgwzhyJ7c/pChK60834NqHUuZz80mH0zqtJEufBUqs8R2RVKMq/i/qu +7hniKIflL0cT3NCoG5G8PN1vWA6as+m0jrBnkdwE0Fp1j8geSZspn6saKTNh7VOW60w+s8WWL7 yLnKXrBaHnRQjU49PkGcPIWXMCsd3DpqhbfKr X-Google-Smtp-Source: AGHT+IGw5rPHjpISVw26dEzltenFT4Cnsx6hYgdH9zQ3japwcN2nv7b5duxzpoQhqUahoNxExV9ZTA== X-Received: by 2002:a05:600c:8712:b0:453:86cc:739c with SMTP id 5b1f17b1804b1-4539188f383mr153768655e9.1.1751381050541; Tue, 01 Jul 2025 07:44:10 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 44/68] accel/dummy: Factor dummy_thread_precreate() out Date: Tue, 1 Jul 2025 16:39:52 +0200 Message-ID: <20250701144017.43487-45-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=philmd@linaro.org; helo=mail-wm1-x330.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381555429116600 Initialize the semaphore before creating the thread, factor out as dummy_thread_precreate(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/dummy-cpus.h | 1 + accel/dummy-cpus.c | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/accel/dummy-cpus.h b/accel/dummy-cpus.h index d18dd0fdc51..c3af710ee8c 100644 --- a/accel/dummy-cpus.h +++ b/accel/dummy-cpus.h @@ -9,6 +9,7 @@ #ifndef ACCEL_DUMMY_CPUS_H #define ACCEL_DUMMY_CPUS_H =20 +void dummy_thread_precreate(CPUState *cpu); void dummy_start_vcpu_thread(CPUState *cpu); =20 #endif diff --git a/accel/dummy-cpus.c b/accel/dummy-cpus.c index 03cfc0fa01e..2cbc3fecc93 100644 --- a/accel/dummy-cpus.c +++ b/accel/dummy-cpus.c @@ -65,15 +65,21 @@ static void *dummy_cpu_thread_fn(void *arg) return NULL; } =20 +void dummy_thread_precreate(CPUState *cpu) +{ +#ifdef _WIN32 + qemu_sem_init(&cpu->sem, 0); +#endif +} + void dummy_start_vcpu_thread(CPUState *cpu) { char thread_name[VCPU_THREAD_NAME_SIZE]; =20 + dummy_thread_precreate(cpu); + snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/DUMMY", cpu->cpu_index); qemu_thread_create(cpu->thread, thread_name, dummy_cpu_thread_fn, cpu, QEMU_THREAD_JOINABLE); -#ifdef _WIN32 - qemu_sem_init(&cpu->sem, 0); -#endif } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381600; cv=none; d=zohomail.com; s=zohoarc; b=cxnuPEAjPMbTPE3O6BZQY/ymP2kXYCQo5Ak86iUI72hsi9re8iJ31rZE+YxqFsAiOaTkpRiI1ECfIae/CgSc/I3Qje6nYonzKyy5XFS++PjlJoXzW4wsLQZrXPnOpZn/drU1nUhEcnTf1n17/5hOULMZ0H71M6dO/HPc/XVzB40= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381600; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Kywse2u9MhU8QPCYXPxuKeKrJVPdiRbR+9Ey6S9IQUI=; b=hi16hx0GgaCMQ/fA5N4P7ovj01SwOyWV2ASIY9bnXVcKprmWOh4sumYdPT04/+amFLWfDSNIFJE6A4LAat6Oyfwi42ER5t+s4ZXShfXhASLYsROZI7qZ4W+DqBHEdk1xRsmajOAfjnGyb4Y5501fVmAsf8XAQpovZK6A+RSAGDc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381600830335.0553845209779; Tue, 1 Jul 2025 07:53:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDf-0003Vc-RZ; Tue, 01 Jul 2025 10:44:23 -0400 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 1uWcDd-0003RM-FZ for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:21 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDb-00078x-Ah for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:21 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-450cf214200so28566425e9.1 for ; Tue, 01 Jul 2025 07:44:18 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823c57d7sm207939995e9.40.2025.07.01.07.44.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381056; x=1751985856; 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=Kywse2u9MhU8QPCYXPxuKeKrJVPdiRbR+9Ey6S9IQUI=; b=pyGI2OEG6JrzRtWnJa91e45KgTiQtKdvK97K2gQWZ9zpyZx1MrO//fqxW4vJbzrD5D U9OEf7D1Np50E628F80K9+XpVFVDazw9nNS+bpMReQA1mNAOS07a+qJ53qpRPO6SzTXe yXsXEc/sYGMS6kb+KjklPiatb2VTIdTSzLGi9DLidP9Mam2WdF1wtx7thadlMAhSMhow /fTm1MKbd3CmD3Poxt0sOT7zv+dpa6nFplKnW2Gfa4EJDHvfTTQhbyB9LGiOy5pXhqTT n4gCvTy3vWix/Vc0iVmdmfTqTJ2xD4L5hVXful3EicBN+eoRAM2vbfOCjdYkDdqpLl+X r9gg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381056; x=1751985856; 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=Kywse2u9MhU8QPCYXPxuKeKrJVPdiRbR+9Ey6S9IQUI=; b=LGuOIapChF5971f1HeO61V5NxomXds1fHyaqWrObTAdqtUmzpKR5SnEenlfKyuU7bz 433/Btk0+2c2nb/gtLQEsfHwNkjK7zjsjycHE+iG3tQyzvKRwZl/3vwPigC7ynKQJsRj QgwkhQlZT6G/K2PmgK43kn132okfKBxu0Nooy19wzHKRtaVGEAhirSQJLcuE0jxZvSp0 xV27K75beWJLVpnIVOrOlgJ1C45GcextHfsGc+Jp/EK/oqsg31S/rMOFykGI42UgCMLQ DbOPdMqBahH1WZPDNMziRltHBjW38ZXSMzqw11UFIHlpZrkQ5Jclwwcg8slMhOcZh53g 7aLg== X-Gm-Message-State: AOJu0YxNhiM2IdjdElZShkxq1XaSoUitD0IUw7lfh3q9m+ySWn8n3RWJ u55zrpa/JvwuxQxO5URPaxcCggwxHMK/M/rRny3RtOXHZKFrOUaPu7iJPf+N6WcLRU/YZe8Y65Z Z904P X-Gm-Gg: ASbGnctFUuL32sMrvFYB7n1jXGiFO/YGgxWTJ3U9iipCORJmFiKmmOVGgwjPA3NzGT+ 3JOvNGVW4W99ubf+YiMC9gGq97CRJB60J7DmF9DNzri5LkUMSiJkpA/HJOoz/USVNe4ckVOFe8/ za5ziy7F4DKHdBFgNsl6l0lGz7UJm1tFNdHwnhLIX7ggkq9W10pmf0VoFGyfKgS/Eqlw8i4IvM0 pS9bQNCFRMlWDImyFyT9EYparuO6lFK+akXAVeaEc8+EZe8AwvVeZsJYxNZZLaycdXseeYO52MD u8wCYZJcjb2q38mSulNpfQ43fn3eFy16G8P2foHTLpePxAavbYSXMlldy8Jlvj5keIZGx6tjR9y AC6TBVToROdhVhxbokmf4TuXLj1HpQnTOJI5V X-Google-Smtp-Source: AGHT+IHDmbNVArM/W2fKHWa3khcPay7FObbQC2jcTJngJdHbmLv5gyPAsc9TGpCKoyl+GY0JvwbRog== X-Received: by 2002:a05:600c:8595:b0:453:5fde:fb5b with SMTP id 5b1f17b1804b1-4538ee7130bmr128989675e9.19.1751381055841; Tue, 01 Jul 2025 07:44:15 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 45/68] accel/tcg: Factor tcg_vcpu_thread_precreate() out Date: Tue, 1 Jul 2025 16:39:53 +0200 Message-ID: <20250701144017.43487-46-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381602188116600 Factor tcg_vcpu_thread_precreate() out for re-use. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops.h | 1 + accel/tcg/tcg-accel-ops-mttcg.c | 3 +-- accel/tcg/tcg-accel-ops-rr.c | 3 +-- accel/tcg/tcg-accel-ops.c | 7 +++++++ 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/accel/tcg/tcg-accel-ops.h b/accel/tcg/tcg-accel-ops.h index 6feeb3f3e9b..129af89c3e7 100644 --- a/accel/tcg/tcg-accel-ops.h +++ b/accel/tcg/tcg-accel-ops.h @@ -14,6 +14,7 @@ =20 #include "system/cpus.h" =20 +void tcg_vcpu_thread_precreate(CPUState *cpu); void tcg_cpu_destroy(CPUState *cpu); int tcg_cpu_exec(CPUState *cpu); void tcg_handle_interrupt(CPUState *cpu, int mask); diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttc= g.c index dfcee30947e..462be7596b9 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -133,8 +133,7 @@ void mttcg_start_vcpu_thread(CPUState *cpu) { char thread_name[VCPU_THREAD_NAME_SIZE]; =20 - g_assert(tcg_enabled()); - tcg_cpu_init_cflags(cpu, current_machine->smp.max_cpus > 1); + tcg_vcpu_thread_precreate(cpu); =20 /* create a thread per vCPU with TCG (MTTCG) */ snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/TCG", diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index 6eec5c9eee9..fc33a13e4e8 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -311,8 +311,7 @@ void rr_start_vcpu_thread(CPUState *cpu) static QemuCond *single_tcg_halt_cond; static QemuThread *single_tcg_cpu_thread; =20 - g_assert(tcg_enabled()); - tcg_cpu_init_cflags(cpu, false); + tcg_vcpu_thread_precreate(cpu); =20 if (!single_tcg_cpu_thread) { single_tcg_halt_cond =3D cpu->halt_cond; diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 95ff451c148..861996649b7 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -41,6 +41,7 @@ #include "gdbstub/enums.h" =20 #include "hw/core/cpu.h" +#include "hw/boards.h" =20 #include "tcg-accel-ops.h" #include "tcg-accel-ops-mttcg.h" @@ -69,6 +70,12 @@ void tcg_cpu_init_cflags(CPUState *cpu, bool parallel) tcg_cflags_set(cpu, cflags); } =20 +void tcg_vcpu_thread_precreate(CPUState *cpu) +{ + g_assert(tcg_enabled()); + tcg_cpu_init_cflags(cpu, current_machine->smp.max_cpus > 1); +} + void tcg_cpu_destroy(CPUState *cpu) { cpu_thread_signal_destroyed(cpu); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381166; cv=none; d=zohomail.com; s=zohoarc; b=hKyNWLep8ud4RsThqqSZSsidKW7CFPq03/f/d1e5BW0h8zJb8wLEsMWngmqFfRZtg1O0q6b59Hh1OCVGbpxzcUKWB9BDIDimnzLUwgNvqngpfTcZA4DB/XWD78HKBduesHGs++sAa8GEQSsYSAHAYD9VMBMZ8zpMLYQf5mJL26g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381166; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=9PiZmePp4Q2ULFa8bxVETShJ01u1/3P2ll+6TWji4NI=; b=XtfhZXvBtVsbM79P2XludMltw8Qtc4CkzJuBkDrxfgoAvNZgp4MFXjLSXYZaHoiZLKAMhVpGW2nycOFGPcvTs29mjo4/EWo5gG8hUFuaIvyfZo5jRXIHE/vG5GeVnnLZpiyGuVgsMOpbzUYfOcUqCAwqumblZeOeyhwyMXkIwRU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381166434242.18217382801106; Tue, 1 Jul 2025 07:46:06 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcDm-0003kx-0b; Tue, 01 Jul 2025 10:44:30 -0400 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 1uWcDh-0003b6-V8 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:26 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDf-00079l-C0 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:25 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-451dbe494d6so36179275e9.1 for ; Tue, 01 Jul 2025 07:44:22 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823ad247sm204908865e9.26.2025.07.01.07.44.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381061; x=1751985861; 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=9PiZmePp4Q2ULFa8bxVETShJ01u1/3P2ll+6TWji4NI=; b=krWJAsFCF5sp+rCK6RbYwnr6Ng0s+mDJM3fWZTwHJblPG2URdP1Jor15VnTYR6cqmc 35e04bMlioJd/EVsmv4z4AY4K9rsCdnLryudO7c/Ll/C8J4euhdwpyGV5ivhUntWitvA oT7gkKqEMz5zFC7MDZxwML9gUvIlWj3Y5661KSFuQb5RpwhIZndeuqIctY3L5Gzxaeby uYPMMw+iBqUzFee80x3zcwKFoY2ZsGeyd6ACcqjLlX660EeJbJFpcFNxU8co1eDC2nO/ Pddy7DjOcdzZzp/ZgUc9HqPezujKUc2/IB3e3F51g/sW4+qGmxC9baQGk5JUbVgRWaft Z7Fg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381061; x=1751985861; 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=9PiZmePp4Q2ULFa8bxVETShJ01u1/3P2ll+6TWji4NI=; b=KTajWmFUr9ggX52I1PI6s6KZpOcOuaqKrLFf1Cm4cDZY2Ok2W6XOs7GtsPACh3KxDl gLSgCjr3Z9xto5xbCL5KwMBvTo0+C8Mfc9LNSb2AWXBvFtJUoG/UxH4kawCw9FSxA91Z hBOCbWfKP4BwOwUhgHgQuf5WJ2YzUTtRRI1qI0rkyFHM24yMMZ2aWGK10npBYEjBiO9R YODS9RNY5G8oBnd5oolGrVvCrxC4nC81kVsNozxgIb1fQg1BbqfZo3lrZrihvyWp4fl6 LRogzvAGDK41L7hrDBbsHWgzKPJasks/xgvuL+2jW3nRpoxZ7fgsaYTtq0KOrLhc6ztY n1WQ== X-Gm-Message-State: AOJu0Yy/Q6gPEQaQEA/AXQDeIPfpJdyiv3no2CF9lCJJeZFejp216QQk Uiik6gn/rRnfKhPEjTmwCv6yebh1nEvoFpdO0GjstWozxpPA8wDz1KDlAabV9XEfcBEGULufIbb DD/Bj X-Gm-Gg: ASbGncuasjJQXbayrcVtbPO0lSPM6AgKKtpCugNGTa7wdOIgaPPlS6IjjYycErwP25G bvnXpWLmJBd0vZiXo+GYt3dBGjaQgQ7Wh7XvifZIGB8tKo0M+Y5mtYg2Zb6YgnA6I+rqSfUy17O u04gqFrOeR0jlwMAkzRGs7xsyjChZ4FqFRrw5zbM+b94lnemD4kL7NMVtIW5TtyqIUD6+ToenHx iHK+mwAHnxyMe3GzEOAA8uQsQ7hqF0eR9dga0nWGwmpay2HrOilnimlKUUNYZsac5Mhi0JT8BMD 2paqeTtAzsFeMz3VtVsWckPrKOc8tcG0YXfk6ZtUjIq32+oNw7xlK+56rYMZAM+HSIaHAx/LSe/ u7732VzOIZ3pUX+qDdycQvmk38d4kxOGumC8F X-Google-Smtp-Source: AGHT+IH5xRZTEk6SYVOUrq5Wk9eWq6tVEhD6l9PQUHEXaja8lCgysEKmDVUTXYXCLbsAayYR/FRO0g== X-Received: by 2002:a05:600c:a08e:b0:450:cf42:7565 with SMTP id 5b1f17b1804b1-453a33d6eacmr60601895e9.23.1751381061057; Tue, 01 Jul 2025 07:44:21 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 46/68] accel: Factor accel_create_vcpu_thread() out Date: Tue, 1 Jul 2025 16:39:54 +0200 Message-ID: <20250701144017.43487-47-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381168155116600 Factor accel_create_vcpu_thread() out of system/cpus.c to be able to access accel/ internal definitions. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/qemu/accel.h | 2 ++ accel/accel-common.c | 19 +++++++++++++++++++ system/cpus.c | 4 +--- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/include/qemu/accel.h b/include/qemu/accel.h index 80bfe3c4d0f..be94b138346 100644 --- a/include/qemu/accel.h +++ b/include/qemu/accel.h @@ -96,6 +96,8 @@ void accel_pre_resume(MachineState *ms, bool step_pending= ); */ void accel_cpu_instance_init(CPUState *cpu); =20 +void accel_create_vcpu_thread(AccelState *accel, CPUState *cpu); + /** * accel_cpu_common_realize: * @cpu: The CPU that needs to call accel-specific cpu realization. diff --git a/accel/accel-common.c b/accel/accel-common.c index d1a5f3ca3df..d719917063e 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -89,6 +89,25 @@ void accel_cpu_instance_init(CPUState *cpu) } } =20 +void accel_create_vcpu_thread(AccelState *accel, CPUState *cpu) +{ + AccelClass *ac; + + if (!accel) { + accel =3D current_accel(); + } + ac =3D ACCEL_GET_CLASS(accel); + + /* accelerators all implement the AccelOpsClass */ + g_assert(ac->ops); + + if (ac->ops->create_vcpu_thread !=3D NULL) { + ac->ops->create_vcpu_thread(cpu); + } else { + g_assert_not_reached(); + } +} + bool accel_cpu_common_realize(CPUState *cpu, Error **errp) { AccelState *accel =3D current_accel(); diff --git a/system/cpus.c b/system/cpus.c index 2c3759ea9be..6055f7c1c5f 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -698,9 +698,7 @@ void qemu_init_vcpu(CPUState *cpu) cpu_address_space_init(cpu, 0, "cpu-memory", cpu->memory); } =20 - /* accelerators all implement the AccelOpsClass */ - g_assert(cpus_accel !=3D NULL && cpus_accel->create_vcpu_thread !=3D N= ULL); - cpus_accel->create_vcpu_thread(cpu); + accel_create_vcpu_thread(NULL, cpu); =20 while (!cpu->created) { qemu_cond_wait(&qemu_cpu_cond, &bql); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381288; cv=none; d=zohomail.com; s=zohoarc; b=LPTD5fMkKNkvMOx1qRM/8jNUIpbr46UzofktfjS7Q0sMltgQFK+a2tSSVYqnyFrhxvVm6I/y4bporo1lbWXHGyCv29b8zIYH/O8jem8SEAfNa9s/iYmR4b6mrtvOuHShQRFi5JQ1CFFsr7M6Kvr+ReQSKnH5DxYrSZSZJqdVnBs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381288; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=cHfCnAey4lbJq0MOD37khk6LufF1VdmIrSHtcBH8U9Y=; b=WspdFXw1nAAKQSacxVqvjFIC0hMcgo3SP1PPIKSBDPPW5CGKPHj/i7tbHFUpV2Pxka7f8Yq6A/dLL/D/Tp7v34NDsV1wlmanD78Ila5Oi/UOfiu+GiHJ9Tgv78LHZciLjlhb58yog4jGLwNvKNrsS1HAoTUdLHwQa10dC8s3hXM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381288311406.1944267550465; Tue, 1 Jul 2025 07:48:08 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcEE-0004Eg-9N; Tue, 01 Jul 2025 10:44:58 -0400 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 1uWcDs-00040q-Mh for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:37 -0400 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDm-0007AA-OQ for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:35 -0400 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-450ce3a2dd5so26227095e9.3 for ; Tue, 01 Jul 2025 07:44:29 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823ad247sm204911535e9.26.2025.07.01.07.44.25 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381067; x=1751985867; 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=cHfCnAey4lbJq0MOD37khk6LufF1VdmIrSHtcBH8U9Y=; b=uxdWZcUR/jIVSRs+7pgrFMeF6r4yIfy3vOLE2Tz7YOVL+6u3ElM40wCdPanX/Zu3Ih T4EGuOryyRZhrlk00RLDiyIiWa2Ey2tXUbUQdSCG+sXPnrLB+azTgPWrNDLPibbn/nGC 42wlklX+RTMsuojSnXP2JPibT6f7xB+SF6tuTpRayK15FMIaOc4Tm06A7Y/LQ+KiQJpI lSMZRxGBCjFMstPlDOH6cfBVrS91nRjVbI61J7yfupUk/lXeq86oCe/2udhTR4JxdYG0 clQefIPiT9Kvx2ZnG6zAN4QWZQhQBBPFa8OT73uOspRhPfQi0XvOWZgleQQHoyyhCqF5 FYug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381067; x=1751985867; 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=cHfCnAey4lbJq0MOD37khk6LufF1VdmIrSHtcBH8U9Y=; b=AUa+Wh4JE3+mI6XQSyuespBLeZEbVDtLSHOH4fb9FUjrQ/O4cXQTQ3AX1HromR5zgO 0w1gNMtQe4aSYjtFXrMQRNhkqozeN+ja5smd6MKicOJY9e32NCvezKpRrB+4RckScR28 xcBCMDkS0Vt2gclioBUgsIzNapJ3HGgylNGBLTki9ORFV2vo7k9KfA15EOoyRXhi7feN 2kFpRbhZdEcBYzsF1fvzZ9ueS2yC8tr8luErojBl80CqU6gWfzJqRtkoOC9R4Kft6XfC wLm5JVWMtfe3u5BGHNxBvWGdd7VvNArBhiikUNoRJo/C0PenRnXaj8wmv0DNJ3Jgt2PG SXhg== X-Gm-Message-State: AOJu0YyKhhS+ZCV3wBtDPBjX7VUYsqnz/WC4fxPuAzaylXUF7PtcZrjK JnYhusplj5OVpU/2TwF6ka/73w868Zd8ZfQA/YkvcKa6CWCam9G1///hkd5pBIa61t/lma6SUIF JB2dw X-Gm-Gg: ASbGnct7JZpa/wrRfFJ9LdzvkhRLovtuxfZwee94EMaNoOWnfMFS3jgn1kOwGaRIpsg v693tcPmIP9Fq0HqhHFDq6AFzgKh4HxaTQNPDncg+oE/GmtfGTvZqgQMwsNPEST/pbqnKXtavoQ rU0M/fm9FYSOMkIUTwNI0NmZBhPtspo7myoips342KJdDtK0Zx4B0LlaBdSYSg02DciHio3OWvk RWz0h88yMOuebYSzFK7CpJZYpAPq7aS2NZw5hh1pCkvqsSb8SxtMLDDMQt0k3nkoZ2I/Y5GQzhx Riz6MOpBvKvM85UgDVqnkfoBQc198WwMnn3QoNKuf6ASkWyFcHkMPsE3FE/bD17LARlYbgwAf0D riGplj8SaHTiOsdMgEOEAe3PgQh7yineiEVHu X-Google-Smtp-Source: AGHT+IFemu1AT73ub54bWiR6kBHSGqZcoHmsR7C8s6I2HGJgh3mf5pXbilQ1sbYK6MmHX1+hd87FmA== X-Received: by 2002:a05:600c:5392:b0:450:d104:29eb with SMTP id 5b1f17b1804b1-45390bcb842mr158912695e9.5.1751381066511; Tue, 01 Jul 2025 07:44:26 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 47/68] accel: Introduce AccelOpsClass::cpu_thread_routine handler Date: Tue, 1 Jul 2025 16:39:55 +0200 Message-ID: <20250701144017.43487-48-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381289348116600 In order to have a generic function creating threads, introduce the thread_precreate() and cpu_thread_routine() handlers. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- include/system/accel-ops.h | 5 ++++- accel/accel-common.c | 16 +++++++++++++++- system/cpus.c | 2 +- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 14113bb5c10..28e29cfa06d 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -39,7 +39,10 @@ struct AccelOpsClass { bool (*cpu_target_realize)(CPUState *cpu, Error **errp); void (*cpu_reset_hold)(CPUState *cpu); =20 - void (*create_vcpu_thread)(CPUState *cpu); /* MANDATORY NON-NULL */ + /* Either cpu_thread_routine() or create_vcpu_thread() is mandatory */ + void *(*cpu_thread_routine)(void *); + void (*thread_precreate)(CPUState *cpu); + void (*create_vcpu_thread)(CPUState *cpu); void (*kick_vcpu_thread)(CPUState *cpu); bool (*cpu_thread_is_idle)(CPUState *cpu); =20 diff --git a/accel/accel-common.c b/accel/accel-common.c index d719917063e..24038acf4aa 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -11,6 +11,7 @@ #include "qemu/accel.h" #include "qemu/target-info.h" #include "system/accel-ops.h" +#include "system/cpus.h" #include "accel/accel-cpu.h" #include "accel-internal.h" =20 @@ -104,7 +105,20 @@ void accel_create_vcpu_thread(AccelState *accel, CPUSt= ate *cpu) if (ac->ops->create_vcpu_thread !=3D NULL) { ac->ops->create_vcpu_thread(cpu); } else { - g_assert_not_reached(); + char thread_name[VCPU_THREAD_NAME_SIZE]; + + assert(ac->name); + assert(ac->ops->cpu_thread_routine); + + if (ac->ops->thread_precreate) { + ac->ops->thread_precreate(cpu); + } + + snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/%s", + cpu->cpu_index, ac->name); + qemu_thread_create(cpu->thread, thread_name, + ac->ops->cpu_thread_routine, + cpu, QEMU_THREAD_JOINABLE); } } =20 diff --git a/system/cpus.c b/system/cpus.c index 6055f7c1c5f..c2ad640980c 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -671,7 +671,7 @@ void cpu_remove_sync(CPUState *cpu) void cpus_register_accel(const AccelOpsClass *ops) { assert(ops !=3D NULL); - assert(ops->create_vcpu_thread !=3D NULL); /* mandatory */ + assert(ops->create_vcpu_thread || ops->cpu_thread_routine); cpus_accel =3D ops; } =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381572; cv=none; d=zohomail.com; s=zohoarc; b=ZfYo+WplcY/KojELiIYULec2Zw44UA5CW/6I8DehDSP42R8CFUdy/KO8+SfRHa7KCQbsGXX982Lulh1cIeVF42YZgmqnzRX0v+eH4lBMR6hdJIkdezwyJItk+IkjmS+JWGtLhvOKciL634+oBKhoPFX6w2MT8vYv8ci4mZRPeAo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381572; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=JG7IVf4lLmqrXEKy3G052dw+Cl/wCwnu6XXEaswVetM=; b=LIOOJhPBu1Ts9DE0VO3XWue4uKqrVNNICF5GTQeAAO920O7Np6ZJvJMBOk937iRVhO5XzSJnMND/2Son39AyctblvnamN/jyilNdSYYCEC8rL/6UHFYtD6fiugCYQaKZTRNBhSD+MAH4C3eHSLFPSaByQK/iAKO7O7O66QIgUg8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381572522544.2574460044839; Tue, 1 Jul 2025 07:52:52 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcEc-00051O-Dw; Tue, 01 Jul 2025 10:45:25 -0400 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 1uWcE1-0004R4-DM for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:47 -0400 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 1uWcDr-0007Am-CA for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:41 -0400 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-453643020bdso50252245e9.1 for ; Tue, 01 Jul 2025 07:44:33 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a43325asm165949155e9.16.2025.07.01.07.44.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381072; x=1751985872; 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=JG7IVf4lLmqrXEKy3G052dw+Cl/wCwnu6XXEaswVetM=; b=AogcnzBxiptzO3zA85iOHtMXV4L8z2Pbu/uCfEJUiyfTOQbdKNnFWWrZJ9jOAQEydD JAs1H05GI7g7VAOpDLDlry0rOWQbqVjSXB5k0bDMgugDUWPIsZT7sfriTcWlX7oq7QGx Dnce+cec5y+bQKkj0QWxcJb3xVGSdD+ZHPPnpUARfBAJkiGL/EMQjz9IluODEVZ1cQ39 eKhH+gqo38ebdKN49ivK2oyHNk9o4n3O9YKqZsh0xlgDy9TgkKC/VS9VvDYSzErprWtU MQTFI6DslODXHO616Pk/QRM/JwQCxOewKwh9aJSWnmTzqmicrG7FJclfhIq9zN1hF1Hg HOHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381072; x=1751985872; 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=JG7IVf4lLmqrXEKy3G052dw+Cl/wCwnu6XXEaswVetM=; b=wk4k0sgqqg8SuWACMkClHXb5dVJR+VWag28tpW/lRY6eT8xhohw/W/kx3u9g9+vnR2 CQx4/1P9tRJ+3jjT9LqrseK8Q40E/8STiJa2YbqbiqwSfyEfr2rPQ1swSOpbget/s4oA XU5DK2M79g5e+HiFJdpLmWJNFWxTITaXy5/BIgu6T75VvZxUdOwYIwj6vRl/GiqqALyo 3XGi9fAJvhqdVlNSrYUv8HRhBdKRm0GE3txYm6leM0TKSRnUx17a2xA6B2l1ROx0GpY0 3e5cbbAfE637CqOaoMPhcKlXAEOpG6ZwPxiQkqejbg71H6DetPyTLJKtbzwdqO7iDvyq nX7Q== X-Gm-Message-State: AOJu0Yw5n2HvKeBaTCIa8F2hewst11iXCnd6vqDlXmEZcCDBMM4yUPwz jVYbhJ1Fk9HjacI7tMAHFumf+2JH1luswjKVL4ggqbOqO05EZhOIJ9/GqVfV+oQ42sxB+G8+zQw YqLkH X-Gm-Gg: ASbGncuC9AjyZZ54S7aZJoNjSDrOaO9c6Q2FTAzAwSenrruQ505f9FfFouEKsxITFaS TXDcZHSLBAO613izhiPpGpNKJiAHI4hLj+5nuD/J1i5usJjVpoA2lJo3aBtvpO/GjIWWRWvsyuN sk17UrXAbXg5ixnsY3azJNl/ZWk/+D6Q9TRgK6siT2Z6IqtFAlwX8bD6cWccpDTAW35yApeqHvO /U9aweguxkFNnrJsxAzreBIXEfvGr2jJF6oj0tGJTJ2rUgNh6+UD2YoDki36WpVA1LGdENqNEag SyNBn5Mj9eO9uDkOj2R8dFddhlJnoyS9qqzsBZhK4vvTmGgjC+L3G47bLzaNtj52h6reisLVZvJ l45TKd/H4fyq0jSMhQxiLVcB3QM1N7q8uMp8A X-Google-Smtp-Source: AGHT+IHjYmBry/eiqeZse5ixDuJ8XAp29tFdoqGDENAlVadTX8ukBfwUV/2N+2Gh2hhxXYr991fNXQ== X-Received: by 2002:a05:600c:8712:b0:451:e394:8920 with SMTP id 5b1f17b1804b1-4539341e446mr154208405e9.27.1751381071728; Tue, 01 Jul 2025 07:44:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 48/68] accel/dummy: Convert to AccelOpsClass::cpu_thread_routine Date: Tue, 1 Jul 2025 16:39:56 +0200 Message-ID: <20250701144017.43487-49-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381573774116600 By converting to AccelOpsClass::cpu_thread_routine we can let the common accel_create_vcpu_thread() create the thread. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/dummy-cpus.h | 2 +- accel/dummy-cpus.c | 14 +------------- accel/qtest/qtest.c | 3 ++- accel/xen/xen-all.c | 3 ++- 4 files changed, 6 insertions(+), 16 deletions(-) diff --git a/accel/dummy-cpus.h b/accel/dummy-cpus.h index c3af710ee8c..c2f9fee164c 100644 --- a/accel/dummy-cpus.h +++ b/accel/dummy-cpus.h @@ -10,6 +10,6 @@ #define ACCEL_DUMMY_CPUS_H =20 void dummy_thread_precreate(CPUState *cpu); -void dummy_start_vcpu_thread(CPUState *cpu); +void *dummy_cpu_thread_routine(void *arg); =20 #endif diff --git a/accel/dummy-cpus.c b/accel/dummy-cpus.c index 2cbc3fecc93..f637ab05e32 100644 --- a/accel/dummy-cpus.c +++ b/accel/dummy-cpus.c @@ -19,7 +19,7 @@ #include "hw/core/cpu.h" #include "accel/dummy-cpus.h" =20 -static void *dummy_cpu_thread_fn(void *arg) +void *dummy_cpu_thread_routine(void *arg) { CPUState *cpu =3D arg; =20 @@ -71,15 +71,3 @@ void dummy_thread_precreate(CPUState *cpu) qemu_sem_init(&cpu->sem, 0); #endif } - -void dummy_start_vcpu_thread(CPUState *cpu) -{ - char thread_name[VCPU_THREAD_NAME_SIZE]; - - dummy_thread_precreate(cpu); - - snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/DUMMY", - cpu->cpu_index); - qemu_thread_create(cpu->thread, thread_name, dummy_cpu_thread_fn, cpu, - QEMU_THREAD_JOINABLE); -} diff --git a/accel/qtest/qtest.c b/accel/qtest/qtest.c index 2606fe97b49..9f30098d133 100644 --- a/accel/qtest/qtest.c +++ b/accel/qtest/qtest.c @@ -64,7 +64,8 @@ static void qtest_accel_ops_class_init(ObjectClass *oc, c= onst void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); =20 - ops->create_vcpu_thread =3D dummy_start_vcpu_thread; + ops->thread_precreate =3D dummy_thread_precreate; + ops->cpu_thread_routine =3D dummy_cpu_thread_routine; ops->get_virtual_clock =3D qtest_get_virtual_clock; ops->set_virtual_clock =3D qtest_set_virtual_clock; }; diff --git a/accel/xen/xen-all.c b/accel/xen/xen-all.c index ba752bbe5de..5ff72d9532c 100644 --- a/accel/xen/xen-all.c +++ b/accel/xen/xen-all.c @@ -151,7 +151,8 @@ static void xen_accel_ops_class_init(ObjectClass *oc, c= onst void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); =20 - ops->create_vcpu_thread =3D dummy_start_vcpu_thread; + ops->thread_precreate =3D dummy_thread_precreate; + ops->cpu_thread_routine =3D dummy_cpu_thread_routine; } =20 static const TypeInfo xen_accel_ops_type =3D { --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381947; cv=none; d=zohomail.com; s=zohoarc; b=DsUW7EpsmRl3L1qN17agUEQwEtrjgVhiYFYtCqM4jGPeXDJf04oJ8mFGZnqaEOwTOGOUvcmv3KYomTofOul78mlXqpxQVCmE71mIh1nMzSDIlyuViaDodrkV4uK/K+fxj+bEU3ly4Uodmf13NwNmIy3uyZImuGKZqtu2VgCrHRc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381947; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=9v6+HYr/42Y/Iowg1uUW2qQvLw8fBzoanUujYKDMrhU=; b=Yi5mN+Mzk1lC9zM8rgl1ApgPUTJxZz8u4zYI8R4+1KjGZby9cjj6cmtEL9o95N7ZnIcML462r2u1bmcZibZGwzd3JJraaxfNShg5Z12Ih3GquPVZ2AiVPD51iif5UAOKo7KfrAro+lgyt5R4ohCPuMPiKWAbgvUAxaxjToKXdQU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381947260407.6154713573271; Tue, 1 Jul 2025 07:59:07 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcF0-0005VR-6W; Tue, 01 Jul 2025 10:45:47 -0400 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 1uWcE4-0004c1-VM for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:58 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcDz-0007B6-0w for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:47 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-453647147c6so62204975e9.2 for ; Tue, 01 Jul 2025 07:44:38 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453a85b3d44sm16557735e9.0.2025.07.01.07.44.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381077; x=1751985877; 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=9v6+HYr/42Y/Iowg1uUW2qQvLw8fBzoanUujYKDMrhU=; b=pgFzRNBR7i38vCncfGEnCdE6rseP2qm8ao+4vyYDBtPVgsMe8Ut3eeF5e9jNZw6Brg Pht6g0EWXj/nWMoZ7ghXI5KtOtbNdssSP9Mmfje3Dh3JwFY0d+cKZ/Qj2hueWBEi8vvz cOOo0kViZ7da2NrwXNTVQnPWM/XiBAPLhw9Gv4nh7YELLTRVIGIVoO/cbMGQvsleAxo2 jg2LhSPxsMny2pqQx9JUxPzgwgD5Ggr5vf6z+/y/3vLpSWCbWuXbTta/CxaVUsyI2gMg n5x2RLsHJS1o+2N02yX0of1IcYBdtmDyXXuYAU/Rwky8AAMJ128eyixe592OD/19cGPH kyWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381077; x=1751985877; 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=9v6+HYr/42Y/Iowg1uUW2qQvLw8fBzoanUujYKDMrhU=; b=GbOFDa6ypdhFeymNhBemNSXSs/4bCHugOuSZWZE35PZV0i6NnuUdUja8DS0CvDayG+ TKKVX214uSZZ8X3D1w/nS4zv1Mg6cX2VyU99w6Z8SOC/TBqUZeX3ZVYEpUA8x2O+LMzJ uhgiTD4FjTIPLGBhvKXPRYLBLcY8ykL9Zu5E01s2es+uZenK1IlHbE/K+V2szW5W1/5R JrmWXAk5lgG/wr6FEvAlI70kwyEOoZFuApJyjq7JpgLg70aVr0ErbLdB1byk+VoFE9mN sXuEMSzfvbPGmsaNavVaRiNlPFFrNW7q4eq8A1ul06IHXw03XCl/cHbyDpQtAFUM8WRA Ol/w== X-Gm-Message-State: AOJu0Yx11+/NUh/mj2F+0o1J4TOTJnN4lMiDg0xUEF0gROKFkGdEdBTV pykEUIHDDKYEYuyGonJRwYd0pyIKQx1Yk6CucaMUg6PH75JW814b/BmEO09HnaozoaHmMVx10Ql TLMwZ X-Gm-Gg: ASbGncvn57Y1QZcJOGGkDxrz5cEf6QyN752nwYReKToO92ZcBZJldccsbkf0VyMp2Xp 2AT6WM+gitctPAGjEzHrlpCm6knE14cUWmmOaNwFrfCVggpPOYDoHEo6E9dw6y2LHsFuUwJP2xa yaW9O4AdVukuStxoktLJ3otv55pBWpYpfJvboQKMIwFS1aeuo+wPMxqaJKT7dsmjMNE3uCyLK8O 4qWncKNkMmaK3WsHj7LsmNKIGRDEfiPvNC3MHKYgb7+Lf249RSZK51iqNPBUNUPQ/dVycjJU6zC YKlh/LoFoPx+vRd8KJXXlbvVthEHoVDj5PJDE71C5xLFvr9Gc0LEd3vHmrFhGA8xgivj++6vkSx mk+lNR4uDi6n64kmU0hq2wg4kvlebdFUO0rfW X-Google-Smtp-Source: AGHT+IG062X4KOOev++ydqHIwg4js7WY5RWUd4WF0/o79DbJRvOcHiSh6x5+M0yLTO7/9nq1nInvfQ== X-Received: by 2002:a05:600c:a319:b0:442:f98e:f37 with SMTP id 5b1f17b1804b1-4538ee559f7mr136105105e9.21.1751381077056; Tue, 01 Jul 2025 07:44:37 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 49/68] accel/tcg: Convert to AccelOpsClass::cpu_thread_routine Date: Tue, 1 Jul 2025 16:39:57 +0200 Message-ID: <20250701144017.43487-50-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=philmd@linaro.org; helo=mail-wm1-x336.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381948707116600 By converting to AccelOpsClass::cpu_thread_routine we can let the common accel_create_vcpu_thread() create the thread. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops-mttcg.h | 3 +-- accel/tcg/tcg-accel-ops-mttcg.c | 16 +--------------- accel/tcg/tcg-accel-ops.c | 3 ++- 3 files changed, 4 insertions(+), 18 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-mttcg.h b/accel/tcg/tcg-accel-ops-mttc= g.h index 8ffa7a9a9fe..8bf2452c886 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.h +++ b/accel/tcg/tcg-accel-ops-mttcg.h @@ -13,7 +13,6 @@ /* kick MTTCG vCPU thread */ void mttcg_kick_vcpu_thread(CPUState *cpu); =20 -/* start an mttcg vCPU thread */ -void mttcg_start_vcpu_thread(CPUState *cpu); +void *mttcg_cpu_thread_routine(void *arg); =20 #endif /* TCG_ACCEL_OPS_MTTCG_H */ diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttc= g.c index 462be7596b9..96ce065eb59 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -61,7 +61,7 @@ static void mttcg_force_rcu(Notifier *notify, void *data) * current CPUState for a given thread. */ =20 -static void *mttcg_cpu_thread_fn(void *arg) +void *mttcg_cpu_thread_routine(void *arg) { MttcgForceRcuNotifier force_rcu; CPUState *cpu =3D arg; @@ -128,17 +128,3 @@ void mttcg_kick_vcpu_thread(CPUState *cpu) { cpu_exit(cpu); } - -void mttcg_start_vcpu_thread(CPUState *cpu) -{ - char thread_name[VCPU_THREAD_NAME_SIZE]; - - tcg_vcpu_thread_precreate(cpu); - - /* create a thread per vCPU with TCG (MTTCG) */ - snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/TCG", - cpu->cpu_index); - - qemu_thread_create(cpu->thread, thread_name, mttcg_cpu_thread_fn, - cpu, QEMU_THREAD_JOINABLE); -} diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 861996649b7..4931e536beb 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -204,7 +204,7 @@ static void tcg_accel_ops_init(AccelClass *ac) AccelOpsClass *ops =3D ac->ops; =20 if (qemu_tcg_mttcg_enabled()) { - ops->create_vcpu_thread =3D mttcg_start_vcpu_thread; + ops->cpu_thread_routine =3D mttcg_cpu_thread_routine; ops->kick_vcpu_thread =3D mttcg_kick_vcpu_thread; ops->handle_interrupt =3D tcg_handle_interrupt; } else { @@ -222,6 +222,7 @@ static void tcg_accel_ops_init(AccelClass *ac) =20 ops->cpu_common_realize =3D tcg_exec_realizefn; ops->cpu_common_unrealize =3D tcg_exec_unrealizefn; + ops->thread_precreate =3D tcg_vcpu_thread_precreate; ops->cpu_reset_hold =3D tcg_cpu_reset_hold; ops->insert_breakpoint =3D tcg_insert_breakpoint; ops->remove_breakpoint =3D tcg_remove_breakpoint; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381389; cv=none; d=zohomail.com; s=zohoarc; b=IcjGkcHYAHZ3HKXwx5u3tEqZoVZ93nZeSWLkEmfqUWrvA+o8h9QPwAlechMjncA2ojQSjNDQ2XkYeZHxtOCyTHiN0bnpRi9MhS7SZIoTMx3WPx8AALKpP14JJVuSajLF+LvIXm3MoSx9bvFi5fetTgstWGjnwq0YeZLF0m7MAFE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381389; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=0cde8O5fgh1/x3P/3o29/Z35Bz+QAbkT/6eRH+3hSMk=; b=nB9h3/pE0zMfLrQD23VwfnhlxWOZS3aN2eFygm1bxvWNz8Br7y56+lrfaYHDCrJAOXzCL5OJKRkH8ZPtSx6himy6fM2wSQdAMzplfrZwpQjoCvFyw4AhimdHeOEAvl86KVdN541SHB5jncSJmlba5pSMnY8CZkoxdlSDaJ84RXk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381389707504.58232758806867; Tue, 1 Jul 2025 07:49:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcEw-0005Tu-J6; Tue, 01 Jul 2025 10:45:44 -0400 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 1uWcEE-0004jv-2a for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:58 -0400 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcE2-0007BL-7J for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:52 -0400 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-451d7b50815so25120435e9.2 for ; Tue, 01 Jul 2025 07:44:43 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823b6e9esm202069705e9.28.2025.07.01.07.44.40 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381082; x=1751985882; 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=0cde8O5fgh1/x3P/3o29/Z35Bz+QAbkT/6eRH+3hSMk=; b=Jn1EzTazTHXr6P+qFtunVIDpEb8EuIDvD6+TeBxbcBK2j2lq+TOQ9n7o2BP/e/nKPZ aElLtqlQmzYzDXagAWBNLaptnWQNZZmQUngyQK+u7+2K2MYzgrf2STTjlTM7Hv14XInM CDCS7fEzeYzGjMnwM7dv/x6KFi2GMCslXKoyixlblfo8Dk9GhPIE4UGBVlC6HoWZ9bI6 mAzbFoHXcrG+zwU0Xb0ZZlD/WpwwJuvhQm5y6FO3DMJxsfh7Re1Fk+W2wP344Q+tNyKB 25VGOSG9zP+sqAhEiU5QGMKHAk4GB7kST02tc6GSWh0+6HoBKpjpXuTYch7IDSkWxC4H cyzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381082; x=1751985882; 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=0cde8O5fgh1/x3P/3o29/Z35Bz+QAbkT/6eRH+3hSMk=; b=kLaw54R9JO6E+JA9AWhhcdEUVWLEWGKIGNB20Qp0rONxjnuASDQ3JXf0+eeP8Q4n0f sHiYKpumLNxe10MD4zwjqrN+/l5Y4Er53pf8TTZO232bVDZcl5MY75oXTP/OCAKDYl9s wyZJ5pLHKQa6lxmhL2gC5mIUQMVt3PBYqIsTtsLBCAInBMuGsgACu2IeCWeBHH1TlaxV r/QTYtMzI8cMiMMOuq3DQfPL2i5Iy3Ido0MhZ22lBmbTPiCMyMcU0NLmpuigDuGdTzbw Rn+JSKpmsdMEDMy9ho5AvC3Lv5hIRkPm8visSrNi+B6Lyl2CYErV0KUeVVb/2RmvBN4X 0GAQ== X-Gm-Message-State: AOJu0YxmWwO4GizTYJCrd4bPMR3e/ZrntftrEGqfr2IVnkADeHD3+mtQ qvbBURaQ4IjA6mx2e5rssLXoBRlxFbv74kSWFrFRiSHNjNrKlAsCWOAngli6ZCvLZQqXx9JE4zh c6Xgg X-Gm-Gg: ASbGnctYhyafUfnwb5WhX+nmTnL/wK/dvT3RSXuNBvhiiJje50YtPeFM32oeP8KWQkm jtBIYRDa5HNjRYgAEzp4RV6sL7BeRyUBOTfpjtvuGS3Y43Vp15URl28bQlba8ki8RUEFH1fAMph vjW51KXuHsHWcio29MaRISBse9RAFkizABIDvlmF6jjEJnM4XU2QYex8KThGtIfQ/2A9rFmpysz FAe0moJlm03HdZWeexHbz0zfQanctdMqvMiSF761Eenx9CdCZvRDI+kOCAyCGRV6bXyRnq7mSNX ujpG4EosX6u/80hRWAKfU3s8lxxdIlE9BkiYNSdu34dKCxVDvrwcqr4YsQge9S2iL7K8nLLReLF eZjDb28IhqOIJyHp0yfgwhXiuWiatnU6jtS9I X-Google-Smtp-Source: AGHT+IFsvJT9COcIqRNN0mYmgHgEJuZSEJrFfso5XYNsuShiImqWhlrV6XZ4a4vIRINrCeWo40lfpQ== X-Received: by 2002:a05:600c:c4a7:b0:43c:ea1a:720a with SMTP id 5b1f17b1804b1-45391b6b961mr153078425e9.1.1751381081961; Tue, 01 Jul 2025 07:44:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 50/68] accel/hvf: Convert to AccelOpsClass::cpu_thread_routine Date: Tue, 1 Jul 2025 16:39:58 +0200 Message-ID: <20250701144017.43487-51-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=philmd@linaro.org; helo=mail-wm1-x331.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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381391089116600 By converting to AccelOpsClass::cpu_thread_routine we can let the common accel_create_vcpu_thread() create the thread. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index c91e18bc3dd..b61f08330f1 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -207,22 +207,6 @@ static void *hvf_cpu_thread_fn(void *arg) return NULL; } =20 -static void hvf_start_vcpu_thread(CPUState *cpu) -{ - char thread_name[VCPU_THREAD_NAME_SIZE]; - - /* - * HVF currently does not support TCG, and only runs in - * unrestricted-guest mode. - */ - assert(hvf_enabled()); - - snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/HVF", - cpu->cpu_index); - qemu_thread_create(cpu->thread, thread_name, hvf_cpu_thread_fn, - cpu, QEMU_THREAD_JOINABLE); -} - struct hvf_sw_breakpoint *hvf_find_sw_breakpoint(CPUState *cpu, vaddr pc) { struct hvf_sw_breakpoint *bp; @@ -369,7 +353,7 @@ static void hvf_accel_ops_class_init(ObjectClass *oc, c= onst void *data) =20 ops->cpu_target_realize =3D hvf_arch_cpu_realize; =20 - ops->create_vcpu_thread =3D hvf_start_vcpu_thread; + ops->cpu_thread_routine =3D hvf_cpu_thread_fn, ops->kick_vcpu_thread =3D hvf_kick_vcpu_thread; =20 ops->synchronize_post_reset =3D hvf_cpu_synchronize_post_reset; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381677; cv=none; d=zohomail.com; s=zohoarc; b=UTJsqVY8SCjn/PoMAq+bv5SKDV7txbpNNvj1IrqQ67nMAoc9pigPHMTAHScTFfd4JGSUboPMrtMYwpjY05lB3Qbuwbr96omZn/1rCL2AM9G7h/g6KIYUJzIb5aqtpb+exb+zcCzRAuvBM4vO3S1gHh19aQ5oew0ZrcjNb3ZZ/jQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381677; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TUEmSjw9TnyTWyYzMckbm1pP3ygwwt9KUL3EslPLnFA=; b=eRgQ6mG6eYB+4Tk0d6LBZJxhHgvArFqhcTM+v78X4HQX7y3akvWlVBVH7CCeXtyGPDUAkqxyLoWpNBgUTyNsoqYGZ4ShITDHCaN5whhHdWa5D3CkwhNm84Ztzx/bAjOcRmWy/2kSHxvr1dKveUGtTKmwnL7ZeBPp44EfzWvZEDQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381677804381.01751597858834; Tue, 1 Jul 2025 07:54:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcFG-0005kk-9u; Tue, 01 Jul 2025 10:46:05 -0400 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 1uWcEE-0004n3-Jv for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:00 -0400 Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcE6-0007Bw-Uq for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:44:54 -0400 Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-451d3f72391so35425245e9.3 for ; Tue, 01 Jul 2025 07:44:48 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c80bb28sm13163736f8f.43.2025.07.01.07.44.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381087; x=1751985887; 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=TUEmSjw9TnyTWyYzMckbm1pP3ygwwt9KUL3EslPLnFA=; b=mc7qFV16SfDe2pnW8B4o4DGIHHHltAQnP9zAvfOSyW4ekCCLIArRQsxdi/umopds9D //nkmhe7XGsCeVJcwDPgc8qAtcFflbDnnk2C/hGC2q6nVt6g9ribYw/4/Gup+6Us+fD4 NyTfmtC1kv7srngwtgJRiSi/P/LUttBuGkDAQtW/xVbYFwE1Mv1xvQ70sE6S26GJBw6p /oZpYEEihJ5zLihDsv9letSqEXT00zdJQzcxnduoBex057E3FIUe/DpV3sSQner6W6oy +6EaszS9ukEZAaCQJ4kQqCotVMfOum6XtQaX0C6gtQw6Z2adP3Yud2odGLOjdRvf8I2G zaKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381087; x=1751985887; 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=TUEmSjw9TnyTWyYzMckbm1pP3ygwwt9KUL3EslPLnFA=; b=RnsMjLY4PbMSGI+fdnH35ac5NfDIsmz9InyTAJWbbL5iPpJCCdDy9WpOt7dtbve8qN Ms7/piPBmJLWyb5iefuY0hRVEaEFRewNiHzuO9b8qW+M54B8eU2sgl84ucNq82L+Xy60 eK7H5nevrIESGmnZXOi69DaUFZufG5W0Z43tks+/SyZ+AlY2EFupuGfpWLUdu1s/GUmi MIqkirg0E/KrnwAL/Fq2eQVkUjF5A6+iOnQyrEetSnSFf4AJ6A0VNhdV2ffPjjRGWznK uyDHSOOb22JKp2tewpTzWIcpVxrtE2p7vBINuRK9ZIUwrThfwajjCT/915g9KJJjRteD thEA== X-Gm-Message-State: AOJu0YzplVyi3GAW5K5IWhCK2miWlu+DMNAi6HSRiQ9QhbTf0ia2qbKA b7OilOz1lQrFIC0VsNIrCLgn73cRU6ON+bSE9OM+6b8VtfbZ/Zd96fgQ3nDlIoPvGeQhKkre2mn nFCH6 X-Gm-Gg: ASbGncvIvQvfEkGunMZ/Z4XdjhztDOT0Ibpx3JieMrKN9p1KDZhdqlO1XE78GUYYocD JCUABwhgIazIClCb3i4U0FBEXEtScKLIBwZrTPuSheQbfukQTnAAFQ8YAaX0Z5caYkqlUGEiXT1 xdxpqx8SK/yxuX+RNk7ZIO0xe1bM1W1QbVbN4GqJCsjDp7qppdRZHKt3k0KzVWCKBP7ioFQuPWB y4G896WyWqVblJKYPLLgSCCU+oaW+ggtVTlJLjWkuLsXbLXyaISFqGbF2aXE3RjjNswGJyrf/c8 KS9vqXK7DtqNRb+plMCzwIEV2AkSXHn6/kl3m8b2BMWWxqVVIE3WOojoJe66XA9ewFnzrT5JxIw Ai9GHCQw6TyJPPyZ5yeHAiCSIBAgAxen/x67XrPuC5Ou/x/4= X-Google-Smtp-Source: AGHT+IECA0vGA6TjD6CfwEHllBF3xq/kheIyylk4J7Ga1buSmYaLFLYKaY91QWHYhA4lg+7jzm0qwA== X-Received: by 2002:a05:6000:440f:b0:3a4:efbb:6df3 with SMTP id ffacd0b85a97d-3a8f454904fmr11861857f8f.10.1751381086625; Tue, 01 Jul 2025 07:44:46 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 51/68] accel/kvm: Convert to AccelOpsClass::cpu_thread_routine Date: Tue, 1 Jul 2025 16:39:59 +0200 Message-ID: <20250701144017.43487-52-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32d; envelope-from=philmd@linaro.org; helo=mail-wm1-x32d.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381679128116600 By converting to AccelOpsClass::cpu_thread_routine we can let the common accel_create_vcpu_thread() create the thread. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/kvm/kvm-accel-ops.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/accel/kvm/kvm-accel-ops.c b/accel/kvm/kvm-accel-ops.c index be960bde5c4..21ff3af306f 100644 --- a/accel/kvm/kvm-accel-ops.c +++ b/accel/kvm/kvm-accel-ops.c @@ -63,16 +63,6 @@ static void *kvm_vcpu_thread_fn(void *arg) return NULL; } =20 -static void kvm_start_vcpu_thread(CPUState *cpu) -{ - char thread_name[VCPU_THREAD_NAME_SIZE]; - - snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/KVM", - cpu->cpu_index); - qemu_thread_create(cpu->thread, thread_name, kvm_vcpu_thread_fn, - cpu, QEMU_THREAD_JOINABLE); -} - static bool kvm_vcpu_thread_is_idle(CPUState *cpu) { return !kvm_halt_in_kernel(); @@ -89,7 +79,7 @@ static void kvm_accel_ops_class_init(ObjectClass *oc, con= st void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); =20 - ops->create_vcpu_thread =3D kvm_start_vcpu_thread; + ops->cpu_thread_routine =3D kvm_vcpu_thread_fn; ops->cpu_thread_is_idle =3D kvm_vcpu_thread_is_idle; ops->synchronize_post_reset =3D kvm_cpu_synchronize_post_reset; ops->synchronize_post_init =3D kvm_cpu_synchronize_post_init; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381180; cv=none; d=zohomail.com; s=zohoarc; b=iizrtJ+hC+ojwtTSl3RRVqVC0g5HCTlN02jgA1F7+70IsqEWHWQzTbnw0ooacuSUYJGNOigvUIojbyTEocxZviz5tLBicRHRU4Yscw72jb8wlzE1xJNAIYKreke/paZgrZ5mim6xC6zdHAomnXwjwDhPCubzuS3mAFiztkV9/5s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381180; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tF+udBuXlMZaTJB7NQwpx0fE1exKYPgD405Hy0Dxyzg=; b=BfnybvodA9COqdDI4R+HNBsvzZE2ltvvp2xmrhsm3x+WAFYOB7n57O2fbc85FUNsGYYxgUJ3Qfz+Roi3/UzuWK3ew80NRy9JakmvZaORVoWj4org4xjeDrI1P91S0HwuXT22Gla6fjtfHlmLKoxhTvaOWXMD62Nk2845Bd7zR0g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381180503227.24554809911422; Tue, 1 Jul 2025 07:46:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcFB-0005hk-A7; Tue, 01 Jul 2025 10:45:58 -0400 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 1uWcEI-0004qA-5b for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:09 -0400 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcEB-0007CB-MP for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:00 -0400 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-3a5123c1533so1928946f8f.2 for ; Tue, 01 Jul 2025 07:44:53 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fada5sm13672558f8f.32.2025.07.01.07.44.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381092; x=1751985892; 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=tF+udBuXlMZaTJB7NQwpx0fE1exKYPgD405Hy0Dxyzg=; b=woKpunhQg33c3UgPrW41r7BatTksnY7Vvk6D4VZ/8wEmwKQKBYLHzpAwcNv2SuILws LfKpcTQOoA/hhH2yfo7K7+DGQAC3S0RLfwskFxZj9U7io/3GBgjSoDrfvQjDUtWwykYG 86JdXYuw4stGWK5V7SrqFFtym4Z1zPe+cQVnojQp52NLDEfWup3+1kkkh376IeEHEi81 WPhSLpPlVEHCjYgzAk2/ir62ZDoMVtp3hNP20dMIe7IkSyTfjI1pA2qp/ZTrQL7f2q2v R603WrOH3SMKpIIjUH/oocqudXLH8xbdSc/+yKAIy1v17eTM9kz/WujAAhH7PPsQNw4X lSCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381092; x=1751985892; 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=tF+udBuXlMZaTJB7NQwpx0fE1exKYPgD405Hy0Dxyzg=; b=tQlFZrlbCkJkmAvl/bQdtGaCvs2x0+uj5fO+WQDEzW8bllr8h5A22Kzrwm0u1a0dNA u8RPhsAqmyOYYs+Xkjms3QmxfHkb7bZw2Ozb9SMPLIQJnKFoegfYYD+ydXI2vE4JT/pg IWEb/ESNYYfx8jphqIWuPoiTawYhae9022tJZA+dIQxzk1+uZ3Fo1uJVrQluYY9fR7mW yJxMN+fbX6NDtJcgDchMolt26cg7hS2PZGqik+cAoQPS3ZVBj1ggVMLcv5wze7v93hYF iCQxT9wzRcud5lHXQZCcyIF8Buu49iP00d9aQS23yZsI7PL55CgRl6WPWoHCeNybSkcD H4yQ== X-Gm-Message-State: AOJu0Ywsz1v0w4wSXlZFN7YaafoIrRmxkOLoH98WJ8foT76j3aaPZ/J9 RN5nWNcEvQDjiMVECwBiqbA5AxkpY8r/lx+xQM2b8X9kJxuPdbanIUKXr6qRsKeStLIrPgmd1fJ VGigF X-Gm-Gg: ASbGnct/4xrOIS139ohido21Vh8OAUV6Y6Flo+eeUM9E0XAOwEQYtWhR/NO5bKBa600 WeKEWxo6NhcXbn9NZpLzlgT3qDaLII3mVA9mF5I49+5jwXGrTTBRfhjh6N49CJ34GxKpofH7S7n aMMAJcHoUSpvJtKakfchtx9z3mGA3i1kZUT/BZLzE9SMmU0Y+2BdEa2h2F6yQO7wcX0ZBCnLFQX GDqmv4ZSrvPkHYL6WYjqwVf4EOD1y8QvcdSnvhqcpFuAw6Lrk0NcA/wZ1LNBD1EBlcMImCwrjAM e/elrLPzRh2xvr1l3x220Gl31IiVgcBjS6AiK/Q7mxH/h6g2yqCkp3d34ZoIg7fw7DXRFtvwWfh JrlqnmBBxb91vYKpMXvW5ogMA/qTio7Wu91Xo X-Google-Smtp-Source: AGHT+IGZdfB0jrQmR1f7YtzeSiD37XoRtjSDw+CYGLsCDTo+akCOhhexdRIE+tD955EvIN1R+c6Oog== X-Received: by 2002:a05:6000:42c7:b0:3a4:e5bc:9892 with SMTP id ffacd0b85a97d-3a8f50cc97cmr12587274f8f.21.1751381092260; Tue, 01 Jul 2025 07:44:52 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 52/68] accel/nvmm: Convert to AccelOpsClass::cpu_thread_routine Date: Tue, 1 Jul 2025 16:40:00 +0200 Message-ID: <20250701144017.43487-53-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381182375116600 By converting to AccelOpsClass::cpu_thread_routine we can let the common accel_create_vcpu_thread() create the thread. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- target/i386/nvmm/nvmm-accel-ops.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/target/i386/nvmm/nvmm-accel-ops.c b/target/i386/nvmm/nvmm-acce= l-ops.c index 21443078b72..bef6f61b776 100644 --- a/target/i386/nvmm/nvmm-accel-ops.c +++ b/target/i386/nvmm/nvmm-accel-ops.c @@ -61,16 +61,6 @@ static void *qemu_nvmm_cpu_thread_fn(void *arg) return NULL; } =20 -static void nvmm_start_vcpu_thread(CPUState *cpu) -{ - char thread_name[VCPU_THREAD_NAME_SIZE]; - - snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/NVMM", - cpu->cpu_index); - qemu_thread_create(cpu->thread, thread_name, qemu_nvmm_cpu_thread_fn, - cpu, QEMU_THREAD_JOINABLE); -} - /* * Abort the call to run the virtual processor by another thread, and to * return the control to that thread. @@ -85,7 +75,7 @@ static void nvmm_accel_ops_class_init(ObjectClass *oc, co= nst void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); =20 - ops->create_vcpu_thread =3D nvmm_start_vcpu_thread; + ops->cpu_thread_routine =3D qemu_nvmm_cpu_thread_fn; ops->kick_vcpu_thread =3D nvmm_kick_vcpu_thread; =20 ops->synchronize_post_reset =3D nvmm_cpu_synchronize_post_reset; --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381315; cv=none; d=zohomail.com; s=zohoarc; b=L/JpfS3pJMS/I9hsrrB/1TgQG9wOBvvq7RM6TDFzLnxE8NlLJcZhBfHaEP1dlFx+puHn891XdKBImPsPNfrU237JhK59w2OK36/1I85vdU4yzaXVIJhep1S8XAXLmSrZFbdssMzvwRDA316WMT/k+KU+E5Icnfv6rjEAHdor5hw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381315; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=mJV4IXnKJHt8hWaUBPPZ6mJUKwfXPExjXmNVkOYEHB0=; b=CkTUAKuQ4c/FsvD/RYf7VUcMXB8ET7IzP7CvFrDSsKn932Sc0xFECa9FtVS5g4DQJYt6nhAkHofPsVtJQ925MlCErP1Jf8Ko+uFilsQdp8t8FlLlCdqGIJ6Ani11YC3QZ/QIomPIPnPKyz56gQoSPK9QIz3OE2+zk0Gs0AGQ80Q= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381315278830.7148642579007; Tue, 1 Jul 2025 07:48:35 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcFY-0006VR-GG; Tue, 01 Jul 2025 10:46:21 -0400 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 1uWcEX-0005Az-O0 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:19 -0400 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcEN-0007EB-Eg for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:17 -0400 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-3a507e88b0aso2646107f8f.1 for ; Tue, 01 Jul 2025 07:45:02 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c80b50bsm13311230f8f.42.2025.07.01.07.44.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:44:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381101; x=1751985901; 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=mJV4IXnKJHt8hWaUBPPZ6mJUKwfXPExjXmNVkOYEHB0=; b=ZigjWvuwVhtINgG0ovLpAuy0Iye8F36UF9l/2FXB7YPwxBa74oL38usPZPVpYX0Iil qN507pAuBOZuNnKRlW0u3JTokTQ4ktDmkfyx/+H/h50n8OeWwWQOQqCZ4SIbsndwHgaC 2arRDJBYe7Y6bCdjFjl93+6X/fMgzQpC+mr4jhXt+fT7rFGDSnO47jHIipEky3w0pGCG AVdGjM28H0mb+ukjkUcRPsn+z75YLj3c0w9axVql57ApPGFk5SFyqfdrK478YMMfyA2O 9j2tneQzOWLCFBbO8x2SVJGboSLYfUmpgrenv0q+VVFiBEnXXQYfuUhfMOwNPMAH8q1a inQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381101; x=1751985901; 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=mJV4IXnKJHt8hWaUBPPZ6mJUKwfXPExjXmNVkOYEHB0=; b=EO0b+lDEvX/isd9yNaKxmzhizGeGetIaOkGtgW/5h3q6cfuYpmPzWc17ikUzglgXmj t/wKnpiXD3GL+1I7h7T0byeOFFfhaI7MuUBJ+3ST5TZPYnK5djvhz6N68O5UPidveD7r HFUL0H2hqm4j+fJ/TMl6Ac1XjK+RWYiquLg+fnqXx2Kblve1BcdDAByOt8k84RNpFhD0 3/gWLT/tSBpBzjWJfYnVXPHG115fyj8NSk3WUkBiDQMRnSYIJqODCaUhZMxBqJqHaWDI 3dPZqvgLzgNdsmr+MaHbH3eDkzh1W44dAOtvFucCtPYi6F2P8mB25fiZp7F6Ubuto4dm ss/w== X-Gm-Message-State: AOJu0Yx4M6HsVmKMvhD7dGJp1+bb4Zh+3uH8huAmxmS/Ttpq5bwGeuur AXpy936ZyRAH8HGry3iLj0iMFD5JIrCsxRy4K/9BfWwSIOESwqlpneEPgnlIcrMMhjmQpWMUAXB Es2Be X-Gm-Gg: ASbGncvXDNEjXiFGtwM4oINz/V/4n37LP5uNh+q/QAfhokvgj2NAAxYWvdH35Cumer5 /fYa2MxzHzam0p/k1M7TQPtEJJpKB8vGgSnxkr3wgFJME2KlNz4psfNOWl9Z3m7gINPjYXic34j gR2nVtLgxBUaeM5xamqhd7HYc4ofjN98h0RkLqa6auAStKiWz2LUwfOanF/FMQz+73eZeU0/O3I zvQxDQiur1s6K01+DwwalY24oWhstc2X8UPp7EiIDYVu9vk1gatWKYFmrjn0IPy5PgdnK/9XHcd 2gRpwO79PEzmASAfbSztlIsBYl5I3l3b2gqGUH/sqK+T3bAX9tXfvdXtxK0SJwTPHX8nWMLFJrI YGnMCUBjmFt2zo0UCXhiHK87eX0uF6wsmNv47 X-Google-Smtp-Source: AGHT+IFFLVUIsu3rnFjZM/dNsiKwrQVxFQowqi62tWS/UnNcn1UAuSCW3eTfuxbiV7XcM/vNMbguvA== X-Received: by 2002:a05:6000:2182:b0:3a4:f6ed:767a with SMTP id ffacd0b85a97d-3a8fee65064mr12506182f8f.38.1751381100666; Tue, 01 Jul 2025 07:45:00 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 53/68] accel/whpx: Convert to AccelOpsClass::cpu_thread_routine Date: Tue, 1 Jul 2025 16:40:01 +0200 Message-ID: <20250701144017.43487-54-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=philmd@linaro.org; helo=mail-wr1-x42a.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_SPF_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381315764116600 By converting to AccelOpsClass::cpu_thread_routine we can let the common accel_create_vcpu_thread() create the thread. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- target/i386/whpx/whpx-accel-ops.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/target/i386/whpx/whpx-accel-ops.c b/target/i386/whpx/whpx-acce= l-ops.c index 011810b5e50..8cbc6f4e2d8 100644 --- a/target/i386/whpx/whpx-accel-ops.c +++ b/target/i386/whpx/whpx-accel-ops.c @@ -61,16 +61,6 @@ static void *whpx_cpu_thread_fn(void *arg) return NULL; } =20 -static void whpx_start_vcpu_thread(CPUState *cpu) -{ - char thread_name[VCPU_THREAD_NAME_SIZE]; - - snprintf(thread_name, VCPU_THREAD_NAME_SIZE, "CPU %d/WHPX", - cpu->cpu_index); - qemu_thread_create(cpu->thread, thread_name, whpx_cpu_thread_fn, - cpu, QEMU_THREAD_JOINABLE); -} - static void whpx_kick_vcpu_thread(CPUState *cpu) { if (!qemu_cpu_is_self(cpu)) { @@ -87,7 +77,7 @@ static void whpx_accel_ops_class_init(ObjectClass *oc, co= nst void *data) { AccelOpsClass *ops =3D ACCEL_OPS_CLASS(oc); =20 - ops->create_vcpu_thread =3D whpx_start_vcpu_thread; + ops->cpu_thread_routine =3D whpx_cpu_thread_fn; ops->kick_vcpu_thread =3D whpx_kick_vcpu_thread; ops->cpu_thread_is_idle =3D whpx_vcpu_thread_is_idle; =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381746; cv=none; d=zohomail.com; s=zohoarc; b=Xdrq4fYVyLgLVpBL32/q0RCJ3v0VGU1xINS8V8MChou34lUiswuU5kXk96Ll1+5fyTBbNVLlxBKitn9ArnfkFOireKckDdC+0Hip0gH4ou+TDiwo9eaQvSpZ4Bo/QAOsTkRj4hIV+AFkKnF/iZr8FqyAwbxM7lJUFYGDfvm7qjE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381746; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=dmQWEaJUD6g349jN49GBSvdCGbQvNn5YxEFdunGmRjs=; b=evA94OaoXkBjFugcSUWc+izW3ABYWbHPkIBNqY3O8vhYl0a+Vt9lNQ8pAoZK9BP0SZ1mhrmNgmv03MYtvLOluxUYEhdkDvIszEg7chailBLnE2A6UrBsRirR0tWFGlueh+dOZDXcAhIYsDp511VZpr/GA7a1J9nQTULCmU1YV3E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381740980171.22709648331238; Tue, 1 Jul 2025 07:55:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcFd-0007DZ-Bn; Tue, 01 Jul 2025 10:46:25 -0400 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 1uWcEZ-0005BK-3y for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:22 -0400 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 1uWcER-0007PY-IB for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:18 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-4537edf2c3cso57452325e9.3 for ; Tue, 01 Jul 2025 07:45:10 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e5f842sm13203409f8f.86.2025.07.01.07.45.07 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:45:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381109; x=1751985909; 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=dmQWEaJUD6g349jN49GBSvdCGbQvNn5YxEFdunGmRjs=; b=FX0ITPUePeezBiLLc+mNVROTGQQ4wHwtuK9DjmP9GPL2L+MIUswkfs/Vr5tjM+Fp9A TSD02POT8DUCatlJicLGBapGNTIzdpUEoWubNbIMrR4hzRHswwUc6ijeD7hksFMCNyfG OraN4QeFdMJ08Zko0DPPDUx8AFQYmdZsv013QWMoaLMbRTdkjnm8FUUXxvqaCHQJ37XK F0lqw0+9kqZKNslgD5WPe0inTYY4TVoh+Bi7ShcgMF/m+GeJxXhIUHLgoy3q8TCyPzuE GIJKY/E7Flogf2vaaAXTcBzUlQ2MEZLkvH0jPX7uxq0eQSiSZsS0zWuZZhf/5v/q4Xvu TMuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381109; x=1751985909; 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=dmQWEaJUD6g349jN49GBSvdCGbQvNn5YxEFdunGmRjs=; b=gDtFPvJCVnCgU1H6ZSqnJBSrq0jEE5TFa/VfOpkqu4i8N78enygdlzvGZLQUUxf06d Jftq5wLcOMRyvwiOxs3Ij071KoWprntvF/tt6W+OYFGpylruicmXiu/RYFDGbVmseM0+ uoW9wHlKMzV6FW5ceYsqjHqLoCz7DiRBYvB0/Rabj4iVSqkOXkJ8tq4WehZ7EK9bJufF u1tbEH5xG2WRH0RCzPfiePmO+d7WO+j0oY7KX0DNa7yI/gDoAZBtmbZUpWKjtFNPTPt8 U8XWwm/iKxzQonlhjDaLQgVgO4OwTSuctPlh1w83GZIBJ4MQ1w4bUkjuXTzDXI5gVyA7 2FOQ== X-Gm-Message-State: AOJu0YzoJuopM2EQhI/9ciM0VxcxSkbGSKFYyhnRU9/YWKa5pWut7y8a ts1oXj47uZhwvuLB/bni3p31xBlxfBStTiZOOSYo+WfzlBxi+6TaHaHpT0/Wl1uUJl+2XVDYbuk +VsuV X-Gm-Gg: ASbGncuhbxFpk+QYxc6A1PB2Z+ZR6BALCPH7p6zoSILNObLdUeGM6SnAXTBQzS0BpOB NAuX3ooAcVD/+cYRzp8asLF/Oc8ZbjDeRS+V52okKK1UBsm4kZW6grjOE5N7mGMghroA0OW8Sk1 ws6tpgc/g40K4KdhKu8jOP7mqr92Vc9rq6SNOHZkul/cByuwuevNBwQ6d/vkktCCB/tO17/ZCa+ qR2EZXfPg4KKktsL6rH1Ha2mgKe3Ie6ivafoOufZ6lHr9semj0G4e4nJBOl/++VUx6IAwH4Lt8m Sq3zjkPKqAt2P8ALnEIqIOedp4bx0IKB1pisD+DpJbRfNkC6bTxOMQ/kaw1RDYo7mOuhVC5GxBp UCTiyXk98JGQZKAgfd82txowYnl75luCcR6VY X-Google-Smtp-Source: AGHT+IE0z83KkHA19IYpI+lmStABox+IEv+GpTh4hRM30gNWFz05G5ihGWtVoGvG9z+4ky43j1nq6w== X-Received: by 2002:a05:600c:c4ac:b0:442:d9f2:c74e with SMTP id 5b1f17b1804b1-4538ee5cd40mr161826115e9.23.1751381109044; Tue, 01 Jul 2025 07:45:09 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 54/68] accel: Factor accel_cpu_realize() out Date: Tue, 1 Jul 2025 16:40:02 +0200 Message-ID: <20250701144017.43487-55-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381747998116600 Factor accel_cpu_realize() out of accel_cpu_common_realize() for re-use. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/accel-internal.h | 2 ++ accel/accel-common.c | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/accel/accel-internal.h b/accel/accel-internal.h index d3a4422cbf7..b541377c349 100644 --- a/accel/accel-internal.h +++ b/accel/accel-internal.h @@ -14,4 +14,6 @@ =20 void accel_init_ops_interfaces(AccelClass *ac); =20 +bool accel_cpu_realize(AccelState *accel, CPUState *cpu, Error **errp); + #endif /* ACCEL_SYSTEM_H */ diff --git a/accel/accel-common.c b/accel/accel-common.c index 24038acf4aa..de010adb484 100644 --- a/accel/accel-common.c +++ b/accel/accel-common.c @@ -122,9 +122,8 @@ void accel_create_vcpu_thread(AccelState *accel, CPUSta= te *cpu) } } =20 -bool accel_cpu_common_realize(CPUState *cpu, Error **errp) +bool accel_cpu_realize(AccelState *accel, CPUState *cpu, Error **errp) { - AccelState *accel =3D current_accel(); AccelClass *acc =3D ACCEL_GET_CLASS(accel); =20 /* target specific realization */ @@ -147,6 +146,11 @@ bool accel_cpu_common_realize(CPUState *cpu, Error **e= rrp) return true; } =20 +bool accel_cpu_common_realize(CPUState *cpu, Error **errp) +{ + return accel_cpu_realize(current_accel(), cpu, errp); +} + void accel_cpu_common_unrealize(CPUState *cpu) { AccelState *accel =3D current_accel(); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381353; cv=none; d=zohomail.com; s=zohoarc; b=lqf2pJRNr+J7vtSzdiPklpLgbxbgePDWmUVDlxqWu/Z+EfUiuTbqbO7FUqfRlXowUQbhAOg39RNlqTNrrpIBNxu1bf1ajmH1WMQeahnZ+OvNby7SIlDD9GINuDVYYRZCp8hz33bhIas3zDBWd/M23lGJjphfBxV1VJ2x3ztqnN8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381353; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=SfIXmPf89XXe1HBqtw6MJ15ZCEw8ryCmetzhx/QXCNQ=; b=T8KflFQqI5fFVchtD3Utx9SYPRf18AWhgDHxneMRR0uxwLPEiPdnEXNjKAPltelwNqYpr6h7QilUeNhvJlSMSyNePEPeEAo58sEBe+2bOF/TK/8vHCfnqqp2RW7owMXmdfiNF3ZTmJ4B5hW6D/j2fQQ6yTxgWgosukVBWaKdxQY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381353274165.9710307551594; Tue, 1 Jul 2025 07:49:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcFZ-0006UY-Ep; Tue, 01 Jul 2025 10:46:21 -0400 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 1uWcEq-0005TK-2v for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:37 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcEo-0007RO-1O for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:45:35 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-451d41e1ad1so38380785e9.1 for ; Tue, 01 Jul 2025 07:45:33 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3a72dasm167627045e9.16.2025.07.01.07.45.23 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:45:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381130; x=1751985930; 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=SfIXmPf89XXe1HBqtw6MJ15ZCEw8ryCmetzhx/QXCNQ=; b=T/uN01lK39/IysIkQwtjYzi6GMdSAW5FLXeO4snsj2KDo0TBO5K2hkv+uOXhFT5B2m sPbQXVmhWJAYW0UjUvArRQWBsCFqLfz947p8Tg2VThAkjwfR3EL49vv3aKn/k9n8rRxG qoYu2wGIXcOaO89VMD3Aej0rXvzSDw5h6y/tWBQvUuCnhN32WbGjrTviNRlHbWiIMnnk oEYI51EwQZ0TcS6kpOA1+kXN41y2pwuIspT4N3lrAH6YF6vSabzgjT3dXLnx6xlaJdrh WNrQio+RVwYFgotTVHMD7ZMiypgSYW+SUp1nX0u5hkYqZtNLRN30M3KrWaNhcmkC+Ur5 b+NA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381130; x=1751985930; 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=SfIXmPf89XXe1HBqtw6MJ15ZCEw8ryCmetzhx/QXCNQ=; b=RDWfpk/PQoDEPTMNfhpcCQ2TZM4UTC9PMAhnq2FNfbZcwfl6H8iFh/wvyu1LrTPoNY sM8a2NMAyaZmtjdddPz0CVVnXHp+jRChGNEFHBziOMjLxX4yHvroSVAHwpoZim5zmZpO n3fAw7YUXTXozTbcKiz4rz93W1mxSQQ/oU9owfM+Hv5cGG5ASxNjur4eKBl/7lP3vfc9 dSyBYiGxNdvdUsHViYX2hmB3aKG8YVjWlDdeoRdQyKV3EznXFaE265Bqpy6PQtIMXDMu kNARn2Fh568HXtVtTk4ahnSKe/TgGRsParpH6vmFztccHkddKF2YFTcQm+InwHbY+XWH 1k1w== X-Gm-Message-State: AOJu0Yz33IjYftxKKBmy1x/kmxzk/kplh/IiYf3dbR9S3Lcu996NgIqo PMJh8kdHBjguDAGT6zPxyD6T8ri3X2O+Wr2SE7qCQZhUJeGmMWJbR2TpcJU5APj0CmFMcmynRNP l4xSv X-Gm-Gg: ASbGncvtp7252exVQqKMV1CpbPQZPziF+mlR+/wzkTxNwtkyNKJMgwbJapbkGb2hHC/ Vi5zqJQ8he4o2Q+XMZ/mJQaGp7FD+6Au7IHRitPHcu6sYui3tYcrqf9rOKoYiS8o+8oFPzS+sWP GHA65VXMzHRIsyvJ6frHU3XRZtDAfQFZY6bSSilr/eCdPFD2QRfPHGeURTWyk/GFLjRzbSEWaZd fRdcjqoDv/OmUxezhh11XjOWEM8jt/25W7hbhenvU/AtApc3KMOuNZshW7OMK/s7iZSn+K5f59i Y6JBpxQa0mJ6V+qyw05GnbnCrkzkI5qjHdFEFinOTTLaEdHBrNEKKpATd9lqqBXnAkeMjQLtZmy EuKuXTs1ctnWRZ3XWKrGLdPVDgtDA0dUXkH1H X-Google-Smtp-Source: AGHT+IH0NoSf77UejRAzWuRL0iFSipP2VY63L8cEMTMGmuU/liKUetL2tlYYBu3h5d2mQXPqPKegDQ== X-Received: by 2002:a05:600c:3494:b0:453:5c30:a1fd with SMTP id 5b1f17b1804b1-453a33d6fb9mr68703175e9.8.1751381130323; Tue, 01 Jul 2025 07:45:30 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 55/68] accel/tcg: Factor tcg_vcpu_init() out for re-use Date: Tue, 1 Jul 2025 16:40:03 +0200 Message-ID: <20250701144017.43487-56-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381354480116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops.h | 2 ++ accel/tcg/tcg-accel-ops-mttcg.c | 4 +++- accel/tcg/tcg-accel-ops-rr.c | 4 +++- accel/tcg/tcg-accel-ops.c | 7 +++++++ 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/accel/tcg/tcg-accel-ops.h b/accel/tcg/tcg-accel-ops.h index 129af89c3e7..1263a666774 100644 --- a/accel/tcg/tcg-accel-ops.h +++ b/accel/tcg/tcg-accel-ops.h @@ -20,4 +20,6 @@ int tcg_cpu_exec(CPUState *cpu); void tcg_handle_interrupt(CPUState *cpu, int mask); void tcg_cpu_init_cflags(CPUState *cpu, bool parallel); =20 +int tcg_vcpu_init(CPUState *cpu); + #endif /* TCG_ACCEL_OPS_H */ diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttc= g.c index 96ce065eb59..4de506a80ca 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -79,8 +79,10 @@ void *mttcg_cpu_thread_routine(void *arg) qemu_thread_get_self(cpu->thread); =20 cpu->thread_id =3D qemu_get_thread_id(); - cpu->neg.can_do_io =3D true; current_cpu =3D cpu; + + tcg_vcpu_init(cpu); + cpu_thread_signal_created(cpu); qemu_guest_random_seed_thread_part2(cpu->random_seed); =20 diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index fc33a13e4e8..9578bc639cb 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -192,7 +192,9 @@ static void *rr_cpu_thread_fn(void *arg) qemu_thread_get_self(cpu->thread); =20 cpu->thread_id =3D qemu_get_thread_id(); - cpu->neg.can_do_io =3D true; + + tcg_vcpu_init(cpu); + cpu_thread_signal_created(cpu); qemu_guest_random_seed_thread_part2(cpu->random_seed); =20 diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 4931e536beb..83fb2d1362c 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -76,6 +76,13 @@ void tcg_vcpu_thread_precreate(CPUState *cpu) tcg_cpu_init_cflags(cpu, current_machine->smp.max_cpus > 1); } =20 +int tcg_vcpu_init(CPUState *cpu) +{ + cpu->neg.can_do_io =3D true; + + return 0; +} + void tcg_cpu_destroy(CPUState *cpu) { cpu_thread_signal_destroyed(cpu); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381442; cv=none; d=zohomail.com; s=zohoarc; b=KcX+Wg/kjd4NvV2M4AvJ4xz2RpF/WPFDTriYjvN8Y0SaOgbyCzfxHwTIZHLbgn8ScB7OCoqp6ddMWLmpPrtnvK4wpT2O03V2MOg7lQCT6enMAfpbT+m+Mvg1YUDNkNDEEDfOJnP3zlMvVkzLSfW1/sLTwgXBh8oicPJAdtwNYtw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381442; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ESqa0m55dAereTOYbzJ+agFVvi7g8j2c6XA6BfaEz8Y=; b=N7x09yZiAPB6dCNFgm4YxoiFwb65rpe4lI5FW2dDm7HQ72kKUqQwM7SgO8euxNhCuCx2q0QvMb0wJngBenLAdD2/LaSy6/oSq29rJtQh/7Ai3ZgBd6HUP+jtv+8g+RGLsQIyr8v5YzFSxhzygh+BNzQPgpnH58NQkTai+Mfl15M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381442801518.6952512513686; Tue, 1 Jul 2025 07:50:42 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcFy-0007dc-65; Tue, 01 Jul 2025 10:46:53 -0400 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 1uWcFW-0006PF-Me for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:19 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcFO-0007Uk-Bn for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:14 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-451d6ade159so23668355e9.1 for ; Tue, 01 Jul 2025 07:46:08 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e598d2sm13372422f8f.76.2025.07.01.07.45.47 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:45:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381167; x=1751985967; 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=ESqa0m55dAereTOYbzJ+agFVvi7g8j2c6XA6BfaEz8Y=; b=vlQ3PdE2NT6ynVL1MidJvi+5J3h67vJy3Hu4hkSfcUbtakMCA4iNnHZ3ysUW5O4RRA aTJzFbVZQCh9A7i/ausLnsk/GMGGez7RK+8KUEGD0CVh2Ehi/0YRM8yQ1/7Ts1DYamru ni79nFymrpf1kCdnIuxmnDpNzi06E7lNcUPXOfcS1UY+VEt60DGJ8UFA+5Iz9Wh97CyG 55xu4PF3f6LGeeyH776C0IAc4vx9NkPQt6AwtSPdGqJvlRyNNgV0bbyhb5it5O8AKNQv hbhp1y06InHJJ9jdjbu0fIHIP4cJfT2erqisda4tEqtwN1yo6TF0jiIk3NtzVPyCgFYN F1rQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381167; x=1751985967; 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=ESqa0m55dAereTOYbzJ+agFVvi7g8j2c6XA6BfaEz8Y=; b=WflmCWlyVUj5AZRENLbOlAeGvutMcv8xjyF09/WlNXLl1h+5U0hFQYY85JSGcc18FL WN0GHWzlIl88CR5koQv2pp6pW89vU96UjMD2eteq1RWtBXnEg5p0IBVm7Ey2yBGVHELa 2Q8NLX8zm6DBL2g7IT3FP06E0l3SfVTiHm/mDHpPOjoR64oZ0W2SEgXzWbepRdXGihiM AYu4AyPVAyleK4wNajlJgDxGzDxKYr5m0ipjsBGEjfXO3H1Fs/FfepxOZ1+imesW9cJv ZpF2rRnrKFYk3g3R/scxHlhS5Q+upPs2jUCfmOYYS/XfcNgRjrVxs18hiQk3lZwvBdfV 9Ydg== X-Gm-Message-State: AOJu0YzLSpoVA/ZJcBaMhDMPXJqeHFKBJuNCGlK4lPUQUkZ8EhhMbDsx 8nJoXlejLu+zhG8udEnESR8wwvhXa2zbJHazSbDeS2/63aRLXpjgZfTm0eUUciN7NIY8Qi1cX0N oDeUx X-Gm-Gg: ASbGnct20KJr8wLq3rHTHDCL2Z7f9pMMJV+lObd9FkGKwbFE7XXNejKnAYoVbhbFcgk PPOt7ioB5bmWaeDc6gfB3Xigr84wfupsx3E+yZg9R/TnghFMUxnMsIfmpV8OUYUKVnmImHlopoK bb0iA/FPxqEY704v1zOEY3gXDaUUZ5DhZDrTz8m38Rt+WEifZEaxVS7Ll1OpsRJvCCjKGWRH68M BhoeHYL2RlvdhXEj7iYQ7Vt8b9aOg6j6uhxVTQtouQOJGoDhQXAUI9MDJToZx7iXFcbRlXpwBGI gi52U2OvpkmcRui4mJk/PMvzVYQQiTX1MMHUlQmfhT4GjnKjGB1pZ61tbNdk/93rFVlQBhNMSi9 LYqB2jHrGkIMtwo8NV6WigyX2VHbgcxl1jTQt X-Google-Smtp-Source: AGHT+IE3HOUctfKi3UZTf9Xa53Ikfd1lVylr/WOxcMKIT9GhD1+lGswS3k8gguuUU2Pb0MyFv3T77Q== X-Received: by 2002:adf:9cc5:0:b0:3a4:eec5:441c with SMTP id ffacd0b85a97d-3a9000a8152mr13081493f8f.47.1751381152233; Tue, 01 Jul 2025 07:45:52 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 56/68] accel/tcg: Unregister the RCU before exiting RR thread Date: Tue, 1 Jul 2025 16:40:04 +0200 Message-ID: <20250701144017.43487-57-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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_SPF_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381448868116600 Although unreachable, still unregister the RCU before exiting the thread, as documented in "qemu/rcu.h": /* * Important ! * * Each thread containing read-side critical sections must be registered * with rcu_register_thread() before calling rcu_read_lock(). * rcu_unregister_thread() should be called before the thread exits. */ Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Richard Henderson --- accel/tcg/tcg-accel-ops-rr.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index 9578bc639cb..57a4bcab203 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -304,6 +304,8 @@ static void *rr_cpu_thread_fn(void *arg) rr_deal_with_unplugged_cpus(); } =20 + rcu_unregister_thread(); + g_assert_not_reached(); } =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381495; cv=none; d=zohomail.com; s=zohoarc; b=UUDyXG8Dqr0wHET03TVN6SyonB3oT+4RsMO5AxSryNj5YgTS9/Jn1fFAlXP2iRTn005aYnn3G/PcekOG1MZop1FK0OdtzXFUu4P9Tmm/hqoodesy7ywppt6Dr6Br3B25ljO2RxuAOhRira7fjIMPMRmLKIbaiBRD999qKTb37fs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381495; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=m6IcrsyLdnOeI596TIzbeDDuhPreoHEVrkIVko3MSBQ=; b=BbmKMzTwuD4uTU6v1xBXcA7eaeBHs2oVLpWt32xR8v9j4LsWKFXlqTeIghO1yv/HApn7BpgfaetWuyNLGjqW5i5IwvZWLKmO5Fn72d6lkLa03YRg7tKrJPgBvEgmuBzeRun80zD7ZUvqFYEADKarkKSH+byJS61vt0dR9CYpGbk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381495819728.836276745407; Tue, 1 Jul 2025 07:51:35 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcGW-0007zb-AO; Tue, 01 Jul 2025 10:47:20 -0400 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 1uWcFg-0007Ok-1G for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:30 -0400 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 1uWcFc-0007VM-Qi for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:26 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-4537edf2c3cso57467175e9.3 for ; Tue, 01 Jul 2025 07:46:23 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-453823b6d50sm201007145e9.30.2025.07.01.07.46.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:46:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381179; x=1751985979; 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=m6IcrsyLdnOeI596TIzbeDDuhPreoHEVrkIVko3MSBQ=; b=V6eHyqLOV1Y/xOPs5QiOWBcqHholPh7chFmRUdvczAV2tOCTauFl+iuETNsrY6VjS7 12AXmjzh9B5IdBt6LakSTYIaaIr/ioKFLlWx6ivlDVs/w8dC30EEGmsK6ZTUcOqIfcEN s+pOZyS7rx74+gu+xT2Viz0ZitiNMpWdo6dYg9Zwy6UrYt7orY9vmSMQcRqW2SwYk8Nl 1esXBQDL/PogZqqpsVjdab7vkYM8mC27OdLpVu0O6S1/flnmNRsZ6WHKbzdCQxmf1N0K DESOhtdCBjYQGxFwW9N3n004W4Z7hD0lLsvqbclFHk8nuqwMVKItmN6jgGYhc/gWqKr6 CYPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381179; x=1751985979; 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=m6IcrsyLdnOeI596TIzbeDDuhPreoHEVrkIVko3MSBQ=; b=bpy/raP9li0iGR2OHf9+WfVROM0SyOGwbNS83iWd5Y6dO0YFg1Leil56IQPuJpgYCN 8XyD8YrObUpKE6td8BgCejPqxQtAFJaYTXCgAgxByM4TywI1M9o5/sA5LXBRRm3Sdpt7 Rr25otHTKvf0coEfDGkPOZ2GbM3fup8n2KhL0NE0oRQRTBwoK7cMQLp7LlrsvDXbuM4t h4p5jfsvCTR9aU38gRY4y+ZIPNSI3WhmxIHPFyWHN6hXXNMawx6FPv4+B6jFWXVCgJpk 00exLG0tH25J23jE0ELTW4ZMeqO9WhJ81v5dyTG+fbGza8++2RGmajas2fE08vXHxj1t 3R0A== X-Gm-Message-State: AOJu0Yw8+tEDC3wgZRUg1XRXm4nauDcXMF840TzCE6ivfKRc+QzLJyDu V5X2GZoq1VLiJXXr/IS+u+E8H/8Kq4Qs+soM7vj1/nmBYikzftuVsaNkV8KAGQpnkdWtuYcUyOX Mv+eK X-Gm-Gg: ASbGncuMm4pyeCP1e2Cg+fzvJdXV+cBbXwgpjXpEgPoYWf7KyJiQ7/0j5uxphhxEM33 f+yoRUz3E6C0HdjvxP1h8i8z0cYFdbPAbmHRsaqcBEqU8lTvpXCOfofct2CIkiMNkxiIyw3Ih19 GemqgGtqyEhzuRA1Y/CZqfR2lROIQjFnFTV6wIdlcoLccPqcM0sNusVeASIg7ENI/ZS0ePN23zD tZQJE2aF1ZN3X95AIb2ql7McWMR9PCpSj1a+ROuVI5h8mSqh9j6Tvi+1FchMlg6xedExGD12U9u C02zYr7DxypVc1c4TLIp5lDpJfcvAzrsFs7qbtk62Kk3qFjYHgpNzAV18nZAFiMUOQMUCdlZPRe CN8RkGtoxC3nf2qClclm1b4MwJx5uK/qKQ98p X-Google-Smtp-Source: AGHT+IFp9tVKCsbVNb2nifYv7ud+WkTLZWHRsvOxI3AmOVrV+dFXTujip9pJrV4oMyBwUCXDGht7Iw== X-Received: by 2002:a05:600c:3b9a:b0:451:df07:f437 with SMTP id 5b1f17b1804b1-45395177409mr168148455e9.30.1751381179077; Tue, 01 Jul 2025 07:46:19 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 57/68] accel/tcg: Expose vcpu_[un]register() for MTTCG Date: Tue, 1 Jul 2025 16:40:05 +0200 Message-ID: <20250701144017.43487-58-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381496616116600 Allocate ForceRcuNotifier on the Heap. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- accel/tcg/tcg-accel-ops-mttcg.c | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttc= g.c index 4de506a80ca..2d31b00ee59 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -55,6 +55,27 @@ static void mttcg_force_rcu(Notifier *notify, void *data) async_run_on_cpu(cpu, do_nothing, RUN_ON_CPU_NULL); } =20 +static void *mttcg_vcpu_register(CPUState *cpu) +{ + MttcgForceRcuNotifier *force_rcu =3D g_new(MttcgForceRcuNotifier, 1); + + force_rcu->notifier.notify =3D mttcg_force_rcu; + force_rcu->cpu =3D cpu; + rcu_add_force_rcu_notifier(&force_rcu->notifier); + tcg_register_thread(); + + return force_rcu; +} + +static void mttcg_vcpu_unregister(CPUState *cpu, void *opaque) +{ + MttcgForceRcuNotifier *force_rcu =3D opaque; + + rcu_remove_force_rcu_notifier(&force_rcu->notifier); + + g_free(force_rcu); +} + /* * In the multi-threaded case each vCPU has its own thread. The TLS * variable current_cpu can be used deep in the code to find the @@ -63,17 +84,14 @@ static void mttcg_force_rcu(Notifier *notify, void *dat= a) =20 void *mttcg_cpu_thread_routine(void *arg) { - MttcgForceRcuNotifier force_rcu; + MttcgForceRcuNotifier *force_rcu; CPUState *cpu =3D arg; =20 assert(tcg_enabled()); g_assert(!icount_enabled()); =20 rcu_register_thread(); - force_rcu.notifier.notify =3D mttcg_force_rcu; - force_rcu.cpu =3D cpu; - rcu_add_force_rcu_notifier(&force_rcu.notifier); - tcg_register_thread(); + force_rcu =3D mttcg_vcpu_register(cpu); =20 bql_lock(); qemu_thread_get_self(cpu->thread); @@ -121,7 +139,7 @@ void *mttcg_cpu_thread_routine(void *arg) =20 tcg_cpu_destroy(cpu); bql_unlock(); - rcu_remove_force_rcu_notifier(&force_rcu.notifier); + mttcg_vcpu_unregister(cpu, force_rcu); rcu_unregister_thread(); return NULL; } --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381896; cv=none; d=zohomail.com; s=zohoarc; b=lIlaDES04UgO/EdKZI75204E+flLPjsx6pmx/ojKt6Bnfm13JjAemc0WD2CKTdCJdFJpHOPPMDM1VEoZTnsfmBWx87vnSBwBNIjmyfh3WE+ZfExTRY1xuJeODDehlN2KOWLIWN3yd9gsOjwu974sO+1MLeFrHU7KlSXbFgUww2Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381896; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=FL4Z1JJfVmMUZm0/Ew/5hEBjQo27MY9J0Ii/7EGBd6w=; b=CA7ZZqzpAuEfli9s6WNd2fsHVGVtmc4g+o+G4DgWdityUMRh5MGFQkcA8YAP0L5cQQfsu5RAwIVn2H6s9za/vwpWIkJxgpQepCeAshJAaEGpSk0yKS46aNjrSFriPxZge6LHDbxhgOWNbKK+Ha8xJJiqMmBZjyJi7mXZ/OHl6js= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381896206754.5027844200401; Tue, 1 Jul 2025 07:58:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcGn-0008MH-Et; Tue, 01 Jul 2025 10:47:37 -0400 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 1uWcFq-0007ug-S7 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:42 -0400 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 1uWcFl-0007WC-UV for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:36 -0400 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3a525eee2e3so3672973f8f.2 for ; Tue, 01 Jul 2025 07:46:33 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e5f44dsm13331985f8f.87.2025.07.01.07.46.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:46:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381192; x=1751985992; 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=FL4Z1JJfVmMUZm0/Ew/5hEBjQo27MY9J0Ii/7EGBd6w=; b=d/PoaqtbHBlDH79l2QniJs7ifG0E7tJVtsx176pIS7k5LgiWbzkXGZGxYJyaBIARho bQUsmBBOcJ7Am3o6veVhgbQoKszAbyAZ7OH2KzW7QXuvhky/Tmxl7G2jEfYoR9QOM9IF HTAm5R7SvpKArwfZ4fQbvDse92xzJZJGb5YYijZIz+11lvi03SClOB8hAN5KhyMUBka8 GHcYlp0rMF0dw1TqKySnUP1jXao2MNNQjjXo6RaUmfEqhkWTqcUJ5sMWVRpAvX8Ep28p +6YlUT3S1JhFMi7cMZCeBOPtj9u8lyBWTEcbu2dj4llKjv8+vooOKQrNBx6lYlUJV53+ 7+Nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381192; x=1751985992; 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=FL4Z1JJfVmMUZm0/Ew/5hEBjQo27MY9J0Ii/7EGBd6w=; b=MB+UGDNrwYfEL5ajyqQNFfzUASJ38PotBDhgXgFEhd+d/8fWXBkAKhzgOFyOSHpGCL bLNTZRRXktYNfPY8P2Es9kGOSBhIVLu2S2p69h/w9PKWM6g2pZVkh36Rp1c9P3SEfF7x LXPTIllqJCtGImXDKnmv9IwyIh+2dNceLJsfvHrl2e8rNgk2Q7vTBV+8ZBxtUSNqqpI2 sk+r1vnPzf6PE772/R1UKW3WA2goLWTOxL5KaRtLSsmuXgno6HyIV6zfyOqcQBaTEoB2 NRy+X04JZaMsNFmMcmmVP0+4GwSQx/7Ehux4TmORPJoqDTnaJZmL1N9rc7XmFVPHImgI 7BEg== X-Gm-Message-State: AOJu0Yx+WxBLk1UOoI2Z30ChByLRKdUGVG82odqOdsbt9INasd1u7wWT aM9MrZ0YV78AvjeLghDrXYXJR431GCZyX4zq6Hx3s2fsdc3WslXxtW738IkPLHGuAz7MB3gXRrL bwphJ X-Gm-Gg: ASbGncu24A3pieXcN/xaeMfx4m0vF5ykicN2a07NuiwIEqdvyts3DiFr4dxkSUgp3EQ 6VxzrLWXhu1ttv/kqZLlQFNX8EfFEvf49stt4gIRSrkxERXX1p88O+EFMH0oz/ecUeqr2f0bSD/ Va4a7cSPJe8eeLst6/VYg23Qx5XPWtH7iKAGukuHlMwMg6Irte8e+3HeVsCAS0Wg2CNpAULnoZL LgnbpYx5k7o7yHj6KCInbTaEDYQy+CZeyOyRthFZ+i8Du10vjhOdZrcJuh8dXWQBfX1EXMPfYTP DHVPi6taGpnqSpnfEqXqTTgYJk9ZuyYvFanElHfl/M4Rx/IVj0a8dKNnYOkx6fFXVkEPP+sry+u HUKNzYUbzHRUY9jtDL7aEsakJAMR55VETjmOF X-Google-Smtp-Source: AGHT+IHnWmLdIDgfirMf5wozhxeIz5isTLSPUPIGzyJqKPAQ/edMoYtX4Om9YGgHMV/Gc6jwe6wUUQ== X-Received: by 2002:a5d:5f91:0:b0:3a3:67bb:8f46 with SMTP id ffacd0b85a97d-3a90b9bea87mr16637740f8f.57.1751381191768; Tue, 01 Jul 2025 07:46:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 58/68] accel/tcg: Factor mttcg_cpu_exec() out for re-use Date: Tue, 1 Jul 2025 16:40:06 +0200 Message-ID: <20250701144017.43487-59-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381897811116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops-mttcg.h | 1 + accel/tcg/tcg-accel-ops-mttcg.c | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-mttcg.h b/accel/tcg/tcg-accel-ops-mttc= g.h index 8bf2452c886..72eb1a71d61 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.h +++ b/accel/tcg/tcg-accel-ops-mttcg.h @@ -14,5 +14,6 @@ void mttcg_kick_vcpu_thread(CPUState *cpu); =20 void *mttcg_cpu_thread_routine(void *arg); +int mttcg_cpu_exec(CPUState *cpu); =20 #endif /* TCG_ACCEL_OPS_MTTCG_H */ diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttc= g.c index 2d31b00ee59..8a0295e2410 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -109,10 +109,7 @@ void *mttcg_cpu_thread_routine(void *arg) =20 do { if (cpu_can_run(cpu)) { - int r; - bql_unlock(); - r =3D tcg_cpu_exec(cpu); - bql_lock(); + int r =3D mttcg_cpu_exec(cpu); switch (r) { case EXCP_DEBUG: cpu_handle_guest_debug(cpu); @@ -148,3 +145,14 @@ void mttcg_kick_vcpu_thread(CPUState *cpu) { cpu_exit(cpu); } + +int mttcg_cpu_exec(CPUState *cpu) +{ + int ret; + + bql_unlock(); + ret =3D tcg_cpu_exec(cpu); + bql_lock(); + + return ret; +} --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381360; cv=none; d=zohomail.com; s=zohoarc; b=GfyXhuXN3udFVjXvAEh9krMyEvoP8aQKewqWdrWq3NORClLOZC9rD6o6f6Ic6Pz67JmhSYuQM/eQpRsD1Eonl1OXnZuKNSpexpsH5nB6bZZnHN1g4o7ikpZ6IhyQ82scWLgmOaihF20u5N7Xgl/bpqX4YPvFKM14dnZlxAkakwI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381360; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=iORnn1JJJLCdwYBCZ/l6c6FvfoDU1dUjDQ64NH+dtBI=; b=OUT0BV9UHCVOigbeg7I6W07FLjekYE/kead3QH210cvO2I8mHTy2DydOyuJUI/EG3tnLvPkoFPysQRZk8jzL2hGVjFfT1OXzBV16405MD7SabcTl44HNMYd46kboKut/Wz/n5cWiEpe1EJz2MYNXtk1X8OLnySoi6lfNTB5+mTw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381360385459.8019963545489; Tue, 1 Jul 2025 07:49:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcHS-0002ZL-Py; Tue, 01 Jul 2025 10:48:19 -0400 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 1uWcFz-0007v8-U8 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:00 -0400 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 1uWcFv-0007Wp-SB for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:46 -0400 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3a6cd1a6fecso6151320f8f.3 for ; Tue, 01 Jul 2025 07:46:41 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a390d4asm170094995e9.3.2025.07.01.07.46.37 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:46:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381200; x=1751986000; 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=iORnn1JJJLCdwYBCZ/l6c6FvfoDU1dUjDQ64NH+dtBI=; b=SdxToHs4/M0GcFEOWGProE9foJcm8nWvl9GDi3I/AFOxV+ZFvaHYxOfL5Q9bq7F0h8 WM6mQtyBtvM/A0gS+VigFAroT87lT16A11f0C0AbSU2TWGd2V+awxwSujt9Ukcj0mafV Hzhuojxt6GyAc+rKzwtEpPn32+cm/r4DPFYgmaekI7+RrxsnKcRCCHrGkFeNBB0rFeVO qHaJcVhty3oY6UvBL7GAg5v0VH+Ns3Y+Q0rJewb80IwD4NEPMvHVxmX/uNRZWb5yUk91 BZ3lXxQKLzf5gj2RCuozaKQlSxMjXjY8IDk8idqPWnaay5l+RWaEn28Hp7MnJ9n76j9a yYvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381200; x=1751986000; 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=iORnn1JJJLCdwYBCZ/l6c6FvfoDU1dUjDQ64NH+dtBI=; b=PrSngU6wcAB9z1zGyC9txKVPJ/NCSZplPYXmwypstWHkSEdi91g0QR0Da+BqOwdul7 /UMjM48FmHe1qm9/LR7mmaNiSyrEl8UEnKPjnaBgjQtJMzfA4FLsPXZLoC0YVNs3vgMT +1qo0zDC7fBmjIyz0azrAwPshEC3DQ784DcyKnMR8HBKjnbkvnh6c9l/2zF5qAqVixYY pvRVeJKC9RnRhWXKr21SOCLA94e8bvB4BN4NCfABQ3uoG5NVpqUUKtTyRI5aSMD9xol6 xun1g2BvdRtpfhrq1U2ohZnCwYt9JoD+2yoKgb9tLshQmCzuy5pL6ZHkI/znkNecm/oA RRDA== X-Gm-Message-State: AOJu0Yy3Og4KbZ/wdkMIDSbhD/OYjwa/C1lIRYNaOVOdvfb34aGMIALG szC9GcerfjKeNq1iOpfQB8DqgNf8q0TxxKb4hLz/6+nLhwj8ByujFyiTr3vlBH+/Pto2oO7+G+1 S30Xp X-Gm-Gg: ASbGnctj5IBz6epQmqcKeV/Bc5ABeOLbxDQ5qHA/Fp7bNLzuVviKl5QZUaxGawb+Xxi Ib1HkKr6nUEDfs7tXi47YWH79QI+qGNkmVaMOia90Z/Gc4JFbBFcYZKQcOgm8vw4hNJX1evwRxS PlWE6x9Ps+BQx5vo5DU06CBwymA3ajtGepVMmvYwn6t9Yk+zbD4EHlN5uKt/bdaHTa8BYc4z0GX PpWn4HEYpFHZIMxw1a6DjEmxxuouOIRtSRX4PxPYWfxgNuDcalU2D8zWJ6QaQRG757Ti5VnekPY nbG9Br24ZcFEG52MiQUujSzrlmx+6P8hl2nY0NIe30J15QnMEV6945XHeLlkgYg5PeZA8i629I4 BICe4SeD8F7W95HJK+nKn2T7doRHhktx5RkDc X-Google-Smtp-Source: AGHT+IGAs7TxHwXqt7lLNC5eerYhYUvaR4jfXV0zWONpvIaehy6Rsj5cpIEMUFRBQ+2mO+gEZNw+jg== X-Received: by 2002:adf:e282:0:b0:3a5:2a24:fbf5 with SMTP id ffacd0b85a97d-3a90d69c3ffmr11689974f8f.18.1751381200280; Tue, 01 Jul 2025 07:46:40 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 59/68] accel/tcg: Expose vcpu_[un]register() for RR Date: Tue, 1 Jul 2025 16:40:07 +0200 Message-ID: <20250701144017.43487-60-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381362560116600 Allocate ForceRcuNotifier on the Heap. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- accel/tcg/tcg-accel-ops-icount.h | 4 ++-- include/hw/core/cpu.h | 2 ++ accel/tcg/tcg-accel-ops-icount.c | 8 +++---- accel/tcg/tcg-accel-ops-rr.c | 36 +++++++++++++++++++++++--------- 4 files changed, 34 insertions(+), 16 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-icount.h b/accel/tcg/tcg-accel-ops-ico= unt.h index 16a301b6dc0..5f3ebea50ff 100644 --- a/accel/tcg/tcg-accel-ops-icount.h +++ b/accel/tcg/tcg-accel-ops-icount.h @@ -11,8 +11,8 @@ #define TCG_ACCEL_OPS_ICOUNT_H =20 void icount_handle_deadline(void); -void icount_prepare_for_run(CPUState *cpu, int64_t cpu_budget); -int64_t icount_percpu_budget(int cpu_count); +void icount_prepare_for_run(CPUState *cpu); +void icount_update_percpu_budget(CPUState *cpu, int cpu_count); void icount_process_data(CPUState *cpu); =20 void icount_handle_interrupt(CPUState *cpu, int mask); diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 726427449da..952e44587b3 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -498,6 +498,8 @@ struct CPUState { int singlestep_enabled; int64_t icount_budget; int64_t icount_extra; + int64_t cpu_budget; /* FIXME TCG specific */ + uint64_t random_seed; sigjmp_buf jmp_env; =20 diff --git a/accel/tcg/tcg-accel-ops-icount.c b/accel/tcg/tcg-accel-ops-ico= unt.c index d0f7b410fab..ae1297ff7f3 100644 --- a/accel/tcg/tcg-accel-ops-icount.c +++ b/accel/tcg/tcg-accel-ops-icount.c @@ -90,7 +90,7 @@ void icount_handle_deadline(void) } =20 /* Distribute the budget evenly across all CPUs */ -int64_t icount_percpu_budget(int cpu_count) +void icount_update_percpu_budget(CPUState *cpu, int cpu_count) { int64_t limit =3D icount_get_limit(); int64_t timeslice =3D limit / cpu_count; @@ -99,10 +99,10 @@ int64_t icount_percpu_budget(int cpu_count) timeslice =3D limit; } =20 - return timeslice; + cpu->cpu_budget =3D timeslice; } =20 -void icount_prepare_for_run(CPUState *cpu, int64_t cpu_budget) +void icount_prepare_for_run(CPUState *cpu) { int insns_left; =20 @@ -116,7 +116,7 @@ void icount_prepare_for_run(CPUState *cpu, int64_t cpu_= budget) =20 replay_mutex_lock(); =20 - cpu->icount_budget =3D MIN(icount_get_limit(), cpu_budget); + cpu->icount_budget =3D MIN(icount_get_limit(), cpu->cpu_budget); insns_left =3D MIN(0xffff, cpu->icount_budget); cpu->neg.icount_decr.u16.low =3D insns_left; cpu->icount_extra =3D cpu->icount_budget - insns_left; diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index 57a4bcab203..f5af7818d51 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -169,6 +169,27 @@ static int rr_cpu_count(void) return cpu_count; } =20 +static void *rr_vcpu_register(CPUState *cpu) +{ + Notifier *force_rcu =3D g_new(Notifier, 1); + + assert(tcg_enabled()); + force_rcu->notify =3D rr_force_rcu; + rcu_add_force_rcu_notifier(force_rcu); + tcg_register_thread(); + + return force_rcu; +} + +static void rr_vcpu_unregister(CPUState *cpu, void *opaque) +{ + Notifier *force_rcu =3D opaque; + + rcu_remove_force_rcu_notifier(force_rcu); + + g_free(force_rcu); +} + /* * In the single-threaded case each vCPU is simulated in turn. If * there is more than a single vCPU we create a simple timer to kick @@ -179,14 +200,11 @@ static int rr_cpu_count(void) =20 static void *rr_cpu_thread_fn(void *arg) { - Notifier force_rcu; + Notifier *force_rcu; CPUState *cpu =3D arg; =20 - assert(tcg_enabled()); rcu_register_thread(); - force_rcu.notify =3D rr_force_rcu; - rcu_add_force_rcu_notifier(&force_rcu); - tcg_register_thread(); + force_rcu =3D rr_vcpu_register(cpu); =20 bql_lock(); qemu_thread_get_self(cpu->thread); @@ -217,9 +235,6 @@ static void *rr_cpu_thread_fn(void *arg) cpu->exit_request =3D 1; =20 while (1) { - /* Only used for icount_enabled() */ - int64_t cpu_budget =3D 0; - bql_unlock(); replay_mutex_lock(); bql_lock(); @@ -235,7 +250,7 @@ static void *rr_cpu_thread_fn(void *arg) */ icount_handle_deadline(); =20 - cpu_budget =3D icount_percpu_budget(cpu_count); + icount_update_percpu_budget(cpu, cpu_count); } =20 replay_mutex_unlock(); @@ -258,7 +273,7 @@ static void *rr_cpu_thread_fn(void *arg) =20 bql_unlock(); if (icount_enabled()) { - icount_prepare_for_run(cpu, cpu_budget); + icount_prepare_for_run(cpu); } r =3D tcg_cpu_exec(cpu); if (icount_enabled()) { @@ -304,6 +319,7 @@ static void *rr_cpu_thread_fn(void *arg) rr_deal_with_unplugged_cpus(); } =20 + rr_vcpu_unregister(cpu, force_rcu); rcu_unregister_thread(); =20 g_assert_not_reached(); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381322; cv=none; d=zohomail.com; s=zohoarc; b=Wb8wjS5rpT2oqNxh0O4vLKxjQHNDuT+0AsJ6JyOQ4Q7HQetOl5hRTlxEwaZEV8seafupCNBI+dYpiyogikJxX8wzP5fPpwyHPSmEMYqxgb23ZtFDqxXSxSHA6FmL/NC48/pFmUpj1aFsNZ6D4a9Y0XbfDqYSB6QEEcRi0G8OMnQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381322; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=32sIKa7Y8PNtS8Bgd6Etg2hYgYfsXGy2A3nEDlLpLAs=; b=iVZuq9pKIdMzm1eqGAwHPQvF8w5s2nMElqI/LrC/KipArn4SO5lOdy3j12JB7bMETgecNsPJMqPbEj+Q07sFdJR5kf2bKu/cbDgakfK+3dXaL5MhS3lTLJZzmvTzVpOFG1r7JKrIqf31n/JgTazv9RXbO4jAzNb2r+FU8qOf6q8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381322867792.0440152573226; Tue, 1 Jul 2025 07:48:42 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcH3-0000Lu-ML; Tue, 01 Jul 2025 10:47:54 -0400 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 1uWcGA-0007vm-7A for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:04 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcG5-0007XJ-Hc for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:46:56 -0400 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-453066fad06so39234795e9.2 for ; Tue, 01 Jul 2025 07:46:51 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538f88efffsm140603835e9.17.2025.07.01.07.46.46 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:46:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381210; x=1751986010; 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=32sIKa7Y8PNtS8Bgd6Etg2hYgYfsXGy2A3nEDlLpLAs=; b=cMYPzPfrWitHywZSbVPdPGJolaLpqGTlQQVYPxU7P1GB9aa/hcEQ1LiyDGy/G2puAM utgz4JY9JvwQePg9AqKw0uIMp9NGueTD0Rtx9FRnneSh7bFnX9EanUtE8jUzk/RUrfn8 9Vn731qoMfR0RM93hUIn/vS/MCWmdadG1ZGKvIe8a+CkX9XZpMwM43HPkya67ShCgTUn yMYiPZt0E0XmH7IKOWsTQzdglrnjifwfXnFCVRiXzGZdLSOlm2q/57bDWw7xg32kPah/ kcFWJ8ue3ViEhNOGm2M9ZxIirdJcYgnf4qJgZl6IPsJvL+Xk4p5V4G2crPytAwiPSLG3 aL9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381210; x=1751986010; 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=32sIKa7Y8PNtS8Bgd6Etg2hYgYfsXGy2A3nEDlLpLAs=; b=rNpy4vTBB5sYnhRVaM7QJS45qVF1N9nOjyIV0Kq8OAugNB7txk1pUqotcN60napf43 kJLt+QbWIAu+ECEI/g5nfOjQimlWuQKFY199QtVad29ec+7l6LcrjgY81QDkvWSPgL8b BPxK5JY+yFijH+jpIh5ZkRVP9AqqYZJB239WDRrHJbmDuxejvJg/Vd17yvVNvLXeD1Ri kZX6RiXw0fKllxEqdJvh7GfNpssHaTB0fr/J2Yba9+z7hGa1owqvTJ+LQo7V6eMfy9aj tHGRkxSE5Ev5xb0coY0BD1VvIvaO68R6Ek+dcGn59NqKMcNYB2FCgCDzgUZ0hEvN6FeX RYSw== X-Gm-Message-State: AOJu0YxrPzYR8pcayUxAFYitC2Di5mWu1blixyWoiZ8ikRIATwpW+OZZ C3y+T8Svd3uHUgo3myIK4UbS3/cVC/KrrbdD7uo6Stwg/hCcqa8hXQeSy5u3guImdv5rTbwDezs IJlGm X-Gm-Gg: ASbGncueAwIZnhqiEktJnUydaQge4D01uKUp7vrgBna4fdWYm26X+VdG2wx+nQ5K4PX 0rjwmYPXTbFsM9VvTf+nPRKGknOokrhvNB16AFucA8xz+Z1wa2tbWZvv3Qpgc8g5lWjK2ePdwd4 bz6YOr3/s30nwjcx/JWOg8zur4ZryHo6fWWc/xixeZFx0O3LDigNYzJFPKTEQRuRlIMguNqxlhz PIDrBjSFOh0HlEJrg9aLxG8FHZ7DGMyMjp+eNiz2NyKM9BypEMttERKUmUfb5NaAsSopX7C3xik NgVj/tzqUmjrknp5qe+XDnjm3UGogRPjibrTJtwxC1NEwD2/q/fLROgONz5ObLixjZFC7EE3O0I J47Cl9FJywMJDFHyN6xLrDm9SnPdeZ7nkJWc+4shGXRlburU= X-Google-Smtp-Source: AGHT+IGOS3Pp8BhAxRzra+IEREvLRhuYrwIp3ak858aMQ47FBlqU2sCDfuCBdZRqh2BLL4upavGENQ== X-Received: by 2002:a05:600c:5392:b0:445:1984:2479 with SMTP id 5b1f17b1804b1-45390bad330mr170129225e9.5.1751381209722; Tue, 01 Jul 2025 07:46:49 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 60/68] accel/tcg: Factor rr_cpu_exec() out for re-use Date: Tue, 1 Jul 2025 16:40:08 +0200 Message-ID: <20250701144017.43487-61-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=philmd@linaro.org; helo=mail-wm1-x329.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381323870116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Acked-by: Richard Henderson --- accel/tcg/tcg-accel-ops-rr.h | 2 ++ accel/tcg/tcg-accel-ops-rr.c | 31 ++++++++++++++++++++----------- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-rr.h b/accel/tcg/tcg-accel-ops-rr.h index 2a76a296127..a73fe5b94a6 100644 --- a/accel/tcg/tcg-accel-ops-rr.h +++ b/accel/tcg/tcg-accel-ops-rr.h @@ -18,4 +18,6 @@ void rr_kick_vcpu_thread(CPUState *unused); /* start the round robin vcpu thread */ void rr_start_vcpu_thread(CPUState *cpu); =20 +int rr_cpu_exec(CPUState *cpu); + #endif /* TCG_ACCEL_OPS_RR_H */ diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index f5af7818d51..a9150802369 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -169,6 +169,25 @@ static int rr_cpu_count(void) return cpu_count; } =20 +int rr_cpu_exec(CPUState *cpu) +{ + int ret; + + bql_unlock(); + if (icount_enabled()) { + icount_prepare_for_run(cpu); + } + + ret =3D tcg_cpu_exec(cpu); + + if (icount_enabled()) { + icount_process_data(cpu); + } + bql_lock(); + + return ret; +} + static void *rr_vcpu_register(CPUState *cpu) { Notifier *force_rcu =3D g_new(Notifier, 1); @@ -269,17 +288,7 @@ static void *rr_cpu_thread_fn(void *arg) (cpu->singlestep_enabled & SSTEP_NOTIMER) = =3D=3D 0); =20 if (cpu_can_run(cpu)) { - int r; - - bql_unlock(); - if (icount_enabled()) { - icount_prepare_for_run(cpu); - } - r =3D tcg_cpu_exec(cpu); - if (icount_enabled()) { - icount_process_data(cpu); - } - bql_lock(); + int r =3D rr_cpu_exec(cpu); =20 if (r =3D=3D EXCP_DEBUG) { cpu_handle_guest_debug(cpu); --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381349; cv=none; d=zohomail.com; s=zohoarc; b=T78/Cr4zuOvqDcXy83GArX2XUeQ49qlUEVL9DgrbjVeX45woir/1XVBSeEK31/3TkPPWafUCZWYj7ea83SDYfQs/fUgFmtqnqtlsOvLGvQmajJsydW5omgto/7u3t6J01/ODRudbTtJ+qtmw3chWVdJEYvnBL3Ukjz1X61CWjlo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381349; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=4hhl07c07Yt1bcZ4pWFGg1y3bhGgJSn5MEgtp83jeqQ=; b=WuJbY1enVR8fXtITKiaAprdqIi4/9EyVYpcZz7v0BQ1fZH3C/HMv3wK1By03gGoFnXz2PIyXlUZtGeXW4+cOmSg8fEmqJbnr9YB40SUVy3KIYVzkJ6KZo7eKRmnDOPD4HuNLo+5bpjZWdibdETGhZwCPMKvELcXwAO/tz63D/Bc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381349594855.1976080601161; Tue, 1 Jul 2025 07:49:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcHF-0001Rf-RE; Tue, 01 Jul 2025 10:48:05 -0400 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 1uWcGJ-0007wS-AE for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:09 -0400 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 1uWcGG-0007YJ-37 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:07 -0400 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-450cb2ddd46so33964365e9.2 for ; Tue, 01 Jul 2025 07:47:01 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fb67dsm13749177f8f.35.2025.07.01.07.46.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:46:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381220; x=1751986020; 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=4hhl07c07Yt1bcZ4pWFGg1y3bhGgJSn5MEgtp83jeqQ=; b=lyRmHytQNi5Bf2rs9cUiwFLb3XSH8YH6OFkGYZ8npmDkjv/e2/Fmywwu0WCEGdxSQa m9u3uTs/DLlJuE0uzelfLg/0z0kTjaWLlGsIacd9LP4CJYW/10AhPs6xqUUyMgz1CxRO cqpwLzy8MIgaQzuMalQFgSBR1NYMumFoQCpRTbyJ29dY4C1rHOEMjWrLMSicWz+fsdfi QKDK2qmPejPENLBTrzhVtGU0IDvd0tEm+weV6MO7QfYhU8/r4t4zZk9okR1kfhb97LA6 czRvJ9hLdSw9KEHAL3Xobm56ubYE1Uh/N3g2n5li/L/GHt+WgpIsR7jvJoQYCakObu8K M1hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381220; x=1751986020; 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=4hhl07c07Yt1bcZ4pWFGg1y3bhGgJSn5MEgtp83jeqQ=; b=uE115uwgkTB2ZBHPzhqHpDfnmuzyuNtFjz39RfeaHicxgGcAQ3C1plpY9j0Arbc5xC sMvmw8FWgV4V8oTRca4wgdc/gxUa6G3eKvVzcBEVmZM0p4E05Pvxo/xMznWJZCWbcvWZ OCj0wTXIAv6fr9jhnIWxgMp1s3/si6iJ3cMr4FBjMgWsiq5AKoAcZ9oX88vHQLc9QFXU sztPnpjBzuGxhwXEOTyDTU5zE2cETflnAHnuFmXkqWHX1vjtiKFltTyg4hFp5Rx0d7VF UYjIUY3ib2oYzpHMmT0QVlb9oYwN41Ob48r+UVh0/rmkDowGyfyY+4IQpvNAuDEnEFsI gdRg== X-Gm-Message-State: AOJu0YwjEpYoaI+C0zjdbmjuakBRQo8IMvhFsv3XEWqu85ZfJjevXWta qV6dfJ1yMwfKOyGzTo+NIK64s8rljgGE88n2XiPa4HGGWPP75zJdqrBhj/73mp6OuNjXm9/3Hft Bj8sC X-Gm-Gg: ASbGncu+xvXYHzxMcymD77NIrkdoJ1ZymJksRBb+UD0yS6xCz9bGiYlJvszlmdNhvMv dgh+yfOS+fBaK2GDBcsZ9tOwB/1MUWOzvKK9BiIxQOes462eBzB2gKl97qj5FMV5OM/TP7EgjuG 1uedAARXw/HBuwKN16yVftEP4Exj97BfRJZLdccPIJ7jfk7x4K0cD0hHo6+yAVsfdAPrwfKGqD9 f2Y7/jg09UlEpfOSWK7ZdEFlTNCyho0cEBnFlYj5HZWOm7/56sIOQ+FyMnLbKta0+PZs9bwHRgs rnvQF/2uDcP0WzWWHmxINDLOygJUJHzUIjc6KxNi4ZVeTO0X19cbeTsFCv8ThoD1LEsjOC2+Trx FtXD/2EINs9aYjNln6AGrL1uUQPTYLqEMw4qzyOhP7jWVh98= X-Google-Smtp-Source: AGHT+IF/XHm+eQVFhfWlnEuKj+A771wed5Z2AiWXa9QWZz55KdZWok3A3Kpc/lRRnJMjK4pvXRnEhg== X-Received: by 2002:a05:600c:6085:b0:43c:fceb:91a with SMTP id 5b1f17b1804b1-4538ee58e29mr156297785e9.11.1751381219845; Tue, 01 Jul 2025 07:46:59 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 61/68] accel/tcg: Clear exit_request once in tcg_cpu_exec() Date: Tue, 1 Jul 2025 16:40:09 +0200 Message-ID: <20250701144017.43487-62-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::332; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381350340116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops-mttcg.c | 1 - accel/tcg/tcg-accel-ops.c | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/accel/tcg/tcg-accel-ops-mttcg.c b/accel/tcg/tcg-accel-ops-mttc= g.c index 8a0295e2410..2fb6ced2572 100644 --- a/accel/tcg/tcg-accel-ops-mttcg.c +++ b/accel/tcg/tcg-accel-ops-mttcg.c @@ -130,7 +130,6 @@ void *mttcg_cpu_thread_routine(void *arg) } } =20 - qatomic_set_mb(&cpu->exit_request, 0); qemu_wait_io_event(cpu); } while (!cpu->unplug || cpu_can_run(cpu)); =20 diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 83fb2d1362c..9b5caf9c4f5 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -95,6 +95,9 @@ int tcg_cpu_exec(CPUState *cpu) cpu_exec_start(cpu); ret =3D cpu_exec(cpu); cpu_exec_end(cpu); + + qatomic_set_mb(&cpu->exit_request, 0); + return ret; } =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:24 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381745; cv=none; d=zohomail.com; s=zohoarc; b=mR8fHL54VLaucF/Hz+VDGOffakn2hkOrMn9ytGDecr8cC8Zlgosg7BWAA7PPPH+zV8o1to/MlJvWSrK/opYXVzGl5/K1wgdBaQraKe4/j7jvhv18T3OsoUHuOYPqD1rZc3AIqcBwr3Ca0W1wJhZrVfmrXXkoXxHGXW83ICA2u8A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381745; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=lM8I1wdyqp+n5IfE0fwP4jnCngs3585EkWKxfQquTDA=; b=OnJWV3U2KFFobuzr62+HiX9zCiarWgo3DOv4i9fF60ZspCTQe8ZtjZ5FQOcywhv339eHOZ6CawrcxhwCjchkZNWUzhl0Yf7CKw7OPoAegIjzy0c1fiJybX+QnhyQdGiY9MVtXPcP9tPCBEy7IopviYFzMl5VxhRi7wuqZlxriWU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381744956157.20090623870442; Tue, 1 Jul 2025 07:55:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcH9-0000x4-C3; Tue, 01 Jul 2025 10:47:59 -0400 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 1uWcGP-0007yi-Pl for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:17 -0400 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcGM-0007Yi-W6 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:13 -0400 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-3a6d77b43c9so3113833f8f.3 for ; Tue, 01 Jul 2025 07:47:08 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a892e5f8absm13700424f8f.95.2025.07.01.07.47.04 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381226; x=1751986026; 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=lM8I1wdyqp+n5IfE0fwP4jnCngs3585EkWKxfQquTDA=; b=mcw/x2D+9jhb8M3C+iQWRX1xPcJThSLXF8HbtHBQgNmOzjCPW9YPygai9tM9QhW2sM Lqw3OZOjyq8JbzNWpz/BmwNKHQAcEVtA4swBLpnZQcZPKhcPk9Mk05ZvPqpx/1k+5f8u cU/Sp09nQxxSfRpfSv4ErL5wUzw7m82kaTDbiGsnFekwqlXUJ2v7+LImCokxmJxyrWBk Q15BtRWf3vZzxFiPWxLp0LTJ6fzVQMuBgXAOxK0SgVSiOkU5W8Vx88j8IVaXVauVIB2E IndfJcQwxQ0mKuFz/T7VWXfs0U5M9mMOsQpEYr6665snm8kcQNM3U2yM2/BPa13iqHOA QTZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381226; x=1751986026; 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=lM8I1wdyqp+n5IfE0fwP4jnCngs3585EkWKxfQquTDA=; b=JmqJrjmDkyGJRy7mQOczKj0YeXQte6A+59cNvF3jkTirG0RoEgla3Rf7CHjFrc6gWr oi6Psiw0JDTO3omV3w8IGJSVrnAcfTMM5RFU2Cu6EwpTOhPy46/FkggFlSPu0v//MNzN tduUTrKT5NoDNTxZTQSbvuvMVbDBEymKw2uTDAFYbYDnNebRRmzlOsYxSgJCSRWzFHLz +L6O7NM+P1f+/biaqpcPNhUV7i1oY71y+fW6LgyGLUsAsAEVdfhMHv81vfT7F5FAkLYA T6RUTvX8lvZPeQDbtCGS+5PSZf+WXoQpJdpohB/FzJN3UtV3hm23w8XWT0r+1Y+ATPJs lCTQ== X-Gm-Message-State: AOJu0YwbE4BBxyx7FUh7sw5qeM5ZUVcaVPImayLEEyn7QhO4MDvKY1pC 23u/mv25MEKnYugy8XgFkY2ffaSUC2aR9IZqmEWyB1EKJTF18/br1QHr4v1KDIPIlLq7BOWA0eW aFr7C X-Gm-Gg: ASbGncuCbEqEjRDolwTBNyv1XuHn1yl5Olu7l0pedc6u2MjiyQ7kNDxTUg0PKyGoAfz p5s7dsA7LjRzmoDCG8N273w9a87KzLViz470MHJOe3QcW3ql8IrHMigwj0kigzEZFDnagd6NeW/ zRHJXTtXglI6kg7NOyZmgv2pannwayD0UC7eXd/vNHZMNuSzyKSgD+SkKKdcHsVCxwS2Zk87V1K pB9GCzeGsUVKKfQaHx4ubGAHcrWp37QlvuhEyba5c+vS389r5jffJ8+rjQzSd3WXA5Hxpf3S8kw a+QO7k8YCMphWpB4Y79eA2s6GW6/WnYnV4DkIXdfibNTJiR2kdkZ5LsyvDRIo5NRsxwxz1+xmsm cNk5rgOOLV4oW2EdapIlaFC5SWkOtogZ6apnaV3mGGLvK6ow= X-Google-Smtp-Source: AGHT+IGMv4m9tuWsD9jYd3qQKidDcXOHpGRYI+o19Bcb1V8RoyGl43+cnZ3lNCry7NKAf6l40YN+QA== X-Received: by 2002:a5d:584b:0:b0:3a5:3e64:1ac4 with SMTP id ffacd0b85a97d-3a8fee64d08mr17644997f8f.33.1751381226412; Tue, 01 Jul 2025 07:47:06 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 62/68] accel/tcg: Add rr_vcpu_destroy() stub Date: Tue, 1 Jul 2025 16:40:10 +0200 Message-ID: <20250701144017.43487-63-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=philmd@linaro.org; helo=mail-wr1-x429.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381746070116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- accel/tcg/tcg-accel-ops-rr.h | 2 ++ accel/tcg/tcg-accel-ops-rr.c | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/accel/tcg/tcg-accel-ops-rr.h b/accel/tcg/tcg-accel-ops-rr.h index a73fe5b94a6..4234ef2f706 100644 --- a/accel/tcg/tcg-accel-ops-rr.h +++ b/accel/tcg/tcg-accel-ops-rr.h @@ -20,4 +20,6 @@ void rr_start_vcpu_thread(CPUState *cpu); =20 int rr_cpu_exec(CPUState *cpu); =20 +void rr_vcpu_destroy(CPUState *cpu); + #endif /* TCG_ACCEL_OPS_RR_H */ diff --git a/accel/tcg/tcg-accel-ops-rr.c b/accel/tcg/tcg-accel-ops-rr.c index a9150802369..95c7d3a3172 100644 --- a/accel/tcg/tcg-accel-ops-rr.c +++ b/accel/tcg/tcg-accel-ops-rr.c @@ -137,6 +137,11 @@ static void rr_deal_with_unplugged_cpus(void) } } =20 +void rr_vcpu_destroy(CPUState *cpu) +{ + /* Already dealt with in rr_deal_with_unplugged_cpus() */ +} + static void rr_force_rcu(Notifier *notify, void *data) { rr_kick_next_cpu(); --=20 2.49.0 From nobody Sat Nov 15 14:11:25 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381388; cv=none; d=zohomail.com; s=zohoarc; b=RBxiSAdodBSZu2ZGu9ZVHf4mam58TQpbrvK58k1SguX0Mv5faR4TRyS2rnjbvAAy8qugN0b7y0FB/eTYH51kgkQLiy5VsbWUt6QrPW9RDsMvVITldyn+k1wug+lJVWsXgWF6gXxF28Qu6gDHCwDp5aKfHFCjqkjCu0L3NCym7bQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381388; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=uwhPsNiTZCmsjwBt8ypm79VEINoM/2m2M7Tv3kawXOs=; b=Oadtq2WQGGxMG0k7cXLAYnuoe+wpTln/DdCv22M298vunssdPdcoQuT8jH96HFEdX7G4EgDJeES4JRitnjTPzF5FdELjwtMFk7wesBW4b+gE/uwQwz8GkxPkNcJ4eFUPMuMqxK8R+52LKaJx4WKX88VAR0J3XjpzgyiCgvhvxVM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381387992950.0625626771243; Tue, 1 Jul 2025 07:49:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcHI-0001cw-2k; Tue, 01 Jul 2025 10:48:09 -0400 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 1uWcGY-00080y-74 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:22 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcGQ-0007ZD-Ir for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:21 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-4538a2fc7ffso38459825e9.0 for ; Tue, 01 Jul 2025 07:47:14 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a3fe587sm171581605e9.19.2025.07.01.07.47.10 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381232; x=1751986032; 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=uwhPsNiTZCmsjwBt8ypm79VEINoM/2m2M7Tv3kawXOs=; b=ZjuGiiOAidjH9MPF6cwYF3fWAHfs+ifB7uMhC7AAOlDLzNTwoYzjDUFieWurGmFsV6 upaTU7O+egnJNAoU/51jT//APRv9iSoSWOwxWnFOywwdAWgPyncqTp9pfRE4KTZiH2FJ Nu/e4SErW8W2ZGWLKE8RxHmRWo0qJJ2sn4+AtRBFPRLrxOnTGIyHNYlbn8XmukGmQvHq DZ0AOKTjYicDkKSSZNTVREtL7S0R8tWhr3ZzJODeZ8KE8RFegbrcVvIo1XPbzGHXDJVC 85z4rADHPzqG2A5tkWKBwPnmS8wJfT0Ls2Na+kvxKB3sOiY2xBO2K2iUcLQqk1HADgbN Wh6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381232; x=1751986032; 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=uwhPsNiTZCmsjwBt8ypm79VEINoM/2m2M7Tv3kawXOs=; b=VuOUz0cWehmz3obu/3NaeDo9KGMYLlW6XF8VCynrL8Wd7pjutKJ0hN9PR70qGZSQYm lMB2nyt+bUUlHrJsw+Vm1Yj0N6jCSSAFJq+5RB15wj4LG4AGsyHEnKct/GT9ypcddYiC jmC0Di3JeF1NCNcMRT2uyCBB4sj/AUABqPgMNQtrIqQyulZfj3jaRqi+6FueeH3LJKaN u9uF623I6YibWglqAqIELowxZuZKQBaq7WnusHfJLyDQg1w+lBINTRvlOYo0x9yjTPg2 TwHv9mSZugP9KqEDdyhz16PqVzFLUMXUmxOh65FjV+YAV/WmPoLkS5QhsqMLRnlBVcFM ShiA== X-Gm-Message-State: AOJu0Ywlb5ioGGo5HH18SfDv5bQ88DXKaz7K3vc+MKgLqsvrYHLrmxrj rCIv6T3qqp4m6Pf8UrFFYriRnLCKQ2rhIXXAYBvPqKblJMkYXg0BLkDqF1OjKF549BV7JLGpkAD nes92 X-Gm-Gg: ASbGnct/0AETtdaZFeLihHIkIlWhpa5vhmE5XjuXvomieIrfBes7HfFMemkrFiUmzfK CzZNClXdekd9WNnEcPMpSKl8jP+DyVci7dxZiRE1keK5/5WUgU4P5Hr2YotAQiuny/NpqOxNoKe U/+tgOpJtkoYVN89RBmJ8fMXfilE8V89kMkT22peNr4BnvzcR5W6CFJ5AGnsppcWfwmDywptbGk ViqTR9BtHAl1lNEGhOduMHeeamGykfXo/UkC5CZ+Ee5ohpGUIr5s/IF4KF4/NrAH8NbKGerBhX4 r8AU0Itvf9fqoQzjSmVcDolrsg+AYl8ralFn2/D9l+GxAXSrMeo0EQWOCh1XE8diTPdUAma9PSY 1bLgl6xrhcrGP0qYZ7yXpkNqVQIZe/zFo0iWS X-Google-Smtp-Source: AGHT+IFTkYY3ZKStZyWav1nbgfyuyxa7yYeOJCfnYrnvB0B6ewJ3t5zK6NuKvI2l4x0s7dL6LRjlUQ== X-Received: by 2002:a05:600c:6099:b0:450:d79d:3b16 with SMTP id 5b1f17b1804b1-4542d448185mr29303465e9.14.1751381232548; Tue, 01 Jul 2025 07:47:12 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 63/68] accel/system: Declare init/exec/destroy vcpu hooks Date: Tue, 1 Jul 2025 16:40:11 +0200 Message-ID: <20250701144017.43487-64-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=philmd@linaro.org; helo=mail-wm1-x336.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381388931116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- include/system/accel-ops.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 28e29cfa06d..f98a1c9b662 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -43,8 +43,11 @@ struct AccelOpsClass { void *(*cpu_thread_routine)(void *); void (*thread_precreate)(CPUState *cpu); void (*create_vcpu_thread)(CPUState *cpu); + int (*init_vcpu_thread)(CPUState *cpu); void (*kick_vcpu_thread)(CPUState *cpu); bool (*cpu_thread_is_idle)(CPUState *cpu); + int (*exec_vcpu_thread)(CPUState *cpu); + void (*destroy_vcpu_thread)(CPUState *cpu); =20 /** * synchronize_post_reset: --=20 2.49.0 From nobody Sat Nov 15 14:11:25 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381475; cv=none; d=zohomail.com; s=zohoarc; b=ioAmrRlFuoJ/ZF7yAQRqIoTZhXTM8nrF/bh+8DdnGC4UrcjiZiaOuKgICMossJKts3+lBH0EVqgu2YVf+uK/H9AWhoEprqBBy8l9smR5nDqx+/LdCJZnWmNMlrIzNfYsbo1PYJrIS6RXMDlOWdWZ9C78ZXsWlx6cVAWJdCokTZs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381475; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=J7yUgpspd0iwEkkFCIPPLyqA8sBqJmHRreN8I25G7Eg=; b=A74nwiW/nc1TbsxbCSyZCbHoRN9itUcnUeMsTuzD1zSuVgdc/rbNzvFzdJBOaBV7qjC3tS51v4Ny/88RH5L+qI9+VFAOQaDIpfN85+GYTt3dUXixM7pTWelm7Ws8h3U/9b8DF5jRgYmQkaMvaqmX0wvxOzV5QBhviYeto7qKFLY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381474999403.52917944344665; Tue, 1 Jul 2025 07:51:14 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcGs-00006x-Ie; Tue, 01 Jul 2025 10:47:43 -0400 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 1uWcGg-0008DU-9d for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:30 -0400 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 1uWcGX-0007Zb-GS for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:28 -0400 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-451ebd3d149so17596145e9.2 for ; Tue, 01 Jul 2025 07:47:20 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a4215dbsm166957685e9.35.2025.07.01.07.47.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381238; x=1751986038; 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=J7yUgpspd0iwEkkFCIPPLyqA8sBqJmHRreN8I25G7Eg=; b=J6xNhOQVz5vFrRwIc+iopgrTyaVdXJ+zbFHCSHQPQTkXRKysSRvCH2zCGmhF755xCd ilzpJc2STBg48SpAcpXNqrw08DQlHMRnYTfUc+nhpUMNQjdYLFoBFU1TRlUsuad10Ait kcXKGLx6L/YVWIAQej9aChSGxRPMPkwinap7dVW91sXrcc3kGzV+ACPkapSagTuY4+Nv 0oI8ZewmuxVkd2fR3BR+io9/+bHLFCLwIaNj4CVDXvkD4K6k9vDorzJxGKpWiQOBvJUS +VjmeSq315Jq5oHqahmkVS9vSMijKdjL1kfM+NsRnF/R+2VmQVLq8WDAsqAHvJNPZwS8 XzuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381238; x=1751986038; 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=J7yUgpspd0iwEkkFCIPPLyqA8sBqJmHRreN8I25G7Eg=; b=CffeEc525iOQZF5DsK6TJTCr1YWxl/ZnFPlfOKku9cw6lFdnK7uORtcn6jkuvDzF5u b3Zf4nxhCj7M5wzei66WpFqBUqEcyF5jr4R+usF4DRAJOUWg8zGQ5j83IN+S7il5i4Pu Sjv1kvDaU8HQW7VlD+pcWS9MIjYV4z/Bq1hWBfPdgVsORSwRwDGAlL15BXK4ywXVEaPU zZ564Bsp98ON674kVGao1HJbOxk3JIGby0ok/zjTXJjuA4p4dIwW2Vc/cWvLcq/rihL9 YWS1QpRfNMgmOdvfDoFmwUi6xn0aitTn54+NyrpxlyxytaPYbBHF7nr7nhl+gQEutkwc MIuQ== X-Gm-Message-State: AOJu0Yz2aa5PMFi9Y3XI4OuefT9c9sydD2PHYV4Qak0fS4JIBJVVU8u4 Ousccz/fJPSW49rftmAxQ4hVrlKYkPYCZjiSzzqMS541zE7LHOw2rKWtArQ5VNIzxQfRe+XlHyo pMhLJ X-Gm-Gg: ASbGnctD3BGga6JHcCaCNiqM97f28cpW/TDAHY4698U1n0id+IHAOzaEV2hAnm38jMH dJqfTdVvKPqTEHVz7U/cYLW6yusOoRt9Vp9aW8DUDE8cBTZaTRIh+x1NsztUAvyQO6gZnyX7g5n WTds7usF8I35s+FzZstSJj5a9abbrTv9dmCKEEqCu7qumAtD9nVSgEI6cyFEtCQpJCJPqm2xeYz 42EQFWfWH/cwm0+wvHZudtHgytSCSwGAqebtJ2HxOKIykWc3B3M9iezQkItqNox7UC+mM3j9Ww2 Flni+a48g7a9dXZdNemQIPOhD65Oo2s0kgMWnMsZELVk67pes+rUyU41SDcdRy+3mtTeZW8Adil HphNRTHX+Aj9m1nyMcQSDkSp+w3W+7fnEVUcK X-Google-Smtp-Source: AGHT+IFn38ZCDQXXEtThwyZh62bNqfEkVaKwct2czszk0sd2puCbPP2T3YwSm0oXXbSUnc13sTh6aw== X-Received: by 2002:a05:600c:1389:b0:43c:f70a:2af0 with SMTP id 5b1f17b1804b1-4539b3f67c8mr126506625e9.16.1751381238414; Tue, 01 Jul 2025 07:47:18 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 64/68] accel/tcg: Register init/exec/destroy vcpu hooks Date: Tue, 1 Jul 2025 16:40:12 +0200 Message-ID: <20250701144017.43487-65-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=philmd@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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381476387116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- accel/tcg/tcg-accel-ops.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index 9b5caf9c4f5..c6b5a567f9d 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -216,10 +216,14 @@ static void tcg_accel_ops_init(AccelClass *ac) if (qemu_tcg_mttcg_enabled()) { ops->cpu_thread_routine =3D mttcg_cpu_thread_routine; ops->kick_vcpu_thread =3D mttcg_kick_vcpu_thread; + ops->exec_vcpu_thread =3D mttcg_cpu_exec; + ops->destroy_vcpu_thread =3D tcg_cpu_destroy; ops->handle_interrupt =3D tcg_handle_interrupt; } else { ops->create_vcpu_thread =3D rr_start_vcpu_thread; ops->kick_vcpu_thread =3D rr_kick_vcpu_thread; + ops->exec_vcpu_thread =3D rr_cpu_exec; + ops->destroy_vcpu_thread =3D rr_vcpu_destroy; =20 if (icount_enabled()) { ops->handle_interrupt =3D icount_handle_interrupt; @@ -233,6 +237,7 @@ static void tcg_accel_ops_init(AccelClass *ac) ops->cpu_common_realize =3D tcg_exec_realizefn; ops->cpu_common_unrealize =3D tcg_exec_unrealizefn; ops->thread_precreate =3D tcg_vcpu_thread_precreate; + ops->init_vcpu_thread =3D tcg_vcpu_init, ops->cpu_reset_hold =3D tcg_cpu_reset_hold; ops->insert_breakpoint =3D tcg_insert_breakpoint; ops->remove_breakpoint =3D tcg_remove_breakpoint; --=20 2.49.0 From nobody Sat Nov 15 14:11:25 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381933; cv=none; d=zohomail.com; s=zohoarc; b=OUI8LLsqkvAX08W6ecMV/bB1cPQWplmABsYqT06t0pWfO6pJi+mafs0qQ41amyfsArK8zE+AU1zKHDRjq1mY9r8oWrmyrJEZAivYVMA2mVqkvrJe9vgQynaPHuzAsy3zzGLCIaNbgp11CEITBb8BCo0EYOZHfKhWU763al6NHwA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381933; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=2IxOMy6xJpvfeZs7PzIhMpyVP2TJVD5qlNxoGjPSg9I=; b=m6rasdvjA7ecqzMDMVplzKmCOiimeoWZ/GctW2vKJ5VNn6iVPH3ff58ffXoq2H6qrsDrk8eA/ZcyOzo7pueA/iuJDgMtaaE/+CDbvOf75joUkjT0covMyPlwp0UEpSD1HpeUs9rpUSKxx3eEXGi4U633qqKM+Vyju8gOANB5IZc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381933361304.3522483582436; Tue, 1 Jul 2025 07:58:53 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcHO-00021A-J7; Tue, 01 Jul 2025 10:48:15 -0400 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 1uWcGl-0008Ny-6b for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:36 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcGc-0007aG-59 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:34 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-451ebd3d149so17596675e9.2 for ; Tue, 01 Jul 2025 07:47:25 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a390c88sm177034285e9.8.2025.07.01.07.47.22 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381243; x=1751986043; 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=2IxOMy6xJpvfeZs7PzIhMpyVP2TJVD5qlNxoGjPSg9I=; b=IQP9rvZaD0T1LY6Lp+UWPiRNH49fLQ3Yerq28TYuzjfiGwXswI5rakIAivDigGQSu+ ygvCjlSqvkOwl4MKGEhWKoUZh099Kx23qWfTn9QuYbGe/Y3Z+6a4zfRNISCaR5RmQ2HI n+MBXohcGe271ua4QBDLktFKdaYlaLgK9h1oNv+86stl95P5+xpV4HaC2+cJQSXuN4W+ uT3rqQ/0pALB0BnJITDSABcQTH5gJzR9xQFch5rkj1eTymnON6XzRYpw3rrIlKHbNQOB K14wvUfRFHBuqautCX6fvWy22G1WNKo3hiMNPVcRd//tGxWZfsuybHfxY3QkyFDMN3/l 5GQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381243; x=1751986043; 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=2IxOMy6xJpvfeZs7PzIhMpyVP2TJVD5qlNxoGjPSg9I=; b=L7WvUXtTAU/BTSfcVbf8wBxXsX/a42eOTcbgLlmCSqu4O545ZAjCiRVeGjtaMJBWTS aEc6qf57bZEzxNT3cDsGpAj2Kkw5x5RunwAwNtmlvln/shgwXxxw3Lsp0mLmwynOGF+T /OSsDnlmDCtBWP9OVNlAgx1OQp5Dt70cYk4V144oL4ZYvnsRRaEw6bSxKpPWgXs0jZ1/ Rts7s30jJstfXF2Yw3gx83BLPUvnC2NRWYIM0oFg/d8L/luRiEfVmB3V9/WJBqkhCwWe 2SzuDhAWByquvdCOZKl2nX+7PX1RKekQTYwqqErKj5WY+i29clP79JWAlG0kTfcKShO8 FqvA== X-Gm-Message-State: AOJu0Yz6EtQb3d1qpiCcIH2DtqRjX7qx3fLnzHyixVjI5Qu2BWydTeSN QZMo6aZksqtRMy9qYC8BKTfxsG8oblFfvf3AddgDLNQ2SxG1xdilHGB2qjBxy07bxNKySSlD7E5 7TSOq X-Gm-Gg: ASbGncvCV0XGS4eLGBbgdptQhER+4ReVNYuk3PF3ctkRXAh/pFPh2rIeuVWQhjduwLw prmq9TWgY+h7WouOs17Cyp+w+/IMrc+WWjkwPXenxRLE/eN8xrnmfltFJZDbXfHitaT41cUQYMW GXDcHkvQ2O9l4V4zE3vyVQdRjr2PW6MnlyOoVhhhtwrInYdJCSy5++Z+EnHjPP+iXeedAJHSHBQ piWlQ2kcj6T6UuOszjuZCMoWirYN+689KQPglrIVgZj6WQECVdjpNOFiAo2loXPyFJbzpXR2RVu 8Rhokr4GxIqboUa0HLbHbnez/B3G+X+cBHMCJG3C14Z/HbCe97Z0Cbe3jWKILta9K7J4fUVriJm HoEgtD0ZxXcjmjKYedWOBxWnLrOM4U9N6VJCN X-Google-Smtp-Source: AGHT+IHWSzvyOt14oKFvaOEIz9wqYPwH6OAq5h1cy4WJcvJGC9LXD151JhPoGCmqV2+CCVyBmoQdGQ== X-Received: by 2002:a05:600c:8506:b0:43d:db5:7af8 with SMTP id 5b1f17b1804b1-4538ee61ed7mr160641555e9.21.1751381243432; Tue, 01 Jul 2025 07:47:23 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 65/68] accel/hvf: Register init/exec/destroy vcpu hooks Date: Tue, 1 Jul 2025 16:40:13 +0200 Message-ID: <20250701144017.43487-66-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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_SPF_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381934359116600 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/hvf/hvf-accel-ops.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index b61f08330f1..d2b3217f145 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -354,7 +354,10 @@ static void hvf_accel_ops_class_init(ObjectClass *oc, = const void *data) ops->cpu_target_realize =3D hvf_arch_cpu_realize; =20 ops->cpu_thread_routine =3D hvf_cpu_thread_fn, + ops->init_vcpu_thread =3D hvf_init_vcpu, ops->kick_vcpu_thread =3D hvf_kick_vcpu_thread; + ops->exec_vcpu_thread =3D hvf_vcpu_exec; + ops->destroy_vcpu_thread =3D hvf_vcpu_destroy; =20 ops->synchronize_post_reset =3D hvf_cpu_synchronize_post_reset; ops->synchronize_post_init =3D hvf_cpu_synchronize_post_init; --=20 2.49.0 From nobody Sat Nov 15 14:11:25 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381836; cv=none; d=zohomail.com; s=zohoarc; b=FGBTQjDjUb1oOld6NgytTi3lr3Lbx4GpRrVjJMzZqBw2Fn5ZywQHDRI4LcgLiHimDidaOdJSuZmS2nl0F62YclLqmd3YNVH09Y6bJ6dHD/N9SSOJnja3YAFWAXwTR8oeO5p2eUrxk9s/SKdRBMsC1mOSWP3821XY9r+KNQ7P+Mc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381836; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=EvhTwPfnhU/OldPu14yfTguJeL+N42mB2yTgapZUbe0=; b=NGvFFC6Mzb+IvFgOgsP4TLYlZza4Do3byiZ4PIn/fE1khvL2W708Q+VJvvHKjwR7wcenIMLxFMe2jHHDezhoAPCwUMll63cHsu2RHDg9z7n/BKEq/7z3utkycX3/Cx7tVyhD0Y6BJZNx8+P47C+e8RA1OETpJWkBklDZ43vqUXI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381836461602.1814779481514; Tue, 1 Jul 2025 07:57:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcH5-0000b3-AB; Tue, 01 Jul 2025 10:47:55 -0400 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 1uWcGp-00006q-J2 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:40 -0400 Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcGi-0007b2-B4 for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:38 -0400 Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-453398e90e9so27885595e9.1 for ; Tue, 01 Jul 2025 07:47:31 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7fb20esm13701993f8f.36.2025.07.01.07.47.27 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381250; x=1751986050; 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=EvhTwPfnhU/OldPu14yfTguJeL+N42mB2yTgapZUbe0=; b=vbJI5qh6hlLl/LJlwMX1RUbecZDhj3yby1Ak3r/1UXAabCrPjHaKF8akroxEH2Y8hQ I4PIh4VLl/poFbarCQMAedoaEzHcb6GUah9Z4dp/GipOofgTHjXjub13b4FEvXJLKQfP JEAY5bgKHcNBkFSs4w6UU7oJ6IAf7+yLOCrPndMJCjDaEKJl/PyWK/Rdi3jLcgdmokXD mCGhd3y9yM92kRaa+MuiOx+olzxSG0K6VHywZnYJAQJh9//x4m3365y+bBGl8jQf+e8L htUaeAkENV1YFgpMC3LpIprR/8xm3YdVFmSlIEwxfT5XBligHTYzeaeNbhg+FD49DbQz cpLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381250; x=1751986050; 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=EvhTwPfnhU/OldPu14yfTguJeL+N42mB2yTgapZUbe0=; b=fEGLom+4QcjNOmN3ls1pacY1wgu1OMnGq/TuFT/iVInTtIIK0A2v6j2bcKV2hU1na9 6M1hd9KaQMzuwEtJJa8TaLJy8OVyEr7ZzJROzqOW8P1RlJAXsOdcxswgTNO+5a19LEtc bIwt587LkMMIRAx7lrsaSF5xonu6nC+O3qtNNVcHd2K3H7ufTXKJIP9jhG/v/zNe0UZk DSeszWdAcjUFdVEvF7TGBwfSKHmMFOdyZwX17bcecPdfkFB8sN6xddcTbR4p2wgOUJ8h O/+JOTRjjCbuhR6BcgL5SJLTnND1OrnNTX0CJC2OBOUymyaLD3LDqaZimZvy9k6cyEwD ieFw== X-Gm-Message-State: AOJu0YxBz5iK/U4OiSeMFMq5NKzb0I5dT/EDfZx7kxuT/pM69sRbYVOK 6POTKMflr35jVHHj8OSu1fSQ3t5v2cm9ZaRvIdFWPW7+AQU9dR7S+E9Ys5NvMbgcuWHa5aS3Y2O lYtCP X-Gm-Gg: ASbGncv1XgohlFoeNjCfe//4oDTMJji91fooAPS6GB/waYb5zCv52AV6soAy+nyduZy Cl8+/cozOKxTLNwvYv8ypdjfSnFcwLKzbCA+RaQbMkeEGUyruBqWCxk1cELnHTGColBNbtDBAmj VvPcS5VRQWT4rDWs7l50SilxfLmK+CWBB25gri4SCb8U/SZ1btYqibZ9I3Ki7tgJ2Jf3bgC3UL2 i1V8DCL55sQwbP0ujXZhuRlbOrEymXNzuCmM5TYt5fFnJZoCVzNwU6YMeW1Q6Zmmzo5TlLoFQjR LtH1f4u3vp9vC7i+OEJdCnOb2nfC748ArDHyjDUy849qYpyPt9uIZhMzw9rejQPW7CcWJHkc6Jt RpjxMB+UKudcX8JsjlTLt5tHsFy3+LSBnLV/c X-Google-Smtp-Source: AGHT+IFrG1D2CL3zpSdpdVFYsDWfFOMuatqsJFB23DiTTLTYL4XpkWWCuVfIofBeMZd2P6tLYIsEiw== X-Received: by 2002:a05:600c:4e8b:b0:453:8a63:b484 with SMTP id 5b1f17b1804b1-4538ee75d5emr204229315e9.30.1751381249819; Tue, 01 Jul 2025 07:47:29 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 66/68] accel/system: Pass old/new interrupt mask to handle_interrupt() handler Date: Tue, 1 Jul 2025 16:40:14 +0200 Message-ID: <20250701144017.43487-67-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32d; envelope-from=philmd@linaro.org; helo=mail-wm1-x32d.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381837114116600 Update CPUState::interrupt_request once in cpu_interrupt(). Pass the old and new masks along. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- accel/tcg/tcg-accel-ops-icount.h | 2 +- accel/tcg/tcg-accel-ops.h | 2 +- include/system/accel-ops.h | 2 +- accel/tcg/tcg-accel-ops-icount.c | 8 +++----- accel/tcg/tcg-accel-ops.c | 4 +--- system/cpus.c | 12 +++++++----- 6 files changed, 14 insertions(+), 16 deletions(-) diff --git a/accel/tcg/tcg-accel-ops-icount.h b/accel/tcg/tcg-accel-ops-ico= unt.h index 5f3ebea50ff..ddd53cc1e4f 100644 --- a/accel/tcg/tcg-accel-ops-icount.h +++ b/accel/tcg/tcg-accel-ops-icount.h @@ -15,6 +15,6 @@ void icount_prepare_for_run(CPUState *cpu); void icount_update_percpu_budget(CPUState *cpu, int cpu_count); void icount_process_data(CPUState *cpu); =20 -void icount_handle_interrupt(CPUState *cpu, int mask); +void icount_handle_interrupt(CPUState *cpu, int old_mask, int new_mask); =20 #endif /* TCG_ACCEL_OPS_ICOUNT_H */ diff --git a/accel/tcg/tcg-accel-ops.h b/accel/tcg/tcg-accel-ops.h index 1263a666774..a95d97fca29 100644 --- a/accel/tcg/tcg-accel-ops.h +++ b/accel/tcg/tcg-accel-ops.h @@ -17,7 +17,7 @@ void tcg_vcpu_thread_precreate(CPUState *cpu); void tcg_cpu_destroy(CPUState *cpu); int tcg_cpu_exec(CPUState *cpu); -void tcg_handle_interrupt(CPUState *cpu, int mask); +void tcg_handle_interrupt(CPUState *cpu, int old_mask, int new_mask); void tcg_cpu_init_cflags(CPUState *cpu, bool parallel); =20 int tcg_vcpu_init(CPUState *cpu); diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index f98a1c9b662..9d2577fe67f 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -70,7 +70,7 @@ struct AccelOpsClass { void (*synchronize_state)(CPUState *cpu); void (*synchronize_pre_loadvm)(CPUState *cpu); =20 - void (*handle_interrupt)(CPUState *cpu, int mask); + void (*handle_interrupt)(CPUState *cpu, int old_mask, int new_mask); =20 void (*get_vcpu_stats)(CPUState *cpu, GString *buf); =20 diff --git a/accel/tcg/tcg-accel-ops-icount.c b/accel/tcg/tcg-accel-ops-ico= unt.c index ae1297ff7f3..d02b319951c 100644 --- a/accel/tcg/tcg-accel-ops-icount.c +++ b/accel/tcg/tcg-accel-ops-icount.c @@ -147,14 +147,12 @@ void icount_process_data(CPUState *cpu) replay_mutex_unlock(); } =20 -void icount_handle_interrupt(CPUState *cpu, int mask) +void icount_handle_interrupt(CPUState *cpu, int old_mask, int new_mask) { - int old_mask =3D cpu->interrupt_request; - - tcg_handle_interrupt(cpu, mask); + tcg_handle_interrupt(cpu, old_mask, new_mask); if (qemu_cpu_is_self(cpu) && !cpu->neg.can_do_io - && (mask & ~old_mask) !=3D 0) { + && (new_mask & ~old_mask) !=3D 0) { cpu_abort(cpu, "Raised interrupt while not in I/O function"); } } diff --git a/accel/tcg/tcg-accel-ops.c b/accel/tcg/tcg-accel-ops.c index c6b5a567f9d..e7716dbc8da 100644 --- a/accel/tcg/tcg-accel-ops.c +++ b/accel/tcg/tcg-accel-ops.c @@ -109,10 +109,8 @@ static void tcg_cpu_reset_hold(CPUState *cpu) } =20 /* mask must never be zero, except for A20 change call */ -void tcg_handle_interrupt(CPUState *cpu, int mask) +void tcg_handle_interrupt(CPUState *cpu, int old_mask, int new_mask) { - cpu->interrupt_request |=3D mask; - /* * If called from iothread context, wake the target cpu in * case its halted. diff --git a/system/cpus.c b/system/cpus.c index c2ad640980c..8c2647f5f19 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -246,10 +246,8 @@ int64_t cpus_get_elapsed_ticks(void) return cpu_get_ticks(); } =20 -static void generic_handle_interrupt(CPUState *cpu, int mask) +static void generic_handle_interrupt(CPUState *cpu, int old_mask, int new_= mask) { - cpu->interrupt_request |=3D mask; - if (!qemu_cpu_is_self(cpu)) { qemu_cpu_kick(cpu); } @@ -257,12 +255,16 @@ static void generic_handle_interrupt(CPUState *cpu, i= nt mask) =20 void cpu_interrupt(CPUState *cpu, int mask) { + int old_mask =3D cpu->interrupt_request; + g_assert(bql_locked()); =20 + cpu->interrupt_request |=3D mask; + if (cpus_accel->handle_interrupt) { - cpus_accel->handle_interrupt(cpu, mask); + cpus_accel->handle_interrupt(cpu, old_mask, cpu->interrupt_request= ); } else { - generic_handle_interrupt(cpu, mask); + generic_handle_interrupt(cpu, old_mask, cpu->interrupt_request); } } =20 --=20 2.49.0 From nobody Sat Nov 15 14:11:25 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381943; cv=none; d=zohomail.com; s=zohoarc; b=HDYHbYWROKn4IyLglXAv2PGbEm8O/BNb/geaZE2BS0cI1xn06YWmR3cUyZ47kMxIGm1pCMOHY/vB/fStW24Bo+v0vkfnmdE+aNJo6wBblAdw2zj8x3uzjKwxP9zmF367Zmrif236kGMGolKyNZvUsFgBbFdjQxkhpL6eQytmxiE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381943; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Mpv50l7yaHCoJwYiAxub8xGPwFsrO1DyFzsXKdjPyNw=; b=GUhH5IpPm7C1EukclXmQft9sESiErXPTBEzzuDBN1UB3skIcv5ommidSe4HMfdKCqbCxkhrevxW0NwFSsVj6A31+/6/55dClJiEurkvflzCU5uUzdp6+t0dYbyoms+WL8RTbN0Uq32UexxGbnD5tY+JoeADI558BNQhhltGKvjI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175138194312088.65328994429308; Tue, 1 Jul 2025 07:59:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcHA-0000yp-J0; Tue, 01 Jul 2025 10:48:01 -0400 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 1uWcGx-0000HI-0E for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:47 -0400 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcGo-0007bo-DE for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:45 -0400 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-3a4f379662cso2865423f8f.0 for ; Tue, 01 Jul 2025 07:47:37 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a88c7e7518sm13283817f8f.2.2025.07.01.07.47.33 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381256; x=1751986056; 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=Mpv50l7yaHCoJwYiAxub8xGPwFsrO1DyFzsXKdjPyNw=; b=SWlOWGitGpo9rN0a8KjukzF31fjZBcHuk+isaCnHfvW8RrRkPb11TTNdCCo/X1T3IC N1NfF5NjBQuxMsENGMbnx1KaPDmEJxWFdfcIIcEiyhVzXFz6jVJFyXA+t5fkeQcVPDNh oGjjvMTZpaTCyI6or7R7BzwY4nBHBrGXC0KRtGBfg+u3ZK6fj5FzR2yJTYJI0GPPw7gN 88x/BvgOT6AaNHHaQ0wx67l0zg3fumXBMmwDpocOVPVpoC7QvVRAKeLhFkBTkBule0Vm QGL7smfIaJpt4uPxFF+hxAa8rLVcCgY6sz6KszM+DpwgAqd4krh/8EbLiap+/Jm9CDyK 12vA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381256; x=1751986056; 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=Mpv50l7yaHCoJwYiAxub8xGPwFsrO1DyFzsXKdjPyNw=; b=pgSX7CLdIUIa73S3aOO+KF4zGieDmCO5wJ6/Ct1hkmRosKx/9EqZPZ35nxItRgmS0Q 4TJtyQGgmkmYytTdAi7bozXjKghbDhbqp2SpnJfmOc7815fvuIDeL5NftHiMXsaEeeIE 5TCewVS+jq1C5tDMQ3JmWzIFhj5NWRtCuBiqgufAgJmhhkV5GZWKoxPdkV0yI8kysI4T 8iHe1UT4Z41c1sb+wMgp38uasbsID3JnsBEy1axr6+9+8vuT3JZHPIICZ4ibjHQXVrxM bGjrNcMrjaoOCH2RbIHUPriV335p/yoGVBs29rgdsSijp76vptOaANWL8TSrVZTOpuOV ceZg== X-Gm-Message-State: AOJu0YzR71Z0jIvhFlAykKaJ+89SYiESLHznX7RSpPuJ4z9ptYAiKYCX ubJ43hJJxxAhe10+MRlhPk3GKd42geaYXn34Kn04CSGjCYn6oclvonf4Jis58wUCrWe9oikL0TX LkPn7 X-Gm-Gg: ASbGncveVaQ9SJBvSjhsoqJHY4sDJWRevxtR4KqBcIH6VtrwfXI+i0gNyVtqnYdIRDD zEejMyFn2tg76IbjgJFNhriNGx5PBwX377JMx8wpQec44btkjXHsbyvZNSPnYeh3Hbd3SZAWk+I qBu/pALR4xxS6/8sf23PX4alcxVGFxc71E0dNaiZDpbeKFnLeqt1Why/cNJOlMgMeeisK7n9HSn yztEJ0iqO0GMTQrdT35o9wLxt+Tuu0LF3uBSQWPz0fOGp3RhqGgIhUnUaGG28h3MgK7AgGwoVy5 XdetbVyzEuSp8agDNsrT5aUf0MN7tI9yA5vP/bzrd+cnDTuZMQ5fJLYaN9cxpk8UYUyCqx73ljJ jB5D6Z2Fn6cPnSq0s1ZUHRVb0nQjIkg24/9g1 X-Google-Smtp-Source: AGHT+IGAimK/bp5oKDNri93ZMnidtGHKW9w6njOxHk3ejsoqgunMlkmBoutNZ0P2bFNBBBktfeI9fg== X-Received: by 2002:a05:6000:23c4:b0:3a4:f038:af74 with SMTP id ffacd0b85a97d-3a8feb70384mr10774562f8f.51.1751381255625; Tue, 01 Jul 2025 07:47:35 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v3 67/68] accel: Have each accelerator implement the handle_interrupt() hook Date: Tue, 1 Jul 2025 16:40:15 +0200 Message-ID: <20250701144017.43487-68-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::430; envelope-from=philmd@linaro.org; helo=mail-wr1-x430.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, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381944823116600 Better to make the interrupt handler an explicit implementation rather than depending on some generic handler. Suggested-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- accel/dummy-cpus.h | 1 + include/system/accel-ops.h | 1 + accel/dummy-cpus.c | 7 +++++++ accel/hvf/hvf-accel-ops.c | 8 ++++++++ accel/kvm/kvm-accel-ops.c | 8 ++++++++ accel/qtest/qtest.c | 1 + accel/xen/xen-all.c | 1 + system/cpus.c | 15 ++------------- target/i386/nvmm/nvmm-accel-ops.c | 8 ++++++++ target/i386/whpx/whpx-accel-ops.c | 8 ++++++++ 10 files changed, 45 insertions(+), 13 deletions(-) diff --git a/accel/dummy-cpus.h b/accel/dummy-cpus.h index c2f9fee164c..98a1a30f9ca 100644 --- a/accel/dummy-cpus.h +++ b/accel/dummy-cpus.h @@ -11,5 +11,6 @@ =20 void dummy_thread_precreate(CPUState *cpu); void *dummy_cpu_thread_routine(void *arg); +void dummy_handle_interrupt(CPUState *cpu, int old_mask, int new_mask); =20 #endif diff --git a/include/system/accel-ops.h b/include/system/accel-ops.h index 9d2577fe67f..14861eae60c 100644 --- a/include/system/accel-ops.h +++ b/include/system/accel-ops.h @@ -70,6 +70,7 @@ struct AccelOpsClass { void (*synchronize_state)(CPUState *cpu); void (*synchronize_pre_loadvm)(CPUState *cpu); =20 + /* handle_interrupt is mandatory. */ void (*handle_interrupt)(CPUState *cpu, int old_mask, int new_mask); =20 void (*get_vcpu_stats)(CPUState *cpu, GString *buf); diff --git a/accel/dummy-cpus.c b/accel/dummy-cpus.c index f637ab05e32..e9076851c58 100644 --- a/accel/dummy-cpus.c +++ b/accel/dummy-cpus.c @@ -71,3 +71,10 @@ void dummy_thread_precreate(CPUState *cpu) qemu_sem_init(&cpu->sem, 0); #endif } + +void dummy_handle_interrupt(CPUState *cpu, int old_mask, int new_mask) +{ + if (!qemu_cpu_is_self(cpu)) { + qemu_cpu_kick(cpu); + } +} diff --git a/accel/hvf/hvf-accel-ops.c b/accel/hvf/hvf-accel-ops.c index d2b3217f145..a9ed93fe8eb 100644 --- a/accel/hvf/hvf-accel-ops.c +++ b/accel/hvf/hvf-accel-ops.c @@ -207,6 +207,13 @@ static void *hvf_cpu_thread_fn(void *arg) return NULL; } =20 +static void hvf_handle_interrupt(CPUState *cpu, int old_mask, int new_mask) +{ + if (!qemu_cpu_is_self(cpu)) { + qemu_cpu_kick(cpu); + } +} + struct hvf_sw_breakpoint *hvf_find_sw_breakpoint(CPUState *cpu, vaddr pc) { struct hvf_sw_breakpoint *bp; @@ -358,6 +365,7 @@ static void hvf_accel_ops_class_init(ObjectClass *oc, c= onst void *data) ops->kick_vcpu_thread =3D hvf_kick_vcpu_thread; ops->exec_vcpu_thread =3D hvf_vcpu_exec; ops->destroy_vcpu_thread =3D hvf_vcpu_destroy; + ops->handle_interrupt =3D hvf_handle_interrupt; =20 ops->synchronize_post_reset =3D hvf_cpu_synchronize_post_reset; ops->synchronize_post_init =3D hvf_cpu_synchronize_post_init; diff --git a/accel/kvm/kvm-accel-ops.c b/accel/kvm/kvm-accel-ops.c index 21ff3af306f..749c4f244a1 100644 --- a/accel/kvm/kvm-accel-ops.c +++ b/accel/kvm/kvm-accel-ops.c @@ -68,6 +68,13 @@ static bool kvm_vcpu_thread_is_idle(CPUState *cpu) return !kvm_halt_in_kernel(); } =20 +static void kvm_handle_interrupt(CPUState *cpu, int old_mask, int new_mask) +{ + if (!qemu_cpu_is_self(cpu)) { + qemu_cpu_kick(cpu); + } +} + #ifdef TARGET_KVM_HAVE_GUEST_DEBUG static int kvm_update_guest_debug_ops(CPUState *cpu) { @@ -85,6 +92,7 @@ static void kvm_accel_ops_class_init(ObjectClass *oc, con= st void *data) ops->synchronize_post_init =3D kvm_cpu_synchronize_post_init; ops->synchronize_state =3D kvm_cpu_synchronize_state; ops->synchronize_pre_loadvm =3D kvm_cpu_synchronize_pre_loadvm; + ops->handle_interrupt =3D kvm_handle_interrupt; =20 #ifdef TARGET_KVM_HAVE_GUEST_DEBUG ops->update_guest_debug =3D kvm_update_guest_debug_ops; diff --git a/accel/qtest/qtest.c b/accel/qtest/qtest.c index 9f30098d133..19eea8d8daa 100644 --- a/accel/qtest/qtest.c +++ b/accel/qtest/qtest.c @@ -68,6 +68,7 @@ static void qtest_accel_ops_class_init(ObjectClass *oc, c= onst void *data) ops->cpu_thread_routine =3D dummy_cpu_thread_routine; ops->get_virtual_clock =3D qtest_get_virtual_clock; ops->set_virtual_clock =3D qtest_set_virtual_clock; + ops->handle_interrupt =3D dummy_handle_interrupt; }; =20 static const TypeInfo qtest_accel_ops_type =3D { diff --git a/accel/xen/xen-all.c b/accel/xen/xen-all.c index 5ff72d9532c..6a967a8c63d 100644 --- a/accel/xen/xen-all.c +++ b/accel/xen/xen-all.c @@ -153,6 +153,7 @@ static void xen_accel_ops_class_init(ObjectClass *oc, c= onst void *data) =20 ops->thread_precreate =3D dummy_thread_precreate; ops->cpu_thread_routine =3D dummy_cpu_thread_routine; + ops->handle_interrupt =3D dummy_handle_interrupt; } =20 static const TypeInfo xen_accel_ops_type =3D { diff --git a/system/cpus.c b/system/cpus.c index 8c2647f5f19..e217e42ba03 100644 --- a/system/cpus.c +++ b/system/cpus.c @@ -246,13 +246,6 @@ int64_t cpus_get_elapsed_ticks(void) return cpu_get_ticks(); } =20 -static void generic_handle_interrupt(CPUState *cpu, int old_mask, int new_= mask) -{ - if (!qemu_cpu_is_self(cpu)) { - qemu_cpu_kick(cpu); - } -} - void cpu_interrupt(CPUState *cpu, int mask) { int old_mask =3D cpu->interrupt_request; @@ -260,12 +253,7 @@ void cpu_interrupt(CPUState *cpu, int mask) g_assert(bql_locked()); =20 cpu->interrupt_request |=3D mask; - - if (cpus_accel->handle_interrupt) { - cpus_accel->handle_interrupt(cpu, old_mask, cpu->interrupt_request= ); - } else { - generic_handle_interrupt(cpu, old_mask, cpu->interrupt_request); - } + cpus_accel->handle_interrupt(cpu, old_mask, cpu->interrupt_request); } =20 /* @@ -674,6 +662,7 @@ void cpus_register_accel(const AccelOpsClass *ops) { assert(ops !=3D NULL); assert(ops->create_vcpu_thread || ops->cpu_thread_routine); + assert(ops->handle_interrupt); cpus_accel =3D ops; } =20 diff --git a/target/i386/nvmm/nvmm-accel-ops.c b/target/i386/nvmm/nvmm-acce= l-ops.c index bef6f61b776..62fc6438c60 100644 --- a/target/i386/nvmm/nvmm-accel-ops.c +++ b/target/i386/nvmm/nvmm-accel-ops.c @@ -61,6 +61,13 @@ static void *qemu_nvmm_cpu_thread_fn(void *arg) return NULL; } =20 +static void nvmm_handle_interrupt(CPUState *cpu, int old_mask, int new_mas= k) +{ + if (!qemu_cpu_is_self(cpu)) { + qemu_cpu_kick(cpu); + } +} + /* * Abort the call to run the virtual processor by another thread, and to * return the control to that thread. @@ -77,6 +84,7 @@ static void nvmm_accel_ops_class_init(ObjectClass *oc, co= nst void *data) =20 ops->cpu_thread_routine =3D qemu_nvmm_cpu_thread_fn; ops->kick_vcpu_thread =3D nvmm_kick_vcpu_thread; + ops->handle_interrupt =3D nvmm_handle_interrupt; =20 ops->synchronize_post_reset =3D nvmm_cpu_synchronize_post_reset; ops->synchronize_post_init =3D nvmm_cpu_synchronize_post_init; diff --git a/target/i386/whpx/whpx-accel-ops.c b/target/i386/whpx/whpx-acce= l-ops.c index 8cbc6f4e2d8..e9969ef2cf3 100644 --- a/target/i386/whpx/whpx-accel-ops.c +++ b/target/i386/whpx/whpx-accel-ops.c @@ -61,6 +61,13 @@ static void *whpx_cpu_thread_fn(void *arg) return NULL; } =20 +static void whpx_handle_interrupt(CPUState *cpu, int old_mask, int new_mas= k) +{ + if (!qemu_cpu_is_self(cpu)) { + qemu_cpu_kick(cpu); + } +} + static void whpx_kick_vcpu_thread(CPUState *cpu) { if (!qemu_cpu_is_self(cpu)) { @@ -80,6 +87,7 @@ static void whpx_accel_ops_class_init(ObjectClass *oc, co= nst void *data) ops->cpu_thread_routine =3D whpx_cpu_thread_fn; ops->kick_vcpu_thread =3D whpx_kick_vcpu_thread; ops->cpu_thread_is_idle =3D whpx_vcpu_thread_is_idle; + ops->handle_interrupt =3D whpx_handle_interrupt; =20 ops->synchronize_post_reset =3D whpx_cpu_synchronize_post_reset; ops->synchronize_post_init =3D whpx_cpu_synchronize_post_init; --=20 2.49.0 From nobody Sat Nov 15 14:11:25 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1751381675; cv=none; d=zohomail.com; s=zohoarc; b=K13AoExS3Ih/sOpyPWaZZ76TM85XiqpOO/xML9FEZzi/Ehx6VgP9hEOVF5J33Eg6GSavMfnrrFliPZP6Oi17qUpD+H2xMy2FnEnvz2I/wV05cNHu25EZ5UONq1wxHSL7+dysaignvYSYS1kGL+Q8F2u9uJH2iqSfU2bURgjUvds= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751381675; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=nMdd+VHT7c/KqXfja/LU6rK589jx7m50zPUZczlHAAk=; b=TQ3+rg8LAdxH5qFzH7C5is50LlU0ufG/g+Ly20ryWhTTYYovt/8igwO/8H2eyvgnkttKdaJgAGONrIR+hBVbu/YPB4uuAk1w7stCQNFgTw3tLPoOk4L0znBs+ejGsMB3OH4GCraGQ7ynFxVmj06eRzdvsIuU5vlZVP/r1DrfQSw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751381675630109.51812613267055; Tue, 1 Jul 2025 07:54:35 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWcHf-0003Z0-4w; Tue, 01 Jul 2025 10:48:32 -0400 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 1uWcH0-0000Rv-Gi for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:53 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWcGw-0007cX-Ql for qemu-devel@nongnu.org; Tue, 01 Jul 2025 10:47:49 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-4531e146a24so34804915e9.0 for ; Tue, 01 Jul 2025 07:47:44 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4538a390d4asm170125445e9.3.2025.07.01.07.47.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 01 Jul 2025 07:47:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751381261; x=1751986061; 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=nMdd+VHT7c/KqXfja/LU6rK589jx7m50zPUZczlHAAk=; b=lPoC6r85PNyJY0IfRqzA954yANZ/DNa681+LGVdP0a+07hAgKx0EXt1UXNWU/myjzu xF0Gjr6LAzV0sUHEmE3ImLugugthIyE7rNQZe9Yin2VW9v0UP6adREHjmMoOlFD6pKnc lfFn5EnH8KIMy+MCOUjtL1e2mPdOEmhTUt/pQfpE0MyAEKdGHGuokm/kf9y/WWDYeJau zPbpQneSIZb0cGForiMW8+Xk01TX+OJvPgEo7lp689X8wsiALoBoelFM8ZGTr9CgVnYr ahC7Op/KEiOS2viqdm3vY7a7NUrZrPMjgfWKAs0xYtGewJO11nyBMD6aJSowLTpLctgV EZZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751381261; x=1751986061; 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=nMdd+VHT7c/KqXfja/LU6rK589jx7m50zPUZczlHAAk=; b=c19QhKjJFM5IwNt44GPH7Iz8xisAHZMlCn8AJRph6iLUCkfikVOwGm7QG/NVFzO2Es Iyoj1H09AIDPCE2HMhWPua9tUTiPq3jCzU+2xMvs6isAzdXP5FP48SVXsQL1iV9EWE7e g0wWeFb0LmYD5mWDlA+ySMHU8V9mm70TemagCOCDV4CHQFk6vjjMeHtQ+pgi0a8WhkRv lO49pircFnMdg81AtIJLJZw7+vs83DW9chK7pLqps/8It6S/o0O+UtxJ1OfNRjko1A0j xBCQ4ZRdeF0xb4VCgapeNs2kwm+F891RAC9x9GfwX4+teGysBWGKgenAvHTgX6eEfHIM VI+w== X-Gm-Message-State: AOJu0YznIK132NtYp93/Bonhd9Jgrm9JNNk34ePSFrvwisO27AMPF2OJ jjc6YmgmFpL8CmL6myXKA1C2RdOhOMmw+bnB12v+3y5zEPk5tmocB2BDCCfCzHmlJbZEeMomdJD fc+Lv X-Gm-Gg: ASbGncvmAfYhCaHEk0xJqxdpA0hJY8JaoSn7pzwEQ8oPjB/wSfFAckN8/rkc83PqSAh k37cpn/9vmSpuOw7H0NGsffz/rFIkelmdRldlU/0lyqDl+dKvFu3g6A2EuIgHtfqd46YvY8tpZZ 49TPVOuY6KkOau0OxRSXvuPgGpxkVI3jBHRqNSqkkFIX2owzeeYaZ90MD2pKIbcTRb6EXpOr867 Y5OOBEhf+xs+UaNn7eI6Ba/IwSjcnG1ak0yDey9fNZwXa3Wwc9OLJrP+SZuAdLDWssAX3cb1/a5 LgL1Sjc8TpaStFWQr45zIvBzHYeBvzuuSeGlTNJmk69MkaFC0iu+YHPcptG11o3qi0fB+bzdySj +47Ds9lxVh9gp50LAmcXa2GOWjBP3IPG9Lrjm X-Google-Smtp-Source: AGHT+IH+c8O2E2HVd2OHIZ8hWUhr5YeOtL+Sqy1VBoh7i0RV9/KHCkcP9npOgtQBIh02kYBu+6CBjw== X-Received: by 2002:a05:600c:5246:b0:441:ac58:ead5 with SMTP id 5b1f17b1804b1-4539a843575mr132515875e9.31.1751381260942; Tue, 01 Jul 2025 07:47:40 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Pierrick Bouvier , Julian Armistead , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [RFC PATCH v3 68/68] system/memory: Restrict eventfd dispatch_write() to emulators Date: Tue, 1 Jul 2025 16:40:16 +0200 Message-ID: <20250701144017.43487-69-philmd@linaro.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250701144017.43487-1-philmd@linaro.org> References: <20250701144017.43487-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=philmd@linaro.org; helo=mail-wm1-x336.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 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+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1751381677068116600 Commit 8c56c1a592b ("memory: emulate ioeventfd") added a !KVM check because the only accelerator available back then were TCG, QTest and KVM. Then commit 126e7f78036 ("kvm: require KVM_CAP_IOEVENTFD and KVM_CAP_IOEVENTFD_ANY_LENGTH") suggested '!KVM' check should be '(TCG || QTest)'. Later more accelerator were added. Implement the suggestion as a safety measure, not dispatching to eventfd when hardware accelerator is used. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson --- system/memory.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/system/memory.c b/system/memory.c index e8d9b15b28f..b072a6bef83 100644 --- a/system/memory.c +++ b/system/memory.c @@ -25,7 +25,7 @@ #include "qom/object.h" #include "trace.h" #include "system/ram_addr.h" -#include "system/kvm.h" +#include "system/qtest.h" #include "system/runstate.h" #include "system/tcg.h" #include "qemu/accel.h" @@ -1530,12 +1530,7 @@ MemTxResult memory_region_dispatch_write(MemoryRegio= n *mr, =20 adjust_endianness(mr, &data, op); =20 - /* - * FIXME: it's not clear why under KVM the write would be processed - * directly, instead of going through eventfd. This probably should - * test "tcg_enabled() || qtest_enabled()", or should just go away. - */ - if (!kvm_enabled() && + if ((tcg_enabled() || qtest_enabled()) && memory_region_dispatch_write_eventfds(mr, addr, data, size, attrs)= ) { return MEMTX_OK; } --=20 2.49.0