Module Name:    src
Committed By:   rin
Date:           Wed Jun 19 15:19:22 UTC 2024

Modified Files:
        src/sys/arch/powerpc/powerpc: compat_13_machdep.c compat_16_machdep.c

Log Message:
powerpc64: Provide dummy stubs for compat1[36]

as done for amd64. We haven't had working userland for powerpc64,
and therefore compatible to 1.[36] is only useful for netbsd32.

Fix build failure for evbppc64 for PR kern/58346 (my bug!).


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/powerpc/compat_13_machdep.c
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/powerpc/powerpc/compat_16_machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/powerpc/powerpc/compat_13_machdep.c
diff -u src/sys/arch/powerpc/powerpc/compat_13_machdep.c:1.22 src/sys/arch/powerpc/powerpc/compat_13_machdep.c:1.23
--- src/sys/arch/powerpc/powerpc/compat_13_machdep.c:1.22	Sun Mar 13 17:50:55 2022
+++ src/sys/arch/powerpc/powerpc/compat_13_machdep.c	Wed Jun 19 15:19:22 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: compat_13_machdep.c,v 1.22 2022/03/13 17:50:55 andvar Exp $	*/
+/*	$NetBSD: compat_13_machdep.c,v 1.23 2024/06/19 15:19:22 rin Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: compat_13_machdep.c,v 1.22 2022/03/13 17:50:55 andvar Exp $");
+__KERNEL_RCSID(0, "$NetBSD: compat_13_machdep.c,v 1.23 2024/06/19 15:19:22 rin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ppcarch.h"
@@ -53,6 +53,22 @@ __KERNEL_RCSID(0, "$NetBSD: compat_13_ma
 
 #include <powerpc/psl.h>
 
+#ifdef _LP64
+
+/*
+ * COMPAT_13 is useful only with COMPAT_NETBSD32.
+ */
+
+int
+compat_13_sys_sigreturn(struct lwp *l,
+    const struct compat_13_sys_sigreturn_args *uap, register_t *retval)
+{
+
+	return ENOSYS;
+}
+
+#else
+
 int
 compat_13_sys_sigreturn(struct lwp *l,
     const struct compat_13_sys_sigreturn_args *uap, register_t *retval)
@@ -104,3 +120,5 @@ compat_13_sys_sigreturn(struct lwp *l,
 
 	return (EJUSTRETURN);
 }
+
+#endif /* !_LP64 */

Index: src/sys/arch/powerpc/powerpc/compat_16_machdep.c
diff -u src/sys/arch/powerpc/powerpc/compat_16_machdep.c:1.25 src/sys/arch/powerpc/powerpc/compat_16_machdep.c:1.26
--- src/sys/arch/powerpc/powerpc/compat_16_machdep.c:1.25	Mon Jun 17 21:57:59 2024
+++ src/sys/arch/powerpc/powerpc/compat_16_machdep.c	Wed Jun 19 15:19:22 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: compat_16_machdep.c,v 1.25 2024/06/17 21:57:59 pgoyette Exp $	*/
+/*	$NetBSD: compat_16_machdep.c,v 1.26 2024/06/19 15:19:22 rin Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: compat_16_machdep.c,v 1.25 2024/06/17 21:57:59 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: compat_16_machdep.c,v 1.26 2024/06/19 15:19:22 rin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_altivec.h"
@@ -60,6 +60,29 @@ __KERNEL_RCSID(0, "$NetBSD: compat_16_ma
 #include <powerpc/altivec.h>
 #endif
 
+#ifdef _LP64
+
+/*
+ * COMPAT_16 is useful only with COMPAT_NETBSD32.
+ */
+void
+sendsig_sigcontext(const ksiginfo_t *ksi, const sigset_t *mask)
+{
+
+	printf("sendsig_sigcontext: illegal\n");
+	sigexit(curlwp, SIGILL);
+}
+
+int
+compat_16_sys___sigreturn14(struct lwp *l,
+    const struct compat_16_sys___sigreturn14_args *uap, register_t *retval)
+{
+
+	return ENOSYS;
+}
+
+#else
+
 /*
  * Send a signal to process.
  */
@@ -253,3 +276,5 @@ compat_16_sys___sigreturn14(struct lwp *
 
 	return (EJUSTRETURN);
 }
+
+#endif /* !_LP64 */

Reply via email to