Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/smb/server/vfs_cache.c __ksmbd_lookup_fd() -> has_file_id()

Type Parameter Key Value
DATA_SOURCE 0 id $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 id 0-u64max
HALF_LOCKED2 &pool->lock

fs/smb/server/vfs_cache.c __ksmbd_remove_durable_fd() -> has_file_id()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &global_ft.lock
HALF_LOCKED2 &ci->m_lock
TYPE_LOCK (struct ksmbd_file_table)->lock

fs/smb/server/vfs_cache.c __ksmbd_remove_fd() -> has_file_id()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
HALF_LOCKED2 &pool->lock

fs/smb/server/vfs_cache.c ksmbd_close_fd() -> has_file_id()

Type Parameter Key Value
DATA_SOURCE 0 id $1
USER_DATA 0 id 0-u64max
LOCK2 &pool->lock

fs/smb/server/vfs_cache.c ksmbd_close_fd_app_instance_id() -> has_file_id()

Type Parameter Key Value
LOCK2 &fp->f_ci->m_lock
LOCK2 &ft->lock
TYPE_LOCK (struct ksmbd_file_table)->lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/vfs_cache.c ksmbd_lookup_fd_slow() -> has_file_id()

Type Parameter Key Value
DATA_SOURCE 0 id $1
USER_DATA 0 id 0-u64max
LOCK2 &pool->lock

fs/smb/server/vfs_cache.c ksmbd_reopen_durable_fd() -> has_file_id()

Type Parameter Key Value
LOCK2 global &global_ft.lock
TYPE_LOCK (struct ksmbd_file_table)->lock

fs/smb/server/vfs_cache.c ksmbd_reopen_durable_fd() -> has_file_id()

Type Parameter Key Value

fs/smb/server/vfs_cache.c ksmbd_update_fstate() -> has_file_id()

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

fs/smb/server/smb2pdu.c init_chained_smb2_rsp() -> has_file_id()

Type Parameter Key Value

fs/smb/server/smb2pdu.c smb2_close() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_close() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_compound_has_failed() -> has_file_id()

Type Parameter Key Value
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb2_flush() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_flush() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_get_info_file() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb2_get_info_file() -> has_file_id()

Type Parameter Key Value
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb2_get_info_sec() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb2_get_info_sec() -> has_file_id()

Type Parameter Key Value
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb2_ioctl() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_ioctl() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_lock() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_lock() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_query_dir() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_query_dir() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_read() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_read() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_set_info() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_set_info() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_write() -> has_file_id()

Type Parameter Key Value
USER_DATA 0 id 0-u64max
HALF_LOCKED2 &pool->lock

fs/smb/server/smb2pdu.c smb2_write() -> has_file_id()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock