Defined in 1 files as a function:

Referenced in 30 files:

Smatch caller information:

init/do_mounts_initrd.c create_dev() -> new_encode_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 1048576
DATA_SOURCE 0 dev $1

drivers/tty/tty_io.c tty_ioctl() -> new_encode_dev()

Type Parameter Key Value

fs/jffs2/fs.c jffs2_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size

fs/hfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/ufs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/cramfs/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

init/do_mounts.c create_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $1

fs/befs/linuxvfs.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

init/initramfs.c parse_header() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/f2fs/inode.c __set_inode_rdev() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
UNITS 0 dev unit_array_size
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem

fs/fuse/dir.c fuse_mknod() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $4
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]

fs/fuse/dir.c fuse_statx_to_attr() -> new_encode_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem

fs/nfsd/nfsxdr.c svcxdr_encode_fattr() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/nfsd/nfsxdr.c svcxdr_encode_fattr() -> new_encode_dev()

Type Parameter Key Value

fs/hfsplus/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/erofs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/minix/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/ext4/inode.c ext4_fill_raw_inode() -> new_encode_dev()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
UNITS 0 dev unit_array_size
HALF_LOCKED2 &ei->i_data_sem
HALF_LOCKED2 &ei->i_raw_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &inode->i_rwsem

fs/autofs/dev-ioctl.c autofs_dev_ioctl_ismountpoint() -> new_encode_dev()

Type Parameter Key Value

fs/autofs/dev-ioctl.c autofs_dev_ioctl_ismountpoint() -> new_encode_dev()

Type Parameter Key Value

fs/proc/array.c do_task_stat() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
LOCK2 &task->signal->exec_update_lock
TYPE_LOCK (struct seq_file)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock

fs/pstore/blk.c early_boot_devpath() -> new_encode_dev()

Type Parameter Key Value
LOCK2 global &pstore_blk_lock

fs/nilfs2/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/exfat/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

drivers/infiniband/core/nldev.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 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

drivers/block/loop.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 0
DATA_SOURCE 0 dev $0
UNITS 0 dev unit_array_size

fs/ext2/inode.c ext2_write_inode() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
UNITS 0 dev unit_array_size
HALF_LOCKED2 &inode->i_rwsem

fs/adfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

drivers/char/misc_minor_kunit.c miscdev_test_can_open() -> new_encode_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 0,2097152-s32max
BIT_INFO 0 dev 0xa00000,0x7fffffff

fs/stat.c cp_compat_stat() -> new_encode_dev()

Type Parameter Key Value

fs/stat.c cp_compat_stat() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/stat.c cp_new_stat() -> new_encode_dev()

Type Parameter Key Value

fs/stat.c cp_new_stat() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

drivers/md/dm-ioctl.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
UNITS 0 dev unit_array_size
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 global &_hash_lock

kernel/taskstats.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ocfs2/namei.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
HALF_LOCKED2 &inode->i_rwsem

fs/bfs/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/isofs/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/nfsd/export.c mk_fsid() -> new_encode_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 0
DATA_SOURCE 0 dev $2

fs/affs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/jfs/jfs_mount.c logMOUNT() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &fc->uapi_mutex

fs/jfs/jfs_mount.c updateSuper() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size

fs/nfsd/nfs3xdr.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0

kernel/events/core.c perf_fill_ns_link_info() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/efivarfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &s->s_umount

fs/fat/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/xfs/xfs_fsmap.c xfs_getfsmap_device() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/xfs/xfs_fsmap.c xfs_getfsmap_device() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/xfs/xfs_fsmap.c xfs_getfsmap_device() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/jffs2/gc.c jffs2_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
LOCK2 &c->alloc_sem
LOCK2 &f->sem
HALF_LOCKED2 &c->wbuf_sem
TYPE_LOCK (struct jffs2_inode_info)->sem
TYPE_LOCK (struct jffs2_sb_info)->alloc_sem

fs/qnx4/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/ubifs/dir.c ubifs_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]

fs/jffs2/dir.c jffs2_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
HALF_LOCKED2 _T->lock

kernel/bpf/offload.c bpf_map_offload_info_fill() -> new_encode_dev()

Type Parameter Key Value

kernel/bpf/offload.c bpf_prog_offload_info_fill() -> new_encode_dev()

Type Parameter Key Value

fs/udf/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/hpfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

drivers/md/dm-init.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
PARAM_VALUE 0 dev 0-1048575
DATA_SOURCE 0 dev $0
USER_DATA 0 dev 0-1048575
NO_OVERFLOW_SIMPLE 0 dev

fs/hugetlbfs/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &s->s_umount

fs/ext4/fsmap.c ext4_getfsmap() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/ext4/fsmap.c ext4_getfsmap() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/ext4/fsmap.c ext4_getfsmap_is_valid_device() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/ext4/fsmap.c ext4_getfsmap_is_valid_device() -> new_encode_dev()

Type Parameter Key Value
UNITS 0 dev unit_array_size

fs/autofs/waitq.c autofs_get_dev() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sbi->wq_mutex
TYPE_LOCK (struct autofs_sb_info)->wq_mutex

fs/btrfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/nfs/proc.c nfs_proc_mknod() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $3
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
HALF_LOCKED2 _T->lock

fs/romfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

arch/x86/kernel/sys_ia32.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
UNITS 0 dev unit_array_size

fs/f2fs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/xfs/xfs_super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/qnx6/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/nilfs2/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
UNITS 0 dev unit_array_size
HALF_LOCKED2 &inode->i_lock
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &inode->i_sb->s_fs_info->ns_segctor_sem

fs/jfs/namei.c jfs_mknod() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $4
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev 0-u32max[c]
HALF_LOCKED2 _T->lock

fs/omfs/inode.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/nfsd/nfsfh.c mk_fsid() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $2

fs/nfsd/nfsfh.c nfsd_set_fh_dentry() -> new_encode_dev()

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

fs/hpfs/inode.c hpfs_write_inode_ea() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &i->i_rwsem
HALF_LOCKED2 &i->i_sb->s_fs_info->hpfs_mutex
HALF_LOCKED2 &sbi->hpfs_mutex

fs/libfs.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &s->s_umount

fs/squashfs/super.c huge_encode_dev() -> new_encode_dev()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size
HALF_LOCKED2 &s->s_umount

fs/btrfs/send.c send_create_inode() -> new_encode_dev()

Type Parameter Key Value

fs/ext4/super.c ext4_parse_param() -> new_encode_dev()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_array_size