Re: [2.6 patch] drivers/net/loopback.c: convert to module_init()

From: Adrian Bunk
Date: Wed Dec 13 2006 - 08:40:55 EST


On Tue, Dec 12, 2006 at 05:17:56PM -0800, David Miller wrote:
> From: Adrian Bunk <bunk@xxxxxxxxx>
> Date: Tue, 12 Dec 2006 17:24:35 +0100
>
> > This patch converts drivers/net/loopback.c to using module_init().
> >
> > Signed-off-by: Adrian Bunk <bunk@xxxxxxxxx>
>
> I'm not %100 sure of this one, let's look at the comment you
> are deleting:
>
> > -/*
> > - * The loopback device is global so it can be directly referenced
> > - * by the network code. Also, it must be first on device list.
> > - */
> > -extern int loopback_init(void);
> > -
>
> in particular notice the part that says "it must be first on the
> device list".
>
> I'm not sure whether that is important any longer. It probably isn't,
> but we should verify it before applying such a patch.
>
> Since module_init() effectively == device_initcall() for statically
> built objects, which loopback always is, the Makefile ordering does
> not seem to indicate to me that there is anything guarenteeing
> this "first on the list" invariant. At least not via object
> file ordering.
>
> So this gives some support to the idea that loopback_dev's position
> on the device list no longer matters.

That far I already was.

Additionally:
- it works for me (but my e100 is always initialized before loop)
- I didn't spot any obvious interdependency with the other Space.c
drivers

It could be I missed anything, but I don't see any better way to verify
this than getting the patch into the next -mm and wait whether someone
will scream...

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/