On 2 Mar 2012, at 12:53, Konstantin Belousov wrote:

> This part of the change breaks KBI. I suggest that for merge to stable/9 
> you would leave the bread and breadn as functions.

Can we not do this for the general case?  Provide them as inline extern 
functions in the header, and implement them elsewhere, so the compiler will 
inline them in recompiled code but not break code that isn't?

I'm not sure if we have a guide for how to maintain ABI compatibility, but this 
should probably be one of the standard things to do.  The recent long 
discussion about what people want from FreeBSD indicated that a lot of people 
downstream wanted a stable ABI with a 10-year window and ABIs churn on releases 
was keeping a lot of people on 7.x or earlier...

Of course, the non-inline implementations of the can be conditionally compiled 
with COMPAT_9, so that people who don't care about backwards compatibility 
don't have to have them in their kernels...

David_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to