Re: [PATCH] introduce __init_exit function annotation

From: Domen Puncer
Date: Tue Jul 17 2007 - 04:55:44 EST


On 17/07/07 10:31 +0200, Adrian Bunk wrote:
> On Tue, Jul 17, 2007 at 10:02:48AM +0200, Domen Puncer wrote:
> > Introduce __init_exit, which is useful ie. for drivers that call
> > cleanup functions when they fail in __init functions.
> >
> >
> > Signed-off-by: Domen Puncer <domen.puncer@xxxxxxxxxxx>
> > ---
> > include/linux/init.h | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > Index: work-powerpc.git/include/linux/init.h
> > ===================================================================
> > --- work-powerpc.git.orig/include/linux/init.h
> > +++ work-powerpc.git/include/linux/init.h
> > @@ -60,8 +60,10 @@
> >
> > #ifdef MODULE
> > #define __exit __attribute__ ((__section__(".exit.text")))
> > +#define __init_exit
> > #else
> > #define __exit __attribute_used__ __attribute__ ((__section__(".exit.text")))
> > +#define __init_exit __init
> > #endif
> >
> > /* For assembly routines */
>
> This doesn't work on architectures like i386 where __exit code is
> discarded at runtime.

If it's a module, then it shouldn't be discarded until unload anyway.
If it's in-kernel, then it'll be discarded as __init stuff.
I don't see a problem?

BTW. can you point me to reasoning for discarding __exit at runtime?


Domen

>
> cu
> Adrian
>
> --
>
> "Is there not promise of rain?" Ling Tan asked suddenly out
> of the darkness. There had been need of rain for many days.
> "Only a promise," Lao Er said.
> Pearl S. Buck - Dragon Seed
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/