From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 8EAB5385770F; Tue, 7 Nov 2023 13:26:28 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8EAB5385770F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1699363588; bh=BkLCMFIgm9Euaxw2hNfrNsDQQkYf/7D4SlicvneTCyA=; h=From:To:Subject:Date:In-Reply-To:References:From; b=KGOpMLIrngKEvJjjXq2EAVYGtR7C8Ar2qze4reEzzpLlllwKqLkJ3oD4oVb6lYCiZ f8c0mz9PU4keUjiwv7FCtpEK6XGfJRCqkzWSQLLt2IJgY5uMEV5iIxQx/DoCMXKsen KJsnvY8KcKLyzDvrd4RTeOqrQqc/aYvHNejqZ13w= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug d/112408] [12/13/14 regression] d21 loops in getCpuInfo0B in Solaris/x86 kernel zone Date: Tue, 07 Nov 2023 13:26:28 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: d X-Bugzilla-Version: 14.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: ibuclaw at gdcproject dot org X-Bugzilla-Target-Milestone: 14.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D112408 --- Comment #9 from CVS Commits --- The releases/gcc-12 branch has been updated by Iain Buclaw : https://gcc.gnu.org/g:8a880d895a468a44fd3e268dc548e64aebe8f5d4 commit r12-9963-g8a880d895a468a44fd3e268dc548e64aebe8f5d4 Author: Iain Buclaw Date: Tue Nov 7 14:04:07 2023 +0100 libphobos: Fix regression d21 loops in getCpuInfo0B in Solaris/x86 kern= el zone This function assumes that cpuid would return "invalid domain" when a sub-leaf index greater than what's supported is requested. This turned out not to always be the case when running on some virtual machines. As the loop only does anything for levels 0 and 1, make that a hard limit for number of times the loop is ran. PR d/112408 libphobos/ChangeLog: * libdruntime/core/cpuid.d (getCpuInfo0B): Limit number of times loop runs. (cherry picked from commit 0b25c1295d4e84af681f4b1f4af2ad37cd270da3)=