aboutsummaryrefslogtreecommitdiff
path: root/sys/arm64/linux
diff options
context:
space:
mode:
authorDmitry Chagin <dchagin@FreeBSD.org>2022-05-15 18:12:03 +0000
committerDmitry Chagin <dchagin@FreeBSD.org>2022-05-15 18:12:03 +0000
commit390c9ea029fdd3fb2ce61fc6b48617f0f7cd8754 (patch)
tree42ab95761c314f27f1696238bdc6ea2d60bca73b /sys/arm64/linux
parentc56480a832354aff995f9d0bc5da4ccf27dfe78a (diff)
downloadsrc-390c9ea029fdd3fb2ce61fc6b48617f0f7cd8754.tar.gz
src-390c9ea029fdd3fb2ce61fc6b48617f0f7cd8754.zip
linux(4): Add AT_MINSIGSTKSZ to arm64 port
MFC after: 2 weeks
Diffstat (limited to 'sys/arm64/linux')
-rw-r--r--sys/arm64/linux/linux.h5
-rw-r--r--sys/arm64/linux/linux_sigframe.h2
-rw-r--r--sys/arm64/linux/linux_sysvec.c1
3 files changed, 4 insertions, 4 deletions
diff --git a/sys/arm64/linux/linux.h b/sys/arm64/linux/linux.h
index dafec928c7e4..bf6e092f3bf8 100644
--- a/sys/arm64/linux/linux.h
+++ b/sys/arm64/linux/linux.h
@@ -81,7 +81,7 @@ typedef struct {
#define l_fd_set fd_set
/* Miscellaneous */
-#define LINUX_AT_COUNT 20
+#define LINUX_AT_COUNT 21
struct l___sysctl_args
{
@@ -163,9 +163,6 @@ struct l_newstat {
#define LINUX_SIG_UNBLOCK 1
#define LINUX_SIG_SETMASK 2
-/* sigaltstack */
-#define LINUX_MINSIGSTKSZ 5664 /* sigframe */
-
typedef void (*l_handler_t)(l_int);
typedef struct {
diff --git a/sys/arm64/linux/linux_sigframe.h b/sys/arm64/linux/linux_sigframe.h
index d0d870e51375..3b125efc8781 100644
--- a/sys/arm64/linux/linux_sigframe.h
+++ b/sys/arm64/linux/linux_sigframe.h
@@ -81,4 +81,6 @@ struct l_sigframe {
ucontext_t uc;
};
+#define LINUX_MINSIGSTKSZ roundup(sizeof(struct l_sigframe), 16)
+
#endif /* _ARM64_LINUX_SIGFRAME_H_ */
diff --git a/sys/arm64/linux/linux_sysvec.c b/sys/arm64/linux/linux_sysvec.c
index 461a00bf5b33..e82539b9c5b1 100644
--- a/sys/arm64/linux/linux_sysvec.c
+++ b/sys/arm64/linux/linux_sysvec.c
@@ -197,6 +197,7 @@ linux_copyout_auxargs(struct image_params *imgp, uintptr_t base)
issetugid = p->p_flag & P_SUGID ? 1 : 0;
AUXARGS_ENTRY(pos, LINUX_AT_SYSINFO_EHDR, linux_vdso_base);
+ AUXARGS_ENTRY(pos, LINUX_AT_MINSIGSTKSZ, LINUX_MINSIGSTKSZ);
AUXARGS_ENTRY(pos, LINUX_AT_HWCAP, *imgp->sysent->sv_hwcap);
AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz);
AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz);