On Jul 11, 2014 7:21 PM, "Linus Torvalds" <[email protected]> wrote: > > On Fri, Jul 11, 2014 at 9:29 AM, Andy Lutomirski <[email protected]> wrote: > > As far as I can tell, these fields have been set to zero on save and > > ignored on restore since Linux was imported into git. Rename them > > '__pad1' and '__pad2' to avoid confusion and to allow them to be > > recycled some day. > > Shouldn't we actually try to save/restore gs/fs properly? Admittedly, > changing them in the signal handler would be insane, but still.. See > our context switching code with the whole segment selector vs base > save/restore code. Hmm?
This seems like it's asking for trouble. I think wxe'd have to separately save the selectors and the base registers to avoid breaking something, especially once wrgsbase, etc are enabled. Why would this be needed anyway? Does anyone implement makecontext, etc using raise/sigreturn? If so, they might be in for a surprise when their gs starts getting saved, too. Linus, for context, the other patch in this series saves and restores SS. Without that, 64-bit sigreturn to a nondefault stack segment is basically impossible. But I don't see why any other segments (besides CS) are needed for 64-bit sigreturn. --Andy > > Linus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

