Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1629432 > unrolled thread

Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

Started byBorislav Petkov <bp@alien8.de>
First post2017-04-24 13:10 +0200
Last post2017-04-24 15:10 +0200
Articles 4 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [BUG] x86: failed to boot a kernel on a Ryzen machine Borislav Petkov <bp@alien8.de> - 2017-04-24 13:10 +0200
    Re: [BUG] x86: failed to boot a kernel on a Ryzen machine Satoru Takeuchi <satoru.takeuchi@gmail.com> - 2017-04-24 14:40 +0200
      Re: [BUG] x86: failed to boot a kernel on a Ryzen machine Borislav Petkov <bp@alien8.de> - 2017-04-24 14:50 +0200
        Re: [BUG] x86: failed to boot a kernel on a Ryzen machine Satoru Takeuchi <satoru.takeuchi@gmail.com> - 2017-04-24 15:10 +0200

#1629432 — Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

FromBorislav Petkov <bp@alien8.de>
Date2017-04-24 13:10 +0200
SubjectRe: [BUG] x86: failed to boot a kernel on a Ryzen machine
Message-ID<tzK2u-6io-21@gated-at.bofh.it>
On Mon, Apr 24, 2017 at 03:58:05PM +0900, Satoru Takeuchi wrote:
> Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot
> with the following panic log.
> 
> ```
> ...
> [    0.227720] raid6: sse2x1   gen()  7985 MB/s
> [    0.295709] raid6: sse2x1   xor()  8181 MB/s
> [    0.363706] raid6: sse2x2   gen() 17531 MB/s
> [    0.431699] raid6: sse2x2   xor() 11098 MB/s
> [    0.499693] raid6: sse2x4   gen() 18509 MB/s
> [    0.567688] raid6: sse2x4   xor() 10177 MB/s
> [    0.571692] invalid opcode: 0000 [#1] SMP
> [    0.572312] Modules linked in:
> [    0.572822] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8-ktest #1
> [    0.573734] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Ubuntu-1.8.2-1ubuntu1 04/01/2014
				^^^^^^^^^^^^^^

Next time your report a bug, say it is a guest on the *very* first line
of your report.

Now, how do you start your guest exactly? Full cmdline pls.

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

[toc] | [next] | [standalone]


#1629490

FromSatoru Takeuchi <satoru.takeuchi@gmail.com>
Date2017-04-24 14:40 +0200
Message-ID<tzLrA-6Zn-21@gated-at.bofh.it>
In reply to#1629432
At Mon, 24 Apr 2017 13:07:53 +0200,
Borislav Petkov wrote:
> 
> On Mon, Apr 24, 2017 at 03:58:05PM +0900, Satoru Takeuchi wrote:
> > Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot
> > with the following panic log.
> > 
> > ```
> > ...
> > [    0.227720] raid6: sse2x1   gen()  7985 MB/s
> > [    0.295709] raid6: sse2x1   xor()  8181 MB/s
> > [    0.363706] raid6: sse2x2   gen() 17531 MB/s
> > [    0.431699] raid6: sse2x2   xor() 11098 MB/s
> > [    0.499693] raid6: sse2x4   gen() 18509 MB/s
> > [    0.567688] raid6: sse2x4   xor() 10177 MB/s
> > [    0.571692] invalid opcode: 0000 [#1] SMP
> > [    0.572312] Modules linked in:
> > [    0.572822] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8-ktest #1
> > [    0.573734] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Ubuntu-1.8.2-1ubuntu1 04/01/2014
> 				^^^^^^^^^^^^^^
> 
> Next time your report a bug, say it is a guest on the *very* first line
> of your report.

I'm very sorry.

> 
> Now, how do you start your guest exactly? Full cmdline pls.

I used the following auto-test tool (its backend is ktest).

https://github.com/satoru-takeuchi/elkdat

This problem can be reproduced by the following command on Ubuntu 16.04.

```
$ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev
...
$ sudo usermod -aG libvirt <username>
```

Log out and back in here.

```
$ sudo sed -i'' "s/Specification.all = nil/Specification.reset/" /usr/lib/ruby/vendor_ruby/vagrant/bundler.rb         # See https://github.com/vagrant-libvirt/vagrant-libvirt/issues/575 for more details about this patching
$ vagrant plugin install vagrant-libvirt
$ git clone https://github.com/satoru-takeuchi/elkdat.git
...
$ cp -r /path/to/linux/source elkdat/linux
$ cd elkdat
$ ./init                                     # start guest
...
$ pushd linux
...
$ git checkout v4.11-rc8
...
$ popd
...
$ ./test boot                                # build and boot v4.11-rc8
...                                          # kernel panic happens here
```

The core of the starting guest process of above mentioned tools is as follows.

1. Add the vagrant box for the guest VM

```
$ vagrant box add elastic/ubuntu-16.04-x86_64 --provider libvirt
...
```

2. Start the VM with the following Vagrantfile.

```
$ cd elkdat
$ vagrant up
```

The summary of Vagrantfile is here.

```
Vagrant.configure("2") do |config|
  ...
  config.vm.define :ktest do |vm|
    vm.vm.box = "elastic/ubuntu-16.04-x86_64"
    vm.vm.synced_folder './', '/vagrant', type: 'rsync'
    vm.vm.provider :libvirt do |domain|
      domain.cpus = 2
    end
  end
  ...
end

```

Thanks,
Satoru


> 
> -- 
> Regards/Gruss,
>     Boris.
> 
> Good mailing practices for 400: avoid top-posting and trim the reply.

[toc] | [prev] | [next] | [standalone]


#1629491

FromBorislav Petkov <bp@alien8.de>
Date2017-04-24 14:50 +0200
Message-ID<tzLBf-72B-1@gated-at.bofh.it>
In reply to#1629490
On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote:
> I used the following auto-test tool (its backend is ktest).
> 
> https://github.com/satoru-takeuchi/elkdat
> 
> This problem can be reproduced by the following command on Ubuntu 16.04.
> 
> ```
> $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev

Can you minimize that reproducer? I.e, can you dump only the qemu
command line options from this setup?

They're enough to be able to start a guest with your config without me
having to install all that other stuff.

Thanks.

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

[toc] | [prev] | [next] | [standalone]


#1629523

FromSatoru Takeuchi <satoru.takeuchi@gmail.com>
Date2017-04-24 15:10 +0200
Message-ID<tzLUC-7pd-13@gated-at.bofh.it>
In reply to#1629491
At Mon, 24 Apr 2017 14:48:46 +0200,
Borislav Petkov wrote:
> 
> On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote:
> > I used the following auto-test tool (its backend is ktest).
> > 
> > https://github.com/satoru-takeuchi/elkdat
> > 
> > This problem can be reproduced by the following command on Ubuntu 16.04.
> > 
> > ```
> > $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev
> 
> Can you minimize that reproducer? I.e, can you dump only the qemu
> command line options from this setup?
> 
> They're enough to be able to start a guest with your config without me
> having to install all that other stuff.

OK. Is it sufficient information?

```
qemu-system-x86_64 -enable-kvm -name elkdat_ktest -S -machine pc-i440fx-xenial,accel=kvm,usb=off -cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw,+3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+ht,+vme -m 512 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 12de0e96-5d01-4ab0-b0b3-165f55999960 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-elkdat_ktest/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/libvirt/images/elkdat_ktest.img,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x3,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=26,id=hostnet0,vhost=on,vhostfd=28 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e4:6f:3e,bus=pci.0,addr=0x5 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:0 -k en-us -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on
```

Thanks,
Satoru

> 
> Thanks.
> 
> -- 
> Regards/Gruss,
>     Boris.
> 
> Good mailing practices for 400: avoid top-posting and trim the reply.

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web