Defined in 1 files as a function:

Referenced in 17 files:

Smatch caller information:

security/security.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max

fs/nfs/nfs3proc.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry->d_parent s32min,(-1)-s32max
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 0 dentry->d_name->name 0-255
USER_DATA 0 dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 *dentry->__d_name.name 0-255
USER_DATA 0 *dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 dentry->d_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
USER_PTR 0 dentry->__d_name.name
HALF_LOCKED2 0 &dentry->d_lockref.lock

security/landlock/fs.c current_check_refer_path() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0

security/landlock/fs.c current_check_refer_path() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $2

security/landlock/fs.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry $0
BIT_INFO 0 dentry->d_sb->s_flags 0x0,0xffffffff7fffffff
UNITS 0 dentry unit_jiffy

security/landlock/fs.c get_inode_id() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0

security/landlock/fs.c maybe_remove() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0

fs/cachefiles/cache.c cachefiles_add_cache() -> d_is_negative()

Type Parameter Key Value
LOCK2 &cache->daemon_mutex
TYPE_LOCK (struct cachefiles_cache)->daemon_mutex

security/apparmor/path.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $0

fs/cachefiles/namei.c cachefiles_commit_tmpfile() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 0-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
LOCK2 &pool->lock

fs/cachefiles/namei.c cachefiles_commit_tmpfile() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 0-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
LOCK2 &pool->lock

fs/cachefiles/namei.c cachefiles_get_directory() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 0-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
HALF_LOCKED2 &cache->daemon_mutex

fs/cachefiles/namei.c cachefiles_get_directory() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
DATA_SOURCE 0 dentry r vfs_mkdir
HALF_LOCKED2 &cache->daemon_mutex

fs/cachefiles/namei.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 0
BUF_SIZE 0 dentry 0
DATA_SOURCE 0 dentry $0
UNITS 0 dentry unit_jiffy
HALF_LOCKED2 &cache->daemon_mutex
HALF_LOCKED2 &cache->store->d_inode->i_rwsem
HALF_LOCKED2 &dir->d_inode->i_rwsem
HALF_LOCKED2 &pool->lock

fs/configfs/dir.c fsnotify_rmdir() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_flags 0,256-u32max
CAPPED_DATA 0 dentry 1
CAPPED_DATA 0 dentry->d_parent 1
DATA_SOURCE 0 dentry $1
RX_PATH
TASK_NOT_RUNNING

security/smack/smack_lsm.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0

fs/namei.c atomic_open() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 1-18446744073709551614
DATA_SOURCE 0 dentry $1 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 *dentry->__d_name.name 0-255
USER_DATA 0 *dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
USER_PTR 0 dentry->__d_name.name
HALF_LOCKED2 &dir_inode->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/namei.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry->d_parent (-1)-s32max
DATA_SOURCE 0 dentry $0
STR_LEN 0 dentry->d_parent (-1),1-24,26-27,31-34,63,99,115,254-255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 0 dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_parent->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_parent->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 0 dentry->d_parent->d_sb->s_flags 0-u64max[c]
USER_DATA 0 dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 *dentry->__d_name.name 0-255
USER_DATA 0 *dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
UNITS 0 dentry unit_jiffy
USER_PTR 0 dentry->__d_name.name
USER_PTR 0 dentry->d_parent->__d_name.name
HALF_LOCKED2 &parent->d_inode->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/namei.c fsnotify_unlink() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_flags 4096-u32max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
CAPPED_DATA 0 dentry->d_parent->d_inode 1
DATA_SOURCE 0 dentry $1
BIT_INFO 0 dentry->d_flags 0x1000,0xffffffff
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 dentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
HALF_LOCKED2 &dir->d_inode->i_rwsem
HALF_LOCKED2 &dir->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock
HALF_LOCKED2 0 &dentry->d_sb->s_vfs_rename_mutex

fs/namei.c lookup_one_qstr_excl() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry->d_parent (-1),1-s32max
STR_LEN 0 dentry->d_parent (-1),1-24,26-27,29,31-34,63,99,115,254-255
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_parent->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_parent->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 0 dentry->d_parent->d_sb->s_flags 0-u64max[c]
USER_DATA 0 dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 *dentry->__d_name.name 0-255
USER_DATA 0 *dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
USER_PTR 0 dentry->__d_name.name
USER_PTR 0 dentry->d_parent->__d_name.name
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/namei.c may_delete_dentry() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
DATA_SOURCE 0 dentry $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 dentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
UNITS 0 dentry unit_jiffy
HALF_LOCKED2 0 &dentry->d_lockref.lock
HALF_LOCKED2 0 &dentry->d_sb->s_vfs_rename_mutex

