/* Locking: - The runlist must be unlocked on entry and is unlocked on return. */
int ntfs_map_runlist(ntfs_inode *ni, VCN vcn)
/* Locking: - The runlist must be unlocked on entry and is unlocked on return. */
int ntfs_map_runlist(ntfs_inode *ni, VCN vcn)
{
	int err = 0;
	down_write(&ni->runlist.lock);
	if (likely(ntfs_rl_vcn_to_lcn(ni->runlist.rl, vcn) <=
			LCN_RL_NOT_MAPPED))
		err = ntfs_map_runlist_nolock(ni, vcn, NULL);
	up_write(&ni->runlist.lock);
	return err;
}