From nobody Tue Feb 10 13:37:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1770061771600659.4885979200726; Mon, 2 Feb 2026 11:49:31 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vmztg-0000bl-Ov; Mon, 02 Feb 2026 14:47:44 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vmztY-0000Sw-Gx; Mon, 02 Feb 2026 14:47:37 -0500 Received: from isrv.corpit.ru ([212.248.84.144]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vmztW-0003G8-25; Mon, 02 Feb 2026 14:47:36 -0500 Received: from tsrv.corpit.ru (tsrv.tls.msk.ru [192.168.177.2]) by isrv.corpit.ru (Postfix) with ESMTP id 9ED0A1850A1; Mon, 02 Feb 2026 22:46:03 +0300 (MSK) Received: from think4mjt.tls.msk.ru (mjtthink.wg.tls.msk.ru [192.168.177.146]) by tsrv.corpit.ru (Postfix) with ESMTP id 4E26735B283; Mon, 02 Feb 2026 22:46:45 +0300 (MSK) From: Michael Tokarev To: qemu-devel@nongnu.org Cc: qemu-stable@nongnu.org, =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Laurent Vivier , Peter Maydell , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Michael Tokarev Subject: [Stable-10.0.8 15/69] Fix const qualifier build errors with recent glibc Date: Mon, 2 Feb 2026 22:45:38 +0300 Message-ID: <20260202194638.939438-15-mjt@tls.msk.ru> X-Mailer: git-send-email 2.47.3 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=212.248.84.144; envelope-from=mjt@tls.msk.ru; helo=isrv.corpit.ru X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=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: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZM-MESSAGEID: 1770061772999158500 From: C=C3=A9dric Le Goater A recent change in glibc 2.42.9000 [1] changes the return type of strstr() and other string functions to be 'const char *' when the input is a 'const char *'. This breaks the build in various files with errors such as : error: initialization discards 'const' qualifier from pointer target type= [-Werror=3Ddiscarded-qualifiers] 208 | char *pidstr =3D strstr(filename, "%"); | ^~~~~~ Fix this by changing the type of the variables that store the result of these functions to 'const char *'. [1] https://sourceware.org/git/?p=3Dglibc.git;a=3Dcommit;h=3Dcd748a63ab1a7a= e846175c532a3daab341c62690 Signed-off-by: C=C3=A9dric Le Goater Reviewed-by: Laurent Vivier Reviewed-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daud=C3=A9 Message-ID: <20251209174328.698774-1-clg@redhat.com> Signed-off-by: Philippe Mathieu-Daud=C3=A9 (cherry picked from commit 326e620fc0145686124f754194cdc6d0d9b3400d) Signed-off-by: Michael Tokarev diff --git a/backends/tpm/tpm_passthrough.c b/backends/tpm/tpm_passthrough.c index 09a6abf02d..fd37a871b7 100644 --- a/backends/tpm/tpm_passthrough.c +++ b/backends/tpm/tpm_passthrough.c @@ -211,7 +211,7 @@ static size_t tpm_passthrough_get_buffer_size(TPMBacken= d *tb) static int tpm_passthrough_open_sysfs_cancel(TPMPassthruState *tpm_pt) { int fd =3D -1; - char *dev; + const char *dev; char path[PATH_MAX]; =20 if (tpm_pt->options->cancel_path) { diff --git a/block/vmdk.c b/block/vmdk.c index 2adec49912..5a53c4624a 100644 --- a/block/vmdk.c +++ b/block/vmdk.c @@ -1089,7 +1089,7 @@ vmdk_open_vmdk4(BlockDriverState *bs, BdrvChild *file= , int flags, static int vmdk_parse_description(const char *desc, const char *opt_name, char *buf, int buf_size) { - char *opt_pos, *opt_end; + const char *opt_pos, *opt_end; const char *end =3D desc + strlen(desc); =20 opt_pos =3D strstr(desc, opt_name); diff --git a/block/vvfat.c b/block/vvfat.c index 91d69b3cc8..7dcded6da8 100644 --- a/block/vvfat.c +++ b/block/vvfat.c @@ -1826,7 +1826,7 @@ cluster_was_modified(BDRVVVFATState *s, uint32_t clus= ter_num) =20 static const char* get_basename(const char* path) { - char* basename =3D strrchr(path, '/'); + const char *basename =3D strrchr(path, '/'); if (basename =3D=3D NULL) return path; else diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c index 282e13e163..95c82d7e08 100644 --- a/gdbstub/gdbstub.c +++ b/gdbstub/gdbstub.c @@ -361,7 +361,7 @@ static const char *get_feature_xml(const char *p, const= char **newp, * qXfer:features:read:ANNEX:OFFSET,LENGTH' * ^p ^newp */ - char *term =3D strchr(p, ':'); + const char *term =3D strchr(p, ':'); *newp =3D term + 1; len =3D term - p; =20 diff --git a/qga/commands-linux.c b/qga/commands-linux.c index 4a09ddc760..c639a60a94 100644 --- a/qga/commands-linux.c +++ b/qga/commands-linux.c @@ -403,7 +403,8 @@ static bool build_guest_fsinfo_for_pci_dev(char const *= syspath, int i, offset, nhosts =3D 0, pcilen; GuestPCIAddress *pciaddr =3D disk->pci_controller; bool has_ata =3D false, has_host =3D false, has_tgt =3D false; - char *p, *driver =3D NULL; + const char *p; + char *driver =3D NULL; bool ret =3D false; =20 p =3D strstr(syspath, "/devices/pci"); @@ -543,7 +544,7 @@ static bool build_guest_fsinfo_for_nonpci_virtio(char c= onst *syspath, Error **errp) { unsigned int tgt[3]; - char *p; + const char *p; =20 if (!strstr(syspath, "/virtio") || !strstr(syspath, "/block")) { g_debug("Unsupported virtio device '%s'", syspath); @@ -575,7 +576,7 @@ static bool build_guest_fsinfo_for_ccw_dev(char const *= syspath, Error **errp) { unsigned int cssid, ssid, subchno, devno; - char *p; + const char *p; =20 p =3D strstr(syspath, "/devices/css"); if (!p || sscanf(p + 12, "%*x/%x.%x.%x/%*x.%*x.%x/", diff --git a/ui/ui-hmp-cmds.c b/ui/ui-hmp-cmds.c index 980a8bbc51..6c93d452c9 100644 --- a/ui/ui-hmp-cmds.c +++ b/ui/ui-hmp-cmds.c @@ -418,7 +418,7 @@ err_out: void sendkey_completion(ReadLineState *rs, int nb_args, const char *str) { int i; - char *sep; + const char *sep; size_t len; =20 if (nb_args !=3D 2) { diff --git a/util/log.c b/util/log.c index b87d399e4c..adab3149b1 100644 --- a/util/log.c +++ b/util/log.c @@ -185,7 +185,7 @@ static ValidFilenameTemplateResult valid_filename_template(const char *filename, bool per_thread, Error **err= p) { if (filename) { - char *pidstr =3D strstr(filename, "%"); + const char *pidstr =3D strstr(filename, "%"); =20 if (pidstr) { /* We only accept one %d, no other format strings */ --=20 2.47.3