[CRIU] Checkpointing non-regular mappings
Pavel Emelyanov
xemul at parallels.com
Wed Sep 4 05:31:31 EDT 2013
On 09/04/2013 03:47 AM, Adam Jacobvitz wrote:
> Hi,
>
> I am trying to checkpoint a program that is running on top of xenomai.
> The program has mapped in /dev/rtheap which is a special device, and
> CRIU is unable to checkpoint it.
Yes, CRIU cannot dump arbitrary character device, for now it only knows what
to do with /dev/null, zero and alike virtual devices and with pseudo terminals.
Generic character device cannot be "just dump-ed" as program might have
initialized it somehow. So if we just remember the info about "task has /dev/foo
opened" and re-open it on restore, we might get into non-working situation -- we
have to re-initialize it in the same way, so that restore application may
continue to operate on the device.
Apparently this is your case -- you have to investigate how to dump (if it's
needed, I don't know the details) the state of the character device your app
has opened, save this state into image file, and on restore -- put (in the
device-specific way) this state back into the device.
> Is there a way to checkpoint this device or a way to unmap this device
> before checkpointing and then remapping it after checkpointing?
>
> Thanks!
>
> Adam
> _______________________________________________
> CRIU mailing list
> CRIU at openvz.org
> https://lists.openvz.org/mailman/listinfo/criu
>
More information about the CRIU
mailing list