Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Kernel panic when launching QEMU
#1
Hi all,

-Host: Ubuntu 16.04 (in Virtual Box)
-Petalinux and SDK version: 2016.3
-XZD version: XZD20161231

I have followed the steps shown in the last XZD user manual (january 6, 2017) to launch Xen on QEMU, but I'm having some problems. When I execute the command to launch the image on QEMU, sometimes (1 / 10) the launching seems to be good, but in the rest of the cases a kernel panic occurs. This is how the kernel panic looks like:

[   49.994179] Call trace:
[   49.996072] [<ffffff8008088840>] dump_backtrace+0x0/0x198
[   49.996982] [<ffffff80080889ec>] show_stack+0x14/0x20
[   49.997567] [<ffffff80080bf910>] sched_show_task+0x98/0xf8
[   49.998254] [<ffffff80080e3d00>] rcu_check_callbacks+0x740/0x748
[   49.998755] [<ffffff80080e6a4c>] update_process_times+0x3c/0x68
[   49.999230] [<ffffff80080f5b3c>] tick_sched_handle.isra.5+0x3c/0x50
[   50.001318] [<ffffff80080f5b94>] tick_sched_timer+0x44/0x90
[   50.001933] [<ffffff80080e7400>] __hrtimer_run_queues+0xf0/0x178
[   50.002557] [<ffffff80080e7790>] hrtimer_interrupt+0x98/0x1c8
[   50.003283] [<ffffff8008633af0>] arch_timer_handler_virt+0x30/0x40
[   50.003966] [<ffffff80080dab68>] handle_percpu_devid_irq+0x78/0xa0
[   50.005726] [<ffffff80080d635c>] generic_handle_irq+0x24/0x38
[   50.006402] [<ffffff80080d6694>] __handle_domain_irq+0x5c/0xb8
[   50.007023] [<ffffff80080814bc>] gic_handle_irq+0x64/0xc0
[   50.007603] Exception stack(0xffffffc0328b7e40 to 0xffffffc0328b7f60)
[   50.008420] 7e40: 0000000000000000 0000000000000000 0000000000000001 0000000000000001
[   50.009126] 7e60: 00000000000001c0 0100000000000000 00297c1e00000000 00000000ffff0918
[   50.009731] 7e80: ffffffc0328ac9e0 ffffffc0328b4000 0000000000000780 0000000000000001
[   50.010877] 7ea0: 0000000000000001 dead000000000200 dead000000000100 ffffffbe00000000
[   50.011673] 7ec0: ffffff8008ad9000 ffffffc032809d28 000000000000000c 0000000000000000
[   50.013353] 7ee0: ffffffc0328b4000 ffffff8008ad9000 ffffffc0328b4000 ffffff8008ad9000
[   50.014122] 7f00: ffffff8008ab7ff0 ffffff8008b58000 ffffffc0328b4000 0000000000000000
[   50.014904] 7f20: 0000000000000000 ffffffc0328b7f60 ffffff800808567c ffffffc0328b7f60
[   50.015693] 7f40: ffffff8008085680 0000000060000145 ffffffc0328b7f70 7fffffffffffffff
[   50.016527] [<ffffff8008084720>] el1_irq+0xa0/0x100
[   50.017201] [<ffffff8008085680>] arch_cpu_idle+0x10/0x18
[   50.017919] [<ffffff80080cf36c>] cpu_startup_entry+0x144/0x1d8
[   50.019187] [<ffffff800808df90>] secondary_start_kernel+0x170/0x1c8
[   50.020968] [<000000002008184c>] 0x2008184c
[   50.022011] rcu_sched kthread starved for 5247 jiffies! g583 c582 f0x2 RCU_GP_WAIT_FQS(3) ->state=0x100
[   50.023441] rcu_sched       W ffffff8008085b1c     0     7      2 0x00000000
[   50.024350] Call trace:
[   50.024641] [<ffffff8008085b1c>] __switch_to+0xc4/0xd0
[   50.025238] [<ffffff80087d6734>] __schedule+0x19c/0x588
[   50.025721] [<ffffff80087d6b50>] schedule+0x30/0x90
[   50.026034] [<ffffff80087d93e8>] schedule_timeout+0x108/0x1b0
[   50.028872] [<ffffff80080e2e10>] rcu_gp_kthread+0x368/0x7a0
[   50.029466] [<ffffff80080b60e8>] kthread+0xd0/0xe8
[   50.029889] [<ffffff8008084dd0>] ret_from_fork+0x10/0x40

