Changes

Jump to navigation Jump to search
126 bytes added ,  16:33, 16 February 2017
Line 68: Line 68:     
== Needs to be done (TODO) ==
 
== Needs to be done (TODO) ==
  −
=== Error dump on x32-bit app dumping ===
  −
  −
At this moment we'll support only compat ia32 applications, attempt to dump x32 compat binary should result in error.
      
=== Bug with mmaping over 4Gb ===
 
=== Bug with mmaping over 4Gb ===
Line 87: Line 83:  
! Fail reason
 
! Fail reason
 
|-
 
|-
| sse00
+
| futex-rl || sys_get_robust_list() should be compat syscall for 32-bit tasks: kernel keeps two different lists: <code>robust_list</code> and <code>compat_robust_list</code> in <code>task_struct</code>
| rowspan="5" | [https://lists.openvz.org/pipermail/criu/2017-February/035666.html fixed by]
   
|-
 
|-
| sse20
+
| autofs || test's bug - hangs without C/R
|-
  −
| fpu00
  −
|-
  −
| mmx00
  −
|-
  −
| fpu01
   
|-
 
|-
| futex-rl || sys_get_robust_list() should be compat syscall for 32-bit tasks: kernel keeps two different lists: <code>robust_list</code> and <code>compat_robust_list</code> in <code>task_struct</code>
+
| vdso01 || [https://lists.openvz.org/pipermail/criu/2017-February/035767.html ia32 version]
 
|-
 
|-
| autofs || test's bug - hangs without C/R
+
| vdso01 || need to add 32-bit vDSO symbols: __kernel_*
 
|-
 
|-
| vdso01 || no ia32 version
+
| vdso01 || fails at fault-inject testing: correct jump trampolines
 
|}
 
|}
 +
 +
=== Fault-inject test for vDSO trampolines ===
 +
 +
Should ensure that they work. Need to be done for both native/compat C/R.
 +
[https://lists.openvz.org/pipermail/criu/2017-February/035767.html Here it is]
    
=== Fixes for older kernels ===
 
=== Fixes for older kernels ===
Line 109: Line 103:  
For kernels with backported mainline patches for 32-bit C/R (like vzkernel) there are a couple of things to do like different sizes of vdso/vvar (or vvar may not be even present).
 
For kernels with backported mainline patches for 32-bit C/R (like vzkernel) there are a couple of things to do like different sizes of vdso/vvar (or vvar may not be even present).
   −
=== Fault-inject test for vDSO trampolines ===
+
=== Kernel patch for vsyscall page ===
   −
Should ensure that they work. Need to be done for both native/compat C/R.
+
That's emulated page, not a vma - affects only in /proc/<pid>/maps for restored process. Depends on !TIF_IA32 && !TIF_X32 - Andy got patches for disabling the emulation on per-pid basics, for now I ran tests with <code>vsyscall=none</code> boot parameter because zdtm.py checks maps before/after C/R.
   −
=== Kernel patch for vsyscall page ===
+
=== Error dump on x32-bit app dumping ===
   −
That's emulated page, not a vma - affects only in /proc/<pid>/maps for restored process. Depends on !TIF_IA32 && !TIF_X32 - Andy got patches for disabling the emulation on per-pid basics, for now I ran tests with <code>vsyscall=none</code> boot parameter because zdtm.py checks maps before/after C/R.
+
At this moment we'll support only compat ia32 applications, attempt to dump x32 compat binary should result in error.
    
== External links ==
 
== External links ==
105

edits

Navigation menu