This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC 0/6] Fix lost siginfo_t
- From: Mark Kettenis <mark dot kettenis at xs4all dot nl>
- To: jan dot kratochvil at redhat dot com
- Cc: gdb-patches at sourceware dot org
- Date: Tue, 27 Jul 2010 10:01:21 +0200 (CEST)
- Subject: Re: [RFC 0/6] Fix lost siginfo_t
- References: <20100726225054.GA3597@host1.dyn.jankratochvil.net>
> Date: Tue, 27 Jul 2010 00:50:54 +0200
> From: Jan Kratochvil <jan.kratochvil@redhat.com>
>
> Hi,
>
> currently GDB's postponing and resending signals across threads drops the
> associated siginfo_t information. This can break real world inferiors
> https://bugzilla.redhat.com/attachment.cgi?id=413842
> and it is also tested by a new testcase.
>
> IMO all current `int status', `int host_signal' and `enum
> target_signal' should be associated with their siginfo_t as
> otherwise they carry incomplete information. This is implemented by
> this patchset although it brings sizeof (target_signal) to 136. It
> is currently passed by value everywhere, it could be either just
> shortened to 48 bytes or some pointer / reference counting could be
> implemented. It is true I would not change it myself without a
> request as x86* host machines cannot notice such a small overhead.
Sorry, but I think the idea here is seriously flawed. How are you
going to pass around the siginfo_t on non-native/multi-arch GDB?