diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2022-03-02 22:11:23 +0100 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2022-05-20 05:25:47 +0200 |
commit | 279b192c23d2fc9cb9e8c3851d6cad968f51789f (patch) | |
tree | 7157657dde28c452abad2b74f74c9db706925bf8 /kernel/usermode_driver.c | |
parent | m->mnt_root->d_inode->i_sb is a weird way to spell m->mnt_sb... (diff) | |
download | linux-279b192c23d2fc9cb9e8c3851d6cad968f51789f.tar.xz linux-279b192c23d2fc9cb9e8c3851d6cad968f51789f.zip |
blob_to_mnt(): kern_unmount() is needed to undo kern_mount()
plain mntput() won't do.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'kernel/usermode_driver.c')
-rw-r--r-- | kernel/usermode_driver.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/usermode_driver.c b/kernel/usermode_driver.c index 9dae1f648713..8303f4c7ca71 100644 --- a/kernel/usermode_driver.c +++ b/kernel/usermode_driver.c @@ -28,7 +28,7 @@ static struct vfsmount *blob_to_mnt(const void *data, size_t len, const char *na file = file_open_root_mnt(mnt, name, O_CREAT | O_WRONLY, 0700); if (IS_ERR(file)) { - mntput(mnt); + kern_unmount(mnt); return ERR_CAST(file); } @@ -38,7 +38,7 @@ static struct vfsmount *blob_to_mnt(const void *data, size_t len, const char *na if (err >= 0) err = -ENOMEM; filp_close(file, NULL); - mntput(mnt); + kern_unmount(mnt); return ERR_PTR(err); } |