NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: misc/59151: efiboot hangs on new motherboard



The following reply was made to PR misc/59151; it has been noted by GNATS.

From: Paul Ripke <stix%stix.id.au@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: misc-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost,
	netbsd-bugs%netbsd.org@localhost, stix%stix.id.au@localhost
Subject: Re: misc/59151: efiboot hangs on new motherboard
Date: Fri, 7 Mar 2025 21:56:28 +1100

 On Fri, Mar 07, 2025 at 10:25:01AM +0000, RVP via gnats wrote:
 >  On Fri, 7 Mar 2025, stix%stix.id.au@localhost wrote:
 >  
 >  >> Fix:
 >  > I suspect that this firmware implements memory protection on the efiboot
 >  > image. I also assume that the variables written to as defined in the asm
 >  > are read-only, generating an exception, resulting in a silent hang.
 >  >
 >  
 >  Yeah, I think this makes sense. Can you see if the patch below also fixes
 >  this issue?
 >  
 >  ```
 >  diff -urN a/src/sys/arch/i386/stand/efiboot/bootx64/startprog64.S b/src/sys/arch/i386/stand/efiboot/bootx64/startprog64.S
 >  --- a/sys/arch/i386/stand/efiboot/bootx64/startprog64.S	2023-06-24 05:31:04.000000000 +0000
 >  +++ b/sys/arch/i386/stand/efiboot/bootx64/startprog64.S	2025-03-07 10:11:13.394064579 +0000
 >  @@ -65,6 +65,7 @@
 >    #define	CODE_SEGMENT	0x08
 >    #define	DATA_SEGMENT	0x10
 >  
 >  +	.data
 >    	.align	16
 >    	.globl _C_LABEL(startprog64)
 >    _C_LABEL(startprog64):
 >  ```
 
 Interesting... when I saw what the code was doing, I decided to clean it
 up - afaict, there's no need for writable symbols in the asm.
 
 Anyway, I expected your very simple patch to work - but it doesn't!
 I get what looks to be the same hang. I've removed all my debug prints
 else I'd confirm if it was hanging at the same point, but it is a pretty
 safe assumption it is.
 
 -- 
 Paul Ripke
 "Great minds discuss ideas, average minds discuss events, small minds
  discuss people."
 -- Disputed: Often attributed to Eleanor Roosevelt. 1948.
 


Home | Main Index | Thread Index | Old Index