Messages in this thread | | | Subject | Re: [regression] x86/signal/64: Fix SS handling for signals delivered to 64-bit programs breaks dosemu | From | Stas Sergeev <> | Date | Sat, 22 Aug 2015 17:19:42 +0300 |
| |
22.08.2015 15:38, Ingo Molnar пишет: >> [...] We could add yet more heuristics and teach sigreturn to ignore the saved >> SS value in sigcontext if the saved CS is 64-bit and the saved SS is unusable. > We could maybe try this - assuming it doesn't break DOSEMU. > > Or we could extend the ABI and allow DOSEMU to cleanly use it. > > I'm not sure it's worth the complexity, given that the DOSEMU workaround already > exists and will likely exist forever, so that it can support older kernels, right? That assumes dosemu is the only current and future user of that functionality. That's why I raised the question whether does Wine want to support a 32/16bit code in its 64bit builds too. So far it doesn't have such functionality, likely waiting for the kernel to provide it, rather than going the route of hacks and work-arounds as dosemu did.
Also, the fact that dosemu already have that functionality, doesn't mean it will not use the new API - it actually will. With a few run-time checks at first, but when all distros are upgraded, there is simply no point to support the kernels that are not in any current distro (after a few years of deprecation perhaps).
Overall, I think the existance of a few hacks in dosemu is not the reason for the linux kernel to stop any development in that area. dosemu did a great work of exploring all the pitfalls in that area, so now you know what to fix and how. Please, keep the things going.
| |