Defined in 1 files as a function:

Referenced in 36 files:

Smatch caller information:

drivers/usb/core/devio.c async_completed() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
LOCK2 &ps->lock
LOCK2 flags
TYPE_LOCK (struct usb_dev_state)->lock

drivers/usb/core/devio.c usbdev_open() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->dev.mutex
TYPE_LOCK (struct device)->mutex

security/keys/request_key_auth.c request_key_auth_new() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cred->request_key_auth->sem
HALF_LOCKED2 &idmap->idmap_mutex
HALF_LOCKED2 global &key_types_sem
TYPE_LOCK (struct key)->sem

security/keys/request_key_auth.c request_key_auth_new() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &idmap->idmap_mutex
HALF_LOCKED2 global &key_types_sem

fs/nfsd/nfs4callback.c get_backchannel_cred() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 8139046651473338368
HALF_LOCKED2 &pool->lock

drivers/misc/vmw_vmci/vmci_context.c vmci_ctx_create() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 4096-ptr_max
DATA_SOURCE 0 cred $4
LOCK2 &vmci_host_dev->lock
TYPE_LOCK (struct vmci_host_dev)->lock

fs/fs_context.c alloc_fs_context() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/fs_context.c vfs_dup_fs_context() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/nfs/inode.c alloc_nfs_open_context() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/nfs/inode.c alloc_nfs_open_context() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &dir->d_inode->i_rwsem

fs/nfsd/auth.c nfsd_setuser() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/nfs/delegation.c nfs4_copy_delegation_stateid() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &delegation->lock
LOCK2 rcu_read
TYPE_LOCK (struct nfs_delegation)->lock

fs/nfs/delegation.c nfs_do_return_delegation() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &delegation->lock
TYPE_LOCK (struct nfs_delegation)->lock

fs/nfs/delegation.c nfs_inode_reclaim_delegation() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &delegation->lock
LOCK2 rcu_read
TYPE_LOCK (struct nfs_delegation)->lock

fs/nfs/delegation.c nfs_inode_set_delegation() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $1
RX_PATH
TASK_NOT_RUNNING

fs/nfs/delegation.c nfs_update_delegation_cred() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 0,4096-ptr_max
DATA_SOURCE 0 cred $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &clp->cl_lock
LOCK2 &delegation->lock
TYPE_LOCK (struct nfs_client)->cl_lock
TYPE_LOCK (struct nfs_delegation)->lock

security/keys/request_key.c call_sbin_request_key() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &idmap->idmap_mutex
HALF_LOCKED2 global &key_types_sem

fs/nfs/nfs4client.c nfs4_create_referral_server() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &parent->d_lockref.lock

fs/nfs/nfs4client.c nfs4_create_server() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fc->uapi_mutex

fs/nfs/client.c nfs_clone_server() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &parent->d_lockref.lock
HALF_LOCKED2 &path->dentry->d_lockref.lock

fs/nfs/client.c nfs_create_server() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fc->uapi_mutex

net/sunrpc/svc_xprt.c _svc_xprt_create() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $6
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &nfsd_mutex

net/sunrpc/svc_xprt.c svc_handle_xprt() -> get_cred()

Type Parameter Key Value

fs/nfsd/filecache.c nfsd_file_acquire_local() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/nfsd/filecache.c nfsd_file_alloc() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/nfs/namespace.c nfs_d_automount() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &path->dentry->d_lockref.lock

kernel/ptrace.c __ptrace_link() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
HALF_LOCKED2 global &tasklist_lock

security/apparmor/capability.c audit_caps() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt

io_uring/sqpoll.c io_sq_offload_create() -> get_cred()

Type Parameter Key Value

drivers/android/binder.c binder_open() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/sunrpc/auth.c rpcauth_init_cred() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/file_table.c init_file() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ceph/mds_client.c __register_request() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mdsc->mutex
HALF_LOCKED2 &dir->i_rwsem
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c ceph_mds_check_access() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

kernel/watch_queue.c add_one_watch() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 4096-ptr_max
PREEMPT_ADD
LOCK2 &key->sem
LOCK2 &wlist->lock
LOCK2 &wqueue->lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct key)->sem
TYPE_LOCK (struct watch_list)->lock
TYPE_LOCK (struct watch_queue)->lock

fs/proc/root.c proc_fill_super() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fc->uapi_mutex

io_uring/io_uring.c io_init_req() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 1-1025,1027-1029,1031-u64max
DATA_SOURCE 0 cred r xa_load
NOCHECK_CALL
LOCK2 &ctx->uring_lock
HALF_LOCKED2 &sqd->lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

io_uring/io_uring.c io_prep_async_work() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD
HALF_LOCKED2 &ctx->timeout_lock
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 irq

fs/lockd/host.c nlm_alloc_host() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &nlm_host_mutex

fs/fuse/backing.c fuse_backing_open() -> get_cred()

Type Parameter Key Value
CAPABLE 0 21

fs/nfs/flexfilelayout/flexfilelayoutdev.c ff_layout_get_ds_cred() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $2
RX_PATH
TASK_NOT_RUNNING

fs/nfs/flexfilelayout/flexfilelayoutdev.c ff_layout_get_ds_cred() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $2
RX_PATH
TASK_NOT_RUNNING

