"David E. Cross" wrote:
>
> > > Thank you...
> > >
> > > After a couple of hours, Jon Chen and I have figured out most of what you
> > > just said :P :)
> > >
> > > How would one use hints with a kld?
> >
> > Badly. 8( You can only really set them with the loader right now.
> >
> > There are a couple of kernel datastores that need some tweaking; the
> > environment is one of them.
>
> Ok, everything is working well, except for one last thing...
>
> I load the driver the first time, and it loads correctly. I unload it and
> reload it and it attempts to attach twice (with the exact same resource
> values). I unload and reload it and it attempts to load 3 times, unload/reload
> ... 4 times (you see the pattern). If I load the second module I am working
> on (exact same type as this module), it tries to re-attach the old module
> "N" times (depending on the number of previous unload/reloads).
>
> I am obviously building up state somewhere in the kernel... how can I get
> rid of this "state"?
the sample driver in /usr/share/examples/drivers
does the following:
if (device_find_child(parent, "${1}", 0)) {
printf("${UPPER}: already attached\n");
return;
}
so it doesn't do this if it finds that it has already been done once.
(in the 'identify' routine)
(did you look at the example? It's most of what you need)
>
> --
> David Cross | email: [EMAIL PROTECTED]
> Lab Director | Rm: 308 Lally Hall
> Rensselaer Polytechnic Institute, | Ph: 518.276.2860
> Department of Computer Science | Fax: 518.276.4033
> I speak only for myself. | WinNT:Linux::Linux:FreeBSD
>
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-hackers" in the body of the message
--
__--_|\ Julian Elischer
/ \ [EMAIL PROTECTED]
( OZ ) World tour 2000
---> X_.---._/ from Perth, presently in: Budapest
v
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message