Re: bug in /net/core/dev.c

David S. Miller (davem@redhat.com)
Tue, 12 Jun 2001 08:46:00 -0700 (PDT)


Keith Owens writes:
> David, how do any network drivers that need net_dev_init() work when
> all $(DRIVERS) come before $(NETWORKS)? This is a generic problem, not
> s390 specific.

Then I don't understand why none of the statically built in drivers in
any of my kernels (on any platform I use, sparc64, i386, etc.) make
that "early initialization of device XXX deferred" message get spit
out.

Actually after some studying I do understand :-) net_dev_init() is not
invoked via net/* initialization. My bad. It gets invoked from
drivers/block/genhd.c:device_init() so that is the ordering
dependency and why things work for non-s390 network devices now.

So, if the s390 folks move their stuff into the appropriate spot it
will work. In fact, I personally like to see the s390 net devices
under drivers/net/s390 anyways. They'll get free maintenance from
myself and Jeff Garzik in this way as I rarely look int
drivers/${PLATFORM} type directories unless I'm doing a tree-wide
grep. :-)

Later,
David S. Miller
davem@redhat.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/