From owner-freebsd-bugs@freebsd.org  Wed Aug  7 01:59:53 2019
Return-Path: <owner-freebsd-bugs@freebsd.org>
Delivered-To: freebsd-bugs@mailman.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.nyi.freebsd.org (Postfix) with ESMTP id C7322BAA77
 for <freebsd-bugs@mailman.nyi.freebsd.org>;
 Wed,  7 Aug 2019 01:59:53 +0000 (UTC)
 (envelope-from bugzilla-noreply@freebsd.org)
Received: from mailman.nyi.freebsd.org (unknown [127.0.1.3])
 by mx1.freebsd.org (Postfix) with ESMTP id 463F7Y4wF7z448p
 for <freebsd-bugs@freebsd.org>; Wed,  7 Aug 2019 01:59:53 +0000 (UTC)
 (envelope-from bugzilla-noreply@freebsd.org)
Received: by mailman.nyi.freebsd.org (Postfix)
 id A8C61BAA75; Wed,  7 Aug 2019 01:59:53 +0000 (UTC)
Delivered-To: bugs@mailman.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.nyi.freebsd.org (Postfix) with ESMTP id A8906BAA74
 for <bugs@mailman.nyi.freebsd.org>; Wed,  7 Aug 2019 01:59:53 +0000 (UTC)
 (envelope-from bugzilla-noreply@freebsd.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 client-signature RSA-PSS (4096 bits) client-digest SHA256)
 (Client CN "mxrelay.nyi.freebsd.org",
 Issuer "Let's Encrypt Authority X3" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 463F7Y43dtz448n
 for <bugs@FreeBSD.org>; Wed,  7 Aug 2019 01:59:53 +0000 (UTC)
 (envelope-from bugzilla-noreply@freebsd.org)
Received: from kenobi.freebsd.org (kenobi.freebsd.org
 [IPv6:2610:1c1:1:606c::50:1d])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client did not present a certificate)
 by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6DD7D5555
 for <bugs@FreeBSD.org>; Wed,  7 Aug 2019 01:59:53 +0000 (UTC)
 (envelope-from bugzilla-noreply@freebsd.org)
Received: from kenobi.freebsd.org ([127.0.1.5])
 by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id x771xr49044921
 for <bugs@FreeBSD.org>; Wed, 7 Aug 2019 01:59:53 GMT
 (envelope-from bugzilla-noreply@freebsd.org)
Received: (from www@localhost)
 by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id x771xrN1044920
 for bugs@FreeBSD.org; Wed, 7 Aug 2019 01:59:53 GMT
 (envelope-from bugzilla-noreply@freebsd.org)
X-Authentication-Warning: kenobi.freebsd.org: www set sender to
 bugzilla-noreply@freebsd.org using -f
From: bugzilla-noreply@freebsd.org
To: bugs@FreeBSD.org
Subject: [Bug 239672] gcov: Optimize list traverse by using LIST_FOREACH_SAFE
Date: Wed, 07 Aug 2019 01:59:52 +0000
X-Bugzilla-Reason: AssignedTo
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: Base System
X-Bugzilla-Component: gnu
X-Bugzilla-Version: CURRENT
X-Bugzilla-Keywords: needs-qa, performance
X-Bugzilla-Severity: Affects Some People
X-Bugzilla-Who: cem@freebsd.org
X-Bugzilla-Status: Open
X-Bugzilla-Resolution: 
X-Bugzilla-Priority: ---
X-Bugzilla-Assigned-To: bugs@FreeBSD.org
X-Bugzilla-Flags: 
X-Bugzilla-Changed-Fields: cc
Message-ID: <bug-239672-227-QzBcH7sNHk@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-239672-227@https.bugs.freebsd.org/bugzilla/>
References: <bug-239672-227@https.bugs.freebsd.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-BeenThere: freebsd-bugs@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Bug reports <freebsd-bugs.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-bugs>,
 <mailto:freebsd-bugs-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-bugs/>
List-Post: <mailto:freebsd-bugs@freebsd.org>
List-Help: <mailto:freebsd-bugs-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-bugs>,
 <mailto:freebsd-bugs-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 07 Aug 2019 01:59:53 -0000

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D239672

Conrad Meyer <cem@freebsd.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cem@freebsd.org

--- Comment #1 from Conrad Meyer <cem@freebsd.org> ---
This change is not correct.  Nodes are actually in a tree topology and
remove_node() will release parent nodes as it goes, potentially invalidating
the traverse (even with FOREACH_SAFE).

The code could be refactored to mark removed nodes as a first pass, and then
remove them in a second pass (with plain TAILQ_FOREACH_SAFE).  This alterna=
tive
would avoid wasted work for nodes that are never removed (which is probably=
 the
goal of the proposed change), but not break the algorithm.

--=20
You are receiving this mail because:
You are the assignee for the bug.=