From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724727; cv=none; d=zohomail.com; s=zohoarc; b=MV/csMsWpSFPIbl4NajYKbwnIwr92iIr/8wtWqhyv1KLm8ue9gusoOyjMglODRgs22plgYYHRR/J7TdLn7ylhSelR86e0lncrqJAGaQeO4wEpcOJ7kNmbv8C0gD0BvOTi5Ha0UN6kOQIGGa8ALq+0gN0eaKhiW1IobXEN8cqjd8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724727; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+oyJxpuLuqZ4liCFOZlOpkC50vwpQN/UPvm6WAt0jWg=; b=cEvMiSnctqYP3druSfW1A4aXnFKMjzkiKcYFmq4X5VYfqopW63Rd7POl+dfxPnav02H0fY/GYhtCk+jpBTsirL/dYtsUtZcPjhEery5gbmaXjN3d8IXDXeIDrzanzIav5G6pUCSxJV/6CvpE2Myo1OdtDKFQlltCqIMnkJFK2+Q= 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 1667724727865166.48532981282665; Sun, 6 Nov 2022 01:52:07 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbNG-0007K6-K0; Sun, 06 Nov 2022 03:51:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNF-0007Jo-UX for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:25 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNE-0002rB-Ia for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:25 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-547-m7Kk9yeqOCmr6HWXOzPNKg-1; Sun, 06 Nov 2022 03:51:22 -0500 Received: by mail-wm1-f69.google.com with SMTP id bi19-20020a05600c3d9300b003cf9d6c4016so2149996wmb.8 for ; Sun, 06 Nov 2022 01:51:22 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id l22-20020a05600c089600b003c6bbe910fdsm9431144wmp.9.2022.11.06.01.51.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:51:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724684; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+oyJxpuLuqZ4liCFOZlOpkC50vwpQN/UPvm6WAt0jWg=; b=WXya5zGQdrg3+5jmHZa/0I5gyKIJp2mxYlvfr95zvhEVxSHiQumv6l9dpMKo1nM74B1+w+ gbA8uO7GRhErdVz3hThAlsu2vrug82puOe8CGTlVe8urfcDtVFoU/kDyrX4IabulN5QWbi j+6VleQCxomlltguJZE/rUd9/zjG8f8= X-MC-Unique: m7Kk9yeqOCmr6HWXOzPNKg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=+oyJxpuLuqZ4liCFOZlOpkC50vwpQN/UPvm6WAt0jWg=; b=hJyVD+kBd8bvKIOwm45SczMBnw3H0r7QXmU+EqQWzeAupr24EeBlb+0jWOZlVOLv0Y 78qPnrD5QDeFmbiUawZ278MDdfbbUIDeIUyltbd9iDSh0j0a1uBHGhjcED8Ob7McV17O re0vjRT3Z/8WH1NxSA3at6FNzuUeVB7V4Uu+ot2ZhjJqNH/4pDtHpA1PeaU65C7r2C4s 6jjm77gcTxR7Xt6TkRGYKVVtINLHtu+3uIW8hCtxpwWm/B536KoMSrM8qspo5llPSqyS /uvMqPzAa2lUEPtKXyaGJi2X8qSwkWsHR5bzMUoC28gRZ+lMhdnr5gNzQSb8MW6hXDZG 44Zw== X-Gm-Message-State: ACrzQf3Ia/6/f+SPG/r9r6qx2QspClhiooZVSs5lXX7kfJaz1XO/j/kz 42cmjbbrJIrCSl9CX9OMdvvg/W8Vz6kway2LeSVY/oIBR64a88T4KuXBWomXKuyzggexAmB5PNN uFthZfcM4IlZPh/TBAiu8QfmNRwsghrS+Bs2V9M5+FDVbHDiQGZkjnZGzI29KoXeu1II= X-Received: by 2002:a05:600c:1e89:b0:3c7:1e:acc2 with SMTP id be9-20020a05600c1e8900b003c7001eacc2mr29132928wmb.44.1667724680893; Sun, 06 Nov 2022 01:51:20 -0700 (PDT) X-Google-Smtp-Source: AMsMyM59dFOHavv7C9L4UJJL5FlEiLrRb1YRsEzaKDkHgoogvV9Ov0P2184pi7zunGDRZqd3YB2rrw== X-Received: by 2002:a05:600c:1e89:b0:3c7:1e:acc2 with SMTP id be9-20020a05600c1e8900b003c7001eacc2mr29132913wmb.44.1667724680613; Sun, 06 Nov 2022 01:51:20 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Bin Meng Subject: [PULL 01/12] util/main-loop: Fix maximum number of wait objects for win32 Date: Sun, 6 Nov 2022 09:51:04 +0100 Message-Id: <20221106085115.257018-2-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -37 X-Spam_score: -3.8 X-Spam_bar: --- X-Spam_report: (-3.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724730171100001 Content-Type: text/plain; charset="utf-8" From: Bin Meng The maximum number of wait objects for win32 should be MAXIMUM_WAIT_OBJECTS, not MAXIMUM_WAIT_OBJECTS + 1. Signed-off-by: Bin Meng Message-Id: <20221019102015.2441622-1-bmeng.cn@gmail.com> Signed-off-by: Paolo Bonzini --- util/main-loop.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/util/main-loop.c b/util/main-loop.c index f00a25451bdc..de38876064e4 100644 --- a/util/main-loop.c +++ b/util/main-loop.c @@ -363,10 +363,10 @@ void qemu_del_polling_cb(PollingFunc *func, void *opa= que) /* Wait objects support */ typedef struct WaitObjects { int num; - int revents[MAXIMUM_WAIT_OBJECTS + 1]; - HANDLE events[MAXIMUM_WAIT_OBJECTS + 1]; - WaitObjectFunc *func[MAXIMUM_WAIT_OBJECTS + 1]; - void *opaque[MAXIMUM_WAIT_OBJECTS + 1]; + int revents[MAXIMUM_WAIT_OBJECTS]; + HANDLE events[MAXIMUM_WAIT_OBJECTS]; + WaitObjectFunc *func[MAXIMUM_WAIT_OBJECTS]; + void *opaque[MAXIMUM_WAIT_OBJECTS]; } WaitObjects; =20 static WaitObjects wait_objects =3D {0}; @@ -395,7 +395,7 @@ void qemu_del_wait_object(HANDLE handle, WaitObjectFunc= *func, void *opaque) if (w->events[i] =3D=3D handle) { found =3D 1; } - if (found) { + if (found && i < (MAXIMUM_WAIT_OBJECTS - 1)) { w->events[i] =3D w->events[i + 1]; w->func[i] =3D w->func[i + 1]; w->opaque[i] =3D w->opaque[i + 1]; --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724756; cv=none; d=zohomail.com; s=zohoarc; b=n4UQoC+li7625gZamf7ILnJotBXRx4p3tmZGubAjIRkNs5uGk4MmwK9+vHqL9RAtNVkx2gjNdmTmbsJ4Bbvn7bQK5vVuyQW9FmpPXNlsuCqZg/3KtsnbqqcZf7dmkeZ+XXNsROnwweOpcwAQ36exV7n+rOWsk+y6yUtvSqIaGWw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724756; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=kNNnPkAsfDd7VhzCb/DIEE3yafdNMonfMlCBxiGHmOg=; b=CdAp8muEnVFLoem5ZmEbY6BgbKf60jOf+OOf0Dbm0rrT4P/IrcQc5qkmtBb3AL/X/YdX5sdjqB/JeDIpBJHWuZvqRk7A7jmm96kSxBtLcQ71zO2v3GUjyLx2mMDjTLVaVJp1XErxfTBd+avEQEjMLL0y4xvERn4O/pPoRbZW+8k= 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 1667724756852973.2072817967239; Sun, 6 Nov 2022 01:52:36 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbNN-0007L3-RP; Sun, 06 Nov 2022 03:51:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNJ-0007KT-7T for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:29 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNH-0002rV-EW for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:28 -0500 Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-444-x5gyduFlM0W5FMp_EEx9LQ-1; Sun, 06 Nov 2022 03:51:24 -0500 Received: by mail-wm1-f71.google.com with SMTP id ay40-20020a05600c1e2800b003cf8aa16377so4511109wmb.7 for ; Sun, 06 Nov 2022 01:51:24 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id c17-20020a05600c0a5100b003cfa81e2eb4sm1034900wmq.38.2022.11.06.01.51.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:51:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724686; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kNNnPkAsfDd7VhzCb/DIEE3yafdNMonfMlCBxiGHmOg=; b=HqWtENkCQ9nxunIp7MEv0X36nCUlFTNquQy7Y2jD5PTHTTkq8tWmbPbzDZ2CRKpRa27VMg NGBMZ+ls3rEkdXnd+l7NhHy1vNpfnJe9uF+9DnfwFu0UFRnwFSrGMKvEmJ2o7lH/9+tiOG ix91Qe1NNnVBCPdFGbh9/Kgx6tnoflA= X-MC-Unique: x5gyduFlM0W5FMp_EEx9LQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=kNNnPkAsfDd7VhzCb/DIEE3yafdNMonfMlCBxiGHmOg=; b=b+aYwjmjuuEnvqUUPp0MNC2XOLepE4gs+fqrdAwvkCDb60bSsn5z8/1xQwpvrpi4Nr 5H3QKA9qsx8BLLEw5dMOD663zqegR8C5qEbx+5+eqXHY8UJFiH8giVm1DrteX6nJ4sa2 VnsdyUEqwuai9tOnFVzv/sjW7BRrrqfqU+/93NWXtwKXft6DRWRGzGuRaJUb7iio0/O0 /UvXYWZDmSSE37zyXBUbwGqrXNOZvCSRF/67pTAC1k9kzX5dwwiI7V0nSCWp1G8JHChW VXE9a+EhbXhSUVpRO7akWYqEqIq9cZEsdCwAEHbmBCUrR+9dT6XQN6zQ5TJBVOqxbElP j99A== X-Gm-Message-State: ACrzQf3no65MixI1JgYUL9vaKQEDFXas6epDq/TD/TYSBcoLC0+D+fJq LwgxVJkYKFLVBwu7ZaY9nAEY+/CZO3NdPip7hL3N6K1tEHPEFHvHt1Y324AJayp613BsNIYuix9 1M3dpo0Z7eSiOQlWW6/4eJyZCSIo9ka3brMPJJGvhxS/x5gJ/nNh8raU0Zt/iCnqjhe0= X-Received: by 2002:adf:e10f:0:b0:22a:43e8:969f with SMTP id t15-20020adfe10f000000b0022a43e8969fmr29183139wrz.292.1667724683443; Sun, 06 Nov 2022 01:51:23 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4ZvDvcA7MJuyNCuFT8tcokUdU+I/U0X6qf4k0R0MHaRvcL4HOr9gGwqcQTReAVMEtg0dy8Hg== X-Received: by 2002:adf:e10f:0:b0:22a:43e8:969f with SMTP id t15-20020adfe10f000000b0022a43e8969fmr29183122wrz.292.1667724683155; Sun, 06 Nov 2022 01:51:23 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Bin Meng Subject: [PULL 02/12] util/main-loop: Avoid adding the same HANDLE twice Date: Sun, 6 Nov 2022 09:51:05 +0100 Message-Id: <20221106085115.257018-3-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724757738100001 Content-Type: text/plain; charset="utf-8" From: Bin Meng Fix the logic in qemu_add_wait_object() to avoid adding the same HANDLE twice, as the behavior is undefined when passing an array that contains same HANDLEs to WaitForMultipleObjects() API. Signed-off-by: Bin Meng Message-Id: <20221019102015.2441622-2-bmeng.cn@gmail.com> Signed-off-by: Paolo Bonzini --- include/qemu/main-loop.h | 2 ++ util/main-loop.c | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/include/qemu/main-loop.h b/include/qemu/main-loop.h index aac707d073a1..3c9a9a982def 100644 --- a/include/qemu/main-loop.h +++ b/include/qemu/main-loop.h @@ -157,6 +157,8 @@ typedef void WaitObjectFunc(void *opaque); * in the main loop's calls to WaitForMultipleObjects. When the handle * is in a signaled state, QEMU will call @func. * + * If the same HANDLE is added twice, this function returns -1. + * * @handle: The Windows handle to be observed. * @func: A function to be called when @handle is in a signaled state. * @opaque: A pointer-size value that is passed to @func. diff --git a/util/main-loop.c b/util/main-loop.c index de38876064e4..10fa74c6e319 100644 --- a/util/main-loop.c +++ b/util/main-loop.c @@ -373,10 +373,20 @@ static WaitObjects wait_objects =3D {0}; =20 int qemu_add_wait_object(HANDLE handle, WaitObjectFunc *func, void *opaque) { + int i; WaitObjects *w =3D &wait_objects; + if (w->num >=3D MAXIMUM_WAIT_OBJECTS) { return -1; } + + for (i =3D 0; i < w->num; i++) { + /* check if the same handle is added twice */ + if (w->events[i] =3D=3D handle) { + return -1; + } + } + w->events[w->num] =3D handle; w->func[w->num] =3D func; w->opaque[w->num] =3D opaque; --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724788; cv=none; d=zohomail.com; s=zohoarc; b=MMwRLE20aPIMlLsyhGYaGOMh3hQ881DkgwyDdRFKEXsjTbOI6uuGqXjVrOIuzS0EIZsPgUweLS/080MunKl1YA5v6DX1hrRSAXVHzTx2WM7Pmv+MKmTmG5ZJJR9cIm7wiYSo5ZoXdWbsxOKLM6NyMPM2BEQvjzFfFrFS1rykTDA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724788; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mkGtGELGFp15mzI/uIt32Qqrp0h+KlVWMEJ0hk1PfEk=; b=HIx0deaW0CG/ZEsarAhjhqUXlE+7hrBEd2ODW/DMf4++u2X4I2UTPN+GXcdcnH90NYP0rnUZXGy9pNiVweobGEUvhiwrmKuXnH9+9JMhnmm5pDn20UasPk+jGHMyVtGrCFhtgafe15arHPZm46W5FWerFF0DxNEaxKkbqtxaYys= 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 1667724788147570.1360789245123; Sun, 6 Nov 2022 01:53:08 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbNQ-0007M5-0S; Sun, 06 Nov 2022 03:51:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNO-0007LJ-0r for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:34 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNM-0002ri-Ij for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:33 -0500 Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-344-3VOT2ZxHM8amGvfnd4GrCQ-1; Sun, 06 Nov 2022 03:51:27 -0500 Received: by mail-wr1-f69.google.com with SMTP id d23-20020adfa417000000b002364a31b7c9so2006311wra.15 for ; Sun, 06 Nov 2022 01:51:27 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id p14-20020adff20e000000b0022e344a63c7sm4169466wro.92.2022.11.06.01.51.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:51:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724689; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mkGtGELGFp15mzI/uIt32Qqrp0h+KlVWMEJ0hk1PfEk=; b=A1NG1uqCJTf9obHUp2qhy1Fmkk5wE7eVuoOMc1R3gwCYj395O5Ncdi4hTg452uhNFnfGLz F/BNDaPMKmXsdiYO/Ygl5dFmW9SV/MwVUmKirmhMRvwVX2Ydv6FAfZ6nphP0k0VNYOuenL U/0NqDr1a0btDXVffp2euTNlI1RyuNU= X-MC-Unique: 3VOT2ZxHM8amGvfnd4GrCQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=mkGtGELGFp15mzI/uIt32Qqrp0h+KlVWMEJ0hk1PfEk=; b=0pSbzFzneL4fyEZJnRyN4yLSc/hhs9P+U32maVtjhC/QXg4gFgIksRNiT5mSbdrQ8H /ltSJHHXgiBlvY2dQmqYxjEQ/H+HeHXdPn5WjGXmnDoEWcisgNbhhCa1Lo4nGaiKRARa 5MbwKc3U/zut6HiB1C/5NkUgB8Tw4XP4Um6n8zOgRATwaH4dKAxw2zmWoIeH4ksaJmE1 OYXR6ynkj+IjV7REmegrIVvi7xy/jQqGHiONYNSeT9AjvQ19hdbigGCBUCYnLYt+wBcW YnnYTYozbShyMQCubyJnfzhDATztO6dXWJnugSDce/QsumEhbhwREqpLM6hPd1+HGXkw IKbQ== X-Gm-Message-State: ACrzQf1VBh52MKb872rovArGfYkYDZsd1aQbJVWxNYM8SiB720zbaGh+ ICMRXpZu3SNDD7S+IlaQuvQuKorypaEg2rJwby7Pxr1JmtumyB8/1Q6H64Sck0fwaIqj/UmhZnx KCIXiJLcU0elvPjZ8dPYTMC7mLMhcsgPTZsIgahxcMBk9IbfsiBgBb1Jx4YnovQaWFqM= X-Received: by 2002:adf:e6c3:0:b0:236:acdb:4d9b with SMTP id y3-20020adfe6c3000000b00236acdb4d9bmr26982136wrm.528.1667724686129; Sun, 06 Nov 2022 01:51:26 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4/dLHPvqvOvZeF36CxtpS70eNgTpS2qkFss4fbEDUW5eIFMcBdFQgaD3vVIxVSL6D2yvlC3w== X-Received: by 2002:adf:e6c3:0:b0:236:acdb:4d9b with SMTP id y3-20020adfe6c3000000b00236acdb4d9bmr26982123wrm.528.1667724685871; Sun, 06 Nov 2022 01:51:25 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Bin Meng , Stefan Weil , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 03/12] util/aio-win32: Correct the event array size in aio_poll() Date: Sun, 6 Nov 2022 09:51:06 +0100 Message-Id: <20221106085115.257018-4-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PP_MIME_FAKE_ASCII_TEXT=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724790087100001 From: Bin Meng WaitForMultipleObjects() can only wait for MAXIMUM_WAIT_OBJECTS object handles. Correct the event array size in aio_poll() and add a assert() to ensure it does not cause out of bound access. Signed-off-by: Bin Meng Reviewed-by: Stefan Weil Reviewed-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Daniel P. Berrang=C3=A9 Message-Id: <20221019102015.2441622-3-bmeng.cn@gmail.com> Signed-off-by: Paolo Bonzini --- util/aio-win32.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/util/aio-win32.c b/util/aio-win32.c index 44003d645ecd..80cfe012ad8f 100644 --- a/util/aio-win32.c +++ b/util/aio-win32.c @@ -326,9 +326,9 @@ void aio_dispatch(AioContext *ctx) bool aio_poll(AioContext *ctx, bool blocking) { AioHandler *node; - HANDLE events[MAXIMUM_WAIT_OBJECTS + 1]; + HANDLE events[MAXIMUM_WAIT_OBJECTS]; bool progress, have_select_revents, first; - int count; + unsigned count; int timeout; =20 /* @@ -369,6 +369,7 @@ bool aio_poll(AioContext *ctx, bool blocking) QLIST_FOREACH_RCU(node, &ctx->aio_handlers, node) { if (!node->deleted && node->io_notify && aio_node_check(ctx, node->is_external)) { + assert(count < MAXIMUM_WAIT_OBJECTS); events[count++] =3D event_notifier_get_handle(node->e); } } --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724757; cv=none; d=zohomail.com; s=zohoarc; b=Ic5zc3m64i+Aq+qepMIeIxuW5v0yZrr1+30MeX8TVDKPjxphAVI5pgnRfzlkrA5eg/+q8neWK2g5JlFdGadppTj8tvolElqmMK/QYa/XWIp0wQeZxTr3fFtgl0gicixEEmzHMmvGIq5kbOQho9Xw5oXMHUCv86+KDjsGUNSvnjM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724757; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=UxeApNYPYFTUwRBGGxIAeXWrKBxDg7yvMaE9ac8Us4s=; b=ng00zHqx95gVp89OsRNpWVfvYagiE0+w3kMdjdCR9enj4vPBGpoS/HayEWUuvTh3OSdCjVmtlcwsp8LbxWPY+ICHDPJmrTEixX9WRjc4xE5Z8cYGfxulX0WIOUXHoOhAe5DiIcmdNkgr1r9P+w9rus42NiRsBVEDIBe12Uv360A= 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 1667724757820203.8436734612261; Sun, 6 Nov 2022 01:52:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbNP-0007La-DN; Sun, 06 Nov 2022 03:51:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNO-0007LI-0S for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:34 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbNM-0002rm-Jr for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:51:33 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-128-Dnj5hx_cOY2nKIwh5pqZAg-1; Sun, 06 Nov 2022 03:51:30 -0500 Received: by mail-wm1-f69.google.com with SMTP id j2-20020a05600c1c0200b003cf7397fc9bso4548148wms.5 for ; Sun, 06 Nov 2022 01:51:30 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id n4-20020a5d6604000000b002366fb99cdasm4099020wru.50.2022.11.06.01.51.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:51:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724691; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=UxeApNYPYFTUwRBGGxIAeXWrKBxDg7yvMaE9ac8Us4s=; b=WX/G++Il1EkApci3XWR2oqtN4OLRsMg/yaABMaw5yk8eW4I1YyH9hXm4csyWl9YlVESCeC fFTxlJmQyS/WLrCXRq8wgoCgUqz70ypGWzpZYhLc9ZpXurTxMCCn98LIdUWx79UyRsgInh 9ED652phaPuLb+cpuTxrwH1VLFOh2OA= X-MC-Unique: Dnj5hx_cOY2nKIwh5pqZAg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=UxeApNYPYFTUwRBGGxIAeXWrKBxDg7yvMaE9ac8Us4s=; b=3sQbPkgIVlsXE1LsJIBh4KgZ4Twf7kaan5G8z/fNky5wP0ROcGJ3Cctak9ifeqvpf9 vB3EoEgegT995qPsizIu7SPeulrcQ+esox54z2XwDZDWrT5BUiGOLdiLlIZAfAAaexWw XtS2HK02V5zrhWPx8NHzQ8wuwinIuGnU0rErub39R+7tBQ6mmyqPLL0hWurrFrIgR0GI acZTGtTslmAOn4lgS7n51eR7Oqau7AsLNPcuODeJU3GGDWSlnifojiZp/68CamYCvV+U p3XT5UDEOcaTIzcKzg7twz0b7SPmbpeCJrYwD0XcStfC5Ny3A54WkjpSwX2iRgr8H9Yt NhQA== X-Gm-Message-State: ACrzQf0vjSajBn0x4NFYxn1wbS5nZPm0XnUDJ8seqCcheZaA68w7w4Cg 84CRUE1v99NvQ4KyRG5GabyEgBcihvmwzk0oGkLJ1b6RlV50ewAThL0Kr7K+atJzF0/qmT6C5gl j4VzmEB0vWS6mi1bpv44NPWowGwYJi9++gPQXk7cLy1f9jFS0gwFtedt4GvwZiBklIIU= X-Received: by 2002:a5d:4484:0:b0:236:574f:2536 with SMTP id j4-20020a5d4484000000b00236574f2536mr28630686wrq.7.1667724688875; Sun, 06 Nov 2022 01:51:28 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5AsNJ4nfjo10uImIK45bkBgvmaMPYbqDTqX2SAPD38HDMAJAeJvGuQX0pm56h1+r6W7hgV+w== X-Received: by 2002:a5d:4484:0:b0:236:574f:2536 with SMTP id j4-20020a5d4484000000b00236574f2536mr28630675wrq.7.1667724688641; Sun, 06 Nov 2022 01:51:28 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: TaiseiIto Subject: [PULL 04/12] gdb-xml: Fix size of EFER register on i386 architecture when debugged by GDB Date: Sun, 6 Nov 2022 09:51:07 +0100 Message-Id: <20221106085115.257018-5-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724759690100005 Content-Type: text/plain; charset="utf-8" From: TaiseiIto Before this commit, there were contradictory descriptions about size of EFER register. Line 113 says the size is 8 bytes. Line 129 says the size is 4 bytes. As a result, when GDB is debugging an OS running on QEMU, the GDB cannot read 'g' packets correctly. This 'g' packet transmits values of each registers of machine emulated by QEMU to GDB. QEMU, the packet sender, assign 4 bytes for EFER in 'g' packet based on the line 113. GDB, the packet receiver, extract 8 bytes for EFER in 'g' packet based on the line 129. Therefore, all registers located behind EFER in 'g' packet has been shifted 4 bytes in GDB. After this commit, GDB can read 'g' packets correctly. Signed-off-by: TaiseiIto Message-Id: Signed-off-by: Paolo Bonzini --- gdb-xml/i386-32bit.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gdb-xml/i386-32bit.xml b/gdb-xml/i386-32bit.xml index 872fcea9c25a..7a66a02b67e3 100644 --- a/gdb-xml/i386-32bit.xml +++ b/gdb-xml/i386-32bit.xml @@ -110,7 +110,7 @@ =20 - + --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724843; cv=none; d=zohomail.com; s=zohoarc; b=Kg3J5Awa2JeXkA+MpinIMdIBP3wHIdgk8xkAVP2CjA7nOreLF7c1lAKGUu5qKLIkZees+deBcsPosfXvUOm1VwdnK0O5V3TVL/ZxdtfvPYQCKpU83tdicjgCKQRVvBdyp6JNmPi5yJLeBRYmiZyo2uayVEuk5JB7KLJCCTM1D7A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724843; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=oIXyt2FeskuhuvmdCFhfOM+ZpfIi7IvpCQfG+/pfreM=; b=HRGTWd6nb8DQoa2Lgcv6MLfedBw86VUKLwyYdKY/EntJAp1enKQWFewb1xvRlz6WBh5XCC+ImGqWGmy6M7dLBtdrxvNgw3DqOBeWnGs+qhFRBE+6eBbjZC9f1gz0s/JCmjaUHNV9rxemrDDtZIoV9/2ynsNbrTNvbW8tX8mobik= 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 1667724843858359.8900024726878; Sun, 6 Nov 2022 01:54:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPZ-0001XM-0t; Sun, 06 Nov 2022 03:53:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPW-0001Uu-O8 for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:47 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPU-0002xG-Vq for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:46 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-192-m6425xHCNrGY9ZZaMFX0EA-1; Sun, 06 Nov 2022 03:53:43 -0500 Received: by mail-wm1-f72.google.com with SMTP id bg25-20020a05600c3c9900b003cf3ed7e27bso4551260wmb.4 for ; Sun, 06 Nov 2022 01:53:42 -0700 (PDT) Received: from avogadro.local ([93.56.171.98]) by smtp.gmail.com with ESMTPSA id z12-20020adfd0cc000000b0023672104c24sm4128825wrh.74.2022.11.06.01.53.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724824; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=oIXyt2FeskuhuvmdCFhfOM+ZpfIi7IvpCQfG+/pfreM=; b=i3w6Fx651y/BRRMuTmLq+VIC5TdsE0cokuu5aM5Z0GPjGspV6tD9P0MTH9B+MLKZ7Al0W2 S02txPsIfLY2KCh+fZW6xwqlEDPxkRUu4DLBrVpGuHmpJPLU8URygMjNc5xxQZmfwxtW87 xMhBgHZPAciqOUyDcT/1AQvBbOBb34E= X-MC-Unique: m6425xHCNrGY9ZZaMFX0EA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=oIXyt2FeskuhuvmdCFhfOM+ZpfIi7IvpCQfG+/pfreM=; b=h9GlJk2Q0kNhRGWP579xK84DJrM3ifbAX6HEj2f72BAZoa0gY40bF6jje8QlEvWv0H Z/iubl8ps5TSlXbAVspzw8y4MukM9H6HcyZQA0u6KNH1QkCcM0DicStDU5fCoLKWMsAZ fs3pXqHB8A1u1WatwuaL0GSY4tRzJIleiI6yMuFzkPVUgmPaqyfIT3Yp5n8ibyiRgCzt dSm5bOb9xNiPY7VTH9CNeUHUHSfsEtvTaggaXZuy126FTc16/EXjR8Wf5irw0QSwgecC +H5IrNwnSV6xLg+ikDJ3+n5KllweYdcS6KCMIxo0iIyduTm56baGjp+B2isLKBXXU6Op P7vA== X-Gm-Message-State: ACrzQf1rS9XiZIX+U+UWZjMewvEdmOlryGRJCB68ADQcbATVxYq2ff8M hLNOJexIOPh/K08UN5OSeE74lAddp9BX13VsbRxx4V+KRKhUwCugdliFXdiaTFvUHcEt2JZKce4 MhzbBvPxX1u0Zqrd2iII3moNCzQWRVbf4eDEYPtDslRBc9j/ZdFXXhuK9ggI5olys1p8= X-Received: by 2002:a5d:4a82:0:b0:236:6ee4:769d with SMTP id o2-20020a5d4a82000000b002366ee4769dmr27679835wrq.112.1667724821285; Sun, 06 Nov 2022 01:53:41 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5MZR+xWJbTcwzceYvmWzsQhXlK9mZKZUTjqVQJMPGo5vlGIk3xCXGYI7r45fTG1560x9+ksQ== X-Received: by 2002:a5d:4a82:0:b0:236:6ee4:769d with SMTP id o2-20020a5d4a82000000b002366ee4769dmr27679823wrq.112.1667724820975; Sun, 06 Nov 2022 01:53:40 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Stefan Weil Subject: [PULL 05/12] Fix broken configure with -Wunused-parameter Date: Sun, 6 Nov 2022 09:51:08 +0100 Message-Id: <20221106085115.257018-6-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724846021100003 Content-Type: text/plain; charset="utf-8" From: Stefan Weil The configure script fails because it tries to compile small C programs with a main function which is declared with arguments argc and argv although those arguments are unused. Running `configure -extra-cflags=3D-Wunused-parameter` triggers the problem. configure for a native build does abort but shows the error in config.log. A cross build configure for Windows with Debian stable aborts with an error. Avoiding unused arguments fixes this. Signed-off-by: Stefan Weil Message-Id: <20221102202258.456359-1-sw@weilnetz.de> Signed-off-by: Paolo Bonzini --- configure | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/configure b/configure index 4275f5419fae..66928692b058 100755 --- a/configure +++ b/configure @@ -1258,7 +1258,7 @@ if test "$stack_protector" !=3D "no"; then cat > $TMPC << EOF int main(int argc, char *argv[]) { - char arr[64], *p =3D arr, *c =3D argv[0]; + char arr[64], *p =3D arr, *c =3D argv[argc - 1]; while (*c) { *p++ =3D *c++; } @@ -1607,7 +1607,7 @@ fi =20 if test "$safe_stack" =3D "yes"; then cat > $TMPC << EOF -int main(int argc, char *argv[]) +int main(void) { #if ! __has_feature(safe_stack) #error SafeStack Disabled @@ -1629,7 +1629,7 @@ EOF fi else cat > $TMPC << EOF -int main(int argc, char *argv[]) +int main(void) { #if defined(__has_feature) #if __has_feature(safe_stack) @@ -1675,7 +1675,7 @@ static const int Z =3D 1; #define TAUT(X) ((X) =3D=3D Z) #define PAREN(X, Y) (X =3D=3D Y) #define ID(X) (X) -int main(int argc, char *argv[]) +int main(void) { int x =3D 0, y =3D 0; x =3D ID(x); --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724839; cv=none; d=zohomail.com; s=zohoarc; b=cQ3iPEB8QlK11cpfn8NHb0dnJvNTFnA8uJl6RhzPBWsAkGrEP9EuwMeyF5AcPppUiWggxuk3Be2ZFKLES8A2L298bFl0TaRtmEjqNqJ5KKEJdNKk8u5Mwt8vrLAc9R7+4+BntYhvLXUrlMM/TtUgQB81XhOQAVni+QyxysYa/OU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724839; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=055A0vSCcobr2GhlSNQ92pfF5PD/FKIEYNgE8rl1sUY=; b=KMoiuNdSVy7IQpzQKQeykZffs3TTKU4/X8/A4srsSNPikIlNW44ZLqBgoEsl+XT6kpFwigq3elvNJW66UABnOQKn+QNN1pirJ5HZ1sc3fONQ8CTnOrPDZL0u26JAixts8oMIluYXV7z91I89wA7U97sulTUyJhxldBws520gMrY= 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 1667724839303699.9449456542156; Sun, 6 Nov 2022 01:53:59 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPb-0001ZO-0p; Sun, 06 Nov 2022 03:53:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPY-0001XW-Pz for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:48 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPX-0002xT-7c for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:48 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-313-Kv10QKzVP2mg0ySRU-n0ew-1; Sun, 06 Nov 2022 03:53:45 -0500 Received: by mail-wm1-f69.google.com with SMTP id ay40-20020a05600c1e2800b003cf8aa16377so4512705wmb.7 for ; Sun, 06 Nov 2022 01:53:45 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id t13-20020a5d460d000000b002366f9bd717sm5139761wrq.45.2022.11.06.01.53.42 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724826; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=055A0vSCcobr2GhlSNQ92pfF5PD/FKIEYNgE8rl1sUY=; b=SuP/6aouN8ChmeG0Stp8tFEhWYAQFcWybGbmwElxqDDm0wpj2kRK/PGl8aJp4QPTaK4Jtk PgyT4vqU+4AMZA99YJLB4UpnSxeBcGhVk3pIi3gB89Ag9G1OJEREwOQxwlFeD79Fzs84V5 XMecFmfWCWO1tMcTfxDJNA1CRR20AKQ= X-MC-Unique: Kv10QKzVP2mg0ySRU-n0ew-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=055A0vSCcobr2GhlSNQ92pfF5PD/FKIEYNgE8rl1sUY=; b=IFJ3UY0jymwPTozi+1X1MKtBXGqxKT1qOVfoGQRroUmShOlZ+MSzOiOAaddLtuYkq1 BngPo5U9cbnQInARFujz7Xnn3Hme4h//D/JJHrUIlvqyIzyxGb3JCod3PoZn+pgzejdP x7Oy/Wv5CSqj+WaHQF9U4f7zpAUUA1TPsUBCW6BIvrnWUUtp877aYpWSeZ08RpWXKM/N p0DCF9b9VwbY79Nil/PbYxruokNmZwsRMOWf1qo+XNabpK8p8FHZk5P4VttKco2I4Hel 9kYak0nA1sdpnJiN+ChK0mNSMkiU8RbrlafP5KvmXXifQ4M0bsuS2Qg2iF3HO8HJvRR+ a5Wg== X-Gm-Message-State: ACrzQf2fSIMdF+PRD5IAjycLoVty6Wx0QNXicJBCcKugDTdfuT+T+JZn Rqvvt7A0SquBIadBQrnHZ83QFNGP0aYvvtrYH1soHzgywCGaEkHme1TlOUjz2O5JgP03SGFIEsW +dxb/CV3xQCd0fa9akNog4Slhui1rPxxLHpqktetKCRWIU7hFWmiKt6SHPB0Co/5U0qQ= X-Received: by 2002:adf:f051:0:b0:236:70db:20d9 with SMTP id t17-20020adff051000000b0023670db20d9mr28049016wro.91.1667724823872; Sun, 06 Nov 2022 01:53:43 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5j3I3SSspnRCvtk2hRbs2+UBw328q7rZZJkykdDcp1AU5GauEe+ZJdnz2ThmP0VA0RFm+WoA== X-Received: by 2002:adf:f051:0:b0:236:70db:20d9 with SMTP id t17-20020adff051000000b0023670db20d9mr28049008wro.91.1667724823613; Sun, 06 Nov 2022 01:53:43 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 06/12] meson: avoid unused arguments of main() in compiler tests Date: Sun, 6 Nov 2022 09:51:09 +0100 Message-Id: <20221106085115.257018-7-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -37 X-Spam_score: -3.8 X-Spam_bar: --- X-Spam_report: (-3.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724840008100001 Content-Type: text/plain; charset="utf-8" meson.build has one test where "main" is declared unnecessarily with argc and argv arguments, but does not use them. Because the test needs -Werror too, HAVE_BROKEN_SIZE_MAX is defined incorrectly. Fix the test and, for consistency, remove argc and argv whenever they are not needed. Signed-off-by: Paolo Bonzini --- meson.build | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/meson.build b/meson.build index 1d448272ab88..cf3e517e56d8 100644 --- a/meson.build +++ b/meson.build @@ -2165,7 +2165,7 @@ config_host_data.set('CONFIG_SPLICE', cc.links(gnu_so= urce_prefix + ''' =20 config_host_data.set('HAVE_MLOCKALL', cc.links(gnu_source_prefix + ''' #include - int main(int argc, char *argv[]) { + int main(void) { return mlockall(MCL_FUTURE); }''')) =20 @@ -2210,7 +2210,7 @@ config_host_data.set('HAVE_FSXATTR', cc.links(''' config_host_data.set('HAVE_BROKEN_SIZE_MAX', not cc.compiles(''' #include #include - int main(int argc, char *argv[]) { + int main(void) { return printf("%zu", SIZE_MAX); }''', args: ['-Werror'])) =20 @@ -2327,7 +2327,7 @@ config_host_data.set('CONFIG_AVX2_OPT', get_option('a= vx2') \ __m256i x =3D *(__m256i *)a; return _mm256_testz_si256(x, x); } - int main(int argc, char *argv[]) { return bar(argv[0]); } + int main(int argc, char *argv[]) { return bar(argv[argc - 1]); } '''), error_message: 'AVX2 not available').allowed()) =20 config_host_data.set('CONFIG_AVX512F_OPT', get_option('avx512f') \ @@ -2341,7 +2341,7 @@ config_host_data.set('CONFIG_AVX512F_OPT', get_option= ('avx512f') \ __m512i x =3D *(__m512i *)a; return _mm512_test_epi64_mask(x, x); } - int main(int argc, char *argv[]) { return bar(argv[0]); } + int main(int argc, char *argv[]) { return bar(argv[argc - 1]); } '''), error_message: 'AVX512F not available').allowed()) =20 have_pvrdma =3D get_option('pvrdma') \ --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724933; cv=none; d=zohomail.com; s=zohoarc; b=Bst4jL/RzYXwpSaK07UyjX5AbzvXvPbGlewuERBW6F0pkqq/g3cI6dyN97IGUvKVLyJZIRIypK7nJD2PK/8V5PJoRIsJj1FCLyhOzLkclGbLWs17MJOTj683xPTEv9Eyg9ZQ5yeIHU8RGY4QnXVnRR+IfVWF1uO0exU//wpBYvw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724933; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=zWbMzkqJgDXOr6NW2yG11jDl9qhFdNJ29Vs/I+sbgC4=; b=AgvZY7hK52yNQiPIDp0EtMLmKSFIfZfApprWUeNy/jiQbbmNm2u/mIy+hDVJq8DKQ0QQEMN/2RRghAHvBWTWM6voa97zll/AlmJmcIN68U6n51XpMfxzKpYmHykwBBLtVzXZZEdHa56zXrDpSTn8BphISLqlSju7w4kTYWBZ1lM= 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 166772493383572.52083565330895; Sun, 6 Nov 2022 01:55:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPg-0001dj-7D; Sun, 06 Nov 2022 03:53:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPc-0001bQ-DE for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:53 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPa-0002xg-MA for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:51 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-124-n1QHksn7OHme9cHmWmC7lw-1; Sun, 06 Nov 2022 03:53:48 -0500 Received: by mail-wm1-f69.google.com with SMTP id l42-20020a05600c1d2a00b003cf8e70c1ecso3320253wms.4 for ; Sun, 06 Nov 2022 01:53:48 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id u2-20020a5d4342000000b0022eafed36ebsm4166382wrr.73.2022.11.06.01.53.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724830; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=zWbMzkqJgDXOr6NW2yG11jDl9qhFdNJ29Vs/I+sbgC4=; b=RUaQ2LAXbmwKcE9rQhWztw4pdt9zzvzKq2WAzsN9hDdGGQOznOWGWAHYROmyv0aruAruDC 26nvNb3z2QuJ8r6g+w2MXnSnTUAPHSg4Cw9BBfUHZ4OHrMH1LJzIoDBsGzPRs5jCDHOO+t 0NwGzgOMF/Y5vw/rlsODF5+xHtNnrAA= X-MC-Unique: n1QHksn7OHme9cHmWmC7lw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=zWbMzkqJgDXOr6NW2yG11jDl9qhFdNJ29Vs/I+sbgC4=; b=KgUBEkA7H8ZGj3g5V3P0Tkal7KBK2Xj+WrN4eRF0ukEot0vBN3aYPT/2HbfnS7nD6N W8YZ9lInlTO9WzIuFXo8B51O5CQqO78GrTDNDLNaOBfDxxoFhgDKGrZoltcgTbohPzjB 98Ckx35dWvSZ4MCshO2VdzPzt7Ux3+RhirBHlhnPTPE8Z0zfivZdJRpzGj4Nqng2myO9 FdN6MdZ7AQ7AfnDM/h7DnkBMJRs3z/NmLFKuzuXncd3l1vDuEkoyL1ZpfTv8q+aSpm6A FkZFGxib9Qwwty2OUtCHnfAjTqxLNEmppL/ZqH2HMTZG8EHq/OWaBN2erSi6w9SVYFZ7 I1UA== X-Gm-Message-State: ACrzQf1QvUIAWgrz0sYgRp6Wm+xJRhUQGutbHnuarvrELqJkL6hzyZqX 8P9vp6SoP0tAcJ8B5RSyrGkh9v9418Cu2ZurWQxzK8Rkj3N5Rku155zXgy0yumf9dNSoYWgd3Sq 6wkbqIdMnapeK7H4lp0on7bLMwOGZflKVvCSF3CysusWaKLGsU0G9FLjYeyYZXBQxPY8= X-Received: by 2002:a5d:6088:0:b0:236:bd20:2d07 with SMTP id w8-20020a5d6088000000b00236bd202d07mr25142610wrt.165.1667724826976; Sun, 06 Nov 2022 01:53:46 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4R9oPuGRT1/oKML+KrGAD2TCs3wNF/Xe3oC+SnAWes42mT/wrZYKVm3jzgASyn92yOnPp7Yw== X-Received: by 2002:a5d:6088:0:b0:236:bd20:2d07 with SMTP id w8-20020a5d6088000000b00236bd202d07mr25142595wrt.165.1667724826693; Sun, 06 Nov 2022 01:53:46 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Stefan Weil Subject: [PULL 07/12] Add missing include statement for global xml_builtin Date: Sun, 6 Nov 2022 09:51:10 +0100 Message-Id: <20221106085115.257018-8-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724934404100001 Content-Type: text/plain; charset="utf-8" From: Stefan Weil This fixes some compiler warnings with compiler flag -Wmissing-variable-declarations (tested with clang): aarch64_be-linux-user-gdbstub-xml.c:564:19: warning: no previous extern= declaration for non-static variable 'xml_builtin' [-Wmissing-variable-decl= arations] aarch64-linux-user-gdbstub-xml.c:564:19: warning: no previous extern de= claration for non-static variable 'xml_builtin' [-Wmissing-variable-declara= tions] aarch64-softmmu-gdbstub-xml.c:1763:19: warning: no previous extern decl= aration for non-static variable 'xml_builtin' [-Wmissing-variable-declarati= ons] Signed-off-by: Stefan Weil Signed-off-by: Paolo Bonzini --- scripts/feature_to_c.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/feature_to_c.sh b/scripts/feature_to_c.sh index b1169899c19d..c1f67c8f6a57 100644 --- a/scripts/feature_to_c.sh +++ b/scripts/feature_to_c.sh @@ -56,6 +56,7 @@ for input; do done =20 echo +echo '#include "exec/gdbstub.h"' echo "const char *const xml_builtin[][2] =3D {" =20 for input; do --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724971; cv=none; d=zohomail.com; s=zohoarc; b=NS6eFf7SOlK2Po7AYffEOmdp+lP6TBa/agwBi+LzPjRhL1S4/GPaTycyF2vrPrVDjdfNG1YmetPeqgxa/2VMJPpRDZVuwHKkVSd8sEeqqyk1V5n5qeOl8eEOawXt+35U6vE7gKVSCJmmpm/yfPDHnCg5AsHjwlnHOVHXSxsodJ4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724971; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=6YN9VuoQnWngTr5LDd1j1pDzSm6hSEAcVP/4chtuv4A=; b=dZJY5cDb0Y4qf+ahntpFQNnvrFU+Lw8fOQAmlprhYfUPkwkHbibI95x8VTGga2yIqIN3I1K49zTFCjXKIHa1z9FopqW2oW7cRWBKAQJlQAX0tEgXsCZJXqmNYzCdAwZUbnkNBwSyyu0CcXkl+PBvFi9+Or+AIHtCIN48y9B6evQ= 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 1667724971622209.00667729452425; Sun, 6 Nov 2022 01:56:11 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPi-0001fp-B0; Sun, 06 Nov 2022 03:53:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPe-0001c4-93 for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:54 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPc-0002xo-KN for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:54 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-256-4oK2c6M9Oum_nMR_9vgeQA-1; Sun, 06 Nov 2022 03:53:51 -0500 Received: by mail-wr1-f70.google.com with SMTP id m24-20020adfa3d8000000b00236774fd74aso1997203wrb.8 for ; Sun, 06 Nov 2022 01:53:50 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id o13-20020adfeacd000000b002366a624bd4sm4185141wrn.28.2022.11.06.01.53.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=6YN9VuoQnWngTr5LDd1j1pDzSm6hSEAcVP/4chtuv4A=; b=brGYVyub1l/AbUHkBpxNAy7akw857pfsscvhbGC86+xG9DOoDZJTT9g/xAGP+TR3S1rgdp hp1Oit5prIKhtnCbBBqAPNXk5Uv2LAj1k/N03ej+6LyfACRDuOuXriBIFmytMMk5dJeMei 9KCuWEORoK6oY9xv0PE4xtpN24wLxAE= X-MC-Unique: 4oK2c6M9Oum_nMR_9vgeQA-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=6YN9VuoQnWngTr5LDd1j1pDzSm6hSEAcVP/4chtuv4A=; b=Ea+CmXy6AM56KsWE2l2xOBikojCzv/WlDD5iWPaNS8NyTJJUBqVNd+rMRUkHI3w+d1 196ohu7Z/XUPLk+GBnEr8LlG0MUq5cm5gsu/bgCZCZ65SdCm9pPjgGSykslNcTJ593cr t8f4kpR/1IrKXNA0UtcIy/5N9Hrx4Xfxdm/Qh2LRMq9D9Q2sSMIgPcgvkWJJZRR4rRO9 CmtaTNUgyRwbdqy5gTsaejfwMdBQfgeQp/iG8tyyyAaifw9GJY4ZPUWhD1ci/LLapRWj +8hdYbOgrGiJPsKavx10DGanApSuep8xmI90cogh6pes7KwNS+tQZoCovmbEaalJEJSH 77Ng== X-Gm-Message-State: ACrzQf3rbdw4oLZUCVFgBZa0iJW9e6T6I3Bk2LCJHjoIAZUg/CmTabNK Is9x5li/oUX+O/aUmJrv54h1cGIAJXo0Asj4rvZuECBCILul/I0U2+m98XQjE5lW0xD+lsq0Gv/ viQ0Niwo4J1WoVwfLWKkAlek8Q4GPbJlU8n+yzkJIRoDNzQZK0BU1TEBA1jkUICOgnyQ= X-Received: by 2002:a05:600c:1f17:b0:3ce:1f81:d9fa with SMTP id bd23-20020a05600c1f1700b003ce1f81d9famr29706899wmb.138.1667724829628; Sun, 06 Nov 2022 01:53:49 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7m2fhQ8ZB3hyWc/+IxnW2QYHHyleq111zrTzLQk4a7ecHeXQz5+gfdma/kzjL9phfxPjvX6Q== X-Received: by 2002:a05:600c:1f17:b0:3ce:1f81:d9fa with SMTP id bd23-20020a05600c1f1700b003ce1f81d9famr29706887wmb.138.1667724829341; Sun, 06 Nov 2022 01:53:49 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Claudio Fontana , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PULL 08/12] module: removed unused function argument "mayfail" Date: Sun, 6 Nov 2022 09:51:11 +0100 Message-Id: <20221106085115.257018-9-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PP_MIME_FAKE_ASCII_TEXT=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724972566100001 From: Claudio Fontana mayfail is always passed as false for every invocation throughout the progr= am. It controls whether to printf or not to printf an error on g_module_open failure. Remove this unused argument. Signed-off-by: Claudio Fontana Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-Id: <20220929093035.4231-2-cfontana@suse.de> Signed-off-by: Paolo Bonzini --- include/qemu/module.h | 8 ++++---- softmmu/qtest.c | 2 +- util/module.c | 20 +++++++++----------- 3 files changed, 14 insertions(+), 16 deletions(-) diff --git a/include/qemu/module.h b/include/qemu/module.h index bd73607104c9..8c012bbe038d 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -61,15 +61,15 @@ typedef enum { #define fuzz_target_init(function) module_init(function, \ MODULE_INIT_FUZZ_TARGET) #define migration_init(function) module_init(function, MODULE_INIT_MIGRATI= ON) -#define block_module_load_one(lib) module_load_one("block-", lib, false) -#define ui_module_load_one(lib) module_load_one("ui-", lib, false) -#define audio_module_load_one(lib) module_load_one("audio-", lib, false) +#define block_module_load_one(lib) module_load_one("block-", lib) +#define ui_module_load_one(lib) module_load_one("ui-", lib) +#define audio_module_load_one(lib) module_load_one("audio-", lib) =20 void register_module_init(void (*fn)(void), module_init_type type); void register_dso_module_init(void (*fn)(void), module_init_type type); =20 void module_call_init(module_init_type type); -bool module_load_one(const char *prefix, const char *lib_name, bool mayfai= l); +bool module_load_one(const char *prefix, const char *lib_name); void module_load_qom_one(const char *type); void module_load_qom_all(void); void module_allow_arch(const char *arch); diff --git a/softmmu/qtest.c b/softmmu/qtest.c index afea7693d0cd..ff74c5d7092e 100644 --- a/softmmu/qtest.c +++ b/softmmu/qtest.c @@ -756,7 +756,7 @@ static void qtest_process_command(CharBackend *chr, gch= ar **words) g_assert(words[1] && words[2]); =20 qtest_send_prefix(chr); - if (module_load_one(words[1], words[2], false)) { + if (module_load_one(words[1], words[2])) { qtest_sendf(chr, "OK\n"); } else { qtest_sendf(chr, "FAIL\n"); diff --git a/util/module.c b/util/module.c index 8ddb0e18f517..8563edd6267c 100644 --- a/util/module.c +++ b/util/module.c @@ -144,7 +144,7 @@ static bool module_check_arch(const QemuModinfo *modinf= o) return true; } =20 -static int module_load_file(const char *fname, bool mayfail, bool export_s= ymbols) +static int module_load_file(const char *fname, bool export_symbols) { GModule *g_module; void (*sym)(void); @@ -172,10 +172,8 @@ static int module_load_file(const char *fname, bool ma= yfail, bool export_symbols } g_module =3D g_module_open(fname, flags); if (!g_module) { - if (!mayfail) { - fprintf(stderr, "Failed to open module: %s\n", - g_module_error()); - } + fprintf(stderr, "Failed to open module: %s\n", + g_module_error()); ret =3D -EINVAL; goto out; } @@ -208,7 +206,7 @@ out: } #endif =20 -bool module_load_one(const char *prefix, const char *lib_name, bool mayfai= l) +bool module_load_one(const char *prefix, const char *lib_name) { bool success =3D false; =20 @@ -256,7 +254,7 @@ bool module_load_one(const char *prefix, const char *li= b_name, bool mayfail) if (strcmp(modinfo->name, module_name) =3D=3D 0) { /* we depend on other module(s) */ for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { - module_load_one("", *sl, false); + module_load_one("", *sl); } } else { for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { @@ -287,7 +285,7 @@ bool module_load_one(const char *prefix, const char *li= b_name, bool mayfail) for (i =3D 0; i < n_dirs; i++) { fname =3D g_strdup_printf("%s/%s%s", dirs[i], module_name, CONFIG_HOST_DSOSUF); - ret =3D module_load_file(fname, mayfail, export_symbols); + ret =3D module_load_file(fname, export_symbols); g_free(fname); fname =3D NULL; /* Try loading until loaded a module file */ @@ -333,7 +331,7 @@ void module_load_qom_one(const char *type) } for (sl =3D modinfo->objs; *sl !=3D NULL; sl++) { if (strcmp(type, *sl) =3D=3D 0) { - module_load_one("", modinfo->name, false); + module_load_one("", modinfo->name); } } } @@ -354,7 +352,7 @@ void module_load_qom_all(void) if (!module_check_arch(modinfo)) { continue; } - module_load_one("", modinfo->name, false); + module_load_one("", modinfo->name); } module_loaded_qom_all =3D true; } @@ -370,7 +368,7 @@ void qemu_load_module_for_opts(const char *group) } for (sl =3D modinfo->opts; *sl !=3D NULL; sl++) { if (strcmp(group, *sl) =3D=3D 0) { - module_load_one("", modinfo->name, false); + module_load_one("", modinfo->name); } } } --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724852; cv=none; d=zohomail.com; s=zohoarc; b=IbtkBDfmy1uYGvK+i449JmR1aGPvth3M/0cPFwTObXjpXxS9pEglQ2ALBcAvY42zwqYPlTQturxVbzlULJrDcHBqaDnEV5AAtdeSixCwpbT9h7mwdqTD//HCEuhbWcc/DBesYW8AuT8pUuqUM+59yNyOmEwHGBK8xQokazOb/xU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724852; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=BXaoN5h+kIRJQLunlG4TfAn8JghviI3r62UKEdPtDr8=; b=h5SFhd7oSGWzxkGfalocjKpKqrfLOO2M6miGZiPSd7IHtqJfJ9NqGcvz3xTa77pxC3VpztUEWenYU7a9QHhIpj52EPfr0RasXAiMiHUKEQqYbgEp3R4Sq0isqf+Iji0HF0DbJ45Xf6fSazDsCC18dQrN3dNjt+dFAWNNMOQn2vQ= 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 1667724852822667.1485617208563; Sun, 6 Nov 2022 01:54:12 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPj-0001hL-0H; Sun, 06 Nov 2022 03:53:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPi-0001fB-3r for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:58 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPg-0002y2-C5 for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:53:57 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-613-Y0592lfVPUK8n4cOodoKvQ-1; Sun, 06 Nov 2022 03:53:54 -0500 Received: by mail-wm1-f70.google.com with SMTP id m34-20020a05600c3b2200b003cf549cb32bso6862050wms.1 for ; Sun, 06 Nov 2022 01:53:53 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id c3-20020a056000104300b0022584c82c80sm4135109wrx.19.2022.11.06.01.53.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=BXaoN5h+kIRJQLunlG4TfAn8JghviI3r62UKEdPtDr8=; b=GIKB5GA7XmDOERPB+HLJntrYJU+0hbq4BJeKptfEqSG2BiQD7jgXCQXmAnY0wI+s0f4ht9 SrAQRLRq7oLaht7K9AbbkzV9zMzdNxeJCet3s1p6JERBFfC/27Mra0l2HVjtW7HXXGOQmv oMjfBBu+t/D4VGp9LhDMh4ip2gyEBnk= X-MC-Unique: Y0592lfVPUK8n4cOodoKvQ-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=BXaoN5h+kIRJQLunlG4TfAn8JghviI3r62UKEdPtDr8=; b=j5ogkUTkNCk3w4Xd/7EfEQZALvZUecLceyn1GE5oGwThRbfpkSxOMrrhu1O/o1d3xI /yo50a/XyU5dlK5G8iP0v6ctVlQ52O/bzIY3GgRN3PN8C6zU2IA8nUp9Dyn1G3GE+DeR bLf7AP8Swp3+tApkxyfbkmDPJj8Od4Xc/DVkf+6LPgRLgVfd8097r4Fcxey5MMWsaHeE pH6ixVLiKV+bHn2bybQNbkbMeRIcipANCia34efgQMdl1uZSIctfR510XnokRn0QUFAl nWtUaGZPqGkKgU7mzlYqVmor/SHjisnYNKGUcJzK3aza0gSQwZ3gOH+keK/FozjYQ87J 9ltw== X-Gm-Message-State: ACrzQf3tWJ2mZblGJXpnAJsx+hG2Jza2q/kmslWTpfsC2psftxjdowqC smrJFqbcU2TGZ7UQAX9chcYfrwf84U4eXnrjeNIsAOdR0ChSkG91Czeou25hATkSLtduXX6+Dw0 Lr/b4WDAMkm8zcJPYAPv+36jyxYR2zpTcHzfp1QI9EdZUmih5JtuBArPm3OpG7Rfd/UQ= X-Received: by 2002:adf:f9c9:0:b0:236:9c40:c57c with SMTP id w9-20020adff9c9000000b002369c40c57cmr27625833wrr.47.1667724832429; Sun, 06 Nov 2022 01:53:52 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7W0AOet7m3hCFar7yMbPZ2JEF2mGs9pxRR+zvOABh9Sdr0uCnCww4y0QZM2irakeebY1szlw== X-Received: by 2002:adf:f9c9:0:b0:236:9c40:c57c with SMTP id w9-20020adff9c9000000b002369c40c57cmr27625812wrr.47.1667724832050; Sun, 06 Nov 2022 01:53:52 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Claudio Fontana , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson Subject: [PULL 09/12] module: rename module_load_one to module_load Date: Sun, 6 Nov 2022 09:51:12 +0100 Message-Id: <20221106085115.257018-10-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain 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=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -37 X-Spam_score: -3.8 X-Spam_bar: --- X-Spam_report: (-3.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PP_MIME_FAKE_ASCII_TEXT=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724854128100001 From: Claudio Fontana Signed-off-by: Claudio Fontana Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Richard Henderson Message-Id: <20220929093035.4231-3-cfontana@suse.de> Signed-off-by: Paolo Bonzini --- audio/audio.c | 2 +- block.c | 4 ++-- block/dmg.c | 4 ++-- hw/core/qdev.c | 2 +- include/qemu/module.h | 10 +++++----- qom/object.c | 4 ++-- softmmu/qtest.c | 2 +- ui/console.c | 6 +++--- util/module.c | 14 +++++++------- 9 files changed, 24 insertions(+), 24 deletions(-) diff --git a/audio/audio.c b/audio/audio.c index cc664271ebb5..379f19dc891f 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -80,7 +80,7 @@ audio_driver *audio_driver_lookup(const char *name) } } =20 - audio_module_load_one(name); + audio_module_load(name); QLIST_FOREACH(d, &audio_drivers, next) { if (strcmp(name, d->name) =3D=3D 0) { return d; diff --git a/block.c b/block.c index 3bd594eb2aed..ddd743c44735 100644 --- a/block.c +++ b/block.c @@ -464,7 +464,7 @@ BlockDriver *bdrv_find_format(const char *format_name) /* The driver isn't registered, maybe we need to load a module */ for (i =3D 0; i < (int)ARRAY_SIZE(block_driver_modules); ++i) { if (!strcmp(block_driver_modules[i].format_name, format_name)) { - block_module_load_one(block_driver_modules[i].library_name); + block_module_load(block_driver_modules[i].library_name); break; } } @@ -981,7 +981,7 @@ BlockDriver *bdrv_find_protocol(const char *filename, for (i =3D 0; i < (int)ARRAY_SIZE(block_driver_modules); ++i) { if (block_driver_modules[i].protocol_name && !strcmp(block_driver_modules[i].protocol_name, protocol)) { - block_module_load_one(block_driver_modules[i].library_name); + block_module_load(block_driver_modules[i].library_name); break; } } diff --git a/block/dmg.c b/block/dmg.c index 422136276aa4..b5a93b086b20 100644 --- a/block/dmg.c +++ b/block/dmg.c @@ -445,8 +445,8 @@ static int dmg_open(BlockDriverState *bs, QDict *option= s, int flags, return ret; } =20 - block_module_load_one("dmg-bz2"); - block_module_load_one("dmg-lzfse"); + block_module_load("dmg-bz2"); + block_module_load("dmg-lzfse"); =20 s->n_chunks =3D 0; s->offsets =3D s->lengths =3D s->sectors =3D s->sectorcounts =3D NULL; diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 0806d8fcaaac..25dfc0846801 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -148,7 +148,7 @@ bool qdev_set_parent_bus(DeviceState *dev, BusState *bu= s, Error **errp) DeviceState *qdev_new(const char *name) { if (!object_class_by_name(name)) { - module_load_qom_one(name); + module_load_qom(name); } return DEVICE(object_new(name)); } diff --git a/include/qemu/module.h b/include/qemu/module.h index 8c012bbe038d..b7911ce79161 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -61,16 +61,16 @@ typedef enum { #define fuzz_target_init(function) module_init(function, \ MODULE_INIT_FUZZ_TARGET) #define migration_init(function) module_init(function, MODULE_INIT_MIGRATI= ON) -#define block_module_load_one(lib) module_load_one("block-", lib) -#define ui_module_load_one(lib) module_load_one("ui-", lib) -#define audio_module_load_one(lib) module_load_one("audio-", lib) +#define block_module_load(lib) module_load("block-", lib) +#define ui_module_load(lib) module_load("ui-", lib) +#define audio_module_load(lib) module_load("audio-", lib) =20 void register_module_init(void (*fn)(void), module_init_type type); void register_dso_module_init(void (*fn)(void), module_init_type type); =20 void module_call_init(module_init_type type); -bool module_load_one(const char *prefix, const char *lib_name); -void module_load_qom_one(const char *type); +bool module_load(const char *prefix, const char *lib_name); +void module_load_qom(const char *type); void module_load_qom_all(void); void module_allow_arch(const char *arch); =20 diff --git a/qom/object.c b/qom/object.c index e5cef30f6d1a..aba942bdf31c 100644 --- a/qom/object.c +++ b/qom/object.c @@ -526,7 +526,7 @@ void object_initialize(void *data, size_t size, const c= har *typename) =20 #ifdef CONFIG_MODULES if (!type) { - module_load_qom_one(typename); + module_load_qom(typename); type =3D type_get_by_name(typename); } #endif @@ -1033,7 +1033,7 @@ ObjectClass *module_object_class_by_name(const char *= typename) oc =3D object_class_by_name(typename); #ifdef CONFIG_MODULES if (!oc) { - module_load_qom_one(typename); + module_load_qom(typename); oc =3D object_class_by_name(typename); } #endif diff --git a/softmmu/qtest.c b/softmmu/qtest.c index ff74c5d7092e..774354565165 100644 --- a/softmmu/qtest.c +++ b/softmmu/qtest.c @@ -756,7 +756,7 @@ static void qtest_process_command(CharBackend *chr, gch= ar **words) g_assert(words[1] && words[2]); =20 qtest_send_prefix(chr); - if (module_load_one(words[1], words[2])) { + if (module_load(words[1], words[2])) { qtest_sendf(chr, "OK\n"); } else { qtest_sendf(chr, "FAIL\n"); diff --git a/ui/console.c b/ui/console.c index 65c117874ca0..44dfb0f52b1c 100644 --- a/ui/console.c +++ b/ui/console.c @@ -2632,7 +2632,7 @@ bool qemu_display_find_default(DisplayOptions *opts) =20 for (i =3D 0; i < (int)ARRAY_SIZE(prio); i++) { if (dpys[prio[i]] =3D=3D NULL) { - ui_module_load_one(DisplayType_str(prio[i])); + ui_module_load(DisplayType_str(prio[i])); } if (dpys[prio[i]] =3D=3D NULL) { continue; @@ -2650,7 +2650,7 @@ void qemu_display_early_init(DisplayOptions *opts) return; } if (dpys[opts->type] =3D=3D NULL) { - ui_module_load_one(DisplayType_str(opts->type)); + ui_module_load(DisplayType_str(opts->type)); } if (dpys[opts->type] =3D=3D NULL) { error_report("Display '%s' is not available.", @@ -2680,7 +2680,7 @@ void qemu_display_help(void) printf("none\n"); for (idx =3D DISPLAY_TYPE_NONE; idx < DISPLAY_TYPE__MAX; idx++) { if (!dpys[idx]) { - ui_module_load_one(DisplayType_str(idx)); + ui_module_load(DisplayType_str(idx)); } if (dpys[idx]) { printf("%s\n", DisplayType_str(dpys[idx]->type)); diff --git a/util/module.c b/util/module.c index 8563edd6267c..ad89cd50dc2a 100644 --- a/util/module.c +++ b/util/module.c @@ -206,7 +206,7 @@ out: } #endif =20 -bool module_load_one(const char *prefix, const char *lib_name) +bool module_load(const char *prefix, const char *lib_name) { bool success =3D false; =20 @@ -254,7 +254,7 @@ bool module_load_one(const char *prefix, const char *li= b_name) if (strcmp(modinfo->name, module_name) =3D=3D 0) { /* we depend on other module(s) */ for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { - module_load_one("", *sl); + module_load("", *sl); } } else { for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { @@ -312,7 +312,7 @@ bool module_load_one(const char *prefix, const char *li= b_name) =20 static bool module_loaded_qom_all; =20 -void module_load_qom_one(const char *type) +void module_load_qom(const char *type) { const QemuModinfo *modinfo; const char **sl; @@ -331,7 +331,7 @@ void module_load_qom_one(const char *type) } for (sl =3D modinfo->objs; *sl !=3D NULL; sl++) { if (strcmp(type, *sl) =3D=3D 0) { - module_load_one("", modinfo->name); + module_load("", modinfo->name); } } } @@ -352,7 +352,7 @@ void module_load_qom_all(void) if (!module_check_arch(modinfo)) { continue; } - module_load_one("", modinfo->name); + module_load("", modinfo->name); } module_loaded_qom_all =3D true; } @@ -368,7 +368,7 @@ void qemu_load_module_for_opts(const char *group) } for (sl =3D modinfo->opts; *sl !=3D NULL; sl++) { if (strcmp(group, *sl) =3D=3D 0) { - module_load_one("", modinfo->name); + module_load("", modinfo->name); } } } @@ -378,7 +378,7 @@ void qemu_load_module_for_opts(const char *group) =20 void module_allow_arch(const char *arch) {} void qemu_load_module_for_opts(const char *group) {} -void module_load_qom_one(const char *type) {} +void module_load_qom(const char *type) {} void module_load_qom_all(void) {} =20 #endif --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724881; cv=none; d=zohomail.com; s=zohoarc; b=U6Bn6KWxbP8zF9KAylO5mOiMq1PqgRYnCXKT1zgZqP5h6qde4259Kn2l+G8TKLJ1OQX3S6oaTkYuZWw/ZlELKGZ/aR0RecFFBWjZYYR9uesElUm0AyWffjASUhxsN84TLXgtEYkG+M4bU/BoG6hf6yn1zcr57EtjvuhXRoHq1Nk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724881; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=jP8L+i3smBJwnsnZOqw14mIBwknuPdevOPzr2DbodaM=; b=DkOM3ScJHXhrNKIPfjz7+XRgbv+a1ChIbvJzki37gjbZk9/URkIkjFVW0qDBZ0nJG9JOg/15+lfw2FqEO0FRpb4MpY+exj90cpcdEi2U0JCVXePhXUleCuA2nrQjc6RL3EnTd3cKw7gM0Ch8K35VbbqqUIju5iUQgFSc/V9VVPc= 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 1667724881503774.6019034287015; Sun, 6 Nov 2022 01:54:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPv-0001sJ-VN; Sun, 06 Nov 2022 03:54:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPo-0001m1-7U for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:54:04 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPj-0002yG-D3 for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:54:02 -0500 Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-314-lnuf9linPymXlQGlSjaqrw-1; Sun, 06 Nov 2022 03:53:57 -0500 Received: by mail-wr1-f70.google.com with SMTP id m24-20020adfa3d8000000b00236774fd74aso1997212wrb.8 for ; Sun, 06 Nov 2022 01:53:57 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id w16-20020a5d4050000000b002366dd0e030sm4119355wrp.68.2022.11.06.01.53.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=jP8L+i3smBJwnsnZOqw14mIBwknuPdevOPzr2DbodaM=; b=BZzCmRDA7rCTEuR2SQYlZ0jUX5bWuNDe+Wg7txBJ6IB4Zpc+4ffKJWGqHwiIx6fV7XqW6Z 7x4ULTCopPLvk/wEHxLxQHDAJ9YFljjgu971v/jb5pmpEUd0Lpu4EQRTyYo61oXlklFYca AfjDaP8KFfNeFOB02Kgo53Z4GJUFgGY= X-MC-Unique: lnuf9linPymXlQGlSjaqrw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=jP8L+i3smBJwnsnZOqw14mIBwknuPdevOPzr2DbodaM=; b=nHE6Iz1QZcA8RWY79PEWrSkz1EOtv2BNHa5z6E+XcnWrVkuvs0m17zR2/YOXYmFG0P cy/ICsS+WhJ5kLldCYe1IbfK9IIcbX8PmeYguJKWjBvx3Ibtl54GLSit6GP6/HMoGpGZ MTEk3OnmtZA/6OR2/aB7k/fSzkB0HEMN6av7rv73WTLP819oFIEh9ojcNyweIwjYCV5T H6E1MA6Kw02tIQw43oKluvdMf/dF4LHGxlIXhqxbNzy6GHRI+Dy8qsIC+gRYYu5ZX0vq tRGlP7sCo+HdgbJgPXrKb6uJhAlbcP9viFPeHqNWUZQqBjOaDRBN5WPAU4M27AAjIP+r N1ZQ== X-Gm-Message-State: ACrzQf1qkGBxfYVDWou53gGK783jRqbDWGTIAVP3shqoVwnZZNYqrVQG 6bR9xcEcorxZcauhLIPQ6GRyUhMPfdW/Ib0laajujYhx86mFR3EEO/TB83ieTZniEXg5AifLicj 5ZYRJ25pr0EecfDElKOuniPmt0leapVdmxDJE2Jc0PG5rVdHuIPfTnOe5gEECb6Ny4vw= X-Received: by 2002:a05:6000:1f18:b0:236:8e08:68e1 with SMTP id bv24-20020a0560001f1800b002368e0868e1mr27812527wrb.67.1667724835286; Sun, 06 Nov 2022 01:53:55 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5QVzuj315ScJ8DuGkKd5WhBmCtaA6Z/GgTAyUk3yu+LvS6ALNuiMlftJOgp1wx1zWOPVjg3w== X-Received: by 2002:a05:6000:1f18:b0:236:8e08:68e1 with SMTP id bv24-20020a0560001f1800b002368e0868e1mr27812499wrb.67.1667724834712; Sun, 06 Nov 2022 01:53:54 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Claudio Fontana , Richard Henderson Subject: [PULL 10/12] module: add Error arguments to module_load and module_load_qom Date: Sun, 6 Nov 2022 09:51:13 +0100 Message-Id: <20221106085115.257018-11-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724882231100005 Content-Type: text/plain; charset="utf-8" From: Claudio Fontana improve error handling during module load, by changing: bool module_load(const char *prefix, const char *lib_name); void module_load_qom(const char *type); to: int module_load(const char *prefix, const char *name, Error **errp); int module_load_qom(const char *type, Error **errp); where the return value is: -1 on module load error, and errp is set with the error 0 on module or one of its dependencies are not installed 1 on module load success 2 on module load success (module already loaded or built-in) module_load_qom_one has been introduced in: commit 28457744c345 ("module: qom module support"), which built on top of module_load_one, but discarded the bool return value. Restore it. Adapt all callers to emit errors, or ignore them, or fail hard, as appropriate in each context. Replace the previous emission of errors via fprintf in _some_ error conditions with Error and error_report, so as to emit to the appropriate target. A memory leak is also fixed as part of the module_load changes. audio: when attempting to load an audio module, report module load errors. Note that still for some callers, a single issue may generate multiple error reports, and this could be improved further. Regarding the audio code itself, audio_add() seems to ignore errors, and this should probably be improved. block: when attempting to load a block module, report module load errors. For the code paths that already use the Error API, take advantage of those to report module load errors into the Error parameter. For the other code paths, we currently emit the error, but this could be improved further by adding Error parameters to all possible code paths. console: when attempting to load a display module, report module load error= s. qdev: when creating a new qdev Device object (DeviceState), report load err= ors. If a module cannot be loaded to create that device, now abort executi= on (if no CONFIG_MODULE) or exit (if CONFIG_MODULE). qom/object.c: when initializing a QOM object, or looking up class_by_name, report module load errors. qtest: when processing the "module_load" qtest command, report errors in the load of the module. Signed-off-by: Claudio Fontana Reviewed-by: Richard Henderson Message-Id: <20220929093035.4231-4-cfontana@suse.de> Signed-off-by: Paolo Bonzini --- audio/audio.c | 16 ++-- block.c | 20 +++- block/dmg.c | 14 ++- hw/core/qdev.c | 17 +++- include/qemu/module.h | 37 +++++++- qom/object.c | 18 +++- softmmu/qtest.c | 8 +- ui/console.c | 18 +++- util/module.c | 209 +++++++++++++++++++++++------------------- 9 files changed, 234 insertions(+), 123 deletions(-) diff --git a/audio/audio.c b/audio/audio.c index 379f19dc891f..065602ce1b95 100644 --- a/audio/audio.c +++ b/audio/audio.c @@ -73,20 +73,24 @@ void audio_driver_register(audio_driver *drv) audio_driver *audio_driver_lookup(const char *name) { struct audio_driver *d; + Error *local_err =3D NULL; + int rv; =20 QLIST_FOREACH(d, &audio_drivers, next) { if (strcmp(name, d->name) =3D=3D 0) { return d; } } - - audio_module_load(name); - QLIST_FOREACH(d, &audio_drivers, next) { - if (strcmp(name, d->name) =3D=3D 0) { - return d; + rv =3D audio_module_load(name, &local_err); + if (rv > 0) { + QLIST_FOREACH(d, &audio_drivers, next) { + if (strcmp(name, d->name) =3D=3D 0) { + return d; + } } + } else if (rv < 0) { + error_report_err(local_err); } - return NULL; } =20 diff --git a/block.c b/block.c index ddd743c44735..c5e20c0beae3 100644 --- a/block.c +++ b/block.c @@ -464,12 +464,18 @@ BlockDriver *bdrv_find_format(const char *format_name) /* The driver isn't registered, maybe we need to load a module */ for (i =3D 0; i < (int)ARRAY_SIZE(block_driver_modules); ++i) { if (!strcmp(block_driver_modules[i].format_name, format_name)) { - block_module_load(block_driver_modules[i].library_name); + Error *local_err =3D NULL; + int rv =3D block_module_load(block_driver_modules[i].library_n= ame, + &local_err); + if (rv > 0) { + return bdrv_do_find_format(format_name); + } else if (rv < 0) { + error_report_err(local_err); + } break; } } - - return bdrv_do_find_format(format_name); + return NULL; } =20 static int bdrv_format_is_whitelisted(const char *format_name, bool read_o= nly) @@ -981,12 +987,16 @@ BlockDriver *bdrv_find_protocol(const char *filename, for (i =3D 0; i < (int)ARRAY_SIZE(block_driver_modules); ++i) { if (block_driver_modules[i].protocol_name && !strcmp(block_driver_modules[i].protocol_name, protocol)) { - block_module_load(block_driver_modules[i].library_name); + int rv =3D block_module_load(block_driver_modules[i].library_n= ame, errp); + if (rv > 0) { + drv1 =3D bdrv_do_find_protocol(protocol); + } else if (rv < 0) { + return NULL; + } break; } } =20 - drv1 =3D bdrv_do_find_protocol(protocol); if (!drv1) { error_setg(errp, "Unknown protocol '%s'", protocol); } diff --git a/block/dmg.c b/block/dmg.c index b5a93b086b20..ba8ec344d479 100644 --- a/block/dmg.c +++ b/block/dmg.c @@ -444,9 +444,17 @@ static int dmg_open(BlockDriverState *bs, QDict *optio= ns, int flags, if (ret < 0) { return ret; } - - block_module_load("dmg-bz2"); - block_module_load("dmg-lzfse"); + /* + * NB: if uncompress submodules are absent, + * ie block_module_load return value =3D=3D 0, the function pointers + * dmg_uncompress_bz2 and dmg_uncompress_lzfse will be NULL. + */ + if (block_module_load("dmg-bz2", errp) < 0) { + return -EINVAL; + } + if (block_module_load("dmg-lzfse", errp) < 0) { + return -EINVAL; + } =20 s->n_chunks =3D 0; s->offsets =3D s->lengths =3D s->sectors =3D s->sectorcounts =3D NULL; diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 25dfc0846801..014550190447 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -147,8 +147,21 @@ bool qdev_set_parent_bus(DeviceState *dev, BusState *b= us, Error **errp) =20 DeviceState *qdev_new(const char *name) { - if (!object_class_by_name(name)) { - module_load_qom(name); + ObjectClass *oc =3D object_class_by_name(name); +#ifdef CONFIG_MODULES + if (!oc) { + int rv =3D module_load_qom(name, &error_fatal); + if (rv > 0) { + oc =3D object_class_by_name(name); + } else { + error_report("could not find a module for type '%s'", name); + exit(1); + } + } +#endif + if (!oc) { + error_report("unknown type '%s'", name); + abort(); } return DEVICE(object_new(name)); } diff --git a/include/qemu/module.h b/include/qemu/module.h index b7911ce79161..c37ce74b16ff 100644 --- a/include/qemu/module.h +++ b/include/qemu/module.h @@ -61,16 +61,43 @@ typedef enum { #define fuzz_target_init(function) module_init(function, \ MODULE_INIT_FUZZ_TARGET) #define migration_init(function) module_init(function, MODULE_INIT_MIGRATI= ON) -#define block_module_load(lib) module_load("block-", lib) -#define ui_module_load(lib) module_load("ui-", lib) -#define audio_module_load(lib) module_load("audio-", lib) +#define block_module_load(lib, errp) module_load("block-", lib, errp) +#define ui_module_load(lib, errp) module_load("ui-", lib, errp) +#define audio_module_load(lib, errp) module_load("audio-", lib, errp) =20 void register_module_init(void (*fn)(void), module_init_type type); void register_dso_module_init(void (*fn)(void), module_init_type type); =20 void module_call_init(module_init_type type); -bool module_load(const char *prefix, const char *lib_name); -void module_load_qom(const char *type); + +/* + * module_load: attempt to load a module from a set of directories + * + * directories searched are: + * - getenv("QEMU_MODULE_DIR") + * - get_relocated_path(CONFIG_QEMU_MODDIR); + * - /var/run/qemu/${version_dir} + * + * prefix: a subsystem prefix, or the empty string ("audio-", ...,= "") + * name: name of the module + * errp: error to set in case the module is found, but load fail= ed. + * + * Return value: -1 on error (errp set if not NULL). + * 0 if module or one of its dependencies are not installe= d, + * 1 if the module is found and loaded, + * 2 if the module is already loaded, or module is built-i= n. + */ +int module_load(const char *prefix, const char *name, Error **errp); + +/* + * module_load_qom: attempt to load a module to provide a QOM type + * + * type: the type to be provided + * errp: error to set. + * + * Return value: as per module_load. + */ +int module_load_qom(const char *type, Error **errp); void module_load_qom_all(void); void module_allow_arch(const char *arch); =20 diff --git a/qom/object.c b/qom/object.c index aba942bdf31c..e25f1e96db1e 100644 --- a/qom/object.c +++ b/qom/object.c @@ -526,8 +526,13 @@ void object_initialize(void *data, size_t size, const = char *typename) =20 #ifdef CONFIG_MODULES if (!type) { - module_load_qom(typename); - type =3D type_get_by_name(typename); + int rv =3D module_load_qom(typename, &error_fatal); + if (rv > 0) { + type =3D type_get_by_name(typename); + } else { + error_report("missing object type '%s'", typename); + exit(1); + } } #endif if (!type) { @@ -1033,8 +1038,13 @@ ObjectClass *module_object_class_by_name(const char = *typename) oc =3D object_class_by_name(typename); #ifdef CONFIG_MODULES if (!oc) { - module_load_qom(typename); - oc =3D object_class_by_name(typename); + Error *local_err =3D NULL; + int rv =3D module_load_qom(typename, &local_err); + if (rv > 0) { + oc =3D object_class_by_name(typename); + } else if (rv < 0) { + error_report_err(local_err); + } } #endif return oc; diff --git a/softmmu/qtest.c b/softmmu/qtest.c index 774354565165..d3e0ab4eda26 100644 --- a/softmmu/qtest.c +++ b/softmmu/qtest.c @@ -753,12 +753,18 @@ static void qtest_process_command(CharBackend *chr, g= char **words) qtest_sendf(chr, "OK %"PRIi64"\n", (int64_t)qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)); } else if (strcmp(words[0], "module_load") =3D=3D 0) { + Error *local_err =3D NULL; + int rv; g_assert(words[1] && words[2]); =20 qtest_send_prefix(chr); - if (module_load(words[1], words[2])) { + rv =3D module_load(words[1], words[2], &local_err); + if (rv > 0) { qtest_sendf(chr, "OK\n"); } else { + if (rv < 0) { + error_report_err(local_err); + } qtest_sendf(chr, "FAIL\n"); } } else if (qtest_enabled() && strcmp(words[0], "clock_set") =3D=3D 0) { diff --git a/ui/console.c b/ui/console.c index 44dfb0f52b1c..3c0d9b061ac5 100644 --- a/ui/console.c +++ b/ui/console.c @@ -2632,7 +2632,11 @@ bool qemu_display_find_default(DisplayOptions *opts) =20 for (i =3D 0; i < (int)ARRAY_SIZE(prio); i++) { if (dpys[prio[i]] =3D=3D NULL) { - ui_module_load(DisplayType_str(prio[i])); + Error *local_err =3D NULL; + int rv =3D ui_module_load(DisplayType_str(prio[i]), &local_err= ); + if (rv < 0) { + error_report_err(local_err); + } } if (dpys[prio[i]] =3D=3D NULL) { continue; @@ -2650,7 +2654,11 @@ void qemu_display_early_init(DisplayOptions *opts) return; } if (dpys[opts->type] =3D=3D NULL) { - ui_module_load(DisplayType_str(opts->type)); + Error *local_err =3D NULL; + int rv =3D ui_module_load(DisplayType_str(opts->type), &local_err); + if (rv < 0) { + error_report_err(local_err); + } } if (dpys[opts->type] =3D=3D NULL) { error_report("Display '%s' is not available.", @@ -2680,7 +2688,11 @@ void qemu_display_help(void) printf("none\n"); for (idx =3D DISPLAY_TYPE_NONE; idx < DISPLAY_TYPE__MAX; idx++) { if (!dpys[idx]) { - ui_module_load(DisplayType_str(idx)); + Error *local_err =3D NULL; + int rv =3D ui_module_load(DisplayType_str(idx), &local_err); + if (rv < 0) { + error_report_err(local_err); + } } if (dpys[idx]) { printf("%s\n", DisplayType_str(dpys[idx]->type)); diff --git a/util/module.c b/util/module.c index ad89cd50dc2a..32e263163c75 100644 --- a/util/module.c +++ b/util/module.c @@ -21,6 +21,7 @@ #include "qemu/module.h" #include "qemu/cutils.h" #include "qemu/config-file.h" +#include "qapi/error.h" #ifdef CONFIG_MODULE_UPGRADES #include "qemu-version.h" #endif @@ -144,25 +145,22 @@ static bool module_check_arch(const QemuModinfo *modi= nfo) return true; } =20 -static int module_load_file(const char *fname, bool export_symbols) +/* + * module_load_dso: attempt to load an existing dso file + * + * fname: full pathname of the file to load + * export_symbols: if true, add the symbols to the global name space + * errp: error to set. + * + * Return value: true on success, false on error, and errp will be set. + */ +static bool module_load_dso(const char *fname, bool export_symbols, + Error **errp) { GModule *g_module; void (*sym)(void); - const char *dsosuf =3D CONFIG_HOST_DSOSUF; - int len =3D strlen(fname); - int suf_len =3D strlen(dsosuf); ModuleEntry *e, *next; - int ret, flags; - - if (len <=3D suf_len || strcmp(&fname[len - suf_len], dsosuf)) { - /* wrong suffix */ - ret =3D -EINVAL; - goto out; - } - if (access(fname, F_OK)) { - ret =3D -ENOENT; - goto out; - } + int flags; =20 assert(QTAILQ_EMPTY(&dso_init_list)); =20 @@ -172,46 +170,38 @@ static int module_load_file(const char *fname, bool e= xport_symbols) } g_module =3D g_module_open(fname, flags); if (!g_module) { - fprintf(stderr, "Failed to open module: %s\n", - g_module_error()); - ret =3D -EINVAL; - goto out; + error_setg(errp, "failed to open module: %s", g_module_error()); + return false; } if (!g_module_symbol(g_module, DSO_STAMP_FUN_STR, (gpointer *)&sym)) { - fprintf(stderr, "Failed to initialize module: %s\n", - fname); - /* Print some info if this is a QEMU module (but from different bu= ild), - * this will make debugging user problems easier. */ + error_setg(errp, "failed to initialize module: %s", fname); + /* + * Print some info if this is a QEMU module (but from different bu= ild), + * this will make debugging user problems easier. + */ if (g_module_symbol(g_module, "qemu_module_dummy", (gpointer *)&sy= m)) { - fprintf(stderr, - "Note: only modules from the same build can be loaded.= \n"); + error_append_hint(errp, + "Only modules from the same build can be loaded.\n"); } g_module_close(g_module); - ret =3D -EINVAL; - } else { - QTAILQ_FOREACH(e, &dso_init_list, node) { - e->init(); - register_module_init(e->init, e->type); - } - ret =3D 0; + return false; } =20 + QTAILQ_FOREACH(e, &dso_init_list, node) { + e->init(); + register_module_init(e->init, e->type); + } trace_module_load_module(fname); QTAILQ_FOREACH_SAFE(e, &dso_init_list, node, next) { QTAILQ_REMOVE(&dso_init_list, e, node); g_free(e); } -out: - return ret; + return true; } -#endif =20 -bool module_load(const char *prefix, const char *lib_name) +int module_load(const char *prefix, const char *name, Error **errp) { - bool success =3D false; - -#ifdef CONFIG_MODULES - char *fname =3D NULL; + int rv =3D -1; #ifdef CONFIG_MODULE_UPGRADES char *version_dir; #endif @@ -219,54 +209,29 @@ bool module_load(const char *prefix, const char *lib_= name) char *dirs[5]; char *module_name; int i =3D 0, n_dirs =3D 0; - int ret; bool export_symbols =3D false; static GHashTable *loaded_modules; const QemuModinfo *modinfo; const char **sl; =20 if (!g_module_supported()) { - fprintf(stderr, "Module is not supported by system.\n"); - return false; + error_setg(errp, "%s", "this platform does not support GLib module= s"); + return -1; } =20 if (!loaded_modules) { loaded_modules =3D g_hash_table_new(g_str_hash, g_str_equal); } =20 - module_name =3D g_strdup_printf("%s%s", prefix, lib_name); + /* allocate all resources managed by the out: label here */ + module_name =3D g_strdup_printf("%s%s", prefix, name); =20 if (g_hash_table_contains(loaded_modules, module_name)) { g_free(module_name); - return true; + return 2; /* module already loaded */ } g_hash_table_add(loaded_modules, module_name); =20 - for (modinfo =3D module_info; modinfo->name !=3D NULL; modinfo++) { - if (modinfo->arch) { - if (strcmp(modinfo->name, module_name) =3D=3D 0) { - if (!module_check_arch(modinfo)) { - return false; - } - } - } - if (modinfo->deps) { - if (strcmp(modinfo->name, module_name) =3D=3D 0) { - /* we depend on other module(s) */ - for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { - module_load("", *sl); - } - } else { - for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { - if (strcmp(module_name, *sl) =3D=3D 0) { - /* another module depends on us */ - export_symbols =3D true; - } - } - } - } - } - search_dir =3D getenv("QEMU_MODULE_DIR"); if (search_dir !=3D NULL) { dirs[n_dirs++] =3D g_strdup_printf("%s", search_dir); @@ -279,46 +244,87 @@ bool module_load(const char *prefix, const char *lib_= name) '_'); dirs[n_dirs++] =3D g_strdup_printf("/var/run/qemu/%s", version_dir); #endif - assert(n_dirs <=3D ARRAY_SIZE(dirs)); =20 - for (i =3D 0; i < n_dirs; i++) { - fname =3D g_strdup_printf("%s/%s%s", - dirs[i], module_name, CONFIG_HOST_DSOSUF); - ret =3D module_load_file(fname, export_symbols); - g_free(fname); - fname =3D NULL; - /* Try loading until loaded a module file */ - if (!ret) { - success =3D true; - break; + /* end of resources managed by the out: label */ + + for (modinfo =3D module_info; modinfo->name !=3D NULL; modinfo++) { + if (modinfo->arch) { + if (strcmp(modinfo->name, module_name) =3D=3D 0) { + if (!module_check_arch(modinfo)) { + error_setg(errp, "module arch does not match: " + "expected '%s', got '%s'", module_arch, modinfo->a= rch); + goto out; + } + } + } + if (modinfo->deps) { + if (strcmp(modinfo->name, module_name) =3D=3D 0) { + /* we depend on other module(s) */ + for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { + int subrv =3D module_load("", *sl, errp); + if (subrv <=3D 0) { + rv =3D subrv; + goto out; + } + } + } else { + for (sl =3D modinfo->deps; *sl !=3D NULL; sl++) { + if (strcmp(module_name, *sl) =3D=3D 0) { + /* another module depends on us */ + export_symbols =3D true; + } + } + } } } =20 - if (!success) { + for (i =3D 0; i < n_dirs; i++) { + char *fname =3D g_strdup_printf("%s/%s%s", + dirs[i], module_name, CONFIG_HOST_DS= OSUF); + int ret =3D access(fname, F_OK); + if (ret !=3D 0 && (errno =3D=3D ENOENT || errno =3D=3D ENOTDIR)) { + /* + * if we don't find the module in this dir, try the next one. + * If we don't find it in any dir, that can be fine too: user + * did not install the module. We will return 0 in this case + * with no error set. + */ + g_free(fname); + continue; + } else if (ret !=3D 0) { + /* most common is EACCES here */ + error_setg_errno(errp, errno, "error trying to access %s", fna= me); + } else if (module_load_dso(fname, export_symbols, errp)) { + rv =3D 1; /* module successfully loaded */ + } + g_free(fname); + goto out; + } + rv =3D 0; /* module not found */ + +out: + if (rv <=3D 0) { g_hash_table_remove(loaded_modules, module_name); g_free(module_name); } - for (i =3D 0; i < n_dirs; i++) { g_free(dirs[i]); } - -#endif - return success; + return rv; } =20 -#ifdef CONFIG_MODULES - static bool module_loaded_qom_all; =20 -void module_load_qom(const char *type) +int module_load_qom(const char *type, Error **errp) { const QemuModinfo *modinfo; const char **sl; + int rv =3D 0; =20 if (!type) { - return; + error_setg(errp, "%s", "type is NULL"); + return -1; } =20 trace_module_lookup_object_type(type); @@ -331,15 +337,24 @@ void module_load_qom(const char *type) } for (sl =3D modinfo->objs; *sl !=3D NULL; sl++) { if (strcmp(type, *sl) =3D=3D 0) { - module_load("", modinfo->name); + if (rv > 0) { + error_setg(errp, "multiple modules providing '%s'", ty= pe); + return -1; + } + rv =3D module_load("", modinfo->name, errp); + if (rv < 0) { + return rv; + } } } } + return rv; } =20 void module_load_qom_all(void) { const QemuModinfo *modinfo; + Error *local_err =3D NULL; =20 if (module_loaded_qom_all) { return; @@ -352,7 +367,9 @@ void module_load_qom_all(void) if (!module_check_arch(modinfo)) { continue; } - module_load("", modinfo->name); + if (module_load("", modinfo->name, &local_err) < 0) { + error_report_err(local_err); + } } module_loaded_qom_all =3D true; } @@ -368,7 +385,10 @@ void qemu_load_module_for_opts(const char *group) } for (sl =3D modinfo->opts; *sl !=3D NULL; sl++) { if (strcmp(group, *sl) =3D=3D 0) { - module_load("", modinfo->name); + Error *local_err =3D NULL; + if (module_load("", modinfo->name, &local_err) < 0) { + error_report_err(local_err); + } } } } @@ -378,7 +398,8 @@ void qemu_load_module_for_opts(const char *group) =20 void module_allow_arch(const char *arch) {} void qemu_load_module_for_opts(const char *group) {} -void module_load_qom(const char *type) {} +int module_load(const char *prefix, const char *name, Error **errp) { retu= rn 2; } +int module_load_qom(const char *type, Error **errp) { return 2; } void module_load_qom_all(void) {} =20 #endif --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724879; cv=none; d=zohomail.com; s=zohoarc; b=fg22aDklwWuDxLmj75NvKo6H7e8gDOte1v34G0fctcSxb5PP2w2BVv+uiWK7gAWCC7Q00+F9VS3pjJEkncKcAl4UbmWJX7yP+aUeXSjrMcO9ekqkjc4Xcwee/zp8xTxCQ/pDwdeWmUv8ifokZLKK03/+KPnxSzsdQiqV1Cww7zE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724879; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=aE3uf4Tj4fcpIJUY5ACapdk4+UyUxmO3dzqbPlt9tWQ=; b=hCl+D1PnqfZe75ZBuppPah88NrNu0kuBCCgNIDmhadC+ZfdX3whraMJH84X2uxu1d/jJBFBpQSB+CzlQpXz13YfY5/SrmkhFVYtxN12CI75Gtd0qGmhK8QYdStdRF+kVtZU1VpD2xzo/F3sEF0RGA4u00akagwDya4WQUGDSd/Q= 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 1667724879760296.38589331032006; Sun, 6 Nov 2022 01:54:39 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbPs-0001qQ-0A; Sun, 06 Nov 2022 03:54:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPo-0001m0-7b for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:54:04 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPl-0002yS-AP for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:54:02 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-357-xMCMgC7JNxuwAeiMiasSfw-1; Sun, 06 Nov 2022 03:53:59 -0500 Received: by mail-wm1-f72.google.com with SMTP id bg25-20020a05600c3c9900b003cf3ed7e27bso4551491wmb.4 for ; Sun, 06 Nov 2022 01:53:59 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id h2-20020a5d4302000000b0022ae0965a8asm4128815wrq.24.2022.11.06.01.53.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=aE3uf4Tj4fcpIJUY5ACapdk4+UyUxmO3dzqbPlt9tWQ=; b=EV/V98jdnI/F4qOzdnUEliwicgheKQSew2/ruu+hdRn11QtIjI9+OkA2X8HadYM0m8USSa jiTBVvL3dm2WL7zCultB5qg3Cil81+SWjg3GjZJr2FX61A+JRfMn2Hukr9O3m04mwQjSli 3sVtcS9hoyEe1AU5bgVu3GfoY8UbT34= X-MC-Unique: xMCMgC7JNxuwAeiMiasSfw-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=aE3uf4Tj4fcpIJUY5ACapdk4+UyUxmO3dzqbPlt9tWQ=; b=TAQ1Tll/xWofaqCgK58yfTwE0TIDeTh2I5hA+UAzgI+ODYb901PGLaEbvJZzw0zblg EZyOhdHQqHJ3OdMTVxVw3rsJ4mDtvMqDkkQs60nCqnAd769B78GfTN+/6aaHIRipqHTH 9ol/TmSqhRqhc3ZuAdZzsmcOCxYEFq1wBWu22rNne8EC5vRW5eSUBDwl0VEvegt+IhCQ p31tjgvofFZhmY/hbcSp+U9Di3g/tKpEy6ioOEWSfjpFfEdceu6LMvg9NW/l49K2PcOw d7l4QNYTDluX/BD+bVoEdIabPMOJIFHjr6Js+nIaL62u7duAK6Erl2ApHC/2IVyAxIX2 zXow== X-Gm-Message-State: ACrzQf2qVAHYjynMGIFpmcD3GJ4el8tuvpm/E4JOPBmjYG5YKqYfTg2T Zgw42EuqW8mcJHMtxCuDYEvaMtUUyjCoVsmIVWsCrHb+7U7qDfMfuse6pH7XUH+dOGhKD7t3RCW xW+k13JiPVKYzUoYW5kwZRLF8Q9cLAWoIWtE0ciSKy8dcSqavmi78l1UI12pB3kLxIWQ= X-Received: by 2002:a05:6000:144d:b0:236:f53e:363d with SMTP id v13-20020a056000144d00b00236f53e363dmr13472293wrx.422.1667724837954; Sun, 06 Nov 2022 01:53:57 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4SYvT9JmGH1mKH1nQ5dojwRTC2h1ubci6Ctz0jLSK6bflb8G0oTrjDuVi21chCWruoSyHcgw== X-Received: by 2002:a05:6000:144d:b0:236:f53e:363d with SMTP id v13-20020a056000144d00b00236f53e363dmr13472277wrx.422.1667724837657; Sun, 06 Nov 2022 01:53:57 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Kevin Wolf , Claudio Fontana , Richard Henderson Subject: [PULL 11/12] dmg: warn when opening dmg images containing blocks of unknown type Date: Sun, 6 Nov 2022 09:51:14 +0100 Message-Id: <20221106085115.257018-12-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> 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=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -37 X-Spam_score: -3.8 X-Spam_bar: --- X-Spam_report: (-3.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724880193100001 Content-Type: text/plain; charset="utf-8" From: Kevin Wolf Signed-off-by: Kevin Wolf Signed-off-by: Claudio Fontana Reviewed-by: Richard Henderson Message-Id: <20220929093035.4231-5-cfontana@suse.de> Signed-off-by: Paolo Bonzini --- block/dmg.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/block/dmg.c b/block/dmg.c index ba8ec344d479..675e840ca587 100644 --- a/block/dmg.c +++ b/block/dmg.c @@ -254,6 +254,25 @@ static int dmg_read_mish_block(BDRVDMGState *s, DmgHea= derState *ds, for (i =3D s->n_chunks; i < s->n_chunks + chunk_count; i++) { s->types[i] =3D buff_read_uint32(buffer, offset); if (!dmg_is_known_block_type(s->types[i])) { + switch (s->types[i]) { + case UDBZ: + warn_report_once("dmg-bzip2 module is missing, accessing b= zip2 " + "compressed blocks will result in I/O err= ors"); + break; + case ULFO: + warn_report_once("dmg-lzfse module is missing, accessing l= zfse " + "compressed blocks will result in I/O err= ors"); + break; + case UDCM: + case UDLE: + /* Comments and last entry can be ignored without problems= */ + break; + default: + warn_report_once("Image contains chunks of unknown type %x= , " + "accessing them will result in I/O errors= ", + s->types[i]); + break; + } chunk_count--; i--; offset +=3D 40; --=20 2.38.1 From nobody Wed May 1 15:12:55 2024 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=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1667724894; cv=none; d=zohomail.com; s=zohoarc; b=brMrVTQHjO6y+MgqGcZ1diSO5SweBaUluxs4DFIsLjWY6bQndLGheyAsVM+VVuYg6jpI/suaSvUiEVl4Ryw/+0pBIvpUJX7sKDzMjKkrKoHGqG536xc6FzhTxZr/PulKGKZ6O5fkCoeO/e6vEyAveaGO0MJOkm27jIhSuK6UoOk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667724894; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=2PBYH3/5h+QAGT2PWbT4T4jukQmY56rSz759S01ubjo=; b=Yz73KFhjD4EdySUBhByYI7iCJVNf6oZuGCPqPrtdJr58zLxOhnx5OqWeHVEHGH5XfoyRx1mW7VdCN6yJwWFpdi3Qn0XsrgOkOAaOYwY82rRP4OHELwcVsMFMgQr4T+vS/CSAGpHYgei/BNUCq/59t4jEjCB9g3ruToOvZVBRNxI= 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 1667724894590538.9752426196538; Sun, 6 Nov 2022 01:54:54 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1orbQ2-0001vK-3s; Sun, 06 Nov 2022 03:54:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPq-0001nd-At for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:54:06 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1orbPo-0002zg-TM for qemu-devel@nongnu.org; Sun, 06 Nov 2022 03:54:06 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-212-yUJB92TeMTKdDoEzjIx0Zg-1; Sun, 06 Nov 2022 03:54:02 -0500 Received: by mail-wr1-f72.google.com with SMTP id s7-20020adfa287000000b00236c367fcddso2001503wra.6 for ; Sun, 06 Nov 2022 01:54:02 -0700 (PDT) Received: from avogadro.local ([2001:b07:6468:f312:e3ec:5559:7c5c:1928]) by smtp.gmail.com with ESMTPSA id bw9-20020a0560001f8900b00236c1f2cecesm5119596wrb.81.2022.11.06.01.53.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 06 Nov 2022 01:53:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1667724843; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2PBYH3/5h+QAGT2PWbT4T4jukQmY56rSz759S01ubjo=; b=ITjP6rlNN26/30xh9i+HGvp09TW58U4Mr5enxaIeYH9XxB1O424/xmxYrnyMBmD1qtk27a u8wCfud0q7kIQSggtFi9eniNlttMls26IdXn6P1O8M7eqJLpjBQEfkYCKKIqRjPk8J+cjh /RnA2oZy9+FPo7XoEadZeacF924tRpA= X-MC-Unique: yUJB92TeMTKdDoEzjIx0Zg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=2PBYH3/5h+QAGT2PWbT4T4jukQmY56rSz759S01ubjo=; b=WSk8mFnlPcaaL7Mb5zt5ZzzpC3W6Uehg1WyKc7AU2mHlpOHBOgvGO2YyNHZSrUVJfI 0W3XJWZq1Ep4OnUtWaNzED1ZkacI+OXGBC13Sa3hldJDLakcBo9sRUXJrKyGfknXs12Y knakyt98QnhpE5YaFb9nzd4//ES5aPL9zyFfzXZgPBxbX7JmP7keHgEtnWj/mAyk1fq7 bCOvswVVQWTRfrLQyTMXoumNIvsQ1VKSjmvouOYRtUUFlHpzKnelNOkhuEkhnfflrCvA 0HsR0Jm9uWJi1mZ5qt/Xy5I0+zPA2xwfOC12dDd5LOwiYg25BXiAf+xyvsiNGsEZ5K9A 7bVA== X-Gm-Message-State: ACrzQf0rSIS6SBaNSMi9Kilr+fZolP2IptUoDFKOiBFnHjU8IsTthgrA kaNKKdyeTnniQFTpB5g6r8UQ+om/AVszqlZUXt3ppM5GgS9kHlgvcksRCnQ9CVczQixiNP8ZjDQ UcS6lMW37hufjTKSuPss8+/4qz474UIdjckRudA99g5SYGDm0e59xI0xg6ni34hPDGSI= X-Received: by 2002:a05:600c:4eca:b0:3cf:9d19:7fd6 with SMTP id g10-20020a05600c4eca00b003cf9d197fd6mr5899921wmq.163.1667724840621; Sun, 06 Nov 2022 01:54:00 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5r6WkZFew/OHmLKvpXeIAhhmhje1+neABuA9ee0kcAaG+Q+iTEnlGh7T22+Vrn5u7XgAlOBQ== X-Received: by 2002:a05:600c:4eca:b0:3cf:9d19:7fd6 with SMTP id g10-20020a05600c4eca00b003cf9d197fd6mr5899902wmq.163.1667724840352; Sun, 06 Nov 2022 01:54:00 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Claudio Fontana , Richard Henderson , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Markus Armbruster Subject: [PULL 12/12] accel: abort if we fail to load the accelerator plugin Date: Sun, 6 Nov 2022 09:51:15 +0100 Message-Id: <20221106085115.257018-13-pbonzini@redhat.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221106085115.257018-1-pbonzini@redhat.com> References: <20221106085115.257018-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain 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=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.045, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PP_MIME_FAKE_ASCII_TEXT=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Qemu-devel" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1667724896256100001 From: Claudio Fontana if QEMU is configured with modules enabled, it is possible that the load of an accelerator module will fail. Exit in this case, relying on module_object_class_by_name to report the specific load error if any. Signed-off-by: Claudio Fontana Reviewed-by: Richard Henderson [claudio: changed abort() to exit(1)] Reviewed-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Markus Armbruster Message-Id: <20220929093035.4231-6-cfontana@suse.de> Signed-off-by: Paolo Bonzini --- accel/accel-softmmu.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/accel/accel-softmmu.c b/accel/accel-softmmu.c index 67276e4f5222..f9cdafb148ac 100644 --- a/accel/accel-softmmu.c +++ b/accel/accel-softmmu.c @@ -66,6 +66,7 @@ void accel_init_ops_interfaces(AccelClass *ac) { const char *ac_name; char *ops_name; + ObjectClass *oc; AccelOpsClass *ops; =20 ac_name =3D object_class_get_name(OBJECT_CLASS(ac)); @@ -73,8 +74,13 @@ void accel_init_ops_interfaces(AccelClass *ac) =20 ops_name =3D g_strdup_printf("%s" ACCEL_OPS_SUFFIX, ac_name); ops =3D ACCEL_OPS_CLASS(module_object_class_by_name(ops_name)); + oc =3D module_object_class_by_name(ops_name); + if (!oc) { + error_report("fatal: could not load module for type '%s'", ops_nam= e); + exit(1); + } g_free(ops_name); - + ops =3D ACCEL_OPS_CLASS(oc); /* * all accelerators need to define ops, providing at least a mandatory * non-NULL create_vcpu_thread operation. --=20 2.38.1