fs/namei.c start_removing_dentry() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
CAPPED_DATA 0 dentry->d_parent 1
DATA_SOURCE 0 dentry $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 dentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
UNITS 0 dentry unit_jiffy
LOCK2 &parent->d_inode->i_rwsem
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 0 &dentry->d_lockref.lock
HALF_LOCKED2 0 &dentry->d_sb->s_vfs_rename_mutex
TYPE_LOCK (struct inode)->i_rwsem

fs/xfs/scrub/orphanage.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0

fs/xfs/scrub/orphanage.c xrep_adoption_check_dcache() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry r try_lookup_noperm

fs/xfs/scrub/orphanage.c xrep_adoption_zap_dcache() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
CAPPED_DATA 0 dentry->d_name.hash 1
DATA_SOURCE 0 dentry r d_lookup
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/overlayfs/dir.c ovl_create_over_whiteout() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry r ovl_lookup_upper_unlocked
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &inode->i_rwsem

fs/overlayfs/dir.c ovl_rename_upper() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
UNITS 0 dentry unit_jiffy
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/afs/dir_silly.c afs_sillyrename() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry r lookup_noperm
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &target->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/smb/client/dir.c cifs_silly_fullpath() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry r lookup_noperm
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_sb->s_vfs_rename_mutex
HALF_LOCKED2 &target->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/nfsd/vfs.c nfsd_create_locked() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 1-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry r vfs_mkdir

kernel/audit_watch.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
LOCK2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

fs/devpts/inode.c fsnotify_unlink() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry s32min-(-2),1-s32max
BUF_SIZE 0 dentry s32min-(-2),1-s32max
DATA_SOURCE 0 dentry $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dentry unit_byte
LOCK2 &tty->legacy_mutex
LOCK2 _T->lock
HALF_LOCKED2 global &spk_mutex
TYPE_LOCK (struct tty_struct)->legacy_mutex

fs/smb/server/smb2pdu.c process_query_dir_entries() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry r lookup_one_unlocked
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
LOCK2 &dir_fp->readdir_lock
LOCK2 &pool->lock
TYPE_LOCK (struct ksmbd_file)->readdir_lock

fs/smb/server/vfs.c ksmbd_vfs_mkdir() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 1-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry r vfs_mkdir

fs/smb/server/vfs.c ksmbd_vfs_path_lookup() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry r lookup_noperm_unlocked
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits

fs/nfs/nfs4proc.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry->d_parent s32min,(-1)-0,4,8-s32max
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 0 dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 *dentry->__d_name.name 0-255
USER_DATA 0 *dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
UNITS 0 dentry unit_jiffy
USER_PTR 0 dentry->__d_name.name
HALF_LOCKED2 &dir->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/nfs/proc.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry->d_parent s32min,(-1)-s32max
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 0 dentry->d_name->name 0-255
USER_DATA 0 dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 *dentry->__d_name.name 0-255
USER_DATA 0 *dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 dentry->d_inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
USER_PTR 0 dentry->__d_name.name
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/overlayfs/namei.c ovl_lookup_positive_unlocked() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry r lookup_one_unlocked
PREEMPT_ADD <- disables preempt
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 dentry->d_sb->s_blocksize_bits
LOCK2 0 &dentry->d_lockref.lock
TYPE_LOCK (struct lockref)->lock

fs/smb/client/inode.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/afs/dir.c afs_rename() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $4
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/afs/dir.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
HALF_LOCKED2 0 &dentry->d_lockref.lock

security/selinux/hooks.c d_is_positive() -> d_is_negative()

Type Parameter Key Value
DATA_SOURCE 0 dentry $0

fs/dcache.c d_lru_add() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_flags 0,262144-u32max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $0
BIT_INFO 0 dentry->d_flags 0x40000,0xffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dentry->d_fsdata->d_fsdata
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
UNITS 0 dentry unit_jiffy
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 global &mount_lock.lock
TYPE_LOCK (struct lockref)->lock

fs/dcache.c d_lru_del() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1)-s32max
BUF_SIZE 0 dentry (-1)-s32max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $0
BIT_INFO 0 dentry->d_flags 0x0,0xfffbfbff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 dentry->d_fsdata->d_fsdata
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
UNITS 0 dentry unit_jiffy
USER_PTR 0 dentry->__d_name.name
HALF_LOCKED2 0 &dentry->d_inode->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock
HALF_LOCKED2 0 &dentry->d_sb->s_vfs_rename_mutex

fs/dcache.c d_lru_isolate() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry $1
BIT_INFO 0 dentry->d_flags 0x0,0xfffbffff
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &dentry->d_lockref.lock
TYPE_LOCK (struct lockref)->lock

fs/dcache.c d_lru_shrink_move() -> d_is_negative()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_flags 0,1024-u32max
DATA_SOURCE 0 dentry $1
BIT_INFO 0 dentry->d_flags 0x400,0xffffffff
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &dentry->d_lockref.lock
TYPE_LOCK (struct lockref)->lock