Re: kernel 6.2 stuck at boot (efi_call_rts) on arm64

From: Andrea Righi
Date: Tue Apr 18 2023 - 01:43:00 EST


On Mon, Apr 17, 2023 at 03:05:18PM -0700, Darren Hart wrote:
> On Thu, Apr 13, 2023 at 10:24:38PM +0200, Andrea Righi wrote:
> >
> > Not sure if it's a similar issue, but I have found another Ampere box
> > that is booting fine with your fixes, but the eifvars.sh kselftest is
> > failing with some I/O errors, specifically:
>
> Thanks for reporting. Can you confirm this worked reliably for you prior
> to v6.1?
>
> --
> Darren

I tested again and I confirm that after a reboot everything looks fine.
Maybe EFI was messed up with a previous test and the latest kernel fixes
everything. Anyway this issue seems resolved for me.

Thanks,
-Andrea

>
> >
> > $ sudo ./efivarfs.sh
> > --------------------
> > running test_create
> > --------------------
> > ./efivarfs.sh: line 58: printf: write error: Input/output error
> > /sys/firmware/efi/efivars/test_create-210be57c-9849-4fc7-a635-e6382d1aec27 has invalid size
> > [FAIL]
> > --------------------
> > running test_create_empty
> > --------------------
> > [PASS]
> > --------------------
> > running test_create_read
> > --------------------
> > [PASS]
> > --------------------
> > running test_delete
> > --------------------
> > ./efivarfs.sh: line 103: printf: write error: Input/output error
> > [PASS]
> > --------------------
> > running test_zero_size_delete
> > --------------------
> > ./efivarfs.sh: line 126: printf: write error: Input/output error
> > ./efivarfs.sh: line 134: printf: write error: Input/output error
> > /sys/firmware/efi/efivars/test_zero_size_delete-210be57c-9849-4fc7-a635-e6382d1aec27 should have been deleted
> > [FAIL]
> > --------------------
> > running test_open_unlink
> > --------------------
> > open(O_WRONLY): Operation not permitted
> > [FAIL]
> > --------------------
> > running test_valid_filenames
> > --------------------
> > ./efivarfs.sh: line 158: printf: write error: Input/output error
> > ./efivarfs.sh: line 158: printf: write error: Input/output error
> > ./efivarfs.sh: line 158: printf: write error: Input/output error
> > ./efivarfs.sh: line 158: printf: write error: Input/output error
> > [PASS]
> > --------------------
> > running test_invalid_filenames
> > --------------------
> > [PASS]
> >
> > If it helps:
> >
> > $ sudo hexdump -C /sys/firmware/dmi/entries/4-0/raw
> > 00000000 04 30 04 00 01 03 fe 02 c1 d0 3f 41 00 00 00 00 |.0........?A....|
> > 00000010 03 8a 72 06 b8 0b f0 0a 41 06 05 00 06 00 07 00 |..r.....A.......|
> > 00000020 04 05 06 50 50 50 04 00 01 01 01 00 01 00 01 00 |...PPP..........|
> > 00000030 43 50 55 20 31 00 41 6d 70 65 72 65 28 52 29 00 |CPU 1.Ampere(R).|
> > 00000040 41 6d 70 65 72 65 28 52 29 20 41 6c 74 72 61 28 |Ampere(R) Altra(|
> > 00000050 52 29 20 50 72 6f 63 65 73 73 6f 72 00 30 30 30 |R) Processor.000|
> > 00000060 30 30 30 30 30 30 30 30 30 30 30 30 30 30 32 35 |0000000000000025|
> > 00000070 35 30 32 30 39 30 33 33 38 36 35 42 34 00 30 30 |50209033865B4.00|
> > 00000080 30 30 30 30 30 31 00 51 38 30 2d 33 30 00 00 |000001.Q80-30..|
> > 0000008f
> >
> > I guess EFI is not very reliable here...
> >
> > -Andrea
>
> --
> Darren Hart
> Ampere Computing / OS and Kernel