This is the mail archive of the mailing list for the binutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v3 5/6] Add support for LWP-based threads on FreeBSD.

Eli, this revision includes NEWS/docs bits.

On 01/18/2016 02:27 AM, John Baldwin wrote:
> Older versions of FreeBSD supported userland threading via a pure
> user-space threading library (N threads scheduled on 1 process) and
> a N:M model (N threads scheduled on M LWPs).  However, modern FreeBSD
> versions only support a M:M threading model where each user thread is
> backed by a dedicated LWP.  This thread target only supports this
> threading model.  It also uses ptrace to query and alter LWP state
> directly rather than using libthread_db to simplify the implementation.
> FreeBSD recently gained support for reporting LWP events (birth and death
> of LWPs).  GDB will use LWP events when present.  For older systems it
> fetches the list of LWPs in the to_update_thread_list target op to update
> the list of threads on each stop.
> This target supports scheduler locking by using ptrace to suspend
> individual LWPs as necessary before resuming a process.

Code changes LGTM.

Pedro Alves

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]