Difference between revisions of "Download/criu/1.7"

From CRIU
Jump to navigation Jump to search
 
(6 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
* Support for seccomp strict mode
 
* Support for seccomp strict mode
 
* Support for stream unix sockets inheritance
 
* Support for stream unix sockets inheritance
* Support for relative paths for unix sockets
+
* Support uid/gid-restricted mounts in userns
 +
* Support deleted bind-mounts
 +
* Freezer cgroups can be used on dump to freeze fast-spawning processes
 +
* Ability to specify maximum ghost file size
 +
* OverlayFS support
 +
* Support relative unix sockets' bind paths
 
* In libcriu
 
* In libcriu
 
** New set of calls using non-global opts
 
** New set of calls using non-global opts
Line 12: Line 17:
 
* Arch-specific improvements
 
* Arch-specific improvements
 
** Altivec and PSX support for PPC
 
** Altivec and PSX support for PPC
** PIEGEN (FIXME, how to declare it?)
+
** Small PIE loader
 
** Preparations for 32-bit x86
 
** Preparations for 32-bit x86
  
Line 36: Line 41:
 
* Weird paths on tmpfs caused tar to fail
 
* Weird paths on tmpfs caused tar to fail
 
* Temporary cgroup mount set (cgyard) got propagated into the host tree
 
* Temporary cgroup mount set (cgyard) got propagated into the host tree
* Crash when restoring netns from older images
 
 
* Restore of inherited shared pipe failed
 
* Restore of inherited shared pipe failed
 
* Spaces, tabs and backslashes in mountpoints' paths caused dump to fail
 
* Spaces, tabs and backslashes in mountpoints' paths caused dump to fail
 
* Tmpfs mounted with empty source caused dump to fail
 
* Tmpfs mounted with empty source caused dump to fail
* Race between unix sockets' connect and listen may cause restore to fail
 
* Multiple unix datagram clients restored server queue multiple times
 
 
* The criu.pc file contained bad version when built from tarball
 
* The criu.pc file contained bad version when built from tarball
 
* Deprecated -n option found in docs
 
* Deprecated -n option found in docs
 +
* On aarch64 the maximum virtual address available for user-space was wrongly hardcoded

Latest revision as of 09:10, 7 September 2015

Tarball: criu-1.7.tar.bz2
Version: 1.7
Released: 7 Sep 2015
GIT tag: v1.7

New features[edit]

  • More flexible CGroups managing on restore
  • Support for seccomp strict mode
  • Support for stream unix sockets inheritance
  • Support uid/gid-restricted mounts in userns
  • Support deleted bind-mounts
  • Freezer cgroups can be used on dump to freeze fast-spawning processes
  • Ability to specify maximum ghost file size
  • OverlayFS support
  • Support relative unix sockets' bind paths
  • In libcriu
    • New set of calls using non-global opts
    • Ability to pass existing connection to service
    • Ability to start criu in swrk mode for all requests
  • Arch-specific improvements
    • Altivec and PSX support for PPC
    • Small PIE loader
    • Preparations for 32-bit x86

Optimizations/improvements[edit]

  • Temporary proc mountpoint is mounted with nosuid, noexec and nodev
  • Less memory copies when preparing restorer binary
  • CRIT action "show" for less keystrokes on common use-case
  • Fsnotify log messages now use hex everywhere :)
  • CRIT output doesn't mix fields any more

Fixes[edit]

  • CRIU binary couldn't be installed independently from man pages
  • Root dir ignored in install: target
  • Bug in restoring PPC floating point register
  • SYSVIPC shmem was not attached on restore with PPC
  • AIO ring ID was erroneously close()-d
  • After dump+kill tasks remained in zombie states
  • Race in zombies vs proc proxy tasks deaths resulted in restore spurious failure
  • Restore got stuck when CRIU was called with blocked SIGCHILD
  • Wrong page size value could be used on some ARM compilations
  • Potential memory corruption when restoring an LSM profile
  • Opened /dev/kmsg in WRONLY mode failed the restore
  • Weird paths on tmpfs caused tar to fail
  • Temporary cgroup mount set (cgyard) got propagated into the host tree
  • Restore of inherited shared pipe failed
  • Spaces, tabs and backslashes in mountpoints' paths caused dump to fail
  • Tmpfs mounted with empty source caused dump to fail
  • The criu.pc file contained bad version when built from tarball
  • Deprecated -n option found in docs
  • On aarch64 the maximum virtual address available for user-space was wrongly hardcoded