[CRIU] GSoC: Memory mapping collection

Pavel Emelianov xemul at virtuozzo.com
Thu Jun 20 15:54:28 MSK 2019


On 6/20/19 1:00 AM, abhishek dubey wrote:
> Hi,
> 
> In the past week, I have been working on latest code to incorporate Andrei's attempt for using userspace buffer.
> 
> Additional changes:
> 
>         - skipping iovs generation for READ protected areas
> 
>         - skipping parasite injection (working on it)
> 
> 
> Debugging:
> 
> After implementing Andrei's changes and running zdtm suite, 28 test cases are failing. I am resolving this mismatch issue.
> 
> Error log of failed test:
> 
> === Run 324/362 ==============-- zdtm/static/different_creds
> ===================== Run zdtm/static/different_creds in h =====================
> Start test
> Test is SUID
> ./different_creds --pidfile=different_creds.pid --outfile=different_creds.out
> Run criu dump
> =[log]=> dump/zdtm/static/different_creds/38/1/dump.log
> ------------------------ grep Error ------------------------
> (00.007650) Fetched ack: 66 66 0
> (00.007655) Transferring pages:
> *(00.007658)     buf 2/1**
> **(00.007669) Error (criu/page-xfer.c:498): Can't splice (4096(8192)/2)*
> (00.007687) page-pipe: Killing page pipe
> (00.007727) ----------------------------------------
> (00.007732) Error (criu/mem.c:547): Can't dump page with parasite
> (00.008371) 38 was stopped
> (00.008487) Unlock network
> (00.008493) Unfreezing tasks into 1
> (00.008497)     Unseizing 38 into 1
> (00.008510) Error (criu/cr-dump.c:1753): Dumping FAILED.
> ------------------------ ERROR OVER ------------------------
> ############## Test zdtm/static/different_creds FAIL at CRIU dump ##############
> Send the 9 signal to  38
> Wait for zdtm/static/different_creds(38) to die for 0.100000
> 
> Queries:
> 
> 1) Whether zdtm test suite cover test cases to check functionality of pre-dump? Is there a particular test case which

It does, you need to use the --pre=1 option for that. Or --pre=2 :)

>      needs to be passed for pre-dump functionality verification?

Since you're touching the way criu tosses memory, you should also check that pre-dump is not broken.

> 2) Currently I am following steps below to check if pre-dump works fine (since some test cases which fails in zdtm suite passes when run this way):
> 
>         - make <testcase_name>.pid
> 
>         - predump <testcase>
> 
>         - dump <testcase> pointing to predump images
> 
>         - restore <testcase>
> 
>         - make <testcase_name>.out
> 
>         look for PASS message in last step.

That's correct and that's what --pre=<NUMBER> option does for you :)

-- Pavel



More information about the CRIU mailing list