cfs_up(&lustre_mount_info_lock);
CDEBUG(D_MOUNT, "reg_mnt %p from %s, vfscount=%d\n",
- lmi->lmi_mnt, name, cfs_atomic_read(&lmi->lmi_mnt->mnt_count));
+ lmi->lmi_mnt, name, mnt_get_count(lmi->lmi_mnt));
RETURN(0);
}
}
CDEBUG(D_MOUNT, "dereg_mnt %p from %s, vfscount=%d\n",
- lmi->lmi_mnt, name, cfs_atomic_read(&lmi->lmi_mnt->mnt_count));
+ lmi->lmi_mnt, name, mnt_get_count(lmi->lmi_mnt));
OBD_FREE(lmi->lmi_name, strlen(lmi->lmi_name) + 1);
cfs_list_del(&lmi->lmi_list_chain);
CDEBUG(D_MOUNT, "get_mnt %p from %s, refs=%d, vfscount=%d\n",
lmi->lmi_mnt, name, cfs_atomic_read(&lsi->lsi_mounts),
- cfs_atomic_read(&lmi->lmi_mnt->mnt_count));
+ mnt_get_count(lmi->lmi_mnt));
RETURN(lmi);
}
{
struct lustre_mount_info *lmi;
struct lustre_sb_info *lsi;
- int count = atomic_read(&mnt->mnt_count) - 1;
+ int count = mnt_get_count(mnt) - 1;
ENTRY;
/* This might be the last one, can't deref after this */
cfs_waitq_init(&waitq);
- while (atomic_read(&mnt->mnt_count) > 1) {
+ while (mnt_get_count(mnt) > 1) {
if (waited && (waited % 30 == 0))
LCONSOLE_WARN("Mount still busy with %d refs after "
"%d secs.\n",
- atomic_read(&mnt->mnt_count),
+ mnt_get_count(mnt),
waited);
/* Cannot use l_event_wait() for an interruptible sleep. */
waited += 3;
blocked = cfs_block_sigsinv(sigmask(SIGKILL));
cfs_waitq_wait_event_interruptible_timeout(
waitq,
- (atomic_read(&mnt->mnt_count) == 1),
+ (mnt_get_count(mnt) == 1),
cfs_time_seconds(3),
rc);
cfs_block_sigs(blocked);
if (rc < 0) {
LCONSOLE_EMERG("Danger: interrupted umount %s with "
"%d refs!\n", mnt->mnt_devname,
- atomic_read(&mnt->mnt_count));
+ mnt_get_count(mnt));
break;
}