[GSoC] Making vkernels checkpointable - week 8

Pawel Dziepak pdziepak at quarnos.org
Mon Aug 12 10:29:56 PDT 2013


Last week I was working on adding kqueue support to the checkpointing
code. Kqueues are used by vkernels and I decided that it would be much
better if the checkpointing code could save and restore them instead
of doing it explicitly in the vkernel's signal handler.

Since all information needed to restore open files are stored in
NT_DRAGONFLY_FILES note and kqueue may have numerous registered events
it is much harder to determine the actual size of the note using just
number of opened files. In order to deal with that I made function
elf_getnote() able to read ELF notes of unknown size. This will be
also useful when reading notes such as NT_PRPSINFO and NT_PRSTATUS
which has version information.

Kqueue information in NT_DRAGONFLY_FILES contains the standard file
descriptor data such as flags, index and type and kqueue specific
information: all registered kevents.


More information about the Kernel mailing list