Re: HEADSUP: Change of makedev() semantics.

From: Robert Watson <rwatson_at_FreeBSD.org>
Date: Sun, 28 Sep 2003 19:46:20 -0400 (EDT)
On Mon, 29 Sep 2003, Greg 'groggy' Lehey wrote:

> On Sunday, 28 September 2003 at 23:22:07 +0200, Poul-Henning Kamp wrote:
> > Basically:
> >
> > 	3. If you do a "normal" device driver, cache the result
> > 	   from when you call make_dev().
> > ...
> >
> > 	./dev/vinum
> > 		Failure to cache result of make_dev() ?
> 
> Where should this be cached?  Can you point to example code?

Actually, it looks like Vinum is caching the dev_t's, but it's not always
using them to get back to the dev_t--sometimes it's invoking makedev() 
instead.  However, this appears to happen only in the vinumrevive.c code,
so I'm not sure if that's a property of the cached reference being
unavailable -- it looks like it should be available in that context
though.  I.e., using sd->dev instead of VINUM_SD() -- it looks like there
is a valid (struct sd *) reference there to follow, so you can get to the
dev_t without doing a makedev(). 

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert_at_fledge.watson.org      Network Associates Laboratories
Received on Sun Sep 28 2003 - 14:46:51 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:23 UTC