return OBP(exp->exp_obd, llog_connect)(exp, body);
}
-static inline int obd_notify(struct obd_device *obd,
- struct obd_device *watched,
- int active)
+static inline int obd_notify(struct obd_device *obd, struct obd_device *watched,
+ int active, void *data)
{
if (!obd->obd_set_up) {
CERROR("obd %s not set up\n", obd->obd_name);
}
OBD_COUNTER_INCREMENT(obd, notify);
- return OBP(obd, notify)(obd, watched, active);
+ return OBP(obd, notify)(obd, watched, active, data);
}
static inline int obd_register_observer(struct obd_device *obd,
{
struct obdo *oa;
- oa = kmem_cache_alloc(obdo_cachep, SLAB_KERNEL);
- if (oa == NULL)
- LBUG();
- CDEBUG(D_MALLOC, "kmem_cache_alloced oa at %p\n", oa);
- memset(oa, 0, sizeof (*oa));
+ OBD_SLAB_ALLOC(oa, obdo_cachep, GFP_KERNEL, sizeof(*oa));
return oa;
}
{
if (!oa)
return;
- CDEBUG(D_MALLOC, "kmem_cache_freed oa at %p\n", oa);
- kmem_cache_free(obdo_cachep, oa);
+ OBD_SLAB_FREE(oa, obdo_cachep, sizeof(*oa));
}
#if !defined(__KERNEL__) || (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))