Documented in 1 files:

Defined in 1 files as a function:

Referenced in 14 files:

Smatch caller information:

kernel/fork.c copy_fs() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

kernel/fork.c copy_fs() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

security/apparmor/path.c get_fs_root() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/afs/file.c afs_drop_open_mmap() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &vnode->cb_lock.lock
LOCK2 &vnode->volume->open_mmaps_lock
TYPE_LOCK (struct afs_volume)->open_mmaps_lock
TYPE_LOCK (struct seqlock)->lock

fs/proc/base.c get_fs_pwd() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
LOCK2 &task->alloc_lock
LOCK2 &task->signal->exec_update_lock
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock
TYPE_LOCK (struct task_struct)->alloc_lock

fs/proc/base.c get_fs_root() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
LOCK2 &task->alloc_lock
LOCK2 &task->signal->exec_update_lock
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock
TYPE_LOCK (struct task_struct)->alloc_lock

fs/cachefiles/daemon.c get_fs_pwd() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &cache->daemon_mutex
LOCK2 &fs->seq.lock
TYPE_LOCK (struct cachefiles_cache)->daemon_mutex
TYPE_LOCK (struct seqlock)->lock

fs/namei.c follow_up() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 global &mount_lock.lock
TYPE_LOCK (struct seqlock)->lock

fs/namei.c follow_up() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 global &mount_lock.lock
TYPE_LOCK (struct seqlock)->lock

fs/namei.c get_fs_pwd() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/namei.c get_fs_root() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

kernel/auditsc.c get_fs_pwd() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

net/rxrpc/conn_service.c done_seqretry() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
DATA_SOURCE 0 sl $0
NOCHECK_CALL
LOCK2 rcu_read

kernel/nstree.c class_ns_tree_locked_reader_destructor() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 3539976965868326912
NOCHECK_CALL
LOCK2 global &ns_tree_lock.lock

fs/d_path.c done_seqretry() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952,6999784468772192256
DATA_SOURCE 0 sl $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

fs/ufs/balloc.c ufs_new_fragments() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/namespace.c __unlock_mount() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
RX_PATH
NOCHECK_CALL
LOCK2 global &mount_lock.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 global &namespace_sem
TYPE_LOCK (struct seqlock)->lock

fs/namespace.c attach_recursive_mnt() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
RX_PATH
NOCHECK_CALL
LOCK2 global &mount_lock.lock
TYPE_LOCK (struct seqlock)->lock

fs/namespace.c class_mount_locked_reader_destructor() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mount_lock.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 global &namespace_sem

fs/namespace.c get_fs_root() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
HALF_LOCKED2 global &namespace_sem
TYPE_LOCK (struct seqlock)->lock

fs/namespace.c get_mountpoint() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mount_lock.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 global &namespace_sem
TYPE_LOCK (struct seqlock)->lock

fs/namespace.c get_mountpoint() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mount_lock.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 global &namespace_sem
TYPE_LOCK (struct seqlock)->lock

fs/namespace.c path_overmounted() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dentry->d_inode->i_rwsem
LOCK2 global &mount_lock.lock
LOCK2 global &namespace_sem
TYPE_LOCK (struct inode)->i_rwsem
TYPE_LOCK (struct seqlock)->lock

fs/pnode.c class_mount_locked_reader_destructor() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
RX_PATH
NOCHECK_CALL
LOCK2 global &mount_lock.lock

fs/proc_namespace.c get_fs_root() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
LOCK2 &task->alloc_lock
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct task_struct)->alloc_lock

fs/fhandle.c get_fs_pwd() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/ufs/inode.c ufs_getfrag_block() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ufs/inode.c ufs_getfrag_block() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/ufs/inode.c ufs_truncate_blocks() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ufsi->meta_lock.lock
LOCK2 &ufsi->truncate_mutex
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct ufs_inode_info)->truncate_mutex

fs/fs_struct.c copy_fs_struct() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &old->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/fs_struct.c exit_fs() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fs->seq.lock
LOCK2 &tsk->alloc_lock
HALF_LOCKED2 global &system_transition_mutex
TYPE_LOCK (struct seqlock)->lock
TYPE_LOCK (struct task_struct)->alloc_lock

fs/fs_struct.c init_userspace_fs() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL

fs/fs_struct.c switch_fs_struct() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &_T->lock->alloc_lock
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/fs_struct.c unshare_fs_struct() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/afs/vl_alias.c afs_query_for_alias_one() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &net->cells_alias_lock
LOCK2 &p->volume_lock.lock
HALF_LOCKED2 &fc->uapi_mutex
TYPE_LOCK (struct afs_net)->cells_alias_lock
TYPE_LOCK (struct seqlock)->lock

fs/exec.c check_unsafe_exec() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &p->fs->seq.lock
TYPE_LOCK (struct seqlock)->lock

fs/dcache.c class_mount_locked_reader_destructor() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 4370652378825981952
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mount_lock.lock
HALF_LOCKED2 &sbi->fs_lock
HALF_LOCKED2 &sbi->wq_mutex

fs/dcache.c d_set_mounted() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 6999784468772192256
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rename_lock.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 global &namespace_sem
TYPE_LOCK (struct seqlock)->lock

fs/dcache.c done_seqretry() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 6999784468772192256
DATA_SOURCE 0 sl $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 global &mount_lock.lock
HALF_LOCKED2 rcu_read

fs/dcache.c is_subdir() -> read_sequnlock_excl()

Type Parameter Key Value
PARAM_VALUE 0 sl 6999784468772192256
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rename_lock.lock
LOCK2 rcu_read
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &global_ft.lock
HALF_LOCKED2 global &namespace_sem
HALF_LOCKED2 global &nfsd_mutex
TYPE_LOCK (struct seqlock)->lock