static int lov_ap_make_ready(void *data, int cmd)
{
- struct lov_async_page *lap = LAP_FROM_COOKIE(data);
+ struct lov_async_page *lap = lap_from_cookie(data);
return lap->lap_caller_ops->ap_make_ready(lap->lap_caller_data, cmd);
}
static int lov_ap_refresh_count(void *data, int cmd)
{
- struct lov_async_page *lap = LAP_FROM_COOKIE(data);
+ struct lov_async_page *lap = lap_from_cookie(data);
return lap->lap_caller_ops->ap_refresh_count(lap->lap_caller_data,
cmd);
static void lov_ap_fill_obdo(void *data, int cmd, struct obdo *oa)
{
- struct lov_async_page *lap = LAP_FROM_COOKIE(data);
+ struct lov_async_page *lap = lap_from_cookie(data);
lap->lap_caller_ops->ap_fill_obdo(lap->lap_caller_data, cmd, oa);
/* XXX woah, shouldn't we be altering more here? size? */
static void lov_ap_update_obdo(void *data, int cmd, struct obdo *oa,
obd_valid valid)
{
- struct lov_async_page *lap = LAP_FROM_COOKIE(data);
+ struct lov_async_page *lap = lap_from_cookie(data);
lap->lap_caller_ops->ap_update_obdo(lap->lap_caller_data, cmd,oa,valid);
}
static int lov_ap_completion(void *data, int cmd, struct obdo *oa, int rc)
{
- struct lov_async_page *lap = LAP_FROM_COOKIE(data);
+ struct lov_async_page *lap = lap_from_cookie(data);
/* in a raid1 regime this would down a count of many ios
* in flight, onl calling the caller_ops completion when all
static struct obd_capa *lov_ap_lookup_capa(void *data, int cmd)
{
- struct lov_async_page *lap = LAP_FROM_COOKIE(data);
+ struct lov_async_page *lap = lap_from_cookie(data);
return lap->lap_caller_ops->ap_lookup_capa(lap->lap_caller_data, cmd);
}
ASSERT_LSM_MAGIC(lsm);
- lap = LAP_FROM_COOKIE(cookie);
+ lap = lap_from_cookie(cookie);
loi = lsm->lsm_oinfo[lap->lap_stripe];
ASSERT_LSM_MAGIC(lsm);
- lap = LAP_FROM_COOKIE(cookie);
+ lap = lap_from_cookie(cookie);
loi = lsm->lsm_oinfo[lap->lap_stripe];
ASSERT_LSM_MAGIC(lsm);
- lap = LAP_FROM_COOKIE(cookie);
+ lap = lap_from_cookie(cookie);
loi = lsm->lsm_oinfo[lap->lap_stripe];
ASSERT_LSM_MAGIC(lsm);
- lap = LAP_FROM_COOKIE(cookie);
+ lap = lap_from_cookie(cookie);
loi = lsm->lsm_oinfo[lap->lap_stripe];
struct list_head eap_item;
};
-#define EAP_FROM_COOKIE(c) \
- (LASSERT(((struct echo_async_page *)(c))->eap_magic == EAP_MAGIC), \
- (struct echo_async_page *)(c))
+static inline struct echo_async_page *eap_from_cookie(void *ptr)
+{
+ struct echo_async_page *ap = ptr;
+ LASSERT(ap->eap_magic == EAP_MAGIC);
+ return ap;
+}
struct echo_async_state {
spinlock_t eas_lock;
}
static void ec_ap_fill_obdo(void *data, int cmd, struct obdo *oa)
{
- struct echo_async_page *eap = EAP_FROM_COOKIE(data);
+ struct echo_async_page *eap = eap_from_cookie(data);
memcpy(oa, &eap->eap_eas->eas_oa, sizeof(*oa));
}
static int ec_ap_completion(void *data, int cmd, struct obdo *oa, int rc)
{
- struct echo_async_page *eap = EAP_FROM_COOKIE(data);
struct echo_async_state *eas;
+ struct echo_async_page *eap = eap_from_cookie(data);
eas = eap->eap_eas;