Dear All, I have compiled Android x86 kernel configured for 64 bit target (http://www.android-x86.org/documents/customizekernel). I tried to run the kernel on Gem5 X86 ISA (I used the kernel mentioned above and the ICS disk image downloadable from gem5 website http://www.m5sim.org/BBench-gem5 ). I know the disk image was built for ARM ISA, but I guess for now that this is irrelevant to my problem.
When I run gem5, I get an error related to I/O address as shown below: -------------------------------------------------------------------------------------------------- /gem5/gem5-stable$ build/X86/gem5.opt configs/example/fs.py -b bbench-ics --kernel=vmlinux --frame-capture gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. gem5 compiled Nov 6 2013 20:50:31 gem5 started Nov 12 2013 15:01:22 gem5 executing on Thunderbird-UoT command line: build/X86/gem5.opt configs/example/fs.py -b bbench-ics --kernel=vmlinux --frame-capture warn: add_child('terminal'): child 'terminal' already has parent Global frequency set at 1000000000000 ticks per second info: kernel located at: /home/mostafa/gem5/system/binaries/vmlinux 0: Real-time clock set to Sun Jan 1 00:00:00 2012 Listening for com_1 connection on port 3456 warn: Reading current count from inactive timer. 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000 **** REAL SIMULATION **** info: Entering event queue @ 0. Starting simulation... warn: Don't know what interrupt to clear for console. warn: instruction 'wbinvd' unimplemented 17459404500: attach terminal 0 warn: instruction 'fxsave' unimplemented hack: Assuming logical destinations are 1 << id. fatal: Unable to find destination for addr 0x8000000000000390 on bus system.iobus @ cycle 599440232000 [findPort:build/X86/mem/bus.cc, line 377] Memory Usage: 1330724 KBytes --------------------------------------------------------------------------------------------- m5term trace shows this : ==== m5 slave terminal: Terminal 0 ==== [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Linux version 3.0.36-android-x86-eeepc+ (mostafa@Thunderbird-UoT) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #1 SMP PREEMPT Tue Nov 12 13:28:00 EST 2013 [ 0.000000] Command line: earlyprintk=ttyS0 console=ttyS0 lpj=7999923 root=/dev/hda1 [ 0.000000] KERNEL supported cpus: [ 0.000000] Intel GenuineIntel [ 0.000000] AMD AuthenticAMD [ 0.000000] CPU: vendor_id 'M5 Simulator' unknown, using generic init. [ 0.000000] CPU: Your system may be unstable. [ 0.000000] BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) [ 0.000000] BIOS-e820: 000000000009fc00 - 0000000000100000 (reserved) [ 0.000000] BIOS-e820: 0000000000100000 - 0000000040000000 (usable) [ 0.000000] bootconsole [earlyser0] enabled [ 0.000000] NX (Execute Disable) protection: active [ 0.000000] DMI 2.5 present. [ 0.000000] No AGP bridge found [ 0.000000] last_pfn = 0x40000 max_arch_pfn = 0x400000000 [ 0.000000] CPU MTRRs all blank - virtualized system. [ 0.000000] found SMP MP-table at [ffff8800000f0050] f0050 [ 0.000000] init_memory_mapping: 0000000000000000-0000000040000000 [ 0.000000] ACPI Error: A valid RSDP was not found (20110413/tbxfroot-219) [ 0.000000] Zone PFN ranges: [ 0.000000] DMA 0x00000010 -> 0x00001000 [ 0.000000] DMA32 0x00001000 -> 0x00100000 [ 0.000000] Normal empty [ 0.000000] Movable zone start PFN for each node [ 0.000000] early_node_map[2] active PFN ranges [ 0.000000] 0: 0x00000010 -> 0x0000009f [ 0.000000] 0: 0x00000100 -> 0x00040000 [ 0.000000] SFI: Simple Firmware Interface v0.81 http://simplefirmware.org [ 0.000000] Intel MultiProcessor Specification v1.4 [ 0.000000] MPTABLE: OEM ID: [ 0.000000] MPTABLE: Product ID: [ 0.000000] MPTABLE: APIC at: 0xFEE00000 [ 0.000000] Processor #0 (Bootup-CPU) [ 0.000000] IOAPIC[0]: apic_id 1, version 20, address 0xfec00000, GSI 0-23 [ 0.000000] Processors: 1 [ 0.000000] SMP: Allowing 1 CPUs, 0 hotplug CPUs [ 0.000000] Allocating PCI resources starting at 40000000 (gap: 40000000:c0000000) [ 0.000000] setup_percpu: NR_CPUS:2 nr_cpumask_bits:2 nr_cpu_ids:1 nr_node_ids:1 [ 0.000000] PERCPU: Embedded 25 pages/cpu @ffff88003fc00000 s70400 r8192 d23808 u2097152 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 258442 [ 0.000000] Kernel command line: earlyprintk=ttyS0 console=ttyS0 lpj=7999923 root=/dev/hda1 [ 0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes) [ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes) [ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes) [ 0.000000] Checking aperture... [ 0.000000] No AGP bridge found [ 0.000000] Memory: 1021520k/1048576k available (4724k kernel code, 452k absent, 26604k reserved, 3831k data, 464k init) [ 0.000000] Preemptible hierarchical RCU implementation. [ 0.000000] CONFIG_RCU_FANOUT set to non-default value of 32 [ 0.000000] NR_IRQS:4352 nr_irqs:256 16 [ 0.000000] Console: colour dummy device 80x25 [ 0.000000] console [ttyS0] enabled, bootconsole disabled [ 0.000000] console [ttyS0] enabled, bootconsole disabled [ 0.000000] Fast TSC calibration using PIT [ 0.000000] Detected 1999.982 MHz processor. [ 0.000001] Calibrating delay loop (skipped) preset value.. 1599.98 BogoMIPS (lpj=7999923) [ 0.000017] pid_max: default: 32768 minimum: 301 [ 0.000111] Mount-cache hash table entries: 256 [ 0.000247] Initializing cgroup subsys debug [ 0.000255] Initializing cgroup subsys cpuacct [ 0.000269] Initializing cgroup subsys freezer [ 0.000288] mce: CPU supports 4 MCE banks [ 0.000295] MCE: unknown CPU type - not enabling MCE support. [ 0.000314] SMP alternatives: switching to UP code [ 0.003059] Freeing SMP alternatives: 20k freed [ 0.003188] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=0 pin2=0 [ 0.043652] ..... timer_irq_works check..number of ticks occured 4 ... [ 0.043663] CPU0: M5 Simulator Fake M5 x86_64 CPU stepping 01 [ 0.160003] Performance Events: [ 0.220005] Brought up 1 CPUs [ 0.220013] Total of 1 processors activated (1599.98 BogoMIPS). [ 0.220637] NET: Registered protocol family 16 [ 0.221194] PCI: Using configuration type 1 for base access [ 0.227802] bio: create slab <bio-0> at 0 [ 0.227938] ACPI: Interpreter disabled. [ 0.228069] vgaarb: loaded [ 0.228303] SCSI subsystem initialized [ 0.228527] usbcore: registered new interface driver usbfs [ 0.228581] usbcore: registered new interface driver hub [ 0.228642] usbcore: registered new device driver usb [ 0.228992] PCI: Probing PCI hardware [ 0.229523] pnp: PnP ACPI: disabled [ 0.233674] pci 0000:00:04.0: BAR 6: assigned [mem 0x40000000-0x400007ff pref] [ 0.233690] pci 0000:00:04.0: BAR 4: assigned [io 0x1000-0x100f] [ 0.233704] pci 0000:00:04.0: BAR 4: set to [io 0x1000-0x100f] (PCI address [0x1000-0x100f]) [ 0.233794] NET: Registered protocol family 2 [ 0.233904] IP route cache hash table entries: 32768 (order: 6, 262144 bytes) [ 0.234839] TCP established hash table entries: 131072 (order: 9, 2097152 bytes) [ 0.236567] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) [ 0.237333] TCP: Hash tables configured (established 131072 bind 65536) [ 0.237344] TCP reno registered [ 0.237353] UDP hash table entries: 512 (order: 2, 16384 bytes) [ 0.237377] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes) [ 0.237500] NET: Registered protocol family 1 [ 0.237629] platform rtc_cmos: registered platform RTC device (no PNP device found) [ 0.237866] microcode: no support for this CPU vendor [ 0.240888] ashmem: initialized [ 0.241136] VFS: Disk quotas dquot_6.5.2 [ 0.241207] Dquot-cache hash table entries: 512 (order 0, 4096 bytes) [ 0.241442] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.241492] fuse init (API version 7.16) [ 0.241577] msgmni has been set to 1995 [ 0.241978] io scheduler noop registered [ 0.241986] io scheduler deadline registered [ 0.242012] io scheduler cfq registered (default) [ 0.242191] pci_hotplug: PCI Hot Plug PCI Core version: 0.5 [ 0.284958] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled [ 0.285020] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 8250 [ 0.360305] Linux agpgart interface v0.103 [ 0.362974] brd: module loaded [ 0.364312] loop: module loaded [ 0.364543] ata_piix 0000:00:04.0: enabling device (0000 -> 0001) [ 0.365090] scsi0 : ata_piix [ 0.365238] scsi1 : ata_piix [ 0.365352] ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x1000 irq 14 [ 0.365365] ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x1008 irq 15 [ 0.366522] tun: Universal TUN/TAP device driver, 1.6 [ 0.366532] tun: (C) 1999-2004 Max Krasnyansky <m...@qualcomm.com> [ 0.366629] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 0.366687] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 0.366740] uhci_hcd: USB Universal Host Controller Interface driver [ 0.366859] Initializing USB Mass Storage driver... [ 0.366916] usbcore: registered new interface driver usb-storage [ 0.366926] USB Mass Storage support registered. [ 0.366982] usbcore: registered new interface driver libusual [ 0.367138] i8042: PNP: No PS/2 controller found. Probing ports directly. [ 0.367278] serio: i8042 KBD port at 0x60,0x64 irq 1 [ 0.367290] serio: i8042 AUX port at 0x60,0x64 irq 12 ----------------------------------------------------------------------------- can anybody helop me with this problem, is there some configs that should be modified in gem5 to be compatible with Android x86 64 bit kernel? Regards, Mostafa Mahmoud
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users