Re: 2.3.25pre2: drivers/sound/es1371.c broken

Jeff Garzik (jgarzik@mandrakesoft.com)
Mon, 01 Nov 1999 00:04:00 -0500


Jens Axboe wrote:
>
> On Sat, Oct 30 1999, Jeff Garzik wrote:
> > Jens Axboe wrote:
> > > The vm_offset one is called vm_pgoff now - the warnings for
> > > the new style init/exit functions gives the above warnings
> > > is the involved functions are declared static.
> > >
> > > Why is that?
> >
> > Because there is no need for them to be non-static. Look at
> > include/linux/init.h...
>
> Alright, then there is either a bug in gcc-2.95-1 or a lot
> of drivers need to have the static label removed.

For the -DMODULE case, 'module_init' becomes a public init_module()
which in turn calls the internal (ie. static) driver init function.

For the non-module case, module_init(func) evaluates to
__initcall(func), which is defined as below. As the initcall_t var is
simply flagged with the __init_call attribute, the internal driver init
func can be static for the non-modules case.

#define __initcall(fn) \
static initcall_t __initcall_##fn __init_call = fn

Unless I am missing something here, gcc seems to be emitting a bad
warning?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/