On Wednesday 25 February 2015 08:33:16 Ezequiel Garcia wrote: > > /me is more confused now > > In arch/nios2/include/asm/ucontext.h > > struct ucontext { > unsigned long uc_flags; > struct ucontext *uc_link; > stack_t uc_stack; > struct mcontext uc_mcontext; > sigset_t uc_sigmask; > }; > > And in include/uapi/asm-generic/ucontext.h: > > struct ucontext { > unsigned long uc_flags; > struct ucontext *uc_link; > stack_t uc_stack; > struct sigcontext uc_mcontext; > sigset_t uc_sigmask; > }; > > Which one is the one that userspace sees? And why does the kernel has > two different structures? Userspace sees the asm-generic header, which I assume is a bug in this case. > Given this oddities, I'm wondering how troublesome would be to just > re-do this and break the ptrace and signal ABI. For instance, just > pushing pt_regs in PTRACE_GETREGSET would make things much clearer. Could you change pt_regs to match the layout you have for PTRACE_GETREGSET instead? It seems much more intuitive. > I guess Linus would burn me for even suggesting to breaking users... but > do we have any users at all? This arch has just been mainlined. Altera's > out-of-tree is already ABI-incompatible with mainline so that's not an > issue. > > The only one using this ABI is gdb, which is easily fixed. You can change anything you like as long as nobody complains about regressions. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html