diff mbox series

linux-user/strace: Add missing signal strings

Message ID 20191119185153.GA23003@ls3530.fritz.box
State New
Headers show
Series linux-user/strace: Add missing signal strings | expand

Commit Message

Helge Deller Nov. 19, 2019, 6:51 p.m. UTC
Add the textual representations of some missing target signals.

Signed-off-by: Helge Deller <deller@gmx.de>

Comments

Richard Henderson Nov. 19, 2019, 7:56 p.m. UTC | #1
On 11/19/19 7:51 PM, Helge Deller wrote:
> Add the textual representations of some missing target signals.
> 
> Signed-off-by: Helge Deller <deller@gmx.de>
> 
> diff --git a/linux-user/strace.c b/linux-user/strace.c
> index 3d4d684450..18b57a9ef9 100644
> --- a/linux-user/strace.c
> +++ b/linux-user/strace.c
> @@ -146,6 +146,22 @@ print_signal(abi_ulong arg, int last)
>      case TARGET_SIGSTOP: signal_name = "SIGSTOP"; break;
>      case TARGET_SIGTTIN: signal_name = "SIGTTIN"; break;
>      case TARGET_SIGTTOU: signal_name = "SIGTTOU"; break;
> +    case TARGET_SIGIO: signal_name = "SIGIO"; break;
> +    case TARGET_SIGTRAP: signal_name = "SIGTRAP"; break;
> +    /* case TARGET_SIGIOT: signal_name = "SIGIOT"; break; */

Unused commented code.

> +#ifdef SIGSTKFLT
> +    case TARGET_SIGSTKFLT: signal_name = "SIGSTKFLT"; break;
> +#endif

Wrong ifdef.


r~
Helge Deller Nov. 19, 2019, 8:06 p.m. UTC | #2
On 19.11.19 20:56, Richard Henderson wrote:
> On 11/19/19 7:51 PM, Helge Deller wrote:
>> Add the textual representations of some missing target signals.
>>
>> Signed-off-by: Helge Deller <deller@gmx.de>
>>
>> diff --git a/linux-user/strace.c b/linux-user/strace.c
>> index 3d4d684450..18b57a9ef9 100644
>> --- a/linux-user/strace.c
>> +++ b/linux-user/strace.c
>> @@ -146,6 +146,22 @@ print_signal(abi_ulong arg, int last)
>>       case TARGET_SIGSTOP: signal_name = "SIGSTOP"; break;
>>       case TARGET_SIGTTIN: signal_name = "SIGTTIN"; break;
>>       case TARGET_SIGTTOU: signal_name = "SIGTTOU"; break;
>> +    case TARGET_SIGIO: signal_name = "SIGIO"; break;
>> +    case TARGET_SIGTRAP: signal_name = "SIGTRAP"; break;
>> +    /* case TARGET_SIGIOT: signal_name = "SIGIOT"; break; */
>
> Unused commented code.

True, but I kept it intentionally the same as it's currently in
linux-user/signal.c (line 40) so it's not forgotten if that changes:
/*    [SIGIOT] = TARGET_SIGIOT,*/

>> +#ifdef SIGSTKFLT
>> +    case TARGET_SIGSTKFLT: signal_name = "SIGSTKFLT"; break;
>> +#endif
>
> Wrong ifdef.

Same here, see in linux-user/signal.c (line 50):
#ifdef SIGSTKFLT
     [SIGSTKFLT] = TARGET_SIGSTKFLT,
#endif

Suggestions?

