svn commit: r350033 - stable/12/sys/sys
Andriy Gapon
avg at FreeBSD.org
Tue Jul 16 15:28:29 UTC 2019
Author: avg
Date: Tue Jul 16 15:28:28 2019
New Revision: 350033
URL: https://svnweb.freebsd.org/changeset/base/350033
Log:
MFC r348688: first step towards enforcing must-succeed semantics for bus accessors
Modified:
stable/12/sys/sys/bus.h
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sys/sys/bus.h
==============================================================================
--- stable/12/sys/sys/bus.h Tue Jul 16 15:07:33 2019 (r350032)
+++ stable/12/sys/sys/bus.h Tue Jul 16 15:28:28 2019 (r350033)
@@ -807,16 +807,30 @@ DECLARE_MODULE(name##_##busname, name##_##busname##_mo
static __inline type varp ## _get_ ## var(device_t dev) \
{ \
uintptr_t v; \
- BUS_READ_IVAR(device_get_parent(dev), dev, \
+ int e; \
+ e = BUS_READ_IVAR(device_get_parent(dev), dev, \
ivarp ## _IVAR_ ## ivar, &v); \
+ if (e != 0) { \
+ device_printf(dev, "failed to read ivar " \
+ __XSTRING(ivarp ## _IVAR_ ## ivar) " on bus %s, " \
+ "error = %d\n", \
+ device_get_nameunit(device_get_parent(dev)), e); \
+ } \
return ((type) v); \
} \
\
static __inline void varp ## _set_ ## var(device_t dev, type t) \
{ \
uintptr_t v = (uintptr_t) t; \
- BUS_WRITE_IVAR(device_get_parent(dev), dev, \
+ int e; \
+ e = BUS_WRITE_IVAR(device_get_parent(dev), dev, \
ivarp ## _IVAR_ ## ivar, v); \
+ if (e != 0) { \
+ device_printf(dev, "failed to write ivar " \
+ __XSTRING(ivarp ## _IVAR_ ## ivar) " on bus %s, " \
+ "error = %d\n", \
+ device_get_nameunit(device_get_parent(dev)), e); \
+ } \
}
/**
More information about the svn-src-all
mailing list