Re: reliable reproducer, was Re: core dump analysis

Andreas Schwab
2023-04-22T10:20:02Z

On Apr 22 2023, Michael Schmitz wrote:

> This is the definition from the kernel's
> include/uapi/asm-generic/ucontext.h:

That's not actually used by m68k, it uses
arch/m68k/include/asm/ucontext.h, which confusingly isn't an uapi
header.

> And this is /usr/include/sys/ucontext.h:
>
> /* Userlevel context. */
> typedef struct ucontext
> {
> unsigned long int uc_flags;
> struct ucontext *uc_link;
> __sigset_t uc_sigmask;
> stack_t uc_stack;
> mcontext_t uc_mcontext;
> long int uc_filler[174];
> } ucontext_t;
>
> uc_sigmask appears before uc_stack and uc_mcontext.

Yes, that got fixed as part of commit 9c986f878a back in 2006.

> I'm assuming libc just passes on what the kernel set, without reordering?

Trying to rewrite the signal context would be prohibitive, yes.

--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
"And now for something completely different."