security/landlock/tsync.c restrict_one_thread() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu

net/unix/af_unix.c copy_peercred() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sk->sk_peer_lock
TYPE_LOCK (struct sock)->sk_peer_lock

net/unix/af_unix.c prepare_peercred() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/misc/vmw_vmci/vmci_host.c vmci_host_do_init_context() -> get_cred()

Type Parameter Key Value
LOCK2 &vmci_host_dev->lock
TYPE_LOCK (struct vmci_host_dev)->lock

security/apparmor/domain.c aa_change_hat() -> get_cred()

Type Parameter Key Value

security/apparmor/domain.c aa_change_profile() -> get_cred()

Type Parameter Key Value

fs/fuse/passthrough.c fuse_passthrough_open() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 0,4096-ptr_max
PARAM_VALUE 0 cred->non_rcu 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_rwsem

net/vmw_vsock/af_vsock.c __vsock_create() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 parent

net/vmw_vsock/af_vsock.c __vsock_create() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &bt_proto_lock

net/core/sock.c sk_get_peer_cred() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sk->sk_peer_lock
TYPE_LOCK (struct sock)->sk_peer_lock

net/bluetooth/af_bluetooth.c bt_accept_enqueue() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sk->sk_peer_lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 global &hci_cb_list_lock
HALF_LOCKED2 global &rfcomm_mutex
HALF_LOCKED2 parent
HALF_LOCKED2 sk
TYPE_LOCK (struct sock)->sk_peer_lock

net/bluetooth/af_bluetooth.c bt_sock_alloc() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sk->sk_peer_lock
TYPE_LOCK (struct sock)->sk_peer_lock

net/sunrpc/svcsock.c svc_addsock() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $5
LOCK2 global &nfsd_mutex

fs/nfs/nfs4proc.c nfs41_check_delegation_stateid() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 1-u64max
PREEMPT_ADD <- disables preempt
LOCK2 &delegation->lock
LOCK2 rcu_read
TYPE_LOCK (struct nfs_delegation)->lock

fs/nfs/pnfs.c alloc_init_layout_hdr() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->dentry->d_lockref.lock

fs/nfs/pnfs.c pnfs_layout_return_on_reboot() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
LOCK2 &inode->i_lock
TYPE_LOCK (struct inode)->i_lock

fs/nfs/pnfs.c pnfs_layoutcommit_inode() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &inode->i_lock
TYPE_LOCK (struct inode)->i_lock

fs/nfs/pnfs.c pnfs_prepare_layoutreturn() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ino->i_lock
HALF_LOCKED2 &inode->i_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct inode)->i_lock

fs/nfs/pnfs.c pnfs_set_layout_cred() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 1-u64max
DATA_SOURCE 0 cred $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &data->args.inode->i_lock
HALF_LOCKED2 &ino->i_lock
HALF_LOCKED2 &inode->i_lock
TYPE_LOCK (struct inode)->i_lock

net/sunrpc/clnt.c rpc_new_client() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/sunrpc/clnt.c rpc_task_set_rpc_message() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/cred.c commit_creds() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 4096-ptr_max
PARAM_VALUE 0 cred->usage.counter 1-s64max
DATA_SOURCE 0 cred $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 cred->group_info->ngroups 0-65536[c]
USER_DATA 0 cred->jit_keyring 0-5,7
USER_DATA 0 cred->securebits 0-4094
NO_OVERFLOW_SIMPLE 0 cred->process_keyring->quotalen
NO_OVERFLOW_SIMPLE 0 cred->session_keyring->quotalen
NO_OVERFLOW_SIMPLE 0 cred->thread_keyring->quotalen
HALF_LOCKED2 &tsk->signal->exec_update_lock
HALF_LOCKED2 global &key_session_mutex

kernel/cred.c copy_creds() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 4096-ptr_max
PARAM_VALUE 0 cred->non_rcu 0
PARAM_VALUE 0 cred->usage.counter 1
DATA_SOURCE 0 cred r prepare_creds
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 cred->thread_keyring->quotalen

fs/nfs/nfs4state.c nfs4_alloc_state_owner() -> get_cred()

Type Parameter Key Value
DATA_SOURCE 0 cred $1
RX_PATH
TASK_NOT_RUNNING

fs/nfs/nfs4state.c nfs4_get_machine_cred() -> get_cred()

Type Parameter Key Value
PARAM_VALUE 0 cred 8139046651473338368
RX_PATH
TASK_NOT_RUNNING

fs/nfs/nfs4state.c nfs4_get_renew_cred_server_locked() -> get_cred()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &clp->cl_lock
LOCK2 rcu_read
TYPE_LOCK (struct nfs_client)->cl_lock

security/keys/process_keys.c lookup_user_key() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 sk

fs/nfs/unlink.c nfs_async_rename() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &target->i_rwsem

fs/nfs/unlink.c nfs_async_unlink() -> get_cred()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_sb->s_vfs_rename_mutex
HALF_LOCKED2 &sdentry->d_lockref.lock
HALF_LOCKED2 &target->i_rwsem

io_uring/register.c io_register_personality() -> get_cred()

Type Parameter Key Value
LOCK2 &ctx->uring_lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock