From nobody Sun May 11 20:01:28 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=1733437382; cv=none; d=zohomail.com; s=zohoarc; b=E4jNyVQ8TfJnOFLGBpNr4Ht87/LDtIji8p4bz3cksZhHATzscmMYylJ8l66/KnLktcDdNMScaB8mgGrwaFENEJnWcB9sXev/G2YhEu1Gg1a0BYsZMnJpKde/lc43/ItZh9qF4T5+QMjTnhASFHwS6PwFPAiLH+s0Vsk4YIUJn6I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1733437382; h=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=FbPMtxcOc3D4j1V0HPSTBCu31VLQo3b2yamOLZCop3s=; b=XTq4BW+cnDCr3BwXM82pCf8CTrE8I2E/RoK2bxyriG8Vpsj0ubFFoE7yeVSB/a5lTnhvCnmN1tLwRsdxNXBLIiaQCEeIxLVkgAP6gqkG4//1vblBb14PY5bYEyZSlYcOgtfssLVMKni5MQqM5lCg/snYXArZDGEUv8daoWYbkCQ= 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=<pierrick.bouvier@linaro.org> (p=none dis=none) Return-Path: <qemu-devel-bounces+importer=patchew.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1733437382603961.9258726292019; Thu, 5 Dec 2024 14:23:02 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1tJKFL-0004WR-Ux; Thu, 05 Dec 2024 17:22:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFK-0004Vk-Nl for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:54 -0500 Received: from mail-pl1-x636.google.com ([2607:f8b0:4864:20::636]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFH-000805-TQ for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:54 -0500 Received: by mail-pl1-x636.google.com with SMTP id d9443c01a7336-21572ca3cccso11947495ad.2 for <qemu-devel@nongnu.org>; Thu, 05 Dec 2024 14:22:50 -0800 (PST) Received: from pc.. (216-180-64-156.dyn.novuscom.net. [216.180.64.156]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-215f8f0b571sm17310435ad.183.2024.12.05.14.22.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Dec 2024 14:22:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1733437370; x=1734042170; 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=FbPMtxcOc3D4j1V0HPSTBCu31VLQo3b2yamOLZCop3s=; b=fL+/Jt8xS5xDCd9Bgd2DL1X9WxDz8IRs4K+KCPAz6Vu0nCU/VwlgeGsxIB8nopkjce gz8Q2VqRAW71mpjsY/fR7Sl64byRoof8H7Zju1YIf3iQ8cIvJQpKvoQoZtX+t8HWGsKT YHS43KOJqEJ39ism0MFh+Y3/XRxIbG0CMB913rVJnXFCwfVY3LHdGkPehFoBrqwDxNW9 NP9Fs3GIJGKD4wqtys+bkjbagqUVvwQTPsLOMK8HXHTi2lHEVfIc7AUYubr6ccxTHF3N 8zM67fW33xEjF5jDdV8gQtfZ7UDVgD/R4b23+rclaQzwdbliW8J4htCs2+zar+nGEmKO yDEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733437370; x=1734042170; 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=FbPMtxcOc3D4j1V0HPSTBCu31VLQo3b2yamOLZCop3s=; b=nYxqJCSnmJGTy+PfZ8uhjk0qgh72qWrBZ6XzLgnTfn9PKdHVg4NBMldo8WBjHA/Xcv cwdmveQ6+IZso8AFd7STmjk6slo8PagaVqG0ik/HxZPPK3tPaVERhutAuPrbemBqdp16 tH2/JK49JoE3qBLNNmHmIWanvBfJEo+0JIt5vx0UrCw+gt3odsRcwLbkA8iczc4OJ5e9 dsL8b5lqqJ5hA1+sueQZoNYrX94pGHmKaJXV3IHApd2H8UisJ5fmqRU9BSnvkz8kkHlx h7RE9ETVvb7kojnsUZtm0iNtMNfjeChHW2ThhkI8Lz7ccGneLGTez1qpzlhadbeK4MV8 SVtw== X-Gm-Message-State: AOJu0Yy0sq0k+fAfIpf0QayWAi4OczrSPkFLPzLPXf8inMcuAQyAVOAS +64cSFiADf8hV2d13xfzCe3UnpRCX95CzZ7LiF2JzR8hO/YG9u7kw+A473QefoKzt7u5at1L9JK eLTA= X-Gm-Gg: ASbGncuHFWQmPxSlDIElagtsUeYe8H0Cw+jgbv2VX6YEuEROV54gN4J0AnANN1AxWez OlriEU5D8BlcWgth18tYaE7dG48OvAroB3LDVAoYn0cvfN/fsLxKEl61SdS5T8cMIIDy8foB8lM oH+Jlpu6nh6cG4BQxHGT410YHbOL+EH0QlHxQMUqmJLsdUOPs4R8MYcCYvjKba/ZvLndmPi2HlF FjPZih9rDUt2y6H5uOPFnABkPtZoSBtf7o5cVo5ug4W1AZWdmob2SLl7xK7Y6GLljC7mlAHCUEq KLtGGvPH X-Google-Smtp-Source: AGHT+IGGpMrgNZ1O4bZqOEYDSDjgfdADe/h62ubd0eMgisrR560w3IkgYU6NwrzANqjBgeoLeUxSbg== X-Received: by 2002:a17:902:c405:b0:215:a3fb:b4d6 with SMTP id d9443c01a7336-21614d54353mr8243025ad.8.1733437369826; Thu, 05 Dec 2024 14:22:49 -0800 (PST) From: Pierrick Bouvier <pierrick.bouvier@linaro.org> To: qemu-devel@nongnu.org Cc: Fabiano Rosas <farosas@suse.de>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, gustavo.romero@linaro.org, Andrew Melnychenko <andrew@daynix.com>, Peter Maydell <peter.maydell@linaro.org>, qemu-arm@nongnu.org, alex.bennee@linaro.org, Konstantin Kostiuk <kkostiuk@redhat.com>, Eric Blake <eblake@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, Peter Xu <peterx@redhat.com>, Markus Armbruster <armbru@redhat.com>, =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>, Yuri Benditovich <yuri.benditovich@daynix.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, manos.pitsidianakis@linaro.org, qemu-block@nongnu.org, Pierrick Bouvier <pierrick.bouvier@linaro.org> Subject: [PATCH v2 1/6] docs/devel: remove dead video link for sourcehut submit process Date: Thu, 5 Dec 2024 14:22:36 -0800 Message-Id: <20241205222241.3789437-2-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> References: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::636; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x636.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=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=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: 1733437384567116600 Content-Type: text/plain; charset="utf-8" Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> --- docs/devel/submitting-a-patch.rst | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/docs/devel/submitting-a-patch.rst b/docs/devel/submitting-a-pa= tch.rst index 10b062eec26..03b2ac298aa 100644 --- a/docs/devel/submitting-a-patch.rst +++ b/docs/devel/submitting-a-patch.rst @@ -252,10 +252,7 @@ patches to the QEMU mailing list by following these st= eps: #. Send your patches to the QEMU mailing list using the web-based ``git-send-email`` UI at https://git.sr.ht/~USERNAME/qemu/send-email =20 -`This video -<https://spacepub.space/videos/watch/ad258d23-0ac6-488c-83fc-2bacf578de3a>= `__ -shows the web-based ``git-send-email`` workflow. Documentation is -available `here +Documentation for sourcehut is available `here <https://man.sr.ht/git.sr.ht/#sending-patches-upstream>`__. =20 .. _cc_the_relevant_maintainer: --=20 2.39.5 From nobody Sun May 11 20:01:28 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=1733437475; cv=none; d=zohomail.com; s=zohoarc; b=hAoziqU3Hi9uiSL8so8/S0m943S5locTVZC1r3yTQAcwdwTpQvSoGzaeAlDeI0dbUXQaBDW3/HTk0MTYFSzwF/LORBwL3MwS6Se/y8y2gRmojIkQbcO6JH5oYnW7XbrAfUSO1tAb4nl8sWHClzER60SGxa/YDaAbzArhWGTyJ+k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1733437475; h=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=H5Lu6p0mGuoLuKswKHrT0wMtIc0NP1LmOkh8ZXYhnho=; b=ZM9zTWe+SIRv+vPM0M44QdAW8yU90TW4CZ92rxQtd/PmXO1bayf7COzYCbvWY/NR6eciXblQIByHModeadCeJfJw20sKjO1FWfK9xaLqcFZVOPZx8nIzNHZVP7iX9+4uvEHEPXroOpZj0vqkMlS83ezz13xmELSiKOdcTn/dUO0= 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=<pierrick.bouvier@linaro.org> (p=none dis=none) Return-Path: <qemu-devel-bounces+importer=patchew.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 173343747532197.10100244067905; Thu, 5 Dec 2024 14:24:35 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1tJKFN-0004b7-VK; Thu, 05 Dec 2024 17:22:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFM-0004Wa-6B for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:56 -0500 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFJ-00080Q-Hu for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:55 -0500 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-215936688aeso13261155ad.1 for <qemu-devel@nongnu.org>; Thu, 05 Dec 2024 14:22:52 -0800 (PST) Received: from pc.. (216-180-64-156.dyn.novuscom.net. [216.180.64.156]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-215f8f0b571sm17310435ad.183.2024.12.05.14.22.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Dec 2024 14:22:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1733437371; x=1734042171; 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=H5Lu6p0mGuoLuKswKHrT0wMtIc0NP1LmOkh8ZXYhnho=; b=qyYwzXPmhpbPCuvT50Se07vK7QlhId1BpDqM5S0JeOxyNhg31yvinM7TIXO8H0hNHI fSEkYXF7GerQdu2O5Mo/dVjeXH6JTHtEDyzNP2QOQYYlNKWExfFBBZwzMXvLIwnnLsOa UDPULez2Mc3+9wJ5AkgIYeZpOfMfYAgM9Z2aLCYcs8oONykqOjCdYcVpuo/EH86MvfQX 7EV+ZlDWCQvD/TDQwUGUCeMiAQRu4ggOMyZ4veqW7vgUeIsk/w0rl+Pv6hyGxJuXkaFH IBJF7V0m6jSb62YHO1mElLgCQhgJw4d2GCSmprbJVJH0oeeZJBUtGt+3XinV6VDPU35D WANg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733437371; x=1734042171; 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=H5Lu6p0mGuoLuKswKHrT0wMtIc0NP1LmOkh8ZXYhnho=; b=OAW0VRP5/iG7rXSY9UV/Xt+uU976426Ofgx8cOTyCPw6T1LXhuUyU4Ail88L79/KJ7 SqRKKA1MVqzR8tNkcEYyfvwj7UqeNxDci0xirJUwWJ5TkZUOs83unCM0yTZ4JihygBoo b0q8B5Y2c2L3+02G5KlUNbmEdd0jJtrCpKxlyizQXK/eOskDKO+4ovoFXxEWis0I3kOT IUBkFCw07a8gvIJaQQTQ46Xu8WnvmIgXXrOzROqKq0pIn83OHtWcozW9oUOWvKEDJ7ng 493xg6Hy67WAkT5WAD8fsG+0OuEgtISUjLY8cUWBBDX5ptli84g5LXbgLaZFtIFDyanT 2q0A== X-Gm-Message-State: AOJu0YxybtmnpBkX+JKdef0BO7rAq1NRyb5YqmaeSYGgWOj6GaD1IkT9 tNpNUc2OOanJpDbPwJvljzu5Uy033jMaqGyuCp6oKvgu4hMHPNnyhnOdai8iwH3iXoOxAR7w69h w6xk= X-Gm-Gg: ASbGncvHnlOF4YeGcITQN1W2nAq3/j3MbwXOTme4ob0UkquF5uVSmAyCnO6D3Rc9lDM D1V+cgPD/lmjS5aPNZzvtTPsilCFVqHpaXFGjM6ryrM9VcDOCcWmQCTb5/aXMmGX8KmjSiur78o tdQUDyrtxkz7gjPvdh9/nwOn6GnGX9z54nFvlEOjy7rnvQLyar5rs1hDYXmjgB14MjzA0njoOzF 7toeHvUKhqYZCQOw242Hsd9herKLNkKH7n7DQYq0MsR3KKTdvSqeffEmev8b+V6cLK+7MpGCHAH 5I+AqR9g X-Google-Smtp-Source: AGHT+IFyCwATFotsgQSxoCFijjdMuigGb94TLzAYgWFUObwOD3XnGp5ahGX4zbRs/+b89VCEbBA1vA== X-Received: by 2002:a17:903:240a:b0:215:a05d:fb05 with SMTP id d9443c01a7336-21614d781cbmr10834045ad.32.1733437370969; Thu, 05 Dec 2024 14:22:50 -0800 (PST) From: Pierrick Bouvier <pierrick.bouvier@linaro.org> To: qemu-devel@nongnu.org Cc: Fabiano Rosas <farosas@suse.de>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, gustavo.romero@linaro.org, Andrew Melnychenko <andrew@daynix.com>, Peter Maydell <peter.maydell@linaro.org>, qemu-arm@nongnu.org, alex.bennee@linaro.org, Konstantin Kostiuk <kkostiuk@redhat.com>, Eric Blake <eblake@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, Peter Xu <peterx@redhat.com>, Markus Armbruster <armbru@redhat.com>, =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>, Yuri Benditovich <yuri.benditovich@daynix.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, manos.pitsidianakis@linaro.org, qemu-block@nongnu.org, Pierrick Bouvier <pierrick.bouvier@linaro.org> Subject: [PATCH v2 2/6] docs/devel: add git-publish for patch submitting Date: Thu, 5 Dec 2024 14:22:37 -0800 Message-Id: <20241205222241.3789437-3-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> References: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::62d; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62d.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=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=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: 1733437477018116600 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> --- docs/devel/submitting-a-patch.rst | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/devel/submitting-a-patch.rst b/docs/devel/submitting-a-pa= tch.rst index 03b2ac298aa..f8b7fc59544 100644 --- a/docs/devel/submitting-a-patch.rst +++ b/docs/devel/submitting-a-patch.rst @@ -235,6 +235,25 @@ to another list.) ``git send-email`` (`step-by-step se= tup guide works best for delivering the patch without mangling it, but attachments can be used as a last resort on a first-time submission. =20 +.. _use_git_publish: + +Use git-publish +~~~~~~~~~~~~~~~ + +If you already configured git send-email, you can simply use `git-publish +<https://github.com/stefanha/git-publish>`__ to send series. + +:: + + $ git checkout master -b my-feature + $ # work on new commits, add your 'Signed-off-by' lines to each + $ git publish + $ ... more work, rebase on master, ... + $ git publish # will send a v2 + +Each time you post a series, git-publish will create a local tag with the = format +``<branchname>-v<version>`` to record the patch series. + .. _if_you_cannot_send_patch_emails: =20 If you cannot send patch emails --=20 2.39.5 From nobody Sun May 11 20:01:28 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=1733437433; cv=none; d=zohomail.com; s=zohoarc; b=jAvz6A1TD1hEvOQ+wNVopy4j+V728I8JiR3BRWekRpCwC5LVO3pQEzlacnysVimwjSaNUYtwvgttu1hbS/OVfcRPMBrxr3xUHRL/dTUj7rJWW3sK/4Brj4YDSVYnfxJ7EIWrUhaVl0CIALt3DxuRgVUwY8I4vPDd5VUwXDeEQuY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1733437433; h=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=VJU6LTkTBYM7iWtOHgTlgOKxjsUORD0kvMkrC1zUSAU=; b=ktF+fkKO0P2E6ZPCCvkEqpsmlEgbppBHY/HgTdAKjgjPWOmEmeFad1Y3R4MO7dRtdqdYKF0nmEJgVqBgq2q3jkfmI0GaxwDFsLNTYX8uH9hB1rfuzv3BmSNlpX85nSAEG7PI3Db+05PialmtkCJU4wmI0Jtjyv338Jg6wYYDYSI= 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=<pierrick.bouvier@linaro.org> (p=none dis=none) Return-Path: <qemu-devel-bounces+importer=patchew.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1733437433130330.2651694174963; Thu, 5 Dec 2024 14:23:53 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1tJKFP-0004eS-F2; Thu, 05 Dec 2024 17:22:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFM-0004Ww-G3 for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:56 -0500 Received: from mail-pl1-x62f.google.com ([2607:f8b0:4864:20::62f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFJ-00080c-Hu for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:56 -0500 Received: by mail-pl1-x62f.google.com with SMTP id d9443c01a7336-215b13e9ccbso14212725ad.0 for <qemu-devel@nongnu.org>; Thu, 05 Dec 2024 14:22:53 -0800 (PST) Received: from pc.. (216-180-64-156.dyn.novuscom.net. [216.180.64.156]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-215f8f0b571sm17310435ad.183.2024.12.05.14.22.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Dec 2024 14:22:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1733437372; x=1734042172; 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=VJU6LTkTBYM7iWtOHgTlgOKxjsUORD0kvMkrC1zUSAU=; b=j1E9Ur/Vv4D5T7aDlFJIjMeI7jHjhXK9ZfRDmjT4I32w2QK7TuiwVcZ8+i38vZZsTo +CERCxIWJNqu/JWDZ6JXAzdIPqFhAzaF4z/icsTT13o97idlPr+20eejUxzjeoZINI6h lKXeBvhUgbTvXmjJK38O9QKIBYAn2iCCBW6P2Ym0RV2zybCNkC/V8VbPRN5LlkBNwmYv g88hbbfrStTVE6VP9y/DMw0pQq7nFuPxjaNvUXR7PJ2JLqL9zP9TZyBrHeRjggruZfZ3 P05DH9/0FVwo/7spv+NKZP9+eI29n0q8apScrKLY81VkfZjENFslUSoHE95VJCksT3fB xphw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733437372; x=1734042172; 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=VJU6LTkTBYM7iWtOHgTlgOKxjsUORD0kvMkrC1zUSAU=; b=NcTEs5buIb+ZuIckU73Dv4556BpSRHlh7cdScezIbCQ6AJPw/dnhLmWdW2b63rcJHf BrtYJaPu4YwyYiOt4Us7rFsJfJkoHQQg15SGI+OW9tfJeSLgrl9C8qH4kxmZZCyPnJC+ ACWj6f0QYBWYrjy001xCOiFH3F6gzslkAKrOiimVP0LjWnHimbf+I0p0OYawjdM6Mg6p /cX7E1B73BcY46ZEWi0PhfhpTHUxBBApbVGf6/xhdQzdKbSFC/SUurAYnWVldJGMnhhj Ob2UCSdFxFaCAYDQpSvJG4f47/JJxQYebRMZ8GF18LB9+123WhECiwuh3aUQvU+k6+Dd 08Fg== X-Gm-Message-State: AOJu0YwvawUynC8gArVoHwl+BKfq//ePwjeIBOWPW3T8+n0C2ABmRCCd qBbAsJ/HJNtVHzyTqqX+FyXNbsyyXu2Hlncj8Ecwagzr1NUG3y8PMsoTcjinIh/SFklD5y/p+7t T/2c= X-Gm-Gg: ASbGnctZKBUQTx2kU/YKbnsPRHcN1jxVGyx14Y2bInieAGD2h8OQgXAaTjjpooWavGk 3Q2uUu5PrloKoVBIqLE8Q8G0PGK+ZZflW3F4m5vylWuIGsPLtgfOlLoJDM+mo5YbRqxS/YCDx7U 1a6FlbPkT2si7KChMkHP+NCfO1dDJjbW6vjXMk1WdI0SIgze1RqJDCSM1r358WfkEBx3zDkzbYQ XVLOz+iTxrTaLfZRZtI666r4XbMe05nX7l6xPT+mlV+IAr3SIKULLhPyx3EyGYuI8gAoRPyPNFo 3P9q/zgZ X-Google-Smtp-Source: AGHT+IHFA6TZyZzj5zKebKMPbD5MvWXbAMQRgtvdNPIShavDxnpEu45VjwenpBR042wJxB4xGoJ5Ug== X-Received: by 2002:a17:902:e5cd:b0:215:7ce4:57bc with SMTP id d9443c01a7336-21614d3b228mr9364535ad.16.1733437372098; Thu, 05 Dec 2024 14:22:52 -0800 (PST) From: Pierrick Bouvier <pierrick.bouvier@linaro.org> To: qemu-devel@nongnu.org Cc: Fabiano Rosas <farosas@suse.de>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, gustavo.romero@linaro.org, Andrew Melnychenko <andrew@daynix.com>, Peter Maydell <peter.maydell@linaro.org>, qemu-arm@nongnu.org, alex.bennee@linaro.org, Konstantin Kostiuk <kkostiuk@redhat.com>, Eric Blake <eblake@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, Peter Xu <peterx@redhat.com>, Markus Armbruster <armbru@redhat.com>, =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>, Yuri Benditovich <yuri.benditovich@daynix.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, manos.pitsidianakis@linaro.org, qemu-block@nongnu.org, Pierrick Bouvier <pierrick.bouvier@linaro.org> Subject: [PATCH v2 3/6] docs/devel: add b4 for patch retrieval Date: Thu, 5 Dec 2024 14:22:38 -0800 Message-Id: <20241205222241.3789437-4-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> References: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::62f; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62f.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: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=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: 1733437434476116600 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> --- docs/devel/submitting-a-patch.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/devel/submitting-a-patch.rst b/docs/devel/submitting-a-pa= tch.rst index f8b7fc59544..99f14d4b44d 100644 --- a/docs/devel/submitting-a-patch.rst +++ b/docs/devel/submitting-a-patch.rst @@ -427,6 +427,16 @@ For more details on how QEMU's stable process works, r= efer to the =20 .. _participating_in_code_review: =20 +Retrieve an existing series +--------------------------- + +If you want to apply an existing series on top of your tree, you can simpl= y use +`b4 <https://github.com/mricon/b4>`__. + +:: + + b4 shazam $msg-id + Participating in Code Review ---------------------------- =20 --=20 2.39.5 From nobody Sun May 11 20:01:28 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=1733437410; cv=none; d=zohomail.com; s=zohoarc; b=kAZgrqdBkeSmrTbY8LhhrtIQSvwkeAVqE8C6cu6ZK3uUw53TRGqWi9d1z3wvJenAvaUM4W7ufJyGOs+0kqx477kK5ep8MJ1LAPEnYx8dqjd0SVICW7wC9qGeveM4jLnMFd/tyA8ykHh5csDCyotY25VburP8UOS1iwvlMNqy0xU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1733437410; h=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=KcbaNjWF8lnwvj+PtEoJozlcQBiv6h5KPfhVvS5OAGE=; b=gJkbKB8xQnPK7XN7NFPhOgA8bhucZW/gT2Claf/4R4674zOSNKWzPH0uSCKBPip2XsYZy6FluiFcrhNLInfjyCPBAQOPMvwFpwkJBnd/cs6v33ACcOH5wI/L6KsxMEOXNjHfxqjvOGPRWcXV7M9mzZMoV2z8SgTwPbH6XE3/Nn8= 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=<pierrick.bouvier@linaro.org> (p=none dis=none) Return-Path: <qemu-devel-bounces+importer=patchew.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1733437410610814.4837622534703; Thu, 5 Dec 2024 14:23:30 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1tJKFR-0004gb-BI; Thu, 05 Dec 2024 17:23:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFO-0004cV-37 for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:58 -0500 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFK-000819-OR for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:57 -0500 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-215810fff52so16134415ad.1 for <qemu-devel@nongnu.org>; Thu, 05 Dec 2024 14:22:54 -0800 (PST) Received: from pc.. (216-180-64-156.dyn.novuscom.net. [216.180.64.156]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-215f8f0b571sm17310435ad.183.2024.12.05.14.22.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Dec 2024 14:22:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1733437373; x=1734042173; 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=KcbaNjWF8lnwvj+PtEoJozlcQBiv6h5KPfhVvS5OAGE=; b=PsuQRmMpRlTNNg4NYZ7kCNZd/OOjP08dobI8ari99+Bcmbn2uFaTnqWlg877vwH4rr Klw7boFFsogDmH50arvX1YZR5IPQk6NgEULhy8Y9LVQVQ+f+Wp8QbNGVJ0IMuWuedNcx unIGiqARuG9g20MK4epsio2MbTLbFhIS5TbmjhpoAsCUp82NkyMcRE0OBGfJ/JWCUlPG SH1qlsZojCnibHqqmBG5XKVxlitJC2xxWeP/9VzgSbH6Z397eT2ZKBr0hUDD2m+2Gcuw R9X6mRH6YW+CA+ck6h1qaKOfXyW8JVqqG8m6R/2hH0vKuNuEaW2ybqJLP3s0y5uyYbgX kA5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733437373; x=1734042173; 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=KcbaNjWF8lnwvj+PtEoJozlcQBiv6h5KPfhVvS5OAGE=; b=IGR9c28jU5780YAZ7sBvOzKJx2JNZ3zui3lTPRQyO8gUyag0wX95/sIrzj5De45yqP XFuGJsRCgWsvJS2aaCqQXGtCZvlTgjfCe97maLDHnHkGS1HqN8K86+YhlGKWCcSHZvgJ GXc7p0cR1aZ2HM7YzySVMDBMyQqcvqbc6+QHj5D3BboYwqeqO4Hp4o2/GZbhtQDPNt23 jBHvU6iFy3f65hHdWo/V0Dr+balp7V4J9ry3w7wJG92Sxwhm1b2Cjf013L+RaJIhb2gB gaVqd5UhYK8OGAEgmgFcScOSwHb3hnRkZDokNopao1bwQnXFXVDWrEx06tAAUuDd1h3a aodA== X-Gm-Message-State: AOJu0YxBZkulm9XDK+prMa+KnitSXu2EkKiGUguamo6DIk2kDeuZmmVd w3Lo1D1TTlkWKAWWE/4JKTEfwpPAi3g77qjh6IYFI+AG9Jg4+wEB16A6qyZsoT1cE3cfvRIuHs7 oMQI= X-Gm-Gg: ASbGncslDULMa/bgwGhlKQ2d+fL0VYjAKztQsxy6utvXcc01Q2CGc1iIklExLPhrTbV 7tlQivDuH9jgQunKMwwdkoI8KQWtK+QftTirNOU+1AuR7gbhdjQWzcTC+5eMUWW0Ljg55q813hL D2r4Wq7aCnYYefyJYYEbN5wIjkxJFHVrvR99gPfiGs4M88E/GNsw0tTMIJyljNNBjuzt7idHE3H elMMacr4wvCqb3VA/7KsxZZ2hbz9o+xch1SGr7IotD2j/vdwZ9z4US2ZEYGaDbLJeuwi+jb5bwa rttLczh1 X-Google-Smtp-Source: AGHT+IHIbtAAqdAFW+Oy5fuBgsr/s1pWnvnmvxuaSKy/z0uO/rzsU77P4JYdSX7D+Q1C5liHGAtQqQ== X-Received: by 2002:a17:903:41c9:b0:215:620f:8de4 with SMTP id d9443c01a7336-21614d1a449mr7912055ad.2.1733437373275; Thu, 05 Dec 2024 14:22:53 -0800 (PST) From: Pierrick Bouvier <pierrick.bouvier@linaro.org> To: qemu-devel@nongnu.org Cc: Fabiano Rosas <farosas@suse.de>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, gustavo.romero@linaro.org, Andrew Melnychenko <andrew@daynix.com>, Peter Maydell <peter.maydell@linaro.org>, qemu-arm@nongnu.org, alex.bennee@linaro.org, Konstantin Kostiuk <kkostiuk@redhat.com>, Eric Blake <eblake@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, Peter Xu <peterx@redhat.com>, Markus Armbruster <armbru@redhat.com>, =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>, Yuri Benditovich <yuri.benditovich@daynix.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, manos.pitsidianakis@linaro.org, qemu-block@nongnu.org, Pierrick Bouvier <pierrick.bouvier@linaro.org> Subject: [PATCH v2 4/6] docs/devel: add information on how to setup build environments Date: Thu, 5 Dec 2024 14:22:39 -0800 Message-Id: <20241205222241.3789437-5-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> References: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::62b; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62b.google.com X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 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, URIBL_SBL_A=0.1 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=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: 1733437412469116600 Content-Type: text/plain; charset="utf-8" MacOS and Linux are straightforward, but Windows needs a bit more details. Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> --- docs/about/build-platforms.rst | 4 +- docs/devel/build-environment.rst | 118 +++++++++++++++++++++++++++++++ docs/devel/index-build.rst | 1 + 3 files changed, 122 insertions(+), 1 deletion(-) create mode 100644 docs/devel/build-environment.rst diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst index d8b0445157f..482b09819c1 100644 --- a/docs/about/build-platforms.rst +++ b/docs/about/build-platforms.rst @@ -29,6 +29,9 @@ The `Repology`_ site is a useful resource to identify currently shipped versions of software in various operating systems, though it does not cover all distros listed below. =20 +You can find how to install build dependencies for different systems on the +:ref:`setup-build-env` page. + Supported host architectures ---------------------------- =20 @@ -130,7 +133,6 @@ Optional build dependencies cross compilation using ``docker`` or ``podman``, or to use pre-built binaries distributed with QEMU. =20 - Windows ------- =20 diff --git a/docs/devel/build-environment.rst b/docs/devel/build-environmen= t.rst new file mode 100644 index 00000000000..f133ef2e012 --- /dev/null +++ b/docs/devel/build-environment.rst @@ -0,0 +1,118 @@ + +.. _setup-build-env: + +Setup build environment +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +QEMU uses a lot of dependencies on the host system. glib2 is used everywhe= re in +the code base, and most of the other dependencies are optional. + +We present here simple instructions to enable native builds on most popular +systems. + +You can find additional instructions on `QEMU wiki <https://wiki.qemu.org/= >`_: + +- `Linux <https://wiki.qemu.org/Hosts/Linux>`_ +- `MacOS <https://wiki.qemu.org/Hosts/Mac>`_ +- `Windows <https://wiki.qemu.org/Hosts/W32>`_ +- `BSD <https://wiki.qemu.org/Hosts/BSD>`_ + +Note: Installing dependencies using your package manager build dependencie= s may +miss out on deps that have been newly introduced in qemu.git. In more, it = misses +deps the distribution has decided to exclude. + +Linux +----- + +Fedora +++++++ + +:: + + sudo dnf update && sudo dnf builddep qemu + +Debian/Ubuntu ++++++++++++++ + +You first need to enable `Sources List <https://wiki.debian.org/SourcesLis= t>`_. +Then, use apt to install dependencies: + +:: + + sudo apt update && sudo apt build-dep qemu + +MacOS +----- + +You first need to install `Homebrew <https://brew.sh/>`_. Then, use it to +install dependencies: + +:: + + brew update && brew install $(brew deps --include-build qemu) + +Windows +------- + +You first need to install `MSYS2 <https://www.msys2.org/>`_. +MSYS2 offers `different environments <https://www.msys2.org/docs/environme= nts/>`_. +x86_64 environments are based on GCC, while aarch64 is based on Clang. + +We recommend to use MINGW64 for windows-x86_64 and CLANGARM64 for windows-= aarch64 +(only available on windows-aarch64 hosts). + +Then, you can open a windows shell, and enter msys2 env using: + +:: + + c:/msys64/msys2_shell.cmd -defterm -here -no-start -mingw64 + # Replace -ucrt64 by -clangarm64 or -ucrt64 for other environments. + +MSYS2 package manager does not offer a built-in way to install build +dependencies. You can start with this list of packages using pacman: + +Note: Dependencies need to be installed again if you use a different MSYS2 +environment. + +:: + + # update MSYS2 itself, you need to reopen your shell at the end. + pacman -Syu + pacman -S \ + base-devel binutils bison diffutils flex git grep make sed \ + ${MINGW_PACKAGE_PREFIX}-toolchain \ + ${MINGW_PACKAGE_PREFIX}-glib2 \ + ${MINGW_PACKAGE_PREFIX}-gtk3 \ + ${MINGW_PACKAGE_PREFIX}-libnfs \ + ${MINGW_PACKAGE_PREFIX}-libssh \ + ${MINGW_PACKAGE_PREFIX}-ninja \ + ${MINGW_PACKAGE_PREFIX}-pixman \ + ${MINGW_PACKAGE_PREFIX}-pkgconf \ + ${MINGW_PACKAGE_PREFIX}-python \ + ${MINGW_PACKAGE_PREFIX}-SDL2 \ + ${MINGW_PACKAGE_PREFIX}-zstd + +If you want to install all dependencies, it's possible to use recipe used = to +build QEMU in MSYS2 itself. + +:: + + pacman -S wget + wget https://raw.githubusercontent.com/msys2/MINGW-packages/refs/heads= /master/mingw-w64-qemu/PKGBUILD + # Some packages may be missing for your environment, installation will= still + # be done though. + makepkg -s PKGBUILD || true + +Build on windows-aarch64 +++++++++++++++++++++++++ + +When trying to cross compile meson for x86_64 using UCRT64 or MINGW64 env, +configure will run into an error because the cpu detected is not correct. + +Meson detects x86_64 processes emulated, so you need to manually set the c= pu, +and force a cross compilation (with empty prefix). + +:: + + ./configure --cpu=3Dx86_64 --cross-prefix=3D + diff --git a/docs/devel/index-build.rst b/docs/devel/index-build.rst index 0023953be36..0745c81a264 100644 --- a/docs/devel/index-build.rst +++ b/docs/devel/index-build.rst @@ -8,6 +8,7 @@ some of the basics if you are adding new files and targets = to the build. :maxdepth: 3 =20 build-system + build-environment kconfig docs qapi-code-gen --=20 2.39.5 From nobody Sun May 11 20:01:28 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=1733437473; cv=none; d=zohomail.com; s=zohoarc; b=cXxwgUDQpViVOEBf0QF3pIPrctVjARiA/zaRZixacCoMW9ls7YOboxqXJaQDhd2z4VNAfCJW2IWkh7YO5GQ59pWb/EEBVx6rziAv/k8vCYzODar8rFTtftyb16b/WSraYNPQf4PQvpYjMuvYfpovOib0UjUXZYcoJSEuI7UWKv4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1733437473; h=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=psPQ9/kLRzl9aDWDZsvLNVKSyFO68oycKe3IaPSK7ys=; b=Vpb180rP/QHstAJQKRVTkBJkAc8EbQzfxWtSVkYxgyQpCBkq/yFvqL/DY8HMqZZH3rqXpnuB7gRa7labtq7reoqgMSH+e3GSQDXD3VXKv0t9PRCL8ceyJRjZc/9JtEAZVukWf5TqWp0vVPcHEITusNAaNW8FbFNLkVzWqWoO3n8= 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=<pierrick.bouvier@linaro.org> (p=none dis=none) Return-Path: <qemu-devel-bounces+importer=patchew.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1733437473893384.93476022624475; Thu, 5 Dec 2024 14:24:33 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1tJKFS-0004lb-Lt; Thu, 05 Dec 2024 17:23:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFQ-0004gY-7f for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:23:00 -0500 Received: from mail-pg1-x532.google.com ([2607:f8b0:4864:20::532]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFL-00081t-Vv for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:22:59 -0500 Received: by mail-pg1-x532.google.com with SMTP id 41be03b00d2f7-7fc41b4c78bso996052a12.3 for <qemu-devel@nongnu.org>; Thu, 05 Dec 2024 14:22:55 -0800 (PST) Received: from pc.. (216-180-64-156.dyn.novuscom.net. [216.180.64.156]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-215f8f0b571sm17310435ad.183.2024.12.05.14.22.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Dec 2024 14:22:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1733437374; x=1734042174; 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=psPQ9/kLRzl9aDWDZsvLNVKSyFO68oycKe3IaPSK7ys=; b=Eas0OvZK2NNKsCWFIktDT1FHPrk6xUyiv39epI9jiT/50K1k9o6s141VLHSroU0JTY 1NObcQiaj/4BI5famUKq/XckX4J6PnAABCOAnJfJBae/Sn61FWgVvIWCFdApmQzxvInd bFITMtYghw4k989L3jY4rBo3zh5Uf7ozbQmQFdz5DL0wpWT2poZA3ZJIrTB5BqnUknIq RqrhXmvRqtJGz2yRNWV3wSSXZUp/U3JGhQQuB7JdiumgzhwNei8Sr0g/rJT+6t21WozY dMxpQrkMbwZOq+hJwVMomhRpgAoL71+fSSJhqNhcdvCHZSv9L4tKjqSzmCuUdZpIKROF e8BQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733437374; x=1734042174; 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=psPQ9/kLRzl9aDWDZsvLNVKSyFO68oycKe3IaPSK7ys=; b=q8q+uyAjnlzAh8P0lZvhn0Ue+iIwNw5fjCm6j5BQxFfQYCFO3Pb4xIn+X7+P7OucTW lTXum7QbE8X8jTyoKutCekjwoYy2e6QA83xRxpamog5r2rovNpX8MbLsXe6X7qUUYXjG /Fe5h6nV43LrfZpOj4daNZp6r0TjR7InVgVFHPcBo88QsjPMUiQJB64ePmhm7d2wJDiV 1m//aPicvemMmDWo8L+ktjhOyRmRnxpdxGX+FkynW8uF56mAfH2B4DaXsXY5WAF9fXgg QsDwUfQUi7R9oHsevFOfeVaWFsxIgFc6zpMy4EAFdCNFRWO5kGUf5xy008ZOM44pLh17 m5Tw== X-Gm-Message-State: AOJu0YxRl6timrz/UXlysggwILytEClATmQM6qcpJRyK9Oi+vzNxv7dq elrZgwkayi/2t/nVjzDdE8yv/sNbuVuiR14l75innwYlPsHqlkgtL16Laai0/rNeklon8aj15CW SiJU= X-Gm-Gg: ASbGnctTYOB4wISfmkgBnCCNMB3IynKkvwQKLgmIG9di+beq3+dJ+tjRD8oqRubks+/ IrnRXRFR2uqCB77b6th66twX7ntTF5LJ92ubXsGWlL1fHApiE00Jw4O9ePScIJnfYOLc8uA68zq 9qZFWeDmf2pgWxoHe/HXUxnbOwRInpGMrwJqXGzpyQc7KLsnwldsvcILKkaDvZScqRtV7D7KSl5 VF25PDZcFq5kloccZDTAMvAqWTf5djrX4zaSCoY8kG1W8U1MiSqWv2O4OVgWyTdzAWn5z0sgcIZ rOgGSmTS X-Google-Smtp-Source: AGHT+IE9EMYi/cLnTP5fYs1fTTEAK5edefx0b654vu67DRKtBYAdzr+eEFat0eJBJI7ZdNR3uDW5ng== X-Received: by 2002:a17:902:cf4b:b0:212:5786:7bbe with SMTP id d9443c01a7336-21614d607e2mr8928715ad.24.1733437374466; Thu, 05 Dec 2024 14:22:54 -0800 (PST) From: Pierrick Bouvier <pierrick.bouvier@linaro.org> To: qemu-devel@nongnu.org Cc: Fabiano Rosas <farosas@suse.de>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, gustavo.romero@linaro.org, Andrew Melnychenko <andrew@daynix.com>, Peter Maydell <peter.maydell@linaro.org>, qemu-arm@nongnu.org, alex.bennee@linaro.org, Konstantin Kostiuk <kkostiuk@redhat.com>, Eric Blake <eblake@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, Peter Xu <peterx@redhat.com>, Markus Armbruster <armbru@redhat.com>, =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>, Yuri Benditovich <yuri.benditovich@daynix.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, manos.pitsidianakis@linaro.org, qemu-block@nongnu.org, Pierrick Bouvier <pierrick.bouvier@linaro.org> Subject: [PATCH v2 5/6] docs: add a codebase section Date: Thu, 5 Dec 2024 14:22:40 -0800 Message-Id: <20241205222241.3789437-6-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> References: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::532; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pg1-x532.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: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=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: 1733437474960116600 Content-Type: text/plain; charset="utf-8" Present the various parts of QEMU and organization of codebase. Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> --- docs/about/emulation.rst | 2 + docs/devel/codebase.rst | 218 +++++++++++++++++++++++++ docs/devel/decodetree.rst | 2 + docs/devel/ebpf_rss.rst | 2 + docs/devel/index-internals.rst | 2 + docs/devel/index.rst | 1 + docs/devel/migration/main.rst | 2 + docs/devel/qapi-code-gen.rst | 1 + docs/devel/testing/main.rst | 9 +- docs/devel/testing/qtest.rst | 2 + docs/index.rst | 2 + docs/interop/qemu-ga.rst | 2 + docs/system/qemu-block-drivers.rst.inc | 2 + docs/tools/qemu-storage-daemon.rst | 2 + docs/user/main.rst | 6 + 15 files changed, 254 insertions(+), 1 deletion(-) create mode 100644 docs/devel/codebase.rst diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst index 3028d5fff7a..3bc3579434f 100644 --- a/docs/about/emulation.rst +++ b/docs/about/emulation.rst @@ -176,6 +176,8 @@ for that architecture. - System - Tensilica ISS SIMCALL =20 +.. _tcg-plugins: + TCG Plugins ----------- =20 diff --git a/docs/devel/codebase.rst b/docs/devel/codebase.rst new file mode 100644 index 00000000000..e926ef4e92e --- /dev/null +++ b/docs/devel/codebase.rst @@ -0,0 +1,218 @@ +=3D=3D=3D=3D=3D=3D=3D=3D +Codebase +=3D=3D=3D=3D=3D=3D=3D=3D + +This section presents the various parts of QEMU and how the codebase is +organized. + +Beyond giving succint descriptions, the goal is to offer links to various +parts of the documentation/codebase. + +Subsystems +---------- + +An exhaustive list of subsystems and associated files can be found in the +`MAINTAINERS <https://gitlab.com/qemu-project/qemu/-/blob/master/MAINTAINE= RS>`_ +file. + +Some of the main QEMU subsystems are: + +- `Accelerators<Accelerators>` +- Block devices and `disk images<disk images>` support +- `CI<ci>` and `Tests<testing>` +- `Devices<device-emulation>` & Board models +- `Documentation <documentation-root>` +- `GDB support<GDB usage>` +- `Migration<migration>` +- `Monitor<QEMU monitor>` +- :ref:`QOM (QEMU Object Model)<qom>` +- `System mode<System emulation>` +- :ref:`TCG (Tiny Code Generator)<tcg>` +- `User mode<user-mode>` (`Linux<linux-user-mode>` & `BSD<bsd-user-mode>`) +- User Interfaces + +More documentation on QEMU subsystems can be found on :ref:`internal-subsy= stem` +page. + +The Grand tour +-------------- + +We present briefly here what every folder of the codebase contains. Hop on! + +The folder name links here will take you to that folder in our gitlab +repository. Other links will take you to more detailed documentation for t= hat +subsystem, where we have it. Unfortunately not every subsystem has documen= tation +yet, so sometimes the source code is all you have. + +* `accel <https://gitlab.com/qemu-project/qemu/-/tree/master/accel>`_: + Infrastructure and architecture agnostic code related to the various + `accelerators <Accelerators>` supported by QEMU + (TCG, KVM, hvf, whpx, xen, nvmm). + Contains interfaces for operations that will be implemented per + `target <https://gitlab.com/qemu-project/qemu/-/tree/master/target>`_. +* `audio <https://gitlab.com/qemu-project/qemu/-/tree/master/audio>`_: + Audio (host) support. +* `authz <https://gitlab.com/qemu-project/qemu/-/tree/master/authz>`_: + `QEMU Authorization framework<client authorization>`. +* `backends <https://gitlab.com/qemu-project/qemu/-/tree/master/backends>`= _: + Various backends used for device emulation. +* `block <https://gitlab.com/qemu-project/qemu/-/tree/master/block>`_: + Block devices and `image formats<disk images>` implementation. +* `bsd-user <https://gitlab.com/qemu-project/qemu/-/tree/master/bsd-user>`= _: + `BSD User mode<bsd-user-mode>`. +* build: Where the code built goes by default. You can tell the QEMU build + system to put the built code anywhere else you like. +* `chardev <https://gitlab.com/qemu-project/qemu/-/tree/master/chardev>`_: + Various backends used by char devices. +* `common-user <https://gitlab.com/qemu-project/qemu/-/tree/master/common-= user>`_: + User-mode assembly code for dealing with signals occuring during syscall= s. +* `configs <https://gitlab.com/qemu-project/qemu/-/tree/master/configs>`_: + Makefiles defining configurations to build QEMU. +* `contrib <https://gitlab.com/qemu-project/qemu/-/tree/master/contrib>`_: + Community contributed devices/plugins/tools. +* `crypto <https://gitlab.com/qemu-project/qemu/-/tree/master/crypto>`_: + Cryptographic algorithms used in QEMU. +* `disas <https://gitlab.com/qemu-project/qemu/-/tree/master/disas>`_: + Disassembly functions used by QEMU target code. +* `docs <https://gitlab.com/qemu-project/qemu/-/tree/master/docs>`_: + QEMU Documentation. +* `dump <https://gitlab.com/qemu-project/qemu/-/tree/master/dump>`_: + Code to dump memory of a running VM. +* `ebpf <https://gitlab.com/qemu-project/qemu/-/tree/master/ebpf>`_: + eBPF program support in QEMU. `virtio-net RSS<ebpf-rss>` uses it. +* `fpu <https://gitlab.com/qemu-project/qemu/-/tree/master/fpu>`_: + Floating-point software emulation. +* `fsdev <https://gitlab.com/qemu-project/qemu/-/tree/master/fsdev>`_: + `VirtFS <https://www.linux-kvm.org/page/VirtFS>`_ support. +* `gdbstub <https://gitlab.com/qemu-project/qemu/-/tree/master/gdbstub>`_: + `GDB <GDB usage>` support. +* `gdb-xml <https://gitlab.com/qemu-project/qemu/-/tree/master/gdb-xml>`_: + Set of XML files describing architectures and used by `gdbstub <GDB usag= e>`. +* `host <https://gitlab.com/qemu-project/qemu/-/tree/master/host>`_: + Various architecture specific header files (crypto, atomic, memory + operations). +* `linux-headers <https://gitlab.com/qemu-project/qemu/-/tree/master/linux= -headers>`_: + A subset of headers imported from Linux kernel and used for implementing + KVM support and user-mode. +* `linux-user <https://gitlab.com/qemu-project/qemu/-/tree/master/linux-us= er>`_: + `User mode <user-mode>` implementation. Contains one folder per target + architecture. +* `.gitlab-ci.d <https://gitlab.com/qemu-project/qemu/-/tree/master/.gitla= b-ci.d>`_: + `CI <ci>` yaml and scripts. +* `include <https://gitlab.com/qemu-project/qemu/-/tree/master/include>`_: + All headers associated to different subsystems in QEMU. The hierachy used + mirrors source code organization and naming. +* `hw <https://gitlab.com/qemu-project/qemu/-/tree/master/hw>`_: + `Devices <device-emulation>` and boards emulation. Devices are categoriz= ed by + type/protocol/architecture and located in associated subfolder. +* `io <https://gitlab.com/qemu-project/qemu/-/tree/master/io>`_: + QEMU `I/O channels <https://lists.gnu.org/archive/html/qemu-devel/2015-1= 1/msg04208.html>`_. +* `libdecnumber <https://gitlab.com/qemu-project/qemu/-/tree/master/libdec= number>`_: + Import of gcc library, used to implement decimal number arithmetic. +* `migration <https://gitlab.com/qemu-project/qemu/-/tree/master/migration= >`__: + `Migration framework <migration>`. +* `monitor <https://gitlab.com/qemu-project/qemu/-/tree/master/monitor>`_: + `Monitor <QEMU monitor>` implementation (HMP & QMP). +* `nbd <https://gitlab.com/qemu-project/qemu/-/tree/master/nbd>`_: + QEMU `NBD (Network Block Device) <nbd>` server. +* `net <https://gitlab.com/qemu-project/qemu/-/tree/master/net>`_: + Network (host) support. +* `pc-bios <https://gitlab.com/qemu-project/qemu/-/tree/master/pc-bios>`_: + Contains pre-built firmware binaries and boot images, ready to use in + QEMU without compilation. +* `plugins <https://gitlab.com/qemu-project/qemu/-/tree/master/plugins>`_: + :ref:`TCG plugins <tcg-plugins>` core implementation. Plugins can be fou= nd in + `tests <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/tcg/plu= gins>`__ + and `contrib <https://gitlab.com/qemu-project/qemu/-/tree/master/contrib= /plugins>`__ + folders. +* `po <https://gitlab.com/qemu-project/qemu/-/tree/master/po>`_: + Translation files. +* `python <https://gitlab.com/qemu-project/qemu/-/tree/master/python>`_: + Python part of our build/test system. +* `qapi <https://gitlab.com/qemu-project/qemu/-/tree/master/qapi>`_: + `QAPI <qapi>` implementation. +* `qobject <https://gitlab.com/qemu-project/qemu/-/tree/master/qobject>`_: + QEMU Object implementation. +* `qga <https://gitlab.com/qemu-project/qemu/-/tree/master/qga>`_: + QEMU `Guest agent <qemu-ga>` implementation. +* `qom <https://gitlab.com/qemu-project/qemu/-/tree/master/qom>`_: + QEMU :ref:`Object model <qom>` implementation, with monitor associated c= ommands. +* `replay <https://gitlab.com/qemu-project/qemu/-/tree/master/replay>`_: + QEMU :ref:`Record/replay <replay>` implementation. +* `roms <https://gitlab.com/qemu-project/qemu/-/tree/master/roms>`_: + Contains source code for various firmware and ROMs, which can be compile= d if + custom or updated versions are needed. +* `rust <https://gitlab.com/qemu-project/qemu/-/tree/master/rust>`_: + Rust integration in QEMU. It contains the new interfaces defined and + associated devices using it. +* `scripts <https://gitlab.com/qemu-project/qemu/-/tree/master/scripts>`_: + Collection of scripts used in build and test systems, and various + tools for QEMU codebase and execution traces. +* `scsi <https://gitlab.com/qemu-project/qemu/-/tree/master/scsi>`_: + Code related to SCSI support, used by SCSI devices. +* `semihosting <https://gitlab.com/qemu-project/qemu/-/tree/master/semihos= ting>`_: + QEMU `Semihosting <Semihosting>` implementation. +* `stats <https://gitlab.com/qemu-project/qemu/-/tree/master/stats>`_: + `Monitor <QEMU monitor>` stats commands implementation. +* `storage-daemon <https://gitlab.com/qemu-project/qemu/-/tree/master/stor= age-daemon>`_: + QEMU `Storage daemon <storage-daemon>` implementation. +* `stubs <https://gitlab.com/qemu-project/qemu/-/tree/master/stubs>`_: + Various stubs (empty functions) used to compile QEMU with specific + configurations. +* `subprojects <https://gitlab.com/qemu-project/qemu/-/tree/master/subproj= ects>`_: + QEMU submodules used by QEMU build system. +* `system <https://gitlab.com/qemu-project/qemu/-/tree/master/system>`_: + QEMU `system mode <System emulation>` implementation (cpu, mmu, boot sup= port). +* `target <https://gitlab.com/qemu-project/qemu/-/tree/master/target>`_: + Contains code for all target architectures supported (one subfolder + per arch). For every architecture, you can find accelerator specific + implementations. +* `tcg <https://gitlab.com/qemu-project/qemu/-/tree/master/tcg>`_: + :ref:`TCG <tcg>` related code. + Contains one subfolder per host supported architecture. +* `tests <https://gitlab.com/qemu-project/qemu/-/tree/master/tests>`_: + QEMU `test <testing>` suite + + - `avocado <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/avo= cado>`_: + Functional tests booting full VM using `Avocado framework <checkavocad= o-ref>`. + Those tests will be transformed and moved into + `tests/functional <https://gitlab.com/qemu-project/qemu/-/tree/master/= tests/functional>`_ + in the future. + - `data <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/data>`= _: + Data for various tests. + - `decode <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/deco= de>`_: + Testsuite for :ref:`decodetree <decodetree>` implementation. + - `docker <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/dock= er>`_: + Code and scripts to create `containers <container-ref>` used in `CI <c= i>`. + - `fp <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/fp>`_: + QEMU testsuite for soft float implementation. + - `functional <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/= functional>`_: + `Functional tests <checkfunctional-ref>` (full VM boot). + - `lcitool <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/lci= tool>`_: + Generate dockerfiles for CI containers. + - `migration <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/m= igration>`_: + Test scripts and data for `Migration framework <migration>`. + - `multiboot <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/m= ultiboot>`_: + Test multiboot functionality for x86_64/i386. + - `qapi-schema <https://gitlab.com/qemu-project/qemu/-/tree/master/tests= /qapi-schema>`_: + Test scripts and data for `QAPI <qapi-tests>`. + - `qemu-iotests <https://gitlab.com/qemu-project/qemu/-/tree/master/test= s/qemu-iotests>`_: + `Disk image and block tests <qemu-iotests>`. + - `qtest <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/qtest= >`_: + `Device emulation testing <qtest>`. + - `tcg <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/tcg>`__: + `TCG related tests <checktcg-ref>`. Contains code per architecture + (subfolder) and multiarch tests as well. + - `tsan <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/tsan>`= _: + `Suppressions <tsan-suppressions>` for thread sanitizer. + - `uefi-test-tools <https://gitlab.com/qemu-project/qemu/-/tree/master/t= ests/uefi-test-tools>`_: + Test tool for UEFI support. + - `unit <https://gitlab.com/qemu-project/qemu/-/tree/master/tests/unit>`= _: + QEMU `Unit tests <unit-tests>`. +* `trace <https://gitlab.com/qemu-project/qemu/-/tree/master/trace>`_: + :ref:`Tracing framework <tracing>`. Used to print information associated= to various + events during execution. +* `ui <https://gitlab.com/qemu-project/qemu/-/tree/master/ui>`_: + QEMU User interfaces. +* `util <https://gitlab.com/qemu-project/qemu/-/tree/master/util>`_: + Utility code used by other parts of QEMU. diff --git a/docs/devel/decodetree.rst b/docs/devel/decodetree.rst index e3392aa7057..98ad33a4870 100644 --- a/docs/devel/decodetree.rst +++ b/docs/devel/decodetree.rst @@ -1,3 +1,5 @@ +.. _decodetree: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Decodetree Specification =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/devel/ebpf_rss.rst b/docs/devel/ebpf_rss.rst index 4a68682b31a..ed5d33767bd 100644 --- a/docs/devel/ebpf_rss.rst +++ b/docs/devel/ebpf_rss.rst @@ -1,3 +1,5 @@ +.. _ebpf-rss: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D eBPF RSS virtio-net support =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D diff --git a/docs/devel/index-internals.rst b/docs/devel/index-internals.rst index ab9fbc44826..bca597c6589 100644 --- a/docs/devel/index-internals.rst +++ b/docs/devel/index-internals.rst @@ -1,3 +1,5 @@ +.. _internal-subsystem: + Internal Subsystem Information ------------------------------ =20 diff --git a/docs/devel/index.rst b/docs/devel/index.rst index a53f1bfda5d..29f032d6a82 100644 --- a/docs/devel/index.rst +++ b/docs/devel/index.rst @@ -35,3 +35,4 @@ the :ref:`tcg_internals`. index-api index-internals index-tcg + codebase diff --git a/docs/devel/migration/main.rst b/docs/devel/migration/main.rst index c2857fc2446..cdd4f4a6d7e 100644 --- a/docs/devel/migration/main.rst +++ b/docs/devel/migration/main.rst @@ -1,3 +1,5 @@ +.. _migration: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Migration framework =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/devel/qapi-code-gen.rst b/docs/devel/qapi-code-gen.rst index 583207a8ec2..3e26d2d1047 100644 --- a/docs/devel/qapi-code-gen.rst +++ b/docs/devel/qapi-code-gen.rst @@ -9,6 +9,7 @@ How to use the QAPI code generator This work is licensed under the terms of the GNU GPL, version 2 or later. See the COPYING file in the top-level directory. =20 +.. _qapi: =20 Introduction =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/devel/testing/main.rst b/docs/devel/testing/main.rst index 91f4dc61fb5..9869bcf0341 100644 --- a/docs/devel/testing/main.rst +++ b/docs/devel/testing/main.rst @@ -39,6 +39,8 @@ Before running tests, it is best to build QEMU programs f= irst. Some tests expect the executables to exist and will fail with obscure messages if they cannot find them. =20 +.. _unit-tests: + Unit tests ~~~~~~~~~~ =20 @@ -126,6 +128,8 @@ successfully on various hosts. The following list shows= some best practices: #ifdef in the codes. If the whole test suite cannot run on Windows, disa= ble the build in the meson.build file. =20 +.. _qapi-tests: + QAPI schema tests ~~~~~~~~~~~~~~~~~ =20 @@ -160,6 +164,8 @@ check-block are in the "auto" group). See the "QEMU iotests" section below for more information. =20 +.. _qemu-iotests: + QEMU iotests ------------ =20 @@ -679,6 +685,8 @@ The above exitcode=3D0 has TSan continue without error = if any warnings are found. This allows for running the test and then checking the warnings afterwards. If you want TSan to stop and exit with error on warnings, use exitcode=3D6= 6. =20 +.. _tsan-suppressions: + TSan Suppressions ~~~~~~~~~~~~~~~~~ Keep in mind that for any data race warning, although there might be a dat= a race @@ -901,7 +909,6 @@ You can run the avocado tests simply by executing: =20 See :ref:`checkavocado-ref` for more details. =20 - .. _checktcg-ref: =20 Testing with "make check-tcg" diff --git a/docs/devel/testing/qtest.rst b/docs/devel/testing/qtest.rst index c5b8546b3eb..73ef7702b7b 100644 --- a/docs/devel/testing/qtest.rst +++ b/docs/devel/testing/qtest.rst @@ -1,3 +1,5 @@ +.. _qtest: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D QTest Device Emulation Testing Framework =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/index.rst b/docs/index.rst index 0b9ee9901d9..78285ebd6a4 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,6 +3,8 @@ You can adapt this file completely to your liking, but it should at lea= st contain the root `toctree` directive. =20 +.. _documentation-root: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D Welcome to QEMU's documentation! =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/interop/qemu-ga.rst b/docs/interop/qemu-ga.rst index 11f7bae4600..d16cc1b9f07 100644 --- a/docs/interop/qemu-ga.rst +++ b/docs/interop/qemu-ga.rst @@ -1,3 +1,5 @@ +.. _qemu-ga: + QEMU Guest Agent =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 diff --git a/docs/system/qemu-block-drivers.rst.inc b/docs/system/qemu-bloc= k-drivers.rst.inc index 384e95ba765..cfe1acb78ae 100644 --- a/docs/system/qemu-block-drivers.rst.inc +++ b/docs/system/qemu-block-drivers.rst.inc @@ -500,6 +500,8 @@ What you should *never* do: - expect it to work when loadvm'ing - write to the FAT directory on the host system while accessing it with th= e guest system =20 +.. _nbd: + NBD access ~~~~~~~~~~ =20 diff --git a/docs/tools/qemu-storage-daemon.rst b/docs/tools/qemu-storage-d= aemon.rst index ea00149a63a..35ab2d78074 100644 --- a/docs/tools/qemu-storage-daemon.rst +++ b/docs/tools/qemu-storage-daemon.rst @@ -1,3 +1,5 @@ +.. _storage-daemon: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D QEMU Storage Daemon =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/user/main.rst b/docs/user/main.rst index 7a126ee8093..80a77f0a0c9 100644 --- a/docs/user/main.rst +++ b/docs/user/main.rst @@ -1,3 +1,5 @@ +.. _user-mode: + QEMU User space emulator =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 @@ -42,6 +44,8 @@ QEMU was conceived so that ultimately it can emulate itse= lf. Although it is not very useful, it is an important test to show the power of the emulator. =20 +.. _linux-user-mode: + Linux User space emulator ------------------------- =20 @@ -175,6 +179,8 @@ Other binaries * ``qemu-sparc64`` can execute some Sparc64 (Sparc64 CPU, 64 bit ABI) a= nd SPARC32PLUS binaries (Sparc64 CPU, 32 bit ABI). =20 +.. _bsd-user-mode: + BSD User space emulator ----------------------- =20 --=20 2.39.5 From nobody Sun May 11 20:01:28 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=1733437421; cv=none; d=zohomail.com; s=zohoarc; b=W7NoG1rZO3JFQT+01kuNd4yphK26NbBe2bpF/HeNIhVGcilFdlwyhqYcR4B4nnixy3DDP0JJ8LIgr+FGFMYCK40VeLmXdoX/d/Xm3CV63MNIAD5n+BoG92TUwwehF20H3Q6sZcN++RejwH1QVp6q1P+JDO/4Jfp1lrp02IhHqT0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1733437421; h=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=quNdZOi6vs/DfPqpA5a+RAcvgntK93hl6bq6i2nnsOE=; b=guNwtzL0JrI74ChWVAN+l+i0cwivv1Byk1mPQyBPLh/j6TGfCY/yEWFCDBMKXfPSlsWCMfiQnNNDPfa7M7+lQI3ysT1/Xntd/FkI24ssbKe+YVg7UdXCiEzEtEDYnPCZ15MiDxicuTbbU8J7elSHn1eXgqLElXg5uDtnLMK2dwU= 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=<pierrick.bouvier@linaro.org> (p=none dis=none) Return-Path: <qemu-devel-bounces+importer=patchew.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1733437421180349.5441255217478; Thu, 5 Dec 2024 14:23:41 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1tJKFU-0004o4-CZ; Thu, 05 Dec 2024 17:23:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFQ-0004ga-9n for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:23:00 -0500 Received: from mail-pl1-x62a.google.com ([2607:f8b0:4864:20::62a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>) id 1tJKFN-00082S-8d for qemu-devel@nongnu.org; Thu, 05 Dec 2024 17:23:00 -0500 Received: by mail-pl1-x62a.google.com with SMTP id d9443c01a7336-215a7e487bfso12460635ad.2 for <qemu-devel@nongnu.org>; Thu, 05 Dec 2024 14:22:56 -0800 (PST) Received: from pc.. (216-180-64-156.dyn.novuscom.net. [216.180.64.156]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-215f8f0b571sm17310435ad.183.2024.12.05.14.22.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Dec 2024 14:22:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1733437376; x=1734042176; 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=quNdZOi6vs/DfPqpA5a+RAcvgntK93hl6bq6i2nnsOE=; b=Hvk8X8BaVPr6ekVRbpPKVbL+hV/jOkgZ+GnbYXwVp9UcK1wfwb+DWJv556QOAfVRir Qm4NpHrjIc5m44KeiFLBmXTlou/udS7+UKxMRjwIOTbYi4SYJjovu4q9/3lA4IkRmp7h DP+bhmr7d2BZBd4TYOJ/5chsAWPSHf8HjLmOtcZRn5y4EDAbfyKFY9/plQqU/dgghHkD oANqvXPN1JCR6d98GA5Ol7kjvUpckWKmHh7baaRPSCpWi25PCt7nKP1OJqjFixCncwgB In2o8leckHORutyWPTHkeqY6x6IgbWriM3uN8kW2I7jqmOGrlFEOAUNdoieqBHW97QYF LQXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1733437376; x=1734042176; 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=quNdZOi6vs/DfPqpA5a+RAcvgntK93hl6bq6i2nnsOE=; b=m8rXsU81iRTDqjEFcqwds5JLCLzBtX4r7d7PNRLOJZiKFBcn3ddmN6yxKHnFwHQoXT QoV1wv+K3KsohmK3TX1y8sDkcwBCmX9XAvYlljF13ivCs03/XYYSrmea9NUTyTwEJ4ds m/aDi6OGmNENQishMchVv1w0QUx37ovPI+oKgfG799VCAInZl+BRKV8GllnKvnf5n9r4 QbhBXyJNa5rVhmvydLazZ+y6aNNzK68GX3aAXnmu3Y7+evOowW1/Pw5P816TA4Acmv7B sTuSotCNjuBkrQ0tgDJkmOhpWfu52j24gfnIVewPITSLr5LWH/msaZanfe4HO39Vswmk MiDA== X-Gm-Message-State: AOJu0YzHUdXXe3x2pXHIglgEZuFeS9WT6huFNHu1ponzgLk7B/bDa112 ByOfdg3reXH+tW2XW7zLeId6yaRtXOijjfOFyFwnE+1GQAtdzlAt8Q1vJZux+KgeoVrVqG8dLj1 q9fw= X-Gm-Gg: ASbGncv4dq/WIdzWsQ2Ds8GXBrf7X04ihMU4c2ACFl3zehWUocTORJcVA0T69Swa8u5 1EZrOUhMQVCwXlyPFd/cYkcllGo085lvmA7F6oAPA1359Ir8kuF/eKnmMcRMwWO9D3gY8togDob 0iA/WlJttGtwQRGCfwSec6knCXnHf6kGtKgnMcRlah+9QGN6PEY5uIA9+93igGYGsE+HuIVZ/WL 8hokx4VnQ3C7I60aWRpQ8TKk7Ig7wBlyWvNHgAupuOmY6qhwR6Ez7J4JFJAr77haZPn5sIMtAKA P2BsK+nv X-Google-Smtp-Source: AGHT+IGxrEzNdHCY9p3nI5Ms6sVCuD31aqxjxI6slOF9WgZZXewzF6L6NV8Tgvt2851VlTVvJfDYVg== X-Received: by 2002:a17:902:e888:b0:208:d856:dbb7 with SMTP id d9443c01a7336-21614dcd826mr4595785ad.39.1733437375699; Thu, 05 Dec 2024 14:22:55 -0800 (PST) From: Pierrick Bouvier <pierrick.bouvier@linaro.org> To: qemu-devel@nongnu.org Cc: Fabiano Rosas <farosas@suse.de>, Kevin Wolf <kwolf@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, gustavo.romero@linaro.org, Andrew Melnychenko <andrew@daynix.com>, Peter Maydell <peter.maydell@linaro.org>, qemu-arm@nongnu.org, alex.bennee@linaro.org, Konstantin Kostiuk <kkostiuk@redhat.com>, Eric Blake <eblake@redhat.com>, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= <philmd@linaro.org>, Peter Xu <peterx@redhat.com>, Markus Armbruster <armbru@redhat.com>, =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>, Yuri Benditovich <yuri.benditovich@daynix.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Paolo Bonzini <pbonzini@redhat.com>, Thomas Huth <thuth@redhat.com>, manos.pitsidianakis@linaro.org, qemu-block@nongnu.org, Pierrick Bouvier <pierrick.bouvier@linaro.org> Subject: [PATCH v2 6/6] docs: add a glossary Date: Thu, 5 Dec 2024 14:22:41 -0800 Message-Id: <20241205222241.3789437-7-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> References: <20241205222241.3789437-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 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=2607:f8b0:4864:20::62a; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62a.google.com X-Spam_score_int: -19 X-Spam_score: -2.0 X-Spam_bar: -- X-Spam_report: (-2.0 / 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, URIBL_SBL_A=0.1 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: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=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: 1733437422510116600 Content-Type: text/plain; charset="utf-8" Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> --- docs/devel/control-flow-integrity.rst | 2 + docs/devel/multi-thread-tcg.rst | 2 + docs/glossary.rst | 280 ++++++++++++++++++++++++++ docs/index.rst | 1 + docs/system/arm/virt.rst | 2 + docs/system/images.rst | 2 + docs/tools/qemu-nbd.rst | 2 + 7 files changed, 291 insertions(+) create mode 100644 docs/glossary.rst diff --git a/docs/devel/control-flow-integrity.rst b/docs/devel/control-flo= w-integrity.rst index e6b73a4fe1a..3d5702fa4cc 100644 --- a/docs/devel/control-flow-integrity.rst +++ b/docs/devel/control-flow-integrity.rst @@ -1,3 +1,5 @@ +.. _cfi: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D Control-Flow Integrity (CFI) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D diff --git a/docs/devel/multi-thread-tcg.rst b/docs/devel/multi-thread-tcg.= rst index d706c27ea74..7fd0a07633d 100644 --- a/docs/devel/multi-thread-tcg.rst +++ b/docs/devel/multi-thread-tcg.rst @@ -4,6 +4,8 @@ This work is licensed under the terms of the GNU GPL, version 2 or later. See the COPYING file in the top-level directory. =20 +.. _mttcg: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Multi-threaded TCG =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D diff --git a/docs/glossary.rst b/docs/glossary.rst new file mode 100644 index 00000000000..693d9855dd1 --- /dev/null +++ b/docs/glossary.rst @@ -0,0 +1,280 @@ +.. _Glossary: + +-------- +Glossary +-------- + +This section of the manual presents brief definitions of acronyms and term= s used +by QEMU developers. + +Accelerator +----------- + +A specific API used to accelerate execution of guest instructions. It can = be +hardware-based, through a virtualization API provided by the host OS (kvm,= hvf, +whpx, ...), or software-based (tcg). See this description of `supported +accelerators<Accelerators>`. + +Board +----- + +Another name for :ref:`machine`. + +Block +----- + +Block drivers are the available `disk formats and front-ends +<block-drivers>` available, and block devices `(see Block device section on +options page)<sec_005finvocation>` are using them to implement disks for a +virtual machine. + +CFI +--- + +Control Flow Integrity is a hardening technique used to prevent exploits +targeting QEMU by detecting unexpected branches during execution. QEMU `ac= tively +supports<cfi>` being compiled with CFI enabled. + +Device +------ + +In QEMU, a device is a piece of hardware visible to the guest. Examples in= clude +UARTs, PCI controllers, PCI cards, VGA controllers, and many more. + +QEMU is able to emulate a CPU, and all the hardware interacting with it, +including `many devices<device-emulation>`. When QEMU runs a virtual machi= ne +using a hardware-based accelerator, it is responsible for emulating, using +software, all devices. + +EDK2 +---- + +EDK2, as known as `TianoCore <https://www.tianocore.org/>`_, is an open so= urce +implementation of UEFI standard. QEMU virtual machines that boot a UEFI fi= rmware +usually use EDK2. + +gdbstub +------- + +QEMU implements a `gdb server <GDB usage>`, allowing gdb to attach to it a= nd +debug a running virtual machine, or a program in user-mode. This allows +debugging the guest code that is running inside QEMU. + +glib2 +----- + +`GLib2 <https://docs.gtk.org/glib/>`_ is one of the most important librari= es we +are using through the codebase. It provides many data structures, macros, = string +and thread utilities and portable functions across different OS. It's requ= ired +to build QEMU. + +Guest agent +----------- + +The `QEMU Guest Agent <qemu-ga>` is a daemon intended to be run within vir= tual +machines. It provides various services to help QEMU to interact with it. + +.. _guest: + +Guest +----- + +Guest is the architecture of the virtual machine, which is emulated. +See also :ref:`host`. + +Sometimes this is called the :ref:`target` architecture, but that term +can be ambiguous. + +.. _host: + +Host +---- + +Host is the architecture on which QEMU is running on, which is native. +See also :ref:`guest`. + +Hypervisor +---------- + +The formal definition of an hypervisor is a program or API than can be use= d to +manage a virtual machine. QEMU is a virtualizer, that interacts with vario= us +hypervisors. + +In the context of QEMU, an hypervisor is an API, provided by the Host OS, +allowing to execute virtual machines. Linux implementation is KVM (and sup= ports +Xen as well). For MacOS, it's HVF. Windows defines WHPX. And NetBSD provid= es +NVMM. + +.. _machine: + +Machine +------- + +QEMU's system emulation models many different types of hardware. A machine= model +(sometimes called a board model) is the model of a complete virtual system= with +RAM, one or more CPUs, and various devices. It can be selected with the op= tion +``-machine`` of qemu-system. Our machine models can be found on this `page +<system-targets-ref>`. + +Migration +--------- + +QEMU can save and restore the execution of a virtual machine between diffe= rent +host systems. This is provided by the `Migration framework<migration>`. + +NBD +--- + +The `QEMU Network Block Device server <qemu-nbd>` is a tool that can be us= ed to +mount and access QEMU images, providing functionality similar to a loop de= vice. + +Mailing List +------------ + +This is `where <https://wiki.qemu.org/Contribute/MailingLists>`_ all the +development happens! Changes are posted as series, that all developers can +review and share feedback for. + +For reporting issues, our `GitLab +<https://gitlab.com/qemu-project/qemu/-/issues>`_ tracker is the best plac= e. + +.. _softmmu: + +MMU / softmmu +------------- + +The Memory Management Unit is responsible for translating virtual addresse= s to +physical addresses and managing memory protection. QEMU system mode is nam= ed +"softmmu" precisely because it implements this in software, including a TLB +(Translation lookaside buffer), for the guest virtual machine. + +QEMU user-mode does not implement a full software MMU, but "simply" transl= ates +virtual addresses by adding a specific offset, and relying on host MMU/OS +instead. + +Monitor / QMP / HMP +------------------- + +The `QEMU Monitor <QEMU monitor>` is a text interface which can be used to= interact +with a running virtual machine. + +QMP stands for QEMU Monitor Protocol and is a json based interface. +HMP stands for Human Monitor Protocol and is a set of text commands availa= ble +for users who prefer natural language to json. + +MTTCG +----- + +Multiple CPU support was first implemented using a round-robin algorithm +running on a single thread. Later on, `Multi-threaded TCG <mttcg>` was dev= eloped +to benefit from multiple cores to speed up execution. + +Plugins +------- + +`TCG Plugins <TCG Plugins>` is an API used to instrument guest code, in sy= stem +and user mode. The end goal is to have a similar set of functionality comp= ared +to `DynamoRIO <https://dynamorio.org/>`_ or `valgrind <https://valgrind.or= g/>`_. + +One key advantage of QEMU plugins is that they can be used to perform +architecture agnostic instrumentation. + +Patchew +------- + +`Patchew <https://patchew.org/QEMU/>`_ is a website that tracks patches on= the +Mailing List. + +PR +-- + +Once a series is reviewed and accepted by a subsystem maintainer, it will = be +included in a PR (Pull Request) that the project maintainer will merge int= o QEMU +main branch, after running tests. + +The QEMU project doesn't currently expect most developers to directly subm= it +pull requests. + +QCOW2 +----- + +QEMU Copy On Write is a disk format developed by QEMU. It provides transpa= rent +compression, automatic extension, and many other advantages over a raw ima= ge. + +qcow2 is the recommended format to use. + +QEMU +---- + +`QEMU (Quick Emulator) <https://www.qemu.org/>`_ is a generic and open sou= rce +machine emulator and virtualizer. + +QOM +--- + +`QEMU Object Model <qom>` is an object oriented API used to define various +devices and hardware in the QEMU codebase. + +Record/replay +------------- + +`Record/replay <replay>` is a feature of QEMU allowing to have a determini= stic +and reproducible execution of a virtual machine. + +Rust +---- + +`A new programming language <https://www.rust-lang.org/>`_, memory safe by +default. There is a work in progress to integrate it in QEMU codebase for +various subsystems. + +System mode +----------- + +QEMU System mode provides a virtual model of an entire machine (CPU, memor= y and +emulated devices) to run a guest OS. In this mode the CPU may be fully emu= lated, +or it may work with a hypervisor such as KVM, Xen or Hypervisor.Framework = to +allow the guest to run directly on the host CPU. + +QEMU System mode is called :ref:`softmmu <softmmu>` as well. + +.. _target: + +Target +------ + +The term "target" can be ambiguous. In most places in QEMU it is used as a +synonym for :ref:`guest`. For example the code for emulating Arm CPUs is in +``target/arm/``. However in the :ref:`TCG subsystem <tcg>` "target" refers= to the +architecture which QEMU is running on, i.e. the :ref:`host`. + +TCG +--- + +TCG is the QEMU `Tiny Code Generator <tcg>`. It is the JIT (just-in-time) +compiler we use to emulate a guest CPU in software. + +It is one of the accelerators supported by QEMU, and supports a lot of +guest/host architectures. + +User mode +--------- + +QEMU User mode can launch processes compiled for one CPU on another CPU. I= n this +mode the CPU is always emulated. In this mode, QEMU translate system calls= from +guest to host kernel. It is available for Linux and BSD. + +VirtIO +------ + +VirtIO is an open standard used to define and implement virtual devices wi= th a +minimal overhead, defining a set of data structures and hypercalls (simila= r to +system calls, but targeting an hypervisor, which happens to be QEMU in our +case). It's designed to be more efficient than emulating a real device, by +minimizing the amount of interactions between a guest VM and its hyperviso= r. + +vhost-user +---------- + +`Vhost-user <vhost_user>` is an interface used to implement VirtIO devices +outside of QEMU itself. diff --git a/docs/index.rst b/docs/index.rst index 78285ebd6a4..5665de85cab 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -20,3 +20,4 @@ Welcome to QEMU's documentation! interop/index specs/index devel/index + glossary diff --git a/docs/system/arm/virt.rst b/docs/system/arm/virt.rst index e67e7f0f7c5..11ceb898264 100644 --- a/docs/system/arm/virt.rst +++ b/docs/system/arm/virt.rst @@ -1,3 +1,5 @@ +.. _arm-virt: + 'virt' generic virtual platform (``virt``) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 diff --git a/docs/system/images.rst b/docs/system/images.rst index d000bd6b6f1..a5551173c97 100644 --- a/docs/system/images.rst +++ b/docs/system/images.rst @@ -82,4 +82,6 @@ VM snapshots currently have the following known limitatio= ns: - A few device drivers still have incomplete snapshot support so their state is not saved or restored properly (in particular USB). =20 +.. _block-drivers: + .. include:: qemu-block-drivers.rst.inc diff --git a/docs/tools/qemu-nbd.rst b/docs/tools/qemu-nbd.rst index 329f44d9895..4f21b7904ac 100644 --- a/docs/tools/qemu-nbd.rst +++ b/docs/tools/qemu-nbd.rst @@ -1,3 +1,5 @@ +.. _qemu-nbd: + =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D QEMU Disk Network Block Device Server =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --=20 2.39.5