Bug 1872559

Summary: get "PANIC: page fault (supervisor read data, page not present)" when start Netapp ONTAP simulator in KVM
Product: Red Hat Enterprise Linux 8 Reporter: JianHong Yin <jiyin>
Component: qemu-kvmAssignee: Virtualization Maintenance <virt-maint>
qemu-kvm sub component: General QA Contact: CongLi <coli>
Status: CLOSED NOTABUG Docs Contact:
Severity: unspecified    
Priority: unspecified CC: jinzhao, juzhang, virt-maint, xzhou
Version: 8.3   
Target Milestone: rc   
Target Release: 8.0   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-08-26 07:27:30 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
vm xml on RHEL-8.3
none
vm xml on Fedora-32 - works fine none

Description JianHong Yin 2020-08-26 04:36:40 UTC
Description of problem:

always get below error while start Netapp ONTAP simulator in KVM on RHEL-8
'''
NetApp Data ONTAP 9.7
PANIC : page fault (supervisor read data, page not present) on VA 0x3ffffda0 cs
:rip 0x20:0xffffffff82478210 rflags 0x10207
'''

Version-Release number of selected component (if applicable):
RHEL-8

How reproducible:
always

Steps to Reproduce:
1. install dependence:
git clone https://github.com/tcler/kiss-vm-ns; sudo make -C kiss-vm-ns; sudo vm --prepare

2. download netapp ontap simulator image and convert to qcow2
wget http://download.devel.redhat.com/qa/rhts/lookaside/Netapp-Simulator/vsim-netapp-DOT9.7-cm_nodar.ova
tar vxf vsim-netapp-DOT9.7-cm_nodar.ova
for i in {1..4}; do qemu-img convert -f vmdk -O qcow2 vsim-NetAppDOT-simulate-disk${i}.vmdk vsim-NetAppDOT-simulate-disk${i}.qcow2; done

3. start simulator in KVM
vm -n ontap-node ONTAP-simulator -i vsim-NetAppDOT-simulate-disk1.qcow2 \
	--disk=vsim-NetAppDOT-simulate-disk{2..4}.qcow2,bus=ide \
	--net=default,e1000  --net=default,e1000 --net-macvtap=-,e1000 --net-macvtap=-,e1000 \
	--noauto --force --nocloud --osv freebsd11.2 --bus=ide --msize $((6*1024)) --cpus 2

sleep 20

4. check/review start process
vm vnc ontap-node;  #and call vncviewer to check the start process

# or use vm -vncget option to get vnc screen info
vm -vncget ontap-node


Actual results:
always get panic
'''
...
Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [x86_64/freebsd/image1/kernel]...
x86_64/freebsd/image1/kernel text=0x10a07f text=0xa531c0 data=0x39b1b8+0xd14f48
data=0x3f8 syms=[0x8+0xa1070+0x8+0x7da74]
x86_64/freebsd/image1/platform.ko data=0x436ea0+0x918e8 syms=[0x8+0x21768+0x8+0x
1b903]
NetApp Data ONTAP 9.7
PANIC : page fault (supervisor read data, page not present) on VA 0x3ffffda0 cs
:rip 0x20:0xffffffff82478210 rflags 0x10207
version: 9.7: Thu Jan  9 06:24:09 EST 2020
conf  : x86_64.sim.nodar
cpuid = 0
Uptime: 1s
The operating system has halted.
Please press any key to reboot.
'''

Expected results:
the simulator can start normaly

Additional info:
 1. hit same issue after update libvirt/qemu-kvm with advanced-virt repo

 2. it works file on Fedora-32/Fedora-33 at same bare-metal machine.

Comment 1 JianHong Yin 2020-08-26 04:40:12 UTC
Additional info:
 1. hit same issue after update libvirt/qemu-kvm with advanced-virt repo

 2. it works fine on Fedora-32/Fedora-33 at same bare-metal machine.


machine type on RHEL-8:
# vm xml ontap-node | grep machine
    <partition>/machine</partition>
    <type arch='x86_64' machine='pc-i440fx-rhel7.6.0'>hvm</type>

machine type on Fedora-32:
# vm xml ontap-node1 | grep machine
    <partition>/machine</partition>
    <type arch='x86_64' machine='pc-i440fx-4.2'>hvm</type>

Comment 2 JianHong Yin 2020-08-26 04:47:10 UTC
Created attachment 1712619 [details]
vm xml on RHEL-8.3

Comment 3 JianHong Yin 2020-08-26 04:49:24 UTC
Created attachment 1712620 [details]
vm xml on Fedora-32 - works fine

Comment 4 CongLi 2020-08-26 05:04:14 UTC
Hi Jianhong,

Can you please provide the qemu-kvm, libvirt, kernel(both guest and host) version?

Thanks.

Comment 5 JianHong Yin 2020-08-26 05:11:27 UTC
(In reply to CongLi from comment #4)
> Hi Jianhong,
> 
> Can you please provide the qemu-kvm, libvirt, kernel(both guest and host)
> version?
> 
> Thanks.

libvirt-6.0.0-27.module+el8.3.0+7602+4b93512e.x86_64
qemu-kvm-4.2.0-33.module+el8.3.0+7705+f09d73e4.x86_64
kernel-4.18.0-234.el8.x86_64

Comment 6 JianHong Yin 2020-08-26 05:15:39 UTC
(In reply to JianHong Yin from comment #5)
> (In reply to CongLi from comment #4)
> > Hi Jianhong,
> > 
> > Can you please provide the qemu-kvm, libvirt, kernel(both guest and host)
> > version?
> > 
> > Thanks.
> 
> libvirt-6.0.0-27.module+el8.3.0+7602+4b93512e.x86_64
> qemu-kvm-4.2.0-33.module+el8.3.0+7705+f09d73e4.x86_64
> kernel-4.18.0-234.el8.x86_64

the guest is not linux, it is ONTAP(based on FreeBSD 11).

I am curious why it works on Fedora, but not on RHEL-8.

Comment 7 JianHong Yin 2020-08-26 05:36:21 UTC
test matrix:

RHEL-8.2.0                            panic page fault (supervisor read data, page not present)
RHEL-8.3.0-20200825.0                 panic page fault (supervisor read data, page not present)
RHEL-8.3.0-20200825.0+advanced-virt   panic page fault (supervisor read data, page not present)
  libvirt-6.4.0-1.module+el8.3.0+6881+88468c00.x86_64
  qemu-kvm-5.0.0-0.module+el8.3.0+6620+5d5e1420.x86_64
  kernel-4.18.0-234.el8.x86_64

Fedora-32                             works fine
Fedora-33(rawhide)                    works fine