> > No, I think Thomas is correct that we do need an open() routine, and we
> > might as well make the NULL case an error. For example, the dummy driver
> > actually _had_ an open routine, but it was enabled only when compiled as
> > a module. That's against the ideas of modules - I much prefer it if all
> > the drivers are the same regardless of whether they are compiled as
> > modules or not (that way there are no surprises).
>
> Not for 2.0 NO WAY. Its not the only driver that randomly breaks because of it.
>
> For 2.1 yes it makes sense, and also to remove the weird linked list we
> sort of half pre-initialise. As Im sure you'd agree we dont want to change
> the API incompatibily about 2 betas before release. Hence my latest patches
Interesting argument. Linus thinks that things should be changed,
while Alan thinks it'll break the API. I think (as already indicated)
that the long time undiscovered problem was the lack of proper
documentation. If I think about it, each device should have an open
function, but some people thought if NULL was supplied, the kernel
has a suitable "cheap" open function.
Alan is against a change, because it might/will break existing
drivers.
Well, I think the change should be made now, because a lot of
development will aslo be done with the new, stable kernel 2.0. If the
inetrface isn't clearified now, it'll take over a year until
eberybody notices the new ting. See how many people still stick with
1.2...
Ulrich