Hi, On 2021/11/25 16:55, Song Gao wrote: > diff --git a/linux-user/generic/signal.h b/linux-user/generic/signal.h > index 943bc1a..ceaf8a8 100644 > --- a/linux-user/generic/signal.h > +++ b/linux-user/generic/signal.h > @@ -55,6 +55,22 @@ > #define TARGET_SIG_UNBLOCK 1 /* for unblocking signals */ > #define TARGET_SIG_SETMASK 2 /* for setting the signal mask */ > > +/* this struct defines a stack used during syscall handling */ > +typedef struct target_sigaltstack { > + abi_ulong ss_sp; > + abi_int ss_flags; > + abi_ulong ss_size; > +} target_stack_t; > + > +/* > + * sigaltstack controls > + */ > +#define TARGET_SS_ONSTACK 1 > +#define TARGET_SS_DISABLE 2 > + > +#define TARGET_MINSIGSTKSZ 2048
While all the architectures you de-duplicated here have TARGET_MINSIGSTACKSZ as 2048, some others specify a different value (mostly 4096, e.g. alpha), as can be seen in your next patch (which should belong to this series, btw). Do you mean to change semantics here? Or you might have to allow arches to override this value. > +#define TARGET_SIGSTKSZ 8192 > + > /* bit-flags */ > #define TARGET_SS_AUTODISARM (1U << 31) /* disable sas during sighandling */ > /* mask for all SS_xxx flags */