[CRIU] Can't handle non-regular mapping

Pavel Emelyanov xemul at parallels.com
Mon Sep 29 02:13:35 PDT 2014


On 09/27/2014 04:35 AM, Zmudzinski, Krystof C wrote:
> Pavel,
> 
> This is a special device driver that allocates memory on behalf of a process that wants to use its services.  When suspending the container, I have to save that memory and it turns that is an easy part.  What I'm wondering about now is how to restore the connection between resumed process and the driver.  I was able to save and restore fd associated with the process but, of course, this is not enough.
> 
> My guess is that I'd have to add a couple of calls to the driver to let it know that a process is about to leave and to get all the information that the driver maintains about this process.  On the resume side, I would have to let the driver know that a new process wants to open a connection and that it has to be initialized with the saved state.
> 
> What I don't know and what I've started looking for, is what the driver would have to do to let the kernel know it wants to connect the fd that the resumed process has back to the driver.

Yup, what you say is 100% correct.

> Any hints, pointers are appreciated.

If you could tell what the driver is, I would suggest. But with
such a generic description, I can only say -- yes, we should talk
to driver to save and restore the needed state.

Thanks,
Pavel



More information about the CRIU mailing list