[CRIU] Re: [PATCH v2] restorer: close log file before detaching from crtools

Kinsbursky Stanislav skinsbursky at openvz.org
Tue Feb 21 10:45:43 EST 2012


21.02.2012 19:38, Pavel Emelyanov пишет:
> On 02/21/2012 06:50 PM, Kinsbursky Stanislav wrote:
>> 21.02.2012 18:39, Pavel Emelyanov пишет:
>>> On 02/21/2012 01:10 PM, Kinsbursky Stanislav wrote:
>>>> v2: it's toom risky to jump to address equal to line numbet (there could be
>>>> valid executable code). So now jump is done to 0 address and %sp encodes line
>>>> number (32 most significant bits) and error code (32 least significant bits).
>>>>
>>>> There is a race between log close by process being restoring and opened file
>>>> desctriptors check in zdtm test suite - crtools can exit and compare file
>>>> descriptors before detached restored process will perform all the rest tasks
>>>> (including close of the log) and execute final system call:
>>>>
>>>> --- dump/sleeping00/8578/dump.fd        2012-02-20 14:31:31.246096000 +0300
>>>> +++ dump/sleeping00/8578/restore.fd     2012-02-20 14:31:31.418095999 +0300
>>>> @@ -1,4 +1,5 @@
>>>>
>>>>    0 ->   /dev/null
>>>>    1 ->   /dev/null
>>>> +1023 ->   /root/crtools/test/dump/sleeping00/8578/restore.log
>>>>    2 ->   /dev/null
>>>>
>>>> The solution is to close log in restorer before final command received. But
>>>> this leads to another problem: we have to inform somehow about possible errors
>>>> afterwards This is done by forced segmentation fault and looks like this
>>>> (dmesg):
>>> После этого единственная ошибка это от sys_munmap. Ее можно и проигнорировать.
>> Дядь Павел, ты как Эрик с sysctl - просто мнением своим поделился, или всё-таки
>> что-то против имеешь?
> Ну да, имею -- нахрена так сложно, когда можно проще.

1) Прыгнуть на NULL-адрес - это не сложно.
2) Ну красивое же решение. Чего бы его не использовать вместо того, чтобы ошибку 
игнорировать?



-- 
Best regards,
Stanislav Kinsbursky




More information about the CRIU mailing list