HEADSUP: Change of makedev() semantics.

Bernd Walter ticso at cicely12.cicely.de
Sun Sep 28 16:38:36 PDT 2003


On Sun, Sep 28, 2003 at 11:22:07PM +0200, Poul-Henning Kamp wrote:
> 
> I am in the process of adding ref-counting and locking to dev_t,
> and would very much prefer if we could get this step completed
> soon before 5-STABLE gets branched.
> 
> All this will be transparent to the majority of device drivers, as
> the refcounting will happen in the make_dev() and destroy_dev()
> family of calls and normal drivers need not know more about it.
> 
> But there are a few remaining users of makedev() which get in the
> way of this effort, and we must get these fixed.
> 
> Basically:
> 
> 	1. Do not call makedev().
> 
> 	2. If you do cloning, please look at the patches I posted
> 	    for if_tun/if_tap for how to do it.
> 
> 	3. If you do a "normal" device driver, cache the result
> 	   from when you call make_dev().
> 
> 	4. If you translate "foreign dev_t's", ie emulators or
> 	   compat code, contact me.  I'm not sure I understand
> 	   how this works and should work and we need to talk.
> 
> 	5. If anything else or in doubt, ask me.
> 
> Can I see some volounteers and/or maintainers please ?
> 
> 	./alpha/osf1/osf1_misc.c
> 		badly named local macro ?

Unused code.
umakedev is used within a macro but nowhere defined it seems.
makedev is used as a macroname, but ifdef'ed 0.
Shouldn't hurt.
Maybe someone with knowledge about OSF1 emulation should decide what
happens with them in the long run.

> 	./dev/usb/ugen.c
> 	./dev/usb/uscanner.c
> 		Failure to cache result of make_dev()

I'll take those.

-- 
B.Walter                   BWCT                http://www.bwct.de
ticso at bwct.de                                  info at bwct.de



More information about the freebsd-arch mailing list