[CRIU] criu and userfaultfd

Sanidhya Kashyap sanidhya.gatech at gmail.com
Tue Sep 8 07:15:20 PDT 2015


I don't think that there should be an issue.

Since when I started using criu, Pavel asked me to use userfaultfd,
but it was not completely possible at that time. Currently, I have not
seen the patches of userfaultfd, but I did a workaround and
implemented a mmap based solution for fetching the memory (crude
solution, which eventually works).

Thanks,
Sanidhya

On Tue, Sep 8, 2015 at 9:50 AM, Adrian Reber <adrian at lisas.de> wrote:
> On Wed, Sep 02, 2015 at 03:23:47PM +0300, Pavel Emelyanov wrote:
>> On 09/01/2015 06:22 PM, Adrian Reber wrote:
>> > As userfaultfd has been mentioned multiple times at Linux Plumbers
>> > Conference I wanted to ask if anybody already has some code in that
>> > direction?
>>
>> Sanidhya (in Cc) should have played with it for a while. Also I had
>> some kernel work to make userfaultfd support CRIU case, it can be
>> found here [1]. I planned to get back to them once Andrea's work gets
>> merged into the upstream.
>
> Ah, interesting. I have also looked into userfaultfd and have now a
> simple test case where I have two processes exchanging FDs. One process
> tries to access memory which is handled by userfaultfd and hanging until
> I make the memory area available from the other process using
> userfaultfd.
>
> Trying to understand what would be necessary to use userfaultfd with
> CRIU I would expect to restore everything except the memory pages using
> CRIU and marking all to the process related pages as being handled by
> userfaultfd. For each non existing page a request should be handled by
> userfaultfd.
>
> Are there any other problems which need to be resolved to restore
> processes in combination with userfaultfd? I would like to try it out
> and just want to make sure this is not completely impossible.
>
>                 Adrian


More information about the CRIU mailing list