The command that I'm using to launch QEMU is the one shown in the user manual.

Anyway, I have observe that even when the image booting seems to be correct and I arrive into Dom0 terminal, the system never mounts /proc, /sys and /debug directories, and even if the kernel panic hasn't happened yet, it can happens also when I try to run a xl command or simply when Dom0 or the guest Dom1 is running. 

Here you have how the system never mounts the mentioned directories:

Starting network...
Starting Xilinx Xen Boot Scripts: mount: mounting none on /proc failed: Device or resource busy
mount: mounting none on /sys/ failed: Device or resource busy
mount: mounting none on /debug/ failed: No such file or directory

Finally, I can also observe that sometimes the launching process get stuck in some step and doesn't appear any kernel panic as for example in the next case:

tarting network...
Starting Xilinx Xen Boot Scripts: mount: mounting none on /proc failed: Device or resource busy
mount: mounting none on /sys/ failed: Device or resource busy
mount: mounting none on /debug/ failed: No such file or directory
[   42.827299] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   44.620198] macb ff0e0000.ethernet eth0: unable to generate target frequency: 25000000 Hz
[   44.621754] macb ff0e0000.ethernet eth0: link up (100/Half)
[   44.679022] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   50.693458] xenbr0: port 1(eth0) entered blocking state
[   50.696538] xenbr0: port 1(eth0) entered disabled state
[   50.725696] device eth0 entered promiscuous mode
udhcpc (v1.23.1) started
[   51.648543] xenbr0: port 1(eth0) entered blocking state
[   51.649553] xenbr0: port 1(eth0) entered forwarding state
Sending discover...
Sending select for 10.0.2.15...
Lease of 10.0.2.15 obtained, lease time 86400
deleting routers



Any answer will be welcome,
Best regards,
Pello
Reply
#2
(04-06-2017, 07:17 AM)pello.heriz Wrote: When I execute the command to launch the image on QEMU, sometimes (1 / 10) the launching seems to be good, but in the rest of the cases a kernel panic occurs.

...

Finally, I can also observe that sometimes the launching process get stuck in some step and doesn't appear any kernel panic as for example in the next case:

There are some issues with how QEMU emulates interrupts, which seem to strike certain host configurations worse than others.  (It rarely happens on my laptop, but other developers with similar laptop configurations frequently report this issue.)  We've been looking for a work-around with mixed success.  You could try running your Virtual Machine in VMWare instead of VirtualBox, or try running on a different computer, but in general it's best to run on an actual zcu102 board.

Quote:pello.heriz


Anyway, I have observe that even when the image booting seems to be correct and I arrive into Dom0 terminal, the system never mounts /proc, /sys and /debug directories, and even if the kernel panic hasn't happened yet, it can happens also when I try to run a xl command or simply when Dom0 or the guest Dom1 is running. 

Here you have how the system never mounts the mentioned directories:

Starting network...
Starting Xilinx Xen Boot Scripts: mount: mounting none on /proc failed: Device or resource busy
mount: mounting none on /sys/ failed: Device or resource busy
mount: mounting none on /debug/ failed: No such file or directory

Those messages are due to one of the bootscripts trying to mount devices that are already mounted due to their inclusion in the fstab.  You should safely be able to ignore these errors.

These errors will be eliminated in future XZD releases, which will be using a Yocto based rootfs instead of a buildroot one.

     Nate
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)