Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <palves@redhat.com>
To: Antoine Tremblay <antoine.tremblay@ericsson.com>,
	       gdb-patches@sourceware.org
Subject: Re: [PATCH v2] Remove support for thread events without PTRACE_EVENT_CLONE in GDB.
Date: Thu, 10 Dec 2015 18:16:00 -0000	[thread overview]
Message-ID: <5669C197.7030701@redhat.com> (raw)
In-Reply-To: <5669BFB7.1030209@ericsson.com>

On 12/10/2015 06:08 PM, Antoine Tremblay wrote:
> 
> 
> On 12/10/2015 12:59 PM, Pedro Alves wrote:
>> 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.
>>
> Right, I think I can replace that directly with :
> 
>    if (tp == NULL || tp->priv == NULL)
>        record_thread (info, tp, ptid, th_p, &ti);
> 
> Sounds ok ? (it fixes the test)
> 

I think that's right.

> I'll run the full testsuite...

Thanks,
Pedro Alves


      reply	other threads:[~2015-12-10 18:16 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-10 15:22 Antoine Tremblay
2015-12-10 15:35 ` Pedro Alves
2015-12-10 15:49 ` Antoine Tremblay
2015-12-10 17:45   ` Pedro Alves
2015-12-10 17:57     ` Antoine Tremblay
2015-12-10 18:00       ` Pedro Alves
2015-12-10 18:08         ` Antoine Tremblay
2015-12-10 18:16           ` Pedro Alves [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5669C197.7030701@redhat.com \
    --to=palves@redhat.com \
    --cc=antoine.tremblay@ericsson.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox