Date: Thu, 20 May 2004 20:56:54 -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.205654.10906740.imp@bsdimp.com> In-Reply-To: <20040520194832.I44800@root.org> References: <20040520174908.I44439@root.org> <20040520.203351.39157350.imp@bsdimp.com> <20040520194832.I44800@root.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In message: <20040520194832.I44800@root.org>
Nate Lawson <nate@root.org> writes:
: On Thu, 20 May 2004, M. Warner Losh wrote:
: > 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; \
v = (type) 0; is likely wrong too :-) Why not -1 or 12 or 0xdeadbeef?
: > : 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.
:
: Augh, I assume this also applies to making it varp_get_var(device_t dev,
: uintptr_t value) ? It's lousy that this doesn't check the return value.
I'm not sure I understand what you are saying.
Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040520.205654.10906740.imp>
