Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Feb 2025 14:50:46 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 856d3167995a - main - arm64: Hook up efi_rt_arch_call in efirt.ko
Message-ID:  <202502051450.515EokGH016958@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=856d3167995a5c9e1fc69a69ad393ab9e552c420

commit 856d3167995a5c9e1fc69a69ad393ab9e552c420
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2025-02-05 14:50:15 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2025-02-05 14:50:15 +0000

    arm64: Hook up efi_rt_arch_call in efirt.ko
    
    Note that this requires marking efi_rt_fault as a non-preemptible
    local symbol.
    
    Co-authored-by: Jessica Clarke <jrtc27@FreeBSD.org>
    Reviewed by:    imp, andrew
    Obtained from:  CheriBSD
    Fixes:          d7f930b80e89 ("arm64: Implement efi_rt_arch_call")
    Differential Revision:  https://reviews.freebsd.org/D48715
---
 sys/arm64/arm64/efirt_support.S | 4 ++--
 sys/modules/efirt/Makefile      | 7 ++++---
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/sys/arm64/arm64/efirt_support.S b/sys/arm64/arm64/efirt_support.S
index b7bef7500ee4..994380f1691e 100644
--- a/sys/arm64/arm64/efirt_support.S
+++ b/sys/arm64/arm64/efirt_support.S
@@ -85,7 +85,7 @@ ENTRY(efi_rt_arch_call)
 	ret
 END(efi_rt_arch_call)
 
-ENTRY(efi_rt_fault)
+LENTRY(efi_rt_fault)
 	/* Clear pcb_onfault */
 	SET_FAULT_HANDLER(xzr, x11)
 	/* Load curthread */
@@ -96,6 +96,6 @@ ENTRY(efi_rt_fault)
 	/* Normal exit returning an error */
 	ldr	x0, =EFAULT
 	b	.Lefi_rt_arch_call_exit
-END(efi_rt_fault)
+LEND(efi_rt_fault)
 
 GNU_PROPERTY_AARCH64_FEATURE_1_NOTE(GNU_PROPERTY_AARCH64_FEATURE_1_VAL)
diff --git a/sys/modules/efirt/Makefile b/sys/modules/efirt/Makefile
index 2befdcb7dd8d..4738996fd4e6 100644
--- a/sys/modules/efirt/Makefile
+++ b/sys/modules/efirt/Makefile
@@ -4,16 +4,17 @@
 KMOD=	efirt
 SRCS=	efirt.c efirt_machdep.c efidev.c
 SRCS+=	efirtc.c
+SRCS+=	efirt_support.S
 SRCS+=  device_if.h bus_if.h clock_if.h
+DPSRCS+= assym.inc
 
 .if ${MACHINE_CPUARCH} == "amd64"
 SRCS+=	opt_hwpmc_hooks.h opt_kstack_pages.h
-SRCS+=	efirt_support.S
-DPSRCS+= assym.inc
+.endif
+
 efirt_support.o:	efirt_support.S assym.inc
 	${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \
 	    ${.IMPSRC} -o ${.TARGET}
-.endif
 
 EXPORT_SYMS=	YES
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202502051450.515EokGH016958>