[CRIU] [PATCH] signal: fix logig about SIGMAX (v2)

Andrey Wagin avagin at gmail.com
Mon Dec 3 10:44:14 EST 2012


2012/12/3 Pavel Emelyanov <xemul at parallels.com>:
>> @@ -448,8 +448,10 @@ int parasite_dump_sigacts_seized(struct parasite_ctl *ctl, struct cr_fdset *cr_f
>>
>>       fd = fdset_fd(cr_fdset, CR_FD_SIGACT);
>>
>> -     for (i = 1; i < SIGMAX; i++) {
>> -             if (i == SIGSTOP || i == SIGKILL)
>> +     for (sig = 1; sig <= SIGMAX; sig++) {
>> +             int i = sig - 1;
>
> This breaks compat anyway. Before the 1st entry in sigaction.img was sig == 1,
> now it's sig == 0.

sig is not dumped. The first patches broke comatibility in another
place too. I check that this patch doesn't break backward
compatibility.
>
>> +
>> +             if (sig == SIGSTOP || sig == SIGKILL)
>>                       continue;
>>
>>               ASSIGN_TYPED(se.sigaction, args->sas[i].rt_sa_handler);


More information about the CRIU mailing list