[RFC v7 04/21] um: host: implement os_initcalls and os_exitcalls

Hajime Tazaki thehajime at gmail.com
Thu Oct 8 09:16:55 EDT 2020


On Thu, 08 Oct 2020 00:22:18 +0900,
Johannes Berg wrote:
> 
> On Tue, 2020-10-06 at 18:44 +0900, Hajime Tazaki wrote:
> 
> > Note that this patch should be merged with "um: move arch/um/os-Linux
> > dir to tools/um" but for now it is separate to make the review easier.
> 
> Not a fan of that, I must say ...

Now I found that this patch should be together with the patch 02/21
um: add os init and exit calls.  I will do that from next time.

> > +extern void (*__start_os_exitcalls)(void);
> > +extern void (*__stop_os_exitcalls)(void);
> > +
> > +void os_exitcalls(void)
> > +{
> > +	exitcall_t *call;
> > +
> > +	call = &__stop_os_exitcalls;
> > +	while (--call >= &__start_os_exitcalls)
> > +		(*call)();
> 
> You should check for and skip NULL pointers, there always are alignment
> issues with automatic section filling like this, more so with clang than
> gcc.

Understand, I'll fix it.

> > +}
> > +
> > +extern int (*__start_os_initcalls)(void);
> > +extern int (*__stop_os_initcalls)(void);
> > +
> > +int os_initcalls(void)
> > +{
> > +	initcall_t *call;
> > +
> > +	call = &__stop_os_initcalls;
> > +	while (--call >= &__start_os_initcalls)
> > +		(*call)();
> 
> Same here.

Okay.

-- Hajime



More information about the linux-um mailing list