Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 119538 | Differences between
and this patch

Collapse All | Expand All

(-)a/subfs-0.9/subfs.c (-3 / +3 lines)
Lines 221-234 Link Here
221
	struct vfsmount *child;
221
	struct vfsmount *child;
222
222
223
	/* This is ugly, but prevents a lockup during mount. */
223
	/* This is ugly, but prevents a lockup during mount. */
224
	up(&dir->i_sem);
224
	mutex_lock(&dir->i_mutex);
225
	if (down_interruptible(&sfs_mnt->sem)) {
225
	if (down_interruptible(&sfs_mnt->sem)) {
226
		down(&dir->i_sem);/*put the dir sem back down if interrupted*/
226
		mutex_unlock(&dir->i_mutex);
227
		return ERR_PTR(-ERESTARTSYS);
227
		return ERR_PTR(-ERESTARTSYS);
228
	}
228
	}
229
	child = get_child_mount(sfs_mnt);
229
	child = get_child_mount(sfs_mnt);
230
	up(&sfs_mnt->sem);
230
	up(&sfs_mnt->sem);
231
	down(&dir->i_sem);
231
	mutex_unlock(&dir->i_mutex);
232
	if (IS_ERR(child))
232
	if (IS_ERR(child))
233
		return (void *) child;
233
		return (void *) child;
234
	subfs_send_signal();
234
	subfs_send_signal();

Return to bug 119538