Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 May 2004 20:33:51 -0600 (MDT)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        nate@root.org
Cc:        cvs-src@freebsd.org
Subject:   Re: cvs commit: src/sys/dev/acpica acpivar.h
Message-ID:  <20040520.203351.39157350.imp@bsdimp.com>
In-Reply-To: <20040520174908.I44439@root.org>
References:  <200405181653.i4IGrU6g062365@repoman.freebsd.org> <40AD42E5.7050101@freebsd.org> <20040520174908.I44439@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <20040520174908.I44439@root.org>
            Nate Lawson <nate@root.org> writes:
: Interesting, I didn't get that in my testing.  Try this patch:
: 
: Index: /sys/sys/bus.h
: ===================================================================
: RCS file: /home/ncvs/src/sys/sys/bus.h,v
: retrieving revision 1.58
: diff -u -r1.58 bus.h
: --- /sys/sys/bus.h	17 Mar 2004 17:40:34 -0000	1.58
: +++ /sys/sys/bus.h	21 May 2004 00:48:23 -0000
: @@ -456,8 +456,9 @@
:  static __inline type varp ## _get_ ## var(device_t dev)			\
:  {									\
:  	uintptr_t v;							\
: -	BUS_READ_IVAR(device_get_parent(dev), dev,			\
: -	    ivarp ## _IVAR_ ## ivar, &v);				\
: +	if (BUS_READ_IVAR(device_get_parent(dev), dev,			\
: +	    ivarp ## _IVAR_ ## ivar, &v) != 0)				\
: +		v = (type) 0;						\
:  	return ((type) v);						\
:  }									\
:  									\
: I don't know if this change will be acceptable though.  It's probably
: better to change the get function to take a pointer argument and return
: the value from BUS_READ_IVAR.

No can do.  All the pci get functions are implemented in terms of this
macro, and changing all the drivers in the tree to behave as you
suggest would be extremely painful.

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040520.203351.39157350.imp>