[CRIU] Bug report: a process restored with criu crashes on SIGFPE

Shlomi Matichin shlomi at binaris.com
Tue Jan 30 11:40:22 MSK 2018


hi andrei,

i've confirmed it to work on latest unstable ubuntu kernel (installed on
the test VM). thanks a lot for your help!

do you still need the VM, or can i take it down?

thank you very much! you too dmitry!
Shlomi (and the happy team here @binaris ;-)

On Tue, Jan 30, 2018 at 6:41 AM, Andrei Vagin <avagin at virtuozzo.com> wrote:

> On Mon, Jan 29, 2018 at 02:45:02PM +0200, Shlomi Matichin wrote:
> > hello andrei and dimitry,
> >
> > (dimitry, thats a cool email address).
> >
> > so i started creating a VM for you guys to reproduce the bug, and found
> out
> > it works great on t2.large aws instances - but crashes consistently on
> > c5.large aws instances, which i think explains why you couldn't reproduce
> > it...
> > dimitry's test fails on the c5.large, and succeeds on the t2.large (rest
> of
> > the tests you requested, pass on both). output attached. (i had to add
> sudo
> > and change protobuf-python -> python protobuf).
> >
> > pypy crashes after restore on my personal laptop as well, but
> unfortunatly
> > the tests didn't run on my laptop, output exception and cpuinfo also
> > attached.
> >
> > i'm creating a VM for you guys on AWS with a c5.large instance type to
> work
> > on, will send connection details later on a private email.
> > i'm using the following ami, at eu-west-1 aws region
> > "ami-0741d47e" #
> > ubuntu/images/hvm-ssd/ubuntu-artful-17.10-amd64-server-20180102
>
> Thank you for this VM. Today we was able to do some experiments.
>
> * Now we understand that the mxcsr register isn't dumped.
>
> * We suspect that this is a kernel bug. And it was probably fixed by
> this patch https://patchwork.kernel.org/patch/9567939/. It was pushed
> into the 4.14 kernel. I checked that Dmitry's test works correctly on this
> kernel.
>
> It can be installed from this repo:
> https://launchpad.net/~canonical-kernel-team/+archive/ubuntu/unstable
>
> * We are still not sure that our way of dumping and restoring an fpu
> state works properly in all cases.
>
> That all news for today.
>
> Thanks,
> Andrei
>
> >
> > i'll also finish writing a script to reproduce the issue, and will send
> you
> > the instructions in that email.
> >
> > thanks you very much,
> > Shlomi.
> >
> >
> >
> >
> > On Sun, Jan 28, 2018 at 9:01 PM, Andrei Vagin <avagin at virtuozzo.com>
> wrote:
> >
> > > On Sat, Jan 27, 2018 at 12:28:31PM -0800, Andrei Vagin wrote:
> > > > On Fri, Jan 26, 2018 at 02:02:35PM +0200, Shlomi Matichin wrote:
> > > > >    0x00007fc88f5c7788: jmpq   0x7fc88f5c7706
> > > > >    0x00007fc88f5c778d: nopl   (%rax)
> > > > >    0x00007fc88f5c7790: movl   $0x0,0x4(%r13)
> > > > >    0x00007fc88f5c7798: jmpq   0x7fc88f5c76fc
> > > > >    0x00007fc88f5c779d: nopl   (%rax)
> > > > >    0x00007fc88f5c77a0: movl   $0x0,0x0(%r13)
> > > > >    0x00007fc88f5c77a8: jmpq   0x7fc88f5c76ee
> > > > >    0x00007fc88f5c77ad: pxor   %xmm3,%xmm3
> > > > > => 0x00007fc88f5c77b1: cvtsd2ss %xmm0,%xmm3
> > > >
> > > > Looks like we incorrectly save fpu state...
> > > >
> > > > I tried to reproduce this issue on my laptop, in digital ocean with
> the
> > > same
> > > > ubuntu version, and I even created an aws account. But in all my
> > > attempts,
> > > > everything works as expected.
> > > >
> > > > Could you write a detailed instruction how you reproduce this bug on
> a
> > > > ec2 instance? What image do you use? Maybe you can create there an
> > > > instance and give us access to it?
> > > >
> > > > Could you show registers before and after dump/restore?
> > > >
> > > > For that you need to attach to a target process by gdb and call "
> info
> > > > all-registers", then you need to detach from a process, do
> dump/restore
> > > > and attach again to get registers. Pls, don't forget to check that
> the
> > > > issue is reproduced in this case.
> > >
> > > We have an idea that mxcsr isn't dumped properlly in your case. And
> Dima
> > > wrote a test to check this. Could you try to run it?
> > >
> > > 1. git clone https://github.com/avagin/criu -b fpu2
> > > 2. cd criu
> > > 3. apt-get update && apt-get install -y \
> > >                 build-essential \
> > >                 protobuf-c-compiler \
> > >                 libprotobuf-c0-dev \
> > >                 libprotobuf-dev \
> > >                 bsdmainutils \
> > >                 protobuf-compiler \
> > >                 python-minimal \
> > >                 libaio-dev \
> > >                 libcap-dev \
> > >                 iptables \
> > >                 libnl-3-dev \
> > >                 libnl-route-3-dev \
> > >                 libselinux-dev \
> > >                 pkg-config \
> > >                 git-core \
> > >                 libnet-dev \
> > >                 gcc \
> > >                 python-yaml protobuf-python
> > > 4. make
> > > 5. make -C test/zdtm/lib
> > > 6. python test/zdtm.py run -t zdtm/static/fpu02
> > >
> > > In addition, you can try to run other fpu tests:
> > > 7. python test/zdtm.py run -t zdtm/static/sse00 -t zdtm/static/sse20
> -t
> > > zdtm/static/mmx00 -t zdtm/static/fpu00
> > >
> > > Thanks,
> > > Andrei
> > >
> > > >
> > > > Thanks,
> > > > Andrei
> > >
>
> > sudo python test/zdtm.py run -t zdtm/static/fpu02
> > Warn  (criu/kerndat.c:804): Can't load /run/criu.kdat
> > === Run 1/1 ================ zdtm/static/fpu02
> >
> > ========================== Run zdtm/static/fpu02 in h
> ==========================
> >  DEP       fpu02.d
> >  CC        fpu02.o
> >  LINK      fpu02
> > Start test
> > ./fpu02 --pidfile=fpu02.pid --outfile=fpu02.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/fpu02(57) to die for 0.100000
> > Removing dump/zdtm/static/fpu02/57
> > ========================= Test zdtm/static/fpu02 PASS
> ==========================
> >
> > ========================= Run zdtm/static/fpu02 in ns
> ==========================
> > Construct root for zdtm/static/fpu02
> > Start test
> > ./fpu02 --pidfile=fpu02.pid --outfile=fpu02.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/fpu02(121) to die for 0.100000
> > Removing dump/zdtm/static/fpu02/100
> > ========================= Test zdtm/static/fpu02 PASS
> ==========================
> >
> > ========================= Run zdtm/static/fpu02 in uns
> =========================
> > Start test
> > ./fpu02 --pidfile=fpu02.pid --outfile=fpu02.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/fpu02(204) to die for 0.100000
> > Removing dump/zdtm/static/fpu02/182
> > ========================= Test zdtm/static/fpu02 PASS
> ==========================
> >
> >
> > #######################################################################3
> > ########################################################################
> > ########################################################################
> > sudo python test/zdtm.py run -t zdtm/static/sse00 -t zdtm/static/sse20
> -t zdtm/static/mmx00 -t zdtm/static/fpu00
> > === Run 1/4 ====------------ zdtm/static/sse00
> >
> > ========================== Run zdtm/static/sse00 in h
> ==========================
> >  DEP       sse00.d
> >  CC        sse00.o
> >  LINK      sse00
> > Start test
> > ./sse00 --pidfile=sse00.pid --outfile=sse00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/sse00(57) to die for 0.100000
> > Removing dump/zdtm/static/sse00/57
> > ========================= Test zdtm/static/sse00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse00 in ns
> ==========================
> > Start test
> > ./sse00 --pidfile=sse00.pid --outfile=sse00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/sse00(121) to die for 0.100000
> > Removing dump/zdtm/static/sse00/100
> > ========================= Test zdtm/static/sse00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse00 in uns
> =========================
> > Start test
> > ./sse00 --pidfile=sse00.pid --outfile=sse00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/sse00(204) to die for 0.100000
> > Removing dump/zdtm/static/sse00/182
> > ========================= Test zdtm/static/sse00 PASS
> ==========================
> > === Run 2/4 ========-------- zdtm/static/sse20
> >
> > ========================== Run zdtm/static/sse20 in h
> ==========================
> >  DEP       sse20.d
> >  CC        sse20.o
> >  LINK      sse20
> > Start test
> > ./sse20 --pidfile=sse20.pid --outfile=sse20.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/sse20(57) to die for 0.100000
> > Removing dump/zdtm/static/sse20/57
> > ========================= Test zdtm/static/sse20 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse20 in ns
> ==========================
> > Start test
> > ./sse20 --pidfile=sse20.pid --outfile=sse20.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/sse20(121) to die for 0.100000
> > Removing dump/zdtm/static/sse20/100
> > ========================= Test zdtm/static/sse20 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse20 in uns
> =========================
> > Start test
> > ./sse20 --pidfile=sse20.pid --outfile=sse20.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/sse20(204) to die for 0.100000
> > Removing dump/zdtm/static/sse20/182
> > ========================= Test zdtm/static/sse20 PASS
> ==========================
> > === Run 3/4 ============---- zdtm/static/mmx00
> >
> > ========================== Run zdtm/static/mmx00 in h
> ==========================
> >  DEP       mmx00.d
> >  CC        mmx00.o
> >  LINK      mmx00
> > Start test
> > ./mmx00 --pidfile=mmx00.pid --outfile=mmx00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/mmx00(57) to die for 0.100000
> > Removing dump/zdtm/static/mmx00/57
> > ========================= Test zdtm/static/mmx00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/mmx00 in ns
> ==========================
> > Start test
> > ./mmx00 --pidfile=mmx00.pid --outfile=mmx00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/mmx00(121) to die for 0.100000
> > Removing dump/zdtm/static/mmx00/100
> > ========================= Test zdtm/static/mmx00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/mmx00 in uns
> =========================
> > Start test
> > ./mmx00 --pidfile=mmx00.pid --outfile=mmx00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/mmx00(204) to die for 0.100000
> > Removing dump/zdtm/static/mmx00/182
> > ========================= Test zdtm/static/mmx00 PASS
> ==========================
> > === Run 4/4 ================ zdtm/static/fpu00
> >
> > ========================== Run zdtm/static/fpu00 in h
> ==========================
> >  DEP       fpu00.d
> >  CC        fpu00.o
> >  LINK      fpu00
> > Start test
> > ./fpu00 --pidfile=fpu00.pid --outfile=fpu00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/fpu00(57) to die for 0.100000
> > Removing dump/zdtm/static/fpu00/57
> > ========================= Test zdtm/static/fpu00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/fpu00 in ns
> ==========================
> > Start test
> > ./fpu00 --pidfile=fpu00.pid --outfile=fpu00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/fpu00(121) to die for 0.100000
> > Removing dump/zdtm/static/fpu00/100
> > ========================= Test zdtm/static/fpu00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/fpu00 in uns
> =========================
> > Start test
> > ./fpu00 --pidfile=fpu00.pid --outfile=fpu00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/fpu00(204) to die for 0.100000
> > Removing dump/zdtm/static/fpu00/182
> > ========================= Test zdtm/static/fpu00 PASS
> ==========================
>
> > sudo python test/zdtm.py run -t zdtm/static/fpu02
> > Warn  (criu/kerndat.c:804): Can't load /run/criu.kdat
> > === Run 1/1 ================ zdtm/static/fpu02
> >
> > ========================== Run zdtm/static/fpu02 in h
> ==========================
> >  DEP       fpu02.d
> >  CC        fpu02.o
> >  LINK      fpu02
> > Start test
> > ./fpu02 --pidfile=fpu02.pid --outfile=fpu02.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/fpu02(57) to die for 0.100000
> > ################# Test zdtm/static/fpu02 FAIL at result check
> ##################
> > Test output: ================================
> > 12:27:31.004:    57: before: 1f80, after: 0
> > 12:27:31.004:    57: FAIL: fpu02.c:81:  (errno = 11 (Resource
> temporarily unavailable))
> >
> >  <<< ================================
> > ##################################### FAIL
> #####################################
> >
> > ############################################################
> ##############
> > ############################################################
> ##############
> > ############################################################
> ##############
> > sudo python test/zdtm.py run -t zdtm/static/sse00 -t zdtm/static/sse20
> -t zdtm/static/mmx00 -t zdtm/static/fpu00
> > === Run 1/4 ====------------ zdtm/static/sse00
> >
> > ========================== Run zdtm/static/sse00 in h
> ==========================
> >  DEP       sse00.d
> >  CC        sse00.o
> >  LINK      sse00
> > Start test
> > ./sse00 --pidfile=sse00.pid --outfile=sse00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/sse00(57) to die for 0.100000
> > Removing dump/zdtm/static/sse00/57
> > ========================= Test zdtm/static/sse00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse00 in ns
> ==========================
> > Construct root for zdtm/static/sse00
> > Start test
> > ./sse00 --pidfile=sse00.pid --outfile=sse00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/sse00(121) to die for 0.100000
> > Removing dump/zdtm/static/sse00/100
> > ========================= Test zdtm/static/sse00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse00 in uns
> =========================
> > Start test
> > ./sse00 --pidfile=sse00.pid --outfile=sse00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/sse00(204) to die for 0.100000
> > Removing dump/zdtm/static/sse00/182
> > ========================= Test zdtm/static/sse00 PASS
> ==========================
> > === Run 2/4 ========-------- zdtm/static/sse20
> >
> > ========================== Run zdtm/static/sse20 in h
> ==========================
> >  DEP       sse20.d
> >  CC        sse20.o
> >  LINK      sse20
> > Start test
> > ./sse20 --pidfile=sse20.pid --outfile=sse20.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/sse20(57) to die for 0.100000
> > Removing dump/zdtm/static/sse20/57
> > ========================= Test zdtm/static/sse20 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse20 in ns
> ==========================
> > Start test
> > ./sse20 --pidfile=sse20.pid --outfile=sse20.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/sse20(121) to die for 0.100000
> > Removing dump/zdtm/static/sse20/100
> > ========================= Test zdtm/static/sse20 PASS
> ==========================
> >
> > ========================= Run zdtm/static/sse20 in uns
> =========================
> > Start test
> > ./sse20 --pidfile=sse20.pid --outfile=sse20.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/sse20(204) to die for 0.100000
> > Removing dump/zdtm/static/sse20/182
> > ========================= Test zdtm/static/sse20 PASS
> ==========================
> > === Run 3/4 ============---- zdtm/static/mmx00
> >
> > ========================== Run zdtm/static/mmx00 in h
> ==========================
> >  DEP       mmx00.d
> >  CC        mmx00.o
> >  LINK      mmx00
> > Start test
> > ./mmx00 --pidfile=mmx00.pid --outfile=mmx00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/mmx00(57) to die for 0.100000
> > Removing dump/zdtm/static/mmx00/57
> > ========================= Test zdtm/static/mmx00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/mmx00 in ns
> ==========================
> > Start test
> > ./mmx00 --pidfile=mmx00.pid --outfile=mmx00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/mmx00(121) to die for 0.100000
> > Removing dump/zdtm/static/mmx00/100
> > ========================= Test zdtm/static/mmx00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/mmx00 in uns
> =========================
> > Start test
> > ./mmx00 --pidfile=mmx00.pid --outfile=mmx00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/mmx00(204) to die for 0.100000
> > Removing dump/zdtm/static/mmx00/182
> > ========================= Test zdtm/static/mmx00 PASS
> ==========================
> > === Run 4/4 ================ zdtm/static/fpu00
> >
> > ========================== Run zdtm/static/fpu00 in h
> ==========================
> >  DEP       fpu00.d
> >  CC        fpu00.o
> >  LINK      fpu00
> > Start test
> > ./fpu00 --pidfile=fpu00.pid --outfile=fpu00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  57
> > Wait for zdtm/static/fpu00(57) to die for 0.100000
> > Removing dump/zdtm/static/fpu00/57
> > ========================= Test zdtm/static/fpu00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/fpu00 in ns
> ==========================
> > Start test
> > ./fpu00 --pidfile=fpu00.pid --outfile=fpu00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  121
> > Wait for zdtm/static/fpu00(121) to die for 0.100000
> > Removing dump/zdtm/static/fpu00/100
> > ========================= Test zdtm/static/fpu00 PASS
> ==========================
> >
> > ========================= Run zdtm/static/fpu00 in uns
> =========================
> > Start test
> > ./fpu00 --pidfile=fpu00.pid --outfile=fpu00.out
> > Run criu dump
> > Run criu restore
> > Send the 15 signal to  204
> > Wait for zdtm/static/fpu00(204) to die for 0.100000
> > Removing dump/zdtm/static/fpu00/182
> > ========================= Test zdtm/static/fpu00 PASS
> ==========================
>
> > cat /proc/cpuinfo
> > processor: 0
> > vendor_id: GenuineIntel
> > cpu family: 6
> > model: 85
> > model name: Intel(R) Xeon(R) Platinum 8124M CPU @ 3.00GHz
> > stepping: 3
> > microcode: 0x100013e
> > cpu MHz: 3000.000
> > cache size: 25344 KB
> > physical id: 0
> > siblings: 2
> > core id: 0
> > cpu cores: 1
> > apicid: 0
> > initial apicid: 0
> > fpu: yes
> > fpu_exception: yes
> > cpuid level: 13
> > wp: yes
> > flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
> pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm
> constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni
> pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt
> tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm
> 3dnowprefetch fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm
> mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw
> avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke
> > bugs:
> > bogomips: 6000.00
> > clflush size: 64
> > cache_alignment: 64
> > address sizes: 46 bits physical, 48 bits virtual
> > power management:
> >
> > processor: 1
> > vendor_id: GenuineIntel
> > cpu family: 6
> > model: 85
> > model name: Intel(R) Xeon(R) Platinum 8124M CPU @ 3.00GHz
> > stepping: 3
> > microcode: 0x100013e
> > cpu MHz: 3000.000
> > cache size: 25344 KB
> > physical id: 0
> > siblings: 2
> > core id: 0
> > cpu cores: 1
> > apicid: 1
> > initial apicid: 1
> > fpu: yes
> > fpu_exception: yes
> > cpuid level: 13
> > wp: yes
> > flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
> pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm
> constant_tsc rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni
> pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt
> tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm
> 3dnowprefetch fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm
> mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw
> avx512vl xsaveopt xsavec xgetbv1 xsaves ida arat pku ospke
> > bugs:
> > bogomips: 6000.00
> > clflush size: 64
> > cache_alignment: 64
> > address sizes: 46 bits physical, 48 bits virtual
> > power management:
> >
>
> > processor     : 0
> > vendor_id     : GenuineIntel
> > cpu family    : 6
> > model         : 78
> > model name    : Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz
> > stepping      : 3
> > microcode     : 0xba
> > cpu MHz               : 2600.000
> > cache size    : 4096 KB
> > physical id   : 0
> > siblings      : 4
> > core id               : 0
> > cpu cores     : 2
> > apicid                : 0
> > initial apicid        : 0
> > fpu           : yes
> > fpu_exception : yes
> > cpuid level   : 22
> > wp            : yes
> > flags         : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx
> pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl
> xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64
> monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2
> x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm
> abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow
> vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms
> invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves
> dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
> > bugs          : cpu_meltdown spectre_v1 spectre_v2
> > bogomips      : 5184.00
> > clflush size  : 64
> > cache_alignment       : 64
> > address sizes : 39 bits physical, 48 bits virtual
> > power management:
> >
> > processor     : 1
> > vendor_id     : GenuineIntel
> > cpu family    : 6
> > model         : 78
> > model name    : Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz
> > stepping      : 3
> > microcode     : 0xba
> > cpu MHz               : 2600.000
> > cache size    : 4096 KB
> > physical id   : 0
> > siblings      : 4
> > core id               : 1
> > cpu cores     : 2
> > apicid                : 2
> > initial apicid        : 2
> > fpu           : yes
> > fpu_exception : yes
> > cpuid level   : 22
> > wp            : yes
> > flags         : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx
> pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl
> xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64
> monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2
> x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm
> abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow
> vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms
> invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves
> dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
> > bugs          : cpu_meltdown spectre_v1 spectre_v2
> > bogomips      : 5184.00
> > clflush size  : 64
> > cache_alignment       : 64
> > address sizes : 39 bits physical, 48 bits virtual
> > power management:
> >
> > processor     : 2
> > vendor_id     : GenuineIntel
> > cpu family    : 6
> > model         : 78
> > model name    : Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz
> > stepping      : 3
> > microcode     : 0xba
> > cpu MHz               : 2600.000
> > cache size    : 4096 KB
> > physical id   : 0
> > siblings      : 4
> > core id               : 0
> > cpu cores     : 2
> > apicid                : 1
> > initial apicid        : 1
> > fpu           : yes
> > fpu_exception : yes
> > cpuid level   : 22
> > wp            : yes
> > flags         : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx
> pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl
> xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64
> monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2
> x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm
> abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow
> vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms
> invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves
> dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
> > bugs          : cpu_meltdown spectre_v1 spectre_v2
> > bogomips      : 5184.00
> > clflush size  : 64
> > cache_alignment       : 64
> > address sizes : 39 bits physical, 48 bits virtual
> > power management:
> >
> > processor     : 3
> > vendor_id     : GenuineIntel
> > cpu family    : 6
> > model         : 78
> > model name    : Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz
> > stepping      : 3
> > microcode     : 0xba
> > cpu MHz               : 2600.000
> > cache size    : 4096 KB
> > physical id   : 0
> > siblings      : 4
> > core id               : 1
> > cpu cores     : 2
> > apicid                : 3
> > initial apicid        : 3
> > fpu           : yes
> > fpu_exception : yes
> > cpuid level   : 22
> > wp            : yes
> > flags         : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx
> pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl
> xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64
> monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2
> x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm
> abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow
> vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms
> invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves
> dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
> > bugs          : cpu_meltdown spectre_v1 spectre_v2
> > bogomips      : 5184.00
> > clflush size  : 64
> > cache_alignment       : 64
> > address sizes : 39 bits physical, 48 bits virtual
> > power management:
> >
>
> > sudo python test/zdtm.py run -t zdtm/static/fpu02
> > The kernel is tainted: '12289\n'
> > Traceback (most recent call last):
> >   File "test/zdtm.py", line 2164, in <module>
> >     opts['action'](opts)
> >   File "test/zdtm.py", line 1836, in run_tests
> >     launcher = Launcher(opts, len(torun))
> >   File "test/zdtm.py", line 1544, in __init__
> >     raise Exception("The kernel is tainted: %r" % self.__taint)
> > Exception: The kernel is tainted: '12289\n'
> > shlomi at shlompad:/tmp/criu/criu$ sudo python test/zdtm.py run -t
> zdtm/static/sse00 -t zdtm/static/sse20  -t zdtm/static/mmx00 -t
> zdtm/static/fpu00
> > The kernel is tainted: '12289\n'
> > Traceback (most recent call last):
> >   File "test/zdtm.py", line 2164, in <module>
> >     opts['action'](opts)
> >   File "test/zdtm.py", line 1836, in run_tests
> >     launcher = Launcher(opts, len(torun))
> >   File "test/zdtm.py", line 1544, in __init__
> >     raise Exception("The kernel is tainted: %r" % self.__taint)
> > Exception: The kernel is tainted: '12289\n'
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvz.org/pipermail/criu/attachments/20180130/9daf700a/attachment-0001.html>


More information about the CRIU mailing list