Helge
Helge Deller Nov. 19, 2019, 8:10 p.m. UTC | #3
On 19.11.19 21:06, Helge Deller wrote:
> On 19.11.19 20:56, Richard Henderson wrote:
>> On 11/19/19 7:51 PM, Helge Deller wrote:
>>> Add the textual representations of some missing target signals.
>>>
>>> Signed-off-by: Helge Deller <deller@gmx.de>
>>>
>>> diff --git a/linux-user/strace.c b/linux-user/strace.c
>>> index 3d4d684450..18b57a9ef9 100644
>>> --- a/linux-user/strace.c
>>> +++ b/linux-user/strace.c
>>> @@ -146,6 +146,22 @@ print_signal(abi_ulong arg, int last)
>>>       case TARGET_SIGSTOP: signal_name = "SIGSTOP"; break;
>>>       case TARGET_SIGTTIN: signal_name = "SIGTTIN"; break;
>>>       case TARGET_SIGTTOU: signal_name = "SIGTTOU"; break;
>>> +    case TARGET_SIGIO: signal_name = "SIGIO"; break;
>>> +    case TARGET_SIGTRAP: signal_name = "SIGTRAP"; break;
>>> +    /* case TARGET_SIGIOT: signal_name = "SIGIOT"; break; */
>>
>> Unused commented code.
>
> True, but I kept it intentionally the same as it's currently in
> linux-user/signal.c (line 40) so it's not forgotten if that changes:
> /*    [SIGIOT] = TARGET_SIGIOT,*/
>
>>> +#ifdef SIGSTKFLT
>>> +    case TARGET_SIGSTKFLT: signal_name = "SIGSTKFLT"; break;
>>> +#endif
>>
>> Wrong ifdef.
>
> Same here, see in linux-user/signal.c (line 50):
> #ifdef SIGSTKFLT
>      [SIGSTKFLT] = TARGET_SIGSTKFLT,
> #endif

OIC!
My code should to be:
#ifdef TARGET_SIGSTKFLT

Will resubmit after getting suggestions for the unused commented code.

Helge
Richard Henderson Nov. 19, 2019, 8:17 p.m. UTC | #4
On 11/19/19 9:06 PM, Helge Deller wrote:
>>> +#ifdef SIGSTKFLT
>>> +    case TARGET_SIGSTKFLT: signal_name = "SIGSTKFLT"; break;
>>> +#endif
>>
>> Wrong ifdef.
> 
> Same here, see in linux-user/signal.c (line 50):
> #ifdef SIGSTKFLT
>     [SIGSTKFLT] = TARGET_SIGSTKFLT,
> #endif

But that one actually references SIGSTKFLT, but the case above does not.
You probably don't need the ifdef at all.


r~
diff mbox series

Patch

diff --git a/linux-user/strace.c b/linux-user/strace.c
index 3d4d684450..18b57a9ef9 100644
--- a/linux-user/strace.c
+++ b/linux-user/strace.c
@@ -146,6 +146,22 @@  print_signal(abi_ulong arg, int last)
     case TARGET_SIGSTOP: signal_name = "SIGSTOP"; break;
     case TARGET_SIGTTIN: signal_name = "SIGTTIN"; break;
     case TARGET_SIGTTOU: signal_name = "SIGTTOU"; break;
+    case TARGET_SIGIO: signal_name = "SIGIO"; break;
+    case TARGET_SIGTRAP: signal_name = "SIGTRAP"; break;
+    /* case TARGET_SIGIOT: signal_name = "SIGIOT"; break; */
+#ifdef SIGSTKFLT
+    case TARGET_SIGSTKFLT: signal_name = "SIGSTKFLT"; break;
+#endif
+    case TARGET_SIGBUS: signal_name = "SIGBUS"; break;
+    case TARGET_SIGPWR: signal_name = "SIGPWR"; break;
+    case TARGET_SIGURG: signal_name = "SIGURG"; break;
+    case TARGET_SIGSYS: signal_name = "SIGSYS"; break;
+    case TARGET_SIGXCPU: signal_name = "SIGXCPU"; break;
+    case TARGET_SIGPROF: signal_name = "SIGPROF"; break;
+    case TARGET_SIGTSTP: signal_name = "SIGTSTP"; break;
+    case TARGET_SIGXFSZ: signal_name = "SIGXFSZ"; break;
+    case TARGET_SIGWINCH: signal_name = "SIGWINCH"; break;
+    case TARGET_SIGVTALRM: signal_name = "SIGVTALRM"; break;
     }
     if (signal_name == NULL) {
         print_raw_param("%ld", arg, last);