diff options
Diffstat (limited to 'kernel/xpp/xproto.c')
-rw-r--r-- | kernel/xpp/xproto.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/xpp/xproto.c b/kernel/xpp/xproto.c index 348b4b6..77465c9 100644 --- a/kernel/xpp/xproto.c +++ b/kernel/xpp/xproto.c @@ -93,7 +93,9 @@ const xproto_table_t *xproto_get(xpd_type_t cardtype) } if(xtable) { BUG_ON(!xtable->owner); +#ifdef CONFIG_MODULE_UNLOAD DBG(GENERAL, "%s refcount was %d\n", xtable->name, module_refcount(xtable->owner)); +#endif if(!try_module_get(xtable->owner)) { ERR("%s: try_module_get for %s failed.\n", __FUNCTION__, xtable->name); return NULL; @@ -105,8 +107,10 @@ const xproto_table_t *xproto_get(xpd_type_t cardtype) void xproto_put(const xproto_table_t *xtable) { BUG_ON(!xtable); +#ifdef CONFIG_MODULE_UNLOAD DBG(GENERAL, "%s refcount was %d\n", xtable->name, module_refcount(xtable->owner)); BUG_ON(module_refcount(xtable->owner) <= 0); +#endif module_put(xtable->owner); } @@ -262,7 +266,7 @@ int xframe_receive(xbus_t *xbus, xframe_t *xframe) FREE_RECV_XFRAME(xbus, xframe); return -EPROTO; } - if(XBUS_IS(xbus, DISCONNECTED)) { + if(!XBUS_FLAGS(xbus, CONNECTED)) { XBUS_DBG(GENERAL, xbus, "Dropped xframe. Is shutting down.\n"); return -ENODEV; } |