Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 7 files as a macro:

Defined in 13 files as a function:

Referenced in 40 files:

Smatch caller information:

drivers/infiniband/core/ib_core_uverbs.c _ib_respond_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 1-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte
HALF_LOCKED2 &dev->dev_lock
HALF_LOCKED2 &file->hw_destroy_rwsem
HALF_LOCKED2 &file->ucontext_lock
HALF_LOCKED2 &hr_qp->mutex
HALF_LOCKED2 &qp->mutex
HALF_LOCKED2 &us_ibdev->usdev_lock

drivers/infiniband/core/ib_core_uverbs.c uverbs_copy_to_struct_or_zero() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 1-65531
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/mthca/mthca_provider.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

lib/iov_iter.c zero_to_user_iter() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 1-u64max
CAPPED_DATA 1 n 1
CAPPED_DATA 1 n 1
DATA_SOURCE 0 to $0
DATA_SOURCE 1 n $2
NOSPEC 1 n
NOSPEC 1 n
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 n 1-s32max[c]
USER_DATA 1 n 1-u64max[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/hns/hns_roce_main.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/iommu/iommufd/selftest.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-16
USER_DATA 1 n 0-16[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/bnxt_re/ib_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

fs/pidfs.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-16319
USER_DATA 1 n 0-16319[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/mana/wq.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

security/keys/keyctl_pkey.c keyctl_pkey_query() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 40
BUF_SIZE 0 to 40
UNITS 1 n unit_byte

drivers/infiniband/hw/erdma/erdma_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/sw/siw/siw_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/mana/main.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

fs/file_attr.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-4072
USER_DATA 1 n 0-4072[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/mana/qp.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/cxgb4/provider.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

fs/binfmt_elf.c padzero() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-4095
DATA_SOURCE 0 to $0
UNITS 0 to unit_byte
HALF_LOCKED2 &tsk->signal->exec_update_lock

lib/tests/usercopy_kunit.c usercopy_test_copy_struct_from_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 0-18446744073709551614
PARAM_VALUE 0 *to 0-255
PARAM_VALUE 1 n 0,4096,8192,18446744073709547520
CAPPED_DATA 1 n 1

drivers/iommu/iommufd/device.c iommufd_get_hw_info() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-s32max
USER_DATA 1 n 1-s32max

drivers/infiniband/hw/usnic/usnic_ib_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/sw/rdmavt/vt.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/gpu/drm/drm_ioc32.c compat_drm_getstats() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 124
DATA_SOURCE 0 to $2
UNITS 1 n unit_byte

drivers/gpu/drm/panthor/panthor_drv.c panthor_set_uobj() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-2147483643
USER_DATA 1 n 1-2147483643
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/vhost/net.c vhost_net_ioctl() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max

drivers/infiniband/core/uverbs_std_types_device.c copy_gid_entries_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

kernel/sched/build_policy.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-4048
USER_DATA 1 n 0-4048[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/fwctl/main.c copy_to_user_zero_pad() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-u32max
USER_DATA 1 n 1-u32max
LOCK2 _T->lock

drivers/fwctl/main.c fwctl_cmd_info() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-u32max
USER_DATA 1 n 1-u32max[u]
LOCK2 _T->lock

drivers/md/dm-ioctl.c copy_params() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 305-1073741824
CAPPED_DATA 1 n 1
DATA_SOURCE 0 to $0
CAPABLE 0 21
UNITS 1 n unit_byte

drivers/md/dm-ioctl.c copy_params() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 305-1073741824
CAPPED_DATA 1 n 1
DATA_SOURCE 0 to $0
FUZZY_MAX 1 n 1073741824
CAPABLE 0 21
UNITS 1 n unit_byte

drivers/input/evdev.c evdev_get_mask() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 1-u32max
USER_DATA 1 n 1-u32max
LOCK2 &evdev->mutex
TYPE_LOCK (struct evdev)->mutex

io_uring/query.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
USER_DATA 1 n 0-u32max,18446744069414584321-u64max[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte
HALF_LOCKED2 &ctx->uring_lock

security/keys/keyctl.c keyctl_capabilities() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 0 *to 0-255
PARAM_VALUE 1 n 1-18446744073709551613
USER_DATA 1 n 1-18446744073709551613
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/block/ublk_drv.c ublk_ctrl_get_queue_affinity() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 1-u64max
PARAM_VALUE 1 n 1-65518
RX_PATH
TASK_NOT_RUNNING
UNITS 0 to unit_byte
UNITS 1 n unit_byte
HALF_LOCKED2 &ctx->uring_lock

arch/x86/kernel/ldt.c read_default_ldt() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 0-128
DATA_SOURCE 0 to $0
DATA_SOURCE 1 n $1 [m]
FUZZY_MAX 1 n 128
USER_DATA 0 to 0-u64max
USER_DATA 1 n 0-128

arch/x86/kernel/ldt.c read_ldt() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 1-65536
CAPPED_DATA 1 n 1
USER_DATA 1 n 1-65536[c]
LOCK2 &mm->context.ldt_usr_sem
TYPE_LOCK (struct mm_context_t)->ldt_usr_sem

fs/erofs/inode.c erofs_ioctl_get_volume_label() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1
DATA_SOURCE 0 to $1

drivers/infiniband/core/uverbs_cmd.c uverbs_response() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 1-524276
USER_DATA 1 n 1-524276
UNITS 0 to unit_byte
UNITS 1 n unit_byte
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/media/usb/uvc/uvc_v4l2.c uvc_v4l2_put_xu_mapping() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 16
BUF_SIZE 0 to 16
UNITS 1 n unit_byte

sound/core/pcm_native.c snd_pcm_status_user_compat64() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 0-u32max
PARAM_VALUE 1 n 128
DATA_SOURCE 0 to $1
UNITS 1 n unit_byte

drivers/xen/privcmd.c privcmd_ioctl_mmap_batch() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 4-17179869180
USER_DATA 1 n 4-17179869180

drivers/infiniband/hw/ionic/ionic_ibdev.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

fs/notify/inotify/inotify_user.c copy_event_to_user() -> clear_user()

Type Parameter Key Value
DATA_SOURCE 0 to $2 [m]
UNITS 1 n unit_byte

drivers/infiniband/hw/mana/mr.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/gpu/drm/radeon/radeon_ttm.c radeon_ttm_gtt_read() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-4096
CAPPED_DATA 1 n 1
CAPPED_DATA 1 n 1
DATA_SOURCE 0 to $1 [m]
USER_DATA 1 n 1-4096[c]

block/blk-integrity.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-16383
USER_DATA 1 n 8-16[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

kernel/signal.c copy_siginfo_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 80
DATA_SOURCE 0 to r si_expansion
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 n unit_byte

fs/btrfs/ioctl.c btrfs_ioctl_get_csums() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 24-16777216
CAPPED_DATA 1 n 1
CAPPED_DATA 1 n 1
USER_DATA 1 n 24-16777215[c]
UNITS 1 n unit_byte

drivers/infiniband/hw/mana/cq.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/ocrdma/ocrdma_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

mm/mempolicy.c copy_nodes_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 0 *to 0-255
PARAM_VALUE 1 n 1-4092
CAPPED_DATA 1 n 1
USER_DATA 1 n 1-4092[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

sound/core/seq/seq_memory.c snd_seq_expand_var_event() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-1227133536,18446744072635809793-u64max
RX_PATH
USER_DATA 1 n 0-1227133535,18446744072635809793-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

fs/compat_binfmt_elf.c padzero() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-4095
DATA_SOURCE 0 to $0
UNITS 0 to unit_byte

drivers/infiniband/hw/ionic/ionic_controlpath.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/irdma/verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

net/netfilter/x_tables.c xt_data_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-s32max,18446744071562067968-u64max
NS_CAPABLE 0 12
RX_PATH
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/qedr/verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

fs/notify/fanotify/fanotify_user.c copy_fid_info_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-256
DATA_SOURCE 0 to $5 [m]
UNITS 1 n unit_byte

arch/x86/kvm/svm/nested.c svm_get_nested_state() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 4096

drivers/accel/ethosu/ethosu_drv.c copy_struct_to_user() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 1 n 0-4294967283
USER_DATA 1 n 0-4294967283[c]
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/sw/rxe/rxe_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c ib_respond_empty_udata() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-524280,18446744073709551361-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 n 1-524280,18446744073709551361-u64max
UNITS 0 to unit_byte
UNITS 1 n unit_byte

drivers/char/mem.c read_mem() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 1 n 1-4096
CAPPED_DATA 1 n 1
DATA_SOURCE 0 to $1 [m]
DATA_SOURCE 1 n r size_inside_page
NOSPEC 1 n
NOSPEC 1 n
USER_DATA 1 n 1-4096[c]

drivers/char/mem.c read_zero() -> clear_user()

Type Parameter Key Value
PARAM_VALUE 0 to 4096-ptr_max
PARAM_VALUE 0 *to 0-255
PARAM_VALUE 1 n 1-4096
CAPPED_DATA 1 n 1
CAPPED_DATA 1 n 1
USER_DATA 1 n 1-4095[c]