On Sat, Sep 27, 2008 at 02:22:46PM +0200, Manuel Bouyer wrote: > On Sat, Sep 27, 2008 at 02:13:47PM +0200, Quentin Garnier wrote: > > > [...] > > > My "perfect world" solution would be to make the sysenter-compatible > > > reshuffling an option and make COMPAT_30_PTHREAD or some such another > > > option, and make the two incompatible. That way an admin can clearly > > > select which way to go. If either were a default, I'd make the sysenter > > > one default. :-) > > > > I see two issues with that (though I'd really like to use that > > solution): > > > > - there may be 3rd party application that play the same naughty games > > as the old libpthread, e.g. by storing a ucontext at some point and > > re-using it later. I think of interpreted languages that can be > > compiled for faster execution. COMPAT_30_PTHREAD would introduce a > > very weird failure case. > > > > - if we ever decide to make a libci686 and load it through ld.so.conf > > games, COMPAT_30_NETBSD will become a real burden. > > This second case can be easily handled: add a sysctl to see if it's a > COMPAT_30_NETBSD kernel and don't load libci686 in this case. Right. > > The first point is not so bad; I don't even have any evidence such a > > bad application exists (but wandering around pkgsrc you see scary stuff > > though). As for the second one, it won't apply to 5.0 anyway, so we're > > safe for a while, and we might have a way out later (for instance, if we > > are to ever bump libc, we could bury SA again). > > It would also be an issue only if you want to mix 3.0 and 4.0 userlands, > as I see it. So you would not add COMPAT_30_PTHREAD to GENERIC, and let the user compile his own kernel for that? -- Quentin Garnier - cube%cubidou.net@localhost - cube%NetBSD.org@localhost "See the look on my face from staying too long in one place [...] every time the morning breaks I know I'm closer to falling" KT Tunstall, Saving My Face, Drastic Fantastic, 2007.
Description: PGP signature