Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 16 files:
- drivers/tty/pty.c, line 603
- fs/btrfs/super.c, line 1224
- fs/cachefiles/cache.c, line 167
- fs/cachefiles/daemon.c, line 820
- fs/devpts/inode.c, line 177
- fs/ecryptfs/main.c, line 584
- fs/file_table.c, line 523
- fs/libfs.c
- fs/namei.c
- fs/namespace.c
- fs/nfs/nfs4super.c, line 204
- fs/nfsd/nfs4state.c
- fs/overlayfs/namei.c, line 443
- fs/pidfs.c, line 928
- fs/smb/server/vfs.c, line 1263
- ipc/namespace.c
Smatch caller information:
ipc/namespace.c create_ipc_ns() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &tsk->signal->exec_update_lock |
ipc/namespace.c free_ipc_ns() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
fs/pidfs.c pidfs_fh_to_dentry() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/nfs/nfs4super.c do_nfs4_mount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 32 |
| DATA_SOURCE | 0 | mnt | r fc_mount |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &parent->d_lockref.lock |
fs/cachefiles/cache.c cachefiles_add_cache() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | &cache->daemon_mutex | ||
| TYPE_LOCK | (struct cachefiles_cache)->daemon_mutex |
fs/cachefiles/daemon.c cachefiles_daemon_unbind() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt->mnt_sb->s_bdi->wb_switch_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mnt->mnt_sb->s_bdi->wb_switch_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | mnt->mnt_sb->s_umount.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mnt->mnt_sb->s_umount.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namei.c __traverse_mounts() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 0,32 |
| BUF_SIZE | 0 | mnt | 0,32 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path->dentry->d_lockref.lock |
fs/namei.c __traverse_mounts() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 0,32 |
| BUF_SIZE | 0 | mnt | 0,32 |
| CAPPED_DATA | 0 | mnt | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path->dentry->d_lockref.lock |
fs/namei.c follow_down() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namei.c follow_down_one() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path->dentry->d_lockref.lock |
fs/namei.c follow_up() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path->dentry->d_lockref.lock |
fs/namei.c handle_mounts() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path->dentry->d_lockref.lock |
fs/namei.c path_put() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path->dentry->d_lockref.lock |
fs/namei.c step_into_slowpath() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &nd->path.dentry->d_lockref.lock |
fs/nfsd/nfs4state.c nfsd4_ssc_expire_umount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
fs/nfsd/nfs4state.c nfsd4_ssc_shutdown_umount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &nfsd_mutex |
fs/file_table.c __fput() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dentry->d_lockref.lock |
drivers/tty/pty.c ptm_open_peer_file() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| DATA_SOURCE | 0 | mnt | r devpts_mntget |
| NOCHECK_CALL |
fs/namespace.c __do_sys_fsmount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_idmap | 1531479832127729664 |
| PARAM_VALUE | 0 | mnt->mnt_root | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 32 |
| DATA_SOURCE | 0 | mnt | r vfs_create_mount |
| BIT_INFO | 0 | mnt->mnt_sb->s_flags | 0x80000000,0xffffffffffffffff |
| NOCHECK_CALL |
fs/namespace.c __do_sys_fsmount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_idmap | 1531479832127729664 |
| PARAM_VALUE | 0 | mnt->mnt_root | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 32 |
| DATA_SOURCE | 0 | mnt | r vfs_create_mount |
| BIT_INFO | 0 | mnt->mnt_sb->s_flags | 0x80000000,0xffffffffffffffff |
| NOCHECK_CALL |
fs/namespace.c __free_mntput() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 0-ptr_max |
| BIT_INFO | 0 | mnt | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | mnt | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namespace.c cleanup_mnt() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 32,4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namespace.c do_lock_mount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | global &namespace_sem |
fs/namespace.c kern_unmount() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 0-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb->s_cop->inode_info_offs | 1632,1640,1720,1808,1816,2632,2640,2648,2704,2712 |
| BUF_SIZE | 0 | mnt | (-1),32 |
| BUF_SIZE | 0 | mnt | (-1),32 |
| DATA_SOURCE | 0 | mnt | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namespace.c kern_unmount_array() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &ofs->whiteout->d_lockref.lock | ||
| HALF_LOCKED2 | &ofs->workbasedir->d_lockref.lock | ||
| HALF_LOCKED2 | &ofs->workdir->d_lockref.lock |
fs/namespace.c legitimize_mnt() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 0,32 |
| BUF_SIZE | 0 | mnt | 0,32 |
| DATA_SOURCE | 0 | mnt | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namespace.c mount_subtree() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 32 |
| DATA_SOURCE | 0 | mnt | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namespace.c mount_subtree() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/namespace.c namespace_unlock() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 32,4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem |
fs/namespace.c open_detached_copy() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
fs/ecryptfs/main.c ecryptfs_kill_block_super() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &s->s_umount | ||
| HALF_LOCKED2 | global &cifs_mount_mutex |
fs/devpts/inode.c devpts_mntget() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &path.dentry->d_lockref.lock |
fs/smb/server/vfs.c ksmbd_vfs_kern_path_end_removing() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | &pool->lock |
fs/btrfs/super.c mount_subvol() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 0,4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_idmap | 1531479832127729664 |
| PARAM_VALUE | 0 | mnt->mnt_root | 4096-ptr_max |
| PARAM_VALUE | 0 | mnt->mnt_sb | 4096-ptr_max |
| BUF_SIZE | 0 | mnt | 0,32 |
| BUF_SIZE | 0 | mnt | 0,32 |
| DATA_SOURCE | 0 | mnt | $2 [m] |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &fc->uapi_mutex | ||
| HALF_LOCKED2 | &root->d_lockref.lock | ||
| HALF_LOCKED2 | &s->s_umount |
fs/overlayfs/namei.c ovl_lookup_data_layers() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &dentry->d_sb->s_vfs_rename_mutex |
fs/libfs.c simple_pin_fs() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mnt | 0,4096-ptr_max |
| BUF_SIZE | 0 | mnt | 0,32 |
| BUF_SIZE | 0 | mnt | 0,32 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/libfs.c simple_release_fs() -> mntput()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dir->i_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &parent->lock |