tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: GNU vs C99 extern inline
Iain Hibbert <plunky%rya-online.net@localhost> wrote:
> considering what to do about this one, I thought to make it static inline
> and provide the gross invasion as a compat_sa_sleepq_insert() function
> (which effectively changes only the externally visible symbol), eg
>
> static inline sleepq_insert()
> {
> }
>
> /* do not use this function, it will be removed */
> void compat_sa_sleepq_insert()
> {
> sleepq_insert();
> }
>
> which can then be removed when compat_sa is retired.. ?
Yes, COMPAT_SA is going to be removed. Adding compat_sa_sleepq_insert()
seems good, just also put it under #ifdef KERN_SA - it will be easier for
me to not miss it.
> cannot be static - pmap_reference is declared in a MI way (when not a
> macro) in uvm/uvm_pmap.h, then defined in arch specific code. So, it can
> be non-inline or a macro but static inline is difficult. Since
> pmap_reference on x86 is now just an atomic_inc_uint I proposed (on
> port-i386/port-amd64[1]) that it be #defined to that in x86/include/pmap.h
And atomic operation likely costs more than the functional call anyway.
--
Mindaugas
Home |
Main Index |
Thread Index |
Old Index