Thanks for your explaination.In<https://explaination.In> O3 type with 
multi-core 9P is ok.




________________________________

李翼超 charlie
Mobile:+86-15858232899<tel:+86-15858232899>
Email:liyic...@huawei.com<mailto:liyic...@huawei.com>


发件人: Gabe Black<gabe.bl...@gmail.com<mailto:gabe.bl...@gmail.com>>
收件人: gem5 users mailing list<gem5-users@gem5.org<mailto:gem5-users@gem5.org>>
抄送: Liyichao<liyic...@huawei.com<mailto:liyic...@huawei.com>>
主题: Re: [gem5-users] gem5 crash when mount by vio-9p protocol in KVM mode with 
more than 1 core
时间: 2021-03-16 07:24:15

I haven't looked at the code yet, but this is probably because the v9 
implementation is getting asynchronous input which might be received by one 
thread, which then tries to schedule an event on an event queue associated with 
another queue. Most of the time this is not an issue since gem5 is usually 
single threaded, but when using multiple cores with KVM, each core runs in its 
own thread. There's a way to add events to the event queue in another thread 
safely (ScopedMigration) which I'm assuming the v9 code is not using.

Gabe

On Sun, Mar 7, 2021 at 8:38 PM Liyichao via gem5-users 
<gem5-users@gem5.org<mailto:gem5-users@gem5.org>> wrote:
Hi All:

         When I use �Cvio-9p with fs_bigLITTLE.py, 1 core the mount cmd was ok, 
but more than 1 core, mount cmd will cause GEM5 crash

         1core:
         Gem5 cmd: ./build/ARM/gem5.opt --debug-flags=Exec  -d 
/home/l00515693/m5out configs/example/arm/fs_bigLITTLE.py --cpu-type=kvm 
--kernel=vmlinux --machine-type=VExpress_GEM5_V1 
--disk=expanded-aarch64-ubuntu-trusty-headless.img --caches 
--big-cpu-clock=2.6GHz --little-cpu-clock=2.6GHz --big-cpus=1 --little-cpus=0 
--mem-size=4GB --param 'system.realview.gic.gem5_extensions = True' 
--bootscript=./test.rcS --vio-9p
         Mount cmd in guest OS: mount -t 9p -o 
trans=virtio,version=9p2000.L,aname=/home/l00515693/m5out/9p/share gem5 /mnt/9p
    root@charlie:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       9.9G  3.3G  6.2G  35% /
devtmpfs        2.0G  4.0K  2.0G   1% /dev
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            396M   52K  396M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
none            100M     0  100M   0% /run/user
gem5            2.9T  1.8T  989G  65% /mnt/9p



         2core:
         Gem5 cmd: ./build/ARM/gem5.opt --debug-flags=Exec  -d 
/home/l00515693/m5out configs/example/arm/fs_bigLITTLE.py --cpu-type=kvm 
--kernel=vmlinux --machine-type=VExpress_GEM5_V1 
--disk=expanded-aarch64-ubuntu-trusty-headless.img --caches 
--big-cpu-clock=2.6GHz --little-cpu-clock=2.6GHz --big-cpus=2 --little-cpus=0 
--mem-size=4GB --param 'system.realview.gic.gem5_extensions = True' 
--bootscript=./test.rcS --vio-9p

         Mount cmd in guest OS: mount -t 9p -o 
trans=virtio,version=9p2000.L,aname=/home/l00515693/m5out/9p/share gem5 /mnt/9p

    GEM5 crash info:
    gem5.opt: build/ARM/sim/eventq_impl.hh:40: void 
EventQueue::schedule(Event*, Tick, bool): Assertion `when >= getCurTick()' 
failed.
Program aborted at tick 476281849910020
--- BEGIN LIBC BACKTRACE ---
./build/ARM/gem5.opt(_Z15print_backtracev+0x40)[0xaaaadd24e418]
./build/ARM/gem5.opt(_Z12abortHandleri+0x5c)[0xaaaadd25efa4]
linux-vdso.so.1(__kernel_rt_sigreturn+0x0)[0xffff9fea5688]
/lib/aarch64-linux-gnu/libc.so.6(raise+0xb0)[0xffff9f6634f8]
--- END LIBC BACKTRACE ---
Aborted (core dumped)

_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org<mailto:gem5-users@gem5.org>
To unsubscribe send an email to 
gem5-users-le...@gem5.org<mailto:gem5-users-le...@gem5.org>
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to