Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5d477b60 authored by Takashi Iwai's avatar Takashi Iwai Committed by Al Viro
Browse files

vfs: Fix invalid ida_remove() call



When the group id of a shared mount is not allocated, the umount still
tries to call mnt_release_group_id(), which eventually hits a kernel
warning at ida_remove() spewing a message like:
  ida_remove called for id=0 which is not allocated.

This patch fixes the bug simply checking the group id in the caller.

Reported-by: default avatarCristian Rodríguez <crrodriguez@opensuse.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent a93cb29a
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -83,7 +83,8 @@ static int do_make_slave(struct mount *mnt)
		if (peer_mnt == mnt)
			peer_mnt = NULL;
	}
	if (IS_MNT_SHARED(mnt) && list_empty(&mnt->mnt_share))
	if (mnt->mnt_group_id && IS_MNT_SHARED(mnt) &&
	    list_empty(&mnt->mnt_share))
		mnt_release_group_id(mnt);

	list_del_init(&mnt->mnt_share);