static inline char *osd_name(struct osd_device *osd)
{
- return osd->od_dt_dev.dd_lu_dev.ld_obd->obd_name;
+ return osd->od_svname;
}
static inline bool osd_is_ea_inode(struct inode *inode)
if (unlikely(ldiskfs_track_declares_assert))
LASSERT(op < OSD_OT_MAX);
else {
- CWARN("%s: Invalid operation index %d\n",
- osd_name(osd_dt_dev(oh->ot_super.th_dev)), op);
+ CWARN("%s: opcode %u: invalid value >= %u\n",
+ osd_name(osd_dt_dev(oh->ot_super.th_dev)),
+ op, OSD_OT_MAX);
libcfs_debug_dumpstack(NULL);
return;
}
if (op == OSD_OT_REF_ADD &&
oti->oti_declare_ops_cred[OSD_OT_DESTROY] > 0)
goto proceed;
+ CWARN("%s: opcode %u: credits = 0, rollback = %u\n",
+ osd_name(osd_dt_dev(oh->ot_super.th_dev)), op, rb);
osd_trans_dump_creds(env, th);
- CERROR("%s: op = %d, rb = %d\n",
- osd_name(osd_dt_dev(oh->ot_super.th_dev)), op, rb);
- if (unlikely(ldiskfs_track_declares_assert))
- LBUG();
+ LASSERT(!ldiskfs_track_declares_assert);
}
proceed:
oti->oti_credits_before = oh->ot_handle->h_buffer_credits;
left = oti->oti_declare_ops_cred[op] - oti->oti_declare_ops_used[op];
if (unlikely(oti->oti_credits_before < left)) {
+ CWARN("%s: opcode %u: before %u < left %u, rollback = %u\n",
+ osd_name(osd_dt_dev(oh->ot_super.th_dev)), op,
+ oti->oti_credits_before, left, rb);
osd_trans_dump_creds(env, th);
- CERROR("%s: op = %d, rb = %d\n",
- osd_name(osd_dt_dev(oh->ot_super.th_dev)), op, rb);
/* on a very small fs (testing?) it's possible that
* the transaction can't fit 1/4 of journal, so we
* just request less credits (see osd_trans_start()).
* ignore the same case here */
rb = osd_transaction_size(osd_dt_dev(th->th_dev));
- if (unlikely(oh->ot_credits < rb)) {
- if (unlikely(ldiskfs_track_declares_assert))
- LBUG();
- }
+ if (unlikely(oh->ot_credits < rb))
+ LASSERT(!ldiskfs_track_declares_assert);
}
}
oti->oti_declare_ops_used[OSD_OT_QUOTA] += over;
oti->oti_declare_ops_used[op] -= over;
} else {
- CWARN("op %d: used %u, used now %u, reserved %u\n",
- op, oti->oti_declare_ops_used[op], used,
+ CWARN("%s: opcode %d: used %u, used now %u, reserved %u\n",
+ osd_name(osd_dt_dev(oh->ot_super.th_dev)), op,
+ oti->oti_declare_ops_used[op], used,
oti->oti_declare_ops_cred[op]);
osd_trans_dump_creds(env, th);
if (unlikely(ldiskfs_track_declares_assert))