From owner-svn-src-head@freebsd.org Tue Dec 13 21:16:41 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 44B78C76B36; Tue, 13 Dec 2016 21:16:41 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-qt0-f193.google.com (mail-qt0-f193.google.com [209.85.216.193]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1780499A; Tue, 13 Dec 2016 21:16:41 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-qt0-f193.google.com with SMTP id l20so15248467qta.1; Tue, 13 Dec 2016 13:16:40 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc; bh=Qlt2ysOeV1C0EK25O2DVySsX1c7tk/gMt8TaiwmTU/w=; b=UBWEeJJeVL/knHl8n3CD4g6NAYR8OwOe+9IQYWrZUaygE9QhxdBKbxzwNd5ri/CSfS J1GCHMLXagfjyPfwxXsWSQOEpuOVEAwXLqm4ksVBy+tMVNM20Uat6SueWKS8dkZovR+O D4kU7ogl5dhsGWTvoBrHJx2Ao6QFX6ubzGKV95DJlnyaORwAOI4/845HnE8AuvYzrLdP T3PcD5UBMpb/wqOgJ6EGqXryJpcOBILUDD1V9XdyWZ+bcGQXc4rsjVpuLS3AEtIV0i3i 8VsFUdSt79ASYgytHHgbg32aKz2NzNAitjdqs0b4ls4CClHitwatnknD0tOqF0T4M3Wv JsJg== X-Gm-Message-State: AKaTC02ewzMmTBXvfN6seU+46et3WWTx5jFU0nkCyEgKzfpiWqs3DkT0XPc1hOd5/SSZoA== X-Received: by 10.200.39.200 with SMTP id x8mr85543920qtx.56.1481663005153; Tue, 13 Dec 2016 13:03:25 -0800 (PST) Received: from mail-qt0-f175.google.com (mail-qt0-f175.google.com. [209.85.216.175]) by smtp.gmail.com with ESMTPSA id g97sm29855270qkh.11.2016.12.13.13.03.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 13 Dec 2016 13:03:25 -0800 (PST) Received: by mail-qt0-f175.google.com with SMTP id n6so119583791qtd.1; Tue, 13 Dec 2016 13:03:25 -0800 (PST) X-Received: by 10.237.53.119 with SMTP id b52mr98038085qte.74.1481663004909; Tue, 13 Dec 2016 13:03:24 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.200.58.165 with HTTP; Tue, 13 Dec 2016 13:03:24 -0800 (PST) In-Reply-To: <099725fe-af29-3f9d-852d-53357bb8e8fe@FreeBSD.org> References: <201612131805.uBDI5EDm054866@repo.freebsd.org> <099725fe-af29-3f9d-852d-53357bb8e8fe@FreeBSD.org> From: Conrad Meyer Date: Tue, 13 Dec 2016 13:03:24 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r310025 - head/libexec/rtld-elf To: Andriy Gapon Cc: Bryan Drewery , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Dec 2016 21:16:41 -0000 On Tue, Dec 13, 2016 at 12:51 PM, Andriy Gapon wrote: > On 13/12/2016 20:05, Bryan Drewery wrote: >> Author: bdrewery >> Date: Tue Dec 13 18:05:14 2016 >> New Revision: 310025 >> URL: https://svnweb.freebsd.org/changeset/base/310025 >> >> Log: >> Take write lock for rtld_bind before modifying obj_list in dl_iterate_phdr(). > > What are typical callers of dl_iterate_phdr() ? libunwind::UnwindCursor::setInfoBasedOnIPRegister(bool) via _pthread_exit. > In what scenarios this bug would typically be hit? > Thank you! We mostly hit this during multi-threaded program teardown. Exiting threads would be in _pthread_exit -> libunwind -> dl_iterate_phdr at the same time as the main thread was performing __cxa_finalize -> _rtld_addr_phdr -> obj_from_addr. Best, Conrad