Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

linux doesn't boot: Exception taken during IFetch #1

Open
RobertHenry6bev opened this issue Dec 5, 2019 · 1 comment
Open

linux doesn't boot: Exception taken during IFetch #1

RobertHenry6bev opened this issue Dec 5, 2019 · 1 comment

Comments

@RobertHenry6bev
Copy link

Running on an ubuntu 19.10 host, I believe I'm correctly following the steps in https://github.com/rems-project/sail-arm/tree/master/arm-v8.5-a

The resulting execution of linux runs along for 15 wall clock minutes, and the aarch64 emulator dies due to an exception taken during IFetch. Here's the last few lines of the console log:

0.106016] Floating-point is not implemented

[ 0.106555] Advanced SIMD is not implemented
[ 0.110363] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.111487] futex hash table entries: 256 (order: 3, 32768 bytes)
[ 0.139623] vdso: 2 pages (1 code @ ffff000008275000, 1 data @ ffff000008394000)
[ 0.140556] hw-breakpoint: found 2 breakpoint and 2 watchpoint registers.
[ 0.146552] DMA: preallocated 256 KiB pool for atomic allocations
[ 0.147296] Serial: AMBA PL011 UART driver
[ 0.152926] OF: amba_device_add() failed (-2) for /uart@3c000000
[ 0.314280] clocksource: Switched to clocksource arch_sys_counter
[ 0.663831] workingset: timestamp_bits=62 max_order=16 bucket_order=0
[ 0.982486] io scheduler noop registered (default)
[ 1.094483] Serial: AMBA driver
[ 1.098182] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 1.117508] Warning: unable to open an initial console.
[ 1.119854] Freeing unused kernel memory: 192K
Exception taken during IFetch from PC=0xffff7dfffe7fc400 in cycle=31252682
[Sail] Finished Successfully!

  • rm -f bootloader.bin
  • rm -f sail.dtb
  • rm -f Image
  • exit 0
  • popd
@Alasdair
Copy link
Contributor

Alasdair commented Dec 5, 2019

I'm using a magic illegal instruction in the init process to signal that the Kernel has finished booting, which is what causes that message. I only implemented the bare minimum in terms of devices to get that far (UART is just an address that prints bytes when written to, and the interrupt controller is special cased for just a single timer interrupt, so there's not much useful stuff that can be done). Mostly it just serves as a nice test I run on our CI server.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants