This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB 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: [RFC/PATCH] Add new internal variable $_signo


On 06/14/2013 06:58 PM, Sergio Durigan Junior wrote:
> Hi Pierre,
> 
> Thanks for the review.
> 
> On Friday, June 14 2013, Pierre Muller wrote:
> 
>>   Is it that I didn't understand the patch correctly or
>> do you use the GDB signal number in infrun.c
>> while you use the native signal integer value in the
>> corelow.c case?
> 
> Yes, you are right.
> 
>>   Aren't those two values sometimes different?
> 
> They probably are in some cases.
> 
>> Wouldn't it be more consistent to only use the GDB internal number?
> 
> Hm, now that you raised the question, I am wondering.  I believe it is
> more consistent to use the GDB internal number when we are printing
> something, yeah.
> 
> However, in the $_signo case, we are actually displaying the number
> itself, so your comment applies to my patch, but backwards: I should
> actually be converting the GDB internal number to the actual signal
> number on infrun.c.
> 
>>   In fact, this "inconsistency" is not specific to your patch,
>> the siggy from corelow.c is printed out, while other signals are always 
>> first converted to GDB enum values before being printed (and apparently not
>> in
>> integer form but using the gdb_signal_to_name function.
>>
>>   Shouldn't we use gdb_signal_to_name (sig) in core_open
>> and set $_signo also to sig?
> 
> I don't think $_signo should be set to "sig", it should remain "siggy".
> What should happen (IIUC everything) is that the infrun.c uses should be
> converted to the actual signal number (by using gdb_signal_to_host).

gdb_signal_to_host is the fallback (and having a fallback is sort of a
hack).  The right signal number is the target's not the host's.  We
have gdbarch_gdb_signal_from_target for the opposite direction, but not
gdbarch_gdb_signal_to_target...  Having to bake the target OS's signal
numbers into GDB is a bit unfortunate, though we could get around it
at some point if we wanted by extending the RSP, and/or adding a python
hook.

-- 
Pedro Alves


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