The 2nd longest routine. It takes ~ 0.07 seconds on dump.
−
−
=== Too many readlink-s ===
−
−
Some files are readlinked 3-4 times in a row.
−
== Restore ==
== Restore ==
Line 59:
Line 50:
* Maping vma 15%
* Maping vma 15%
−
=== Parse maps instead of smaps ===
−
When parsing self maps for restorer hint, it's enough to read smaller /proc/self/maps
+
=== Opening files for mappings ===
+
+
The <code>get_filemap_fd()</code> opens new fd every time. If a file is mapped several
+
times (e.g. -- a library) we can share one fd for that.
+
+
=== Staging ===
+
+
When restoring a single task CRIU uses [[stages of restoring]] which slows things down. Need either special-care the single task restore, or introduce fine-grained locking for such things.