[CRIU] Fwd: Build failed in Jenkins: CRIU-3.11 #30

Pavel Emelyanov xemul at parallels.com
Wed Dec 23 04:46:43 PST 2015


On 12/23/2015 01:28 PM, Dmitry Safonov wrote:
> On 12/23/2015 12:29 AM, Andrey Vagin wrote:
>> Dmitry, It's for you:
>>
>> =================== Run zdtm/live/streaming/pipe_loop00 in h ===================
>> Start test
>> ./pipe_loop00 --pidfile=pipe_loop00.pid --outfile=pipe_loop00.out
>> Run criu dump
>> Run criu restore
>> =[log]=> dump/zdtm/live/streaming/pipe_loop00/72/1/restore.log
>> ------------------------ grep Error ------------------------
>> (00.000519) Error (cr-restore.c:875): Write 4294967295 to
>> /proc/self/loginuid failed: Invalid argument
>> (00.000525) Error (cr-restore.c:1889): Setting loginuid for CT init
>> task failed, CAP_AUDIT_CONTROL? ------------------------ ERROR OVER
>> ------------------------
>> ########## Test zdtm/live/streaming/pipe_loop00 FAIL at CRIU restore ###########
>>
>>
> Hello,
> The reason is that loginuid unsetting (set AUDIT_UID_UNSET or (uid_t)-1) is
> in mainline only after v3.13-rc2 with that patch:
> http://marc.info/?l=git-commits-head&m=138509506407067
> 
> But in rh7-3.10 it's already applied (I didn't catch this fact, sorry).
> 
> In vanilla v3.11 it looks like this:
> http://lxr.free-electrons.com/source/fs/proc/base.c?v=3.11#L1154
> 
> 1155         if (!uid_valid(kloginuid)) {
> 1156                 length = -EINVAL;
> 1157                 goto out_free_page;
> 1158         }
> Unsetting loginuid without CAP_AUDIT_CONTROL is not possible.
> 
> So, I have a question, what should I do:
> 1. Make loginuid restoring depends on v3.14 somehow.

This one. We have kerndat.c file that checks for kernel facilities. You can
determine that loginuid unsetting is not supported on current kernel and do
whatever is appropriate.

> 2. Just make loginuid restore not critical.
> 
> So I'll do patches for (2), if no one mind against it.
> 



More information about the CRIU mailing list