Defined in 1 files as a function:
Referenced in 22 files:
- arch/x86/hyperv/hv_init.c, line 555
- drivers/android/binder_alloc.c, line 1380
- drivers/base/firmware_loader/sysfs.c, line 258
- drivers/block/brd.c, line 158
- drivers/block/null_blk/main.c, line 1162
- drivers/block/zram/zram_drv.c, line 2147
- drivers/gpu/drm/i915/gem/i915_gem_phys.c, line 130
- drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c
- drivers/scsi/ipr.c
- drivers/vdpa/vdpa_user/iova_domain.c
- fs/btrfs/raid56.c, line 3029
- fs/erofs/decompressor.c
- fs/exec.c, line 575
- fs/hfs/bnode.c, line 158
- fs/hfsplus/bnode.c
- fs/ntfs/compress.c
- include/linux/bvec.h, line 311
- kernel/dma/swiotlb.c, line 995
- lib/test_hmm.c, line 611
- mm/zsmalloc.c
- net/ceph/messenger_v1.c, line 1131
- net/ceph/messenger_v2.c
Smatch caller information:
drivers/vdpa/vdpa_user/iova_domain.c do_bounce() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 3 | len | 1-4096 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 2 | from | $1 [m] |
| FUZZY_MAX | 1 | offset | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &domain->bounce_lock | ||
| TYPE_LOCK | (struct vduse_iova_domain)->bounce_lock |
drivers/vdpa/vdpa_user/iova_domain.c vduse_domain_add_user_bounce_pages() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 2 | from | 18379471554275704832,18446612682070032384 |
| PARAM_VALUE | 3 | len | 4096 |
| NOCHECK_CALL | |||
| UNITS | 3 | len | unit_byte |
| LOCK2 | &dev->domain_lock | ||
| LOCK2 | &domain->bounce_lock | ||
| TYPE_LOCK | (struct vduse_dev)->domain_lock | ||
| TYPE_LOCK | (struct vduse_iova_domain)->bounce_lock |
net/ceph/messenger_v2.c prepare_read_data_cont() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 2 | from | 18379471554275704832,18446612682070032384 |
| NOCHECK_CALL | |||
| UNITS | 0 | page | unit_page |
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
net/ceph/messenger_v2.c prepare_sparse_read_cont() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 2 | from | 18379471554275704832,18446612682070032384 |
| NOCHECK_CALL | |||
| USER_DATA | 1 | offset | 0-4095[c] |
| UNITS | 0 | page | unit_page |
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
drivers/block/floppy.c memcpy_to_bvec() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 2 | from | $1 |
| NOCHECK_CALL | |||
| UNITS | 0 | page | unit_page |
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
| HALF_LOCKED2 | &pool->lock |
drivers/block/brd.c brd_rw_bvec() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 0,4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0,512-3584 |
| PARAM_VALUE | 3 | len | 0-4096 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 2 | from | r bvec_kmap_local |
| BIT_INFO | 1 | offset | 0x0,0xe00 |
| NOSPEC | 3 | len | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | offset | 0,512-3584[c] |
| HOST_DATA | 3 | len | 512-3584,4096[c] |
| USER_DATA | 1 | offset | 0,512-3584[c] |
| USER_DATA | 3 | len | 512-3584,4096[c] |
| UNITS | 3 | len | unit_byte |
| HALF_LOCKED2 | &bio->bi_bdev->bd_queue->queue_lock |
lib/test_hmm.c dmirror_do_write() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4-u64max |
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 2 | from | 1-u64max |
| PARAM_VALUE | 3 | len | 4096 |
| DATA_SOURCE | 0 | page | r xa_untag_pointer |
| NOCHECK_CALL | |||
| USER_DATA | 2 | *from | 0-255 |
| UNITS | 3 | len | unit_byte |
| USER_PTR | 2 | from | |
| LOCK2 | &dmirror->mutex | ||
| TYPE_LOCK | (struct dmirror)->mutex |
fs/hfsplus/bnode.c hfsplus_bnode_write() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 3 | len | 0-4096 |
| BUF_SIZE | 2 | from | (-1),2,4,14,64,520 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 1 | offset | $2 [m] |
| DATA_SOURCE | 2 | from | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 3 | len | 1-4095[c] |
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
fs/hfsplus/bnode.c hfsplus_bnode_write() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 2 | from | 4096-u64max |
| PARAM_VALUE | 3 | len | 1-4096 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 2 | from | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 3 | len | 1-4095[c] |
| UNITS | 3 | len | unit_byte |
fs/ntfs/compress.c ntfs_read_compressed_block() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-4095,4097-s32max |
| PARAM_VALUE | 3 | len | 1-4096,18446744071562072065-u64max |
| FUZZY_MAX | 1 | offset | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | offset | unit_byte |
| UNITS | 2 | from | unit_byte |
| UNITS | 3 | len | unit_byte |
| LOCK2 | global &ntfs_cb_lock | ||
| HALF_LOCKED2 | &mapping->invalidate_lock | ||
| HALF_LOCKED2 | &ni->runlist.lock |
fs/ntfs/compress.c ntfs_read_compressed_block() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-4095,4097-s32max |
| PARAM_VALUE | 2 | from | 0-18446744073709547519 |
| PARAM_VALUE | 3 | len | 0-4095,4294963202-u32max |
| CAPPED_DATA | 2 | from | 1 |
| FUZZY_MAX | 1 | offset | 0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | offset | unit_byte |
| UNITS | 2 | from | unit_byte |
| UNITS | 3 | len | unit_byte |
| LOCK2 | global &ntfs_cb_lock | ||
| HALF_LOCKED2 | &mapping->invalidate_lock | ||
| HALF_LOCKED2 | &ni->runlist.lock |
drivers/base/firmware_loader/sysfs.c firmware_rw() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 2 | from | 4096-u64max |
| PARAM_VALUE | 3 | len | 1-4096 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 2 | from | $1 [m] |
| CAPABLE | 0 | 17 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | offset | 1-4095[c] |
| USER_DATA | 2 | from | 4096-ptr_max[c][u] |
| USER_DATA | 3 | len | 2-4096[c] |
| UNITS | 3 | len | unit_byte |
| LOCK2 | &of->mutex | ||
| LOCK2 | global &fw_lock | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c free_pagelist() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | from | 4096-ptr_max |
| PARAM_VALUE | 3 | len | 1-s32max,18446744071562067968-u64max |
| CAPPED_DATA | 3 | len | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
| LOCK2 | &service->bulk_mutex | ||
| TYPE_LOCK | (struct vchiq_service)->bulk_mutex |
drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c free_pagelist() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 3 | len | 1-s32max,18446744071562067968-u64max |
| CAPPED_DATA | 1 | offset | 1 |
| CAPPED_DATA | 3 | len | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |
| LOCK2 | &service->bulk_mutex | ||
| TYPE_LOCK | (struct vchiq_service)->bulk_mutex |
drivers/android/binder_alloc.c binder_alloc_do_buffer_copy() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 3 | len | 1-40 |
| BUF_SIZE | 2 | from | (-1),4,8 |
| CAPPED_DATA | 3 | len | 1 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 0 | page | r binder_alloc_get_page |
| DATA_SOURCE | 2 | from | $4 [m] |
| PARAM_COMPARE | 1 | offset | >= $3 |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 3 | len | 1-39[c] |
| UNITS | 2 | from | unit_byte |
| UNITS | 3 | len | unit_byte |
fs/hfs/bnode.c hfs_bnode_write() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 3 | len | 1-u32max |
| BUF_SIZE | 2 | from | (-1),2,4,12,14,102 |
| DATA_SOURCE | 1 | offset | $2 |
| DATA_SOURCE | 2 | from | $1 |
| DATA_SOURCE | 3 | len | r check_and_correct_requested_length |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
| HALF_LOCKED2 | &((inode->i_sb)->s_fs_info)->cat_tree->tree_lock | ||
| HALF_LOCKED2 | &((main_inode->i_sb)->s_fs_info)->cat_tree->tree_lock |
drivers/scsi/ipr.c ipr_copy_ucode_buffer() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 0,4-u64max |
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 3 | len | 0-s32max,18446744071562067968-u64max |
| DATA_SOURCE | 0 | page | r sg_page |
| DATA_SOURCE | 2 | from | $1 [m] |
| CAPABLE | 0 | 21 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |
| LOCK2 | &of->mutex | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/scsi/ipr.c ipr_copy_ucode_buffer() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 0,4-u64max |
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 3 | len | 0-s32max |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 0 | page | r sg_page |
| DATA_SOURCE | 2 | from | $1 [m] |
| CAPABLE | 0 | 21 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |
| LOCK2 | &of->mutex | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/block/null_blk/main.c copy_to_nullb() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 2 | from | 4096-ptr_max |
| PARAM_VALUE | 3 | len | 0-4096 |
| CAPPED_DATA | 3 | len | 1 |
| CAPPED_DATA | 3 | len | 1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |
| UNITS | 3 | len | unit_byte |
| LOCK2 | &nullb->lock | ||
| LOCK2 | irq | ||
| TYPE_LOCK | (struct nullb)->lock |
net/ceph/messenger_v1.c read_partial_msg_data_bounce() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-u32max |
| PARAM_VALUE | 2 | from | 18379471554275704832,18446612682070032384 |
| PARAM_VALUE | 3 | len | 1-s32max |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 0 | page | r ceph_msg_data_next |
| DATA_SOURCE | 3 | len | r ceph_tcp_recvpage |
| NOCHECK_CALL | |||
| USER_DATA | 1 | offset | 0-2559[c] |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
drivers/block/zram/zram_drv.c memcpy_to_bvec() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 2 | from | $1 |
| NOCHECK_CALL | |||
| UNITS | 0 | page | unit_page |
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
drivers/block/zram/zram_drv.c read_from_zspool_raw() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 3 | len | 0-8191 |
| BUF_SIZE | 2 | from | (-1),4096 |
| DATA_SOURCE | 0 | page | $1 |
| DATA_SOURCE | 2 | from | r zs_obj_read_begin |
| DATA_SOURCE | 3 | len | r get_slot_size |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &of->mutex | ||
| LOCK2 | _T->lock | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/gpu/drm/i915/gem/i915_gem_phys.c i915_gem_object_put_pages_phys() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 2 | from | 0,4-u64max |
| PARAM_VALUE | 3 | len | 4096 |
| DATA_SOURCE | 0 | page | r shmem_read_mapping_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 3 | len | unit_byte |
| HALF_LOCKED2 | obj->base.resv |
fs/erofs/decompressor.c z_erofs_transform_plain() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 3 | len | 1-u32max |
| CAPPED_DATA | 3 | len | 1 |
| NOCHECK_CALL | |||
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
fs/erofs/decompressor.c z_erofs_transform_plain() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 2 | from | 4096-ptr_max |
| PARAM_VALUE | 3 | len | 0-4096 |
| CAPPED_DATA | 3 | len | 1 |
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |
| UNITS | 3 | len | unit_byte |
drivers/md/dm-vdo/data-vio.c memcpy_to_bvec() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 2 | from | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | page | unit_page |
| UNITS | 1 | offset | unit_byte |
| UNITS | 3 | len | unit_byte |
mm/zsmalloc.c zs_obj_write() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | offset | 0-4103 |
| PARAM_VALUE | 3 | len | 0-4096,18446744073709551609-u64max |
| BUF_SIZE | 2 | from | (-1),4096,8192 |
| DATA_SOURCE | 2 | from | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | offset | unit_byte |
| HALF_LOCKED2 | &acomp_ctx->mutex | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | _T->lock |
mm/zsmalloc.c zs_obj_write() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 2 | from | 4096-ptr_max |
| PARAM_VALUE | 3 | len | 0-4103,18446744073709547521-u64max |
| DATA_SOURCE | 0 | page | r get_next_zpdesc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &acomp_ctx->mutex | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | _T->lock |
fs/btrfs/raid56.c raid56_parity_cache_data_folios() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | offset | 0 |
| PARAM_VALUE | 3 | len | 4096 |
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |
| UNITS | 3 | len | unit_byte |
fs/exec.c copy_string_kernel() -> memcpy_to_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 1 | offset | 0-4095 |
| PARAM_VALUE | 3 | len | 1-4096 |
| CAPPED_DATA | 3 | len | 1 |
| DATA_SOURCE | 0 | page | r get_arg_page |
| DATA_SOURCE | 2 | from | $0 [m] |
| STR_LEN | 0 | page | (-1) |
| STR_LEN | 2 | from | (-1) |
| NOCHECK_CALL | |||
| UNITS | 2 | from | unit_byte |