Hello all,
I have been following the instructions for setting up workload automation
(http://gem5.org/WA-gem5) and I've hit a bit of a snag. I've compiled the ARM
Linux kernel 4.3 (https://github.com/gem5/linux-arm-gem5) with the 9P options
enabled, set up diod, and applied the patch to add the VirtIO9PDiod device to
my gem5 simulation. I wanted to start up an Ubuntu machine and just run the 9P
mount commands at the terminal as a test, but gem5 fails during kernel startup.
It appears that when the kernel probes the PCI devices, the crossbar address
ranges collide:
fatal: system.iobus has two ports responding within range [0x2f001024 :
0x2f001027]:
system.pci_ide.pio
system.realview.viopci.pio
If I turn on the AddrRanges debug I see this:
system.iobus: Received range change from slave port system.realview.viopci.pio
(master_port_id=9)
system.iobus: Adding range [0x2f001020 : 0x2f001039] for id 9
system.iobus: Aggregating address ranges
system.iobus: -- Adding range [0x10000000 : 0x1000002b]
system.iobus: -- Adding range [0x1c010000 : 0x1c0100d3]
system.iobus: -- Adding range [0x1c060000 : 0x1c060ffe]
system.iobus: -- Adding range [0x1c070000 : 0x1c070ffe]
system.iobus: -- Adding range [0x1c090000 : 0x1c090ffe]
system.iobus: -- Adding range [0x1c170000 : 0x1c170ffe]
system.iobus: -- Adding range [0x2f001000 : 0x2f00100f]
system.iobus: -- Adding range [0x2f001010 : 0x2f001017]
system.iobus: -- Adding range [0x2f001018 : 0x2f00101f]
system.iobus: -- Adding range [0x2f001020 : 0x2f001039]
system.iobus: -- Adding range [0x30000000 : 0x3fffffff]
system.iobus: -- Adding range [0x80000000 : 0xbfffffff]
system.iobus: Received range change from slave port system.pci_ide.pio
(master_port_id=7)
system.iobus: Adding range [0x2f001010 : 0x2f001017] for id 7
system.iobus: Adding range [0x2f001024 : 0x2f001027] for id 7 <---------
fails here
The command line I'm running is:
build/ARM/gem5.opt configs/example/fs.py --kernel=vmlinux-gem5-aarch64-9p
--dtb=armv8_gem5_v1_1cpu.dtb --disk-image=aarch64-ubuntu-trusty-headless.img
--machine-type=VExpress_GEM5_V1 -n 1 --mem-size=1GB
I get the same error for 32bit and 64bit ARM simulations. I've been stepping
through the kernel to try to understand how these ranges are being determined,
but in the mean time I was wondering if anyone had any ideas about how to fix
this.
Regards,
Paul
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users