Fixed
Created: Feb 6, 2018
Updated: Dec 3, 2018
Resolved Date: Mar 2, 2018
Found In Version: 9.0.0.15
Fix Version: 9.0.0.15
Severity: Standard
Applicable for: Wind River Linux 9
Component/s: Kernel
Run 'virsh console vm1' on host, get calltrace
[ OK ] Listening on Journal Socket.
Mounting Huge Pages File System...
[ 5.845207] BUG: sleeping function called from invalid context at /ovp9g/build_test/tmp/work-shared/qemux86-64/kernel-source/kernel/locking/rtmutex.c:995
[ 5.845207] in_atomic(): 1, irqs_disabled(): 0, pid: 135, name: (mount)
[ 5.845207] Preemption disabled at:[<ffffffff814c16e4>] get_random_long+0x34/0xc0
[ 5.845207]
[ 5.845207] CPU: 1 PID: 135 Comm: (mount) Not tainted 4.8.26-rt10-WR9.0.0.15_ovp #1
[ 5.845207] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.9.3-0-ge2fc41e-prebuilt.qemu-project.org 04/01/2014
[ 5.845207] 0000000000000000 ffff88001c553ca0 ffffffff813e289f 0000000000000000
[ 5.845207] ffff88001cfb4800 ffff88001c553cc0 ffffffff81083ccd ffffffff81ec0788
[ 5.845207] ffff88001cfdd600 ffff88001c553cd8 ffffffff81953980 ffff88001f113b00
[ 5.845207] Call Trace:
[ 5.845207] [<ffffffff813e289f>] dump_stack+0x4f/0x70
[ 5.845207] [<ffffffff81083ccd>] ___might_sleep+0xdd/0x150
[ 5.845207] [<ffffffff81953980>] rt_spin_lock+0x20/0x50
[ 5.845207] [<ffffffff814c151b>] _extract_crng.constprop.23+0x3b/0xa0
[ 5.845207] [<ffffffff814c1752>] get_random_long+0xa2/0xc0
[ 5.845207] [<ffffffff81051ee5>] arch_mmap_rnd+0x25/0x60
[ 5.845207] [<ffffffff810520b5>] arch_pick_mmap_layout+0x195/0x200
[ 5.845207] [<ffffffff811a7386>] setup_new_exec+0x26/0x190
[ 5.845207] [<ffffffff811f7b38>] load_elf_binary+0x3e8/0x16b0
[ 5.845207] [<ffffffff813fefa7>] ? debug_smp_processor_id+0x17/0x20
[ 5.845207] [<ffffffff8105e0e7>] ? pin_current_cpu+0x87/0x1f0
[ 5.845207] [<ffffffff8105e266>] ? unpin_current_cpu+0x16/0x70
[ 5.845207] [<ffffffff811a64e1>] search_binary_handler+0xa1/0x200
[ 5.845207] [<ffffffff811a70dc>] do_execveat_common.isra.15+0x57c/0x770
[ 5.845207] [<ffffffff811a752a>] SyS_execve+0x3a/0x50
[ 5.845207] [<ffffffff81001c30>] do_syscall_64+0x50/0xa0
[ 5.845207] [<ffffffff81953e7c>] entry_SYSCALL64_slow_path+0x25/0x25
[ 5.898199] fuse init (API version 7.25)
[ 5.942193] Installing knfsd (copyright (C) 1996 ).
[ 5.955191] softdog: initialized. soft_noboot=0 soft_margin=60 sec soft_panic=0 (nowayout=0)
Starting Load Kernel Modules...
[ OK ] Reached target Slices.
1.Project
Host
--machines intel-x86-64 --templates feature/kexec,feature/kdump,feature/dpdk,feature/kernel-ovp-kvm --distro wrlinux-ovp --layer wr-dpdk --dl-layers
LINUX_KERNEL_TYPE = "ovp"
BB_NUMBER_PARSE_THREADS ?= "48"
BB_NUMBER_THREADS ?= "48"
PARALLEL_MAKE ?= "-j 48"
BB_NO_NETWORK = "0"
BB_NO_NETWORK_pn-netperf = "0"
BB_STRICT_CHECKSUM = "0"
LICENSE_FLAGS_WHITELIST +="non-commercial"
BB_DANGLINGAPPENDS_WARNONLY = "1"
IMAGE_FSTYPES_remove = " wic wic.bmap live hddimg"
IMAGE_INSTALL_append=" iperf3 netperf util-linux pciutils usbutils netcat trace-cmd"
IMAGE_FSTYPES_remove = " wic wic.bmap live hddimg"
Guest
--machines qemux86-64 --templates feature/dpdk,feature/kernel-ovp-guest --distro wrlinux-ovp --layer wr-dpdk --dl-layers
LINUX_KERNEL_TYPE = "ovp"
BB_NUMBER_PARSE_THREADS ?= "48"
BB_NUMBER_THREADS ?= "48"
PARALLEL_MAKE ?= "-j 48"
BB_NO_NETWORK = "0"
BB_NO_NETWORK_pn-netperf = "0"
BB_STRICT_CHECKSUM = "0"
LICENSE_FLAGS_WHITELIST +="non-commercial"
BB_DANGLINGAPPENDS_WARNONLY = "1"
IMAGE_FSTYPES_remove = " wic wic.bmap live hddimg"
IMAGE_INSTALL_append=" iperf3 netperf util-linux pciutils usbutils netcat trace-cmd"
IMAGE_FSTYPES_remove = " wic wic.bmap live hddimg"
2.Boot host
root@intel-x86-64:/tmp/share# cat /proc/cmdline
kernel console=ttyS0,115200n8 root=/dev/nfs rw nfsroot=128.224.165.20:/export/pxeboot/vlm-boards/24960/rootfs,v3 ip=dhcp ignore_loglevel selinux=0 enforcing=0 noinitrd transparent_hugepage=never default_hugepagesz=1G hugepagesz=1G hugepages=8 intel_iommu=on iommu=pt rootwait
root@intel-x86-64:/tmp/share# cat /proc/version
Linux version 4.8.26-rt10-WR9.0.0.15_ovp (gcc version 6.2.0 (GCC) ) #1 SMP PREEMPT RT Wed Feb 7 11:45:54 CST 2018
3.Boot guest with libvirt when setting accessmode='mapped', using virbr0 bridge.
<filesystem type='mount' accessmode='mapped'>
<source dir='/tmp/share'/>
<target dir='mshare'/>
<alias name='fs0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
</filesystem>
<interface type='bridge'>
<source bridge='virbr0'/>
<model type='virtio'/>
<mac address='00:16:3e:1a:b3:4a'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
4. boot guest
virsh define vm1.xml
virsh start vm1
virsh console vm1