Difference between revisions of "Download/criu/1.2"

From CRIU
Jump to navigation Jump to search
(typos)
 
(5 intermediate revisions by one other user not shown)
Line 4: Line 4:
 
* Performance improvements
 
* Performance improvements
 
** Shared entries in reg-files image
 
** Shared entries in reg-files image
** Less accesses to /proc/$pid/map_files links
+
** Less accesses to <code>/proc/$pid/map_files</code> links
** Cache for /proc/$pid/pagemap reads
+
** Cache for <code>/proc/$pid/pagemap</code> reads
 
** VDSO page is seeked only in anonymous mappings
 
** VDSO page is seeked only in anonymous mappings
 
** Task's auxv is read in one call
 
** Task's auxv is read in one call
 
** Merged mm and vma image files for better packing
 
** Merged mm and vma image files for better packing
** NFS inodes' path resulution (for fsnotify) cache
+
** NFS inodes' path resolution (for fsnotify) cache
** One readlink() call when checking anon inodes
+
** One <code>readlink()</code> call when checking anon inodes
 
** Don't dump kernel's zero-page
 
** Don't dump kernel's zero-page
 +
** Parse fast <code>/proc/self/maps</code> when searching for hole for restorer
 +
** A bit faster write into image files with <code>writev()</code>
 
* Library versioning
 
* Library versioning
 
* RPC API got closer to CLI
 
* RPC API got closer to CLI
Line 22: Line 24:
 
=== Fixes ===
 
=== Fixes ===
 
* A lot for ARM cross-compile
 
* A lot for ARM cross-compile
* Inotify/FAnotify dumping didn't work on NFS
+
* Fsnotifies dumping didn't work on NFS
* Images auto-reduplication only worked one level up
+
* Images auto-deduplication only worked one level up
 
* Packet socket ID was treated as file-descriptor and close()-d
 
* Packet socket ID was treated as file-descriptor and close()-d
 
* Badly counted pages stats on restore
 
* Badly counted pages stats on restore
Line 33: Line 35:
 
* Small memory leak when writing to incremental image(s)
 
* Small memory leak when writing to incremental image(s)
 
* Restoring fsnotify for links results in ELOOP
 
* Restoring fsnotify for links results in ELOOP
 +
* Host's PATH is not suitable when execv-ing tar/ip/iptable to restore namespace (workaround, proper fix will be in 1.3)
 +
* Using subdirs in log file name via RPC breaks security

Latest revision as of 21:03, 25 February 2014

Tarball: criu-1.2.tar.bz2
Version: 1.2
Released: 26 Feb 2014
GIT tag: v1.2

New features[edit]

  • Performance improvements
    • Shared entries in reg-files image
    • Less accesses to /proc/$pid/map_files links
    • Cache for /proc/$pid/pagemap reads
    • VDSO page is seeked only in anonymous mappings
    • Task's auxv is read in one call
    • Merged mm and vma image files for better packing
    • NFS inodes' path resolution (for fsnotify) cache
    • One readlink() call when checking anon inodes
    • Don't dump kernel's zero-page
    • Parse fast /proc/self/maps when searching for hole for restorer
    • A bit faster write into image files with writev()
  • Library versioning
  • RPC API got closer to CLI
  • New "post-restore" call in action scripts
  • Logrotate rules file
  • Default log file for service when starting via systemd

Fixes[edit]

  • A lot for ARM cross-compile
  • Fsnotifies dumping didn't work on NFS
  • Images auto-deduplication only worked one level up
  • Packet socket ID was treated as file-descriptor and close()-d
  • Badly counted pages stats on restore
  • Linked remap name conflict when dump and restore on NFS
  • Sporadic failures in memory draining due to huge pipes used
  • Broken criu show of repeated fields
  • Failure to open mountpoint in foreign pid namespace
  • Unlinked bound unix socket dump error
  • Small memory leak when writing to incremental image(s)
  • Restoring fsnotify for links results in ELOOP
  • Host's PATH is not suitable when execv-ing tar/ip/iptable to restore namespace (workaround, proper fix will be in 1.3)
  • Using subdirs in log file name via RPC breaks security