extern mdl_mode_t mdt_mdl_lock_modes[];
extern enum ldlm_mode mdt_dlm_lock_modes[];
+/* LCK_MINMODE which is zero returns false for is_power_of_2 */
+
static inline mdl_mode_t mdt_dlm_mode2mdl_mode(enum ldlm_mode mode)
{
- LASSERT(IS_PO2(mode));
+ LASSERT(mode == LCK_MINMODE || is_power_of_2(mode));
return mdt_mdl_lock_modes[mode];
}
static inline enum ldlm_mode mdt_mdl_mode2dlm_mode(mdl_mode_t mode)
{
- LASSERT(IS_PO2(mode));
+ LASSERT(mode == MDL_MINMODE || is_power_of_2(mode));
return mdt_dlm_lock_modes[mode];
}
spin_unlock(&obd->obd_dev_lock);
set_current_state(TASK_UNINTERRUPTIBLE);
schedule_timeout(cfs_time_seconds(waited));
- if (waited > 5 && IS_PO2(waited)) {
+ if (waited > 5 && is_power_of_2(waited)) {
LCONSOLE_WARN("%s is waiting for obd_unlinked_exports "
"more than %d seconds. "
"The obd refcount = %d. Is it stuck?\n",
CERROR("%s: can't get statfs data, rc %d\n", obd->obd_name, rc);
GOTO(err_fini_stack, rc);
}
- if (!IS_PO2(osfs->os_bsize)) {
+ if (!is_power_of_2(osfs->os_bsize)) {
CERROR("%s: blocksize (%d) is not a power of 2\n",
obd->obd_name, osfs->os_bsize);
GOTO(err_fini_stack, rc = -EPROTO);
size += offset % blksz;
- if (likely(IS_PO2(blksz)))
+ if (likely(is_power_of_2(blksz)))
return PO2_ROUNDUP_TYPED(size, blksz, uint64_t);
size += blksz - 1;