Defined in 1 files as a prototype:

Defined in 3 files as a function:

Referenced in 3 files:

Smatch caller information:

io_uring/cmd_net.c io_uring_cmd_get_sock_ioctl() -> (struct proto)->ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev->__sk_common.skc_prot 4096-ptr_max
PARAM_VALUE 0 dev->__sk_common.skc_prot->ioctl 1-u64max
PARAM_VALUE 1 ifs 21521,21531
PARAM_VALUE 2 value 1604348447751974912
PARAM_VALUE 2 *value 0
DATA_SOURCE 1 ifs $1
HARD_MAX 1 ifs 21531
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->uring_lock

net/core/sock.c phonet_sk_ioctl() -> (struct proto)->ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->__sk_common.skc_family 35
PARAM_VALUE 0 dev->__sk_common.skc_prot 4096-ptr_max
PARAM_VALUE 1 ifs 35310-35311
PARAM_VALUE 2 value 7551690258875326464
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
CONTAINER 0 -40-40-0+0 $(-1)
USER_DATA 1 ifs 35310-35311
USER_DATA 2 *value s32min-s32max
USER_PTR 2 value
HALF_LOCKED2 &smc->sk

net/core/sock.c sock_ioctl_inout() -> (struct proto)->ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->__sk_common.skc_family 2,10
PARAM_VALUE 0 dev->sk_type 3
PARAM_VALUE 1 ifs 35296-35297
PARAM_VALUE 2 value 60290089986891776,7144189380826431488
BUF_SIZE 2 value 32,40,80
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
DATA_SOURCE 2 value $3
HARD_MAX 0 dev->__sk_common.skc_family 10
USER_DATA 1 ifs 35296-35297
USER_DATA 2 *value s32min-s32max
USER_PTR 2 value

net/core/sock.c sock_ioctl_out() -> (struct proto)->ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 2 value 4697771820457775104
PARAM_VALUE 2 *value 0
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
USER_DATA 1 ifs s32min-s32max
HALF_LOCKED2 &smc->sk

fs/debugfs/file.c full_proxy_unlocked_ioctl() -> (struct file_operations)->unlocked_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->f_path.dentry 4096-ptr_max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
DATA_SOURCE 2 value $2
USER_DATA 1 ifs 0-u32max
USER_DATA 2 value 0-u64max

drivers/media/v4l2-core/v4l2-compat-ioctl32.c v4l2_compat_ioctl32() -> (struct file_operations)->unlocked_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->f_op 4096-ptr_max
PARAM_VALUE 0 dev->f_op->unlocked_ioctl 1-u64max
PARAM_VALUE 1 ifs 0-1074041864,1074041866-1076647975,1076647980-1076647992,1076647994-u32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
FUZZY_MAX 1 ifs 2148034049
CONTAINER 0 -80-80+0 $(-1)
USER_DATA 1 ifs 0-1074030081,1074030083-1074041864,1074041866-1076647975

fs/ioctl.c compat_ptr_ioctl() -> (struct file_operations)->unlocked_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->f_op 4096-ptr_max
PARAM_VALUE 0 dev->f_op->unlocked_ioctl 1-u64max
PARAM_VALUE 1 ifs 0-1074041864,1074041866-1076647975,1076647980-1076647992,1076647994-u32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
FUZZY_MAX 1 ifs 2148034049
CONTAINER 0 -80-80+0 $(-1)
USER_DATA 1 ifs 0-1074030081,1074030083-1074041864,1074041866-1076647975

fs/ioctl.c vfs_ioctl() -> (struct file_operations)->unlocked_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->f_op 4096-ptr_max
PARAM_VALUE 0 dev->f_op->unlocked_ioctl 1-u64max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
DATA_SOURCE 2 value $2
CONTAINER 0 -80-80+0 $(-1)
USER_DATA 1 ifs 0-u32max
USER_DATA 2 value 0-u64max

fs/ecryptfs/file.c ecryptfs_unlocked_ioctl() -> (struct file_operations)->unlocked_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->f_op 4096-ptr_max
PARAM_VALUE 0 dev->f_op->unlocked_ioctl 1-u64max
PARAM_VALUE 1 ifs 1074292226,1074296322,2148034049,2148038145,3222820985
DATA_SOURCE 0 dev r ecryptfs_file_to_lower
DATA_SOURCE 1 ifs $1
DATA_SOURCE 2 value $2
CONTAINER 0 -80-80+0 $(-1)
USER_DATA 1 ifs 1074292226,1074296322,2148034049,2148038145,3222820985
USER_DATA 2 value 0-u64max

fs/ioctl.c __do_compat_sys_ioctl() -> (struct file_operations)->compat_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 0,4-u64max
PARAM_VALUE 1 ifs 0-1074030081,1074030083-1074041864,1074041866-1076647975,1076647980-1076647992,1076647994-2147771904,2147771906-u32max
DATA_SOURCE 1 ifs $1 [m]
DATA_SOURCE 2 value $2
FUZZY_MAX 1 ifs 2148034049
USER_DATA 1 ifs 0-1074030081,1074030083-1074041864,1074041866-1076647975,107664
USER_DATA 2 value 0-u32max

fs/ioctl.c __do_compat_sys_ioctl() -> (struct file_operations)->compat_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 0,4-u64max
PARAM_VALUE 1 ifs 0-1074030081,1074030083-1074041864,1074041866-1076647975,1076647980-1076647992,1076647994-2147771904,2147771906-u32max
DATA_SOURCE 1 ifs $1 [m]
DATA_SOURCE 2 value $2
FUZZY_MAX 1 ifs 2148034049
USER_DATA 1 ifs 0-1074030081,1074030083-1074041864,1074041866-1076647975,107664
USER_DATA 2 value 0-u32max

fs/ecryptfs/file.c ecryptfs_compat_ioctl() -> (struct file_operations)->compat_ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->f_op 4096-ptr_max
PARAM_VALUE 0 dev->f_op->compat_ioctl 1-u64max
PARAM_VALUE 1 ifs 1074030082,1074034178,2147771905,2147776001,3222820985
DATA_SOURCE 0 dev r ecryptfs_file_to_lower
DATA_SOURCE 1 ifs $1
DATA_SOURCE 2 value $2
CONTAINER 0 -88-80+0 $(-1)
USER_DATA 1 ifs 1074034178
USER_DATA 2 value 0-u32max

drivers/net/wan/hdlc.c hdlc_ioctl() -> (struct hdlc_proto)->ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->lock.dep_map->name 0-255
PARAM_VALUE 0 dev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->netdev_ops 4096-ptr_max
PARAM_VALUE 0 dev->netdev_ops->ndo_siocwandev 3169121643887783936,4639040216571998208,4740843728122777600,5475627671455961088,6476681243475546112,7667607148383133696
PARAM_VALUE 1 ifs 4096-ptr_max
PARAM_VALUE 1 ifs->type 0,2-u32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
USER_DATA 1 ifs->size 0-u32max
USER_DATA 1 ifs->type 0,2-u32max
LOCK2 &net->rtnl_mutex
LOCK2 global &rtnl_mutex
TYPE_LOCK (struct net)->rtnl_mutex

drivers/net/wan/hdlc.c hdlc_ioctl() -> (struct hdlc_proto)->ioctl()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->lock.dep_map->name 0-255
PARAM_VALUE 0 dev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->netdev_ops 4096-ptr_max
PARAM_VALUE 0 dev->netdev_ops->ndo_siocwandev 3169121643887783936,4639040216571998208,4740843728122777600,5475627671455961088,6476681243475546112,7667607148383133696
PARAM_VALUE 1 ifs 4096-ptr_max
PARAM_VALUE 1 ifs->type 0,2-u32max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 ifs $1
USER_DATA 1 ifs->size 0-u32max
USER_DATA 1 ifs->type 0,2-u32max
LOCK2 &net->rtnl_mutex
LOCK2 global &rtnl_mutex
TYPE_LOCK (struct net)->rtnl_mutex