blob: 560d3652ba27fb3a6a5c04fbe543089dc7dc1b23 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
graphic: 0.984
kernel: 0.959
boot: 0.908
architecture: 0.908
device: 0.858
vnc: 0.856
PID: 0.851
files: 0.812
VMM: 0.805
performance: 0.797
register: 0.767
semantic: 0.733
ppc: 0.728
virtual: 0.712
permissions: 0.703
socket: 0.675
risc-v: 0.663
debug: 0.631
network: 0.603
x86: 0.598
user-level: 0.578
TCG: 0.517
arm: 0.489
peripherals: 0.404
mistranslation: 0.364
KVM: 0.304
hypervisor: 0.270
i386: 0.219
assembly: 0.158
Prebuilt seabios vgabios-stdvga binary causes onboot kernel panics for freebsd 10.0
Description of problem:
FreeBSD 10.0 panics on boot since commit: `0221d73ce6a8e075adaa0a35a6ef853d2652b855`, see my attached screenshot of the panic.
I digged a bit into what specifically causes the issue, it seems to be caused by the precompiled `vgabios-stdvga.bin`.
I don't see this issue come up when I compile the binary myself via the `roms/` folder with different versions of gcc via gcc docker containers.
But once I compile the `vgabios-stdvga` from the `roms/` folder with a more modern Ubuntu version (21.10) using gcc 11.2, I also get panics on my `vgabios-stdvga`.
At first I thought it was caused by a different gcc version, but since the buster gcc docker container images create correctly functioning `vgabios-stdvga.bin` binaries, I think this is caused by a newer version of the linker coming from the `binutils` package.
My local Ubuntu version has version 2.37 of the binutils package, the `gcc:11.2` container which compiles a correct `vgabios-stdvga.bin` has version `2.35.2` of the binutils package.

Steps to reproduce:
1. Compile any version after the mentioned commit using the precompiled seabios binaries
2. Try to boot freebsd 10.0-RELEASE
3. Kernel panic because of a page vault during the vesa module load.
Additional information:
https://mfsbsd.vx.sk/files/iso/10/amd64/mfsbsd-10.0-RELEASE-amd64.iso
|