From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 70951 invoked by alias); 10 Dec 2015 18:00:00 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 70939 invoked by uid 89); 10 Dec 2015 17:59:59 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Thu, 10 Dec 2015 17:59:58 +0000 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) by mx1.redhat.com (Postfix) with ESMTPS id DCB3AC1A0BC5; Thu, 10 Dec 2015 17:59:56 +0000 (UTC) Received: from [127.0.0.1] (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id tBAHxtbq026141; Thu, 10 Dec 2015 12:59:56 -0500 Message-ID: <5669BD9B.10404@redhat.com> Date: Thu, 10 Dec 2015 18:00:00 -0000 From: Pedro Alves User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Antoine Tremblay , gdb-patches@sourceware.org Subject: Re: [PATCH v2] Remove support for thread events without PTRACE_EVENT_CLONE in GDB. References: <1449760930-23203-1-git-send-email-antoine.tremblay@ericsson.com> <56699F0E.3020301@ericsson.com> <5669BA3D.1070709@redhat.com> <5669BD00.3010903@ericsson.com> In-Reply-To: <5669BD00.3010903@ericsson.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-SW-Source: 2015-12/txt/msg00208.txt.bz2 On 12/10/2015 05:57 PM, Antoine Tremblay wrote: > > > On 12/10/2015 12:45 PM, Pedro Alves wrote: >> On 12/10/2015 03:49 PM, Antoine Tremblay wrote: >> >>> Pushed in. (Without the dot at the end of the subject) >> >> This broke corethreads.exp though: >> >> Running /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.threads/corethreads.exp ... >> FAIL: gdb.threads/corethreads.exp: thread0 found >> FAIL: gdb.threads/corethreads.exp: thread1 found >> > > Right, somehow my buildbot did not see it :( > > I'm looking into it now. > It's this hunk: @@ -1627,24 +1226,7 @@ find_new_threads_callback (const td_thrhandle_t *th_p, void *data) ptid = ptid_build (info->pid, ti.ti_lid, 0); tp = find_thread_ptid (ptid); if (tp == NULL || tp->priv == NULL) - { - if (attach_thread (ptid, th_p, &ti)) - cb_data->new_threads += 1; - else - /* Problem attaching this thread; perhaps it exited before we - could attach it? - This could mean that the thread list inside glibc itself is in - inconsistent state, and libthread_db could go on looping forever - (observed with glibc-2.3.6). To prevent that, terminate - iteration: thread_db_find_new_threads_2 will retry. */ - return 1; - } - else if (target_has_execution && !thread_db_use_events ()) - { - /* Need to update this if not using the libthread_db events - (particularly, the TD_DEATH event). */ - update_thread_state (tp->priv, &ti); - } + thread_from_lwp (ptid); return 0; } We can't use thread_from_lwp with core files. As mentioned in a comment, td_ta_map_lwp2thr uses ps_get_thread_area, but we can't use that currently on core targets, as it uses ptrace directly. Thanks, Pedro Alves