Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 42 files:

Smatch caller information:

lib/iov_iter.c iov_iter_extract_user_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 1 nr_pages 1-524288
PARAM_VALUE 2 gup_flags 0-1,32-33,1024-1025,1056-1057
PARAM_VALUE 3 pages 1-u64max
CAPPED_DATA 1 nr_pages 1
DATA_SOURCE 1 nr_pages r want_pages_array
FUZZY_MAX 2 gup_flags 0
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 2 gup_flags 0x0,0x421
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 nr_pages 3-524288[c]
NO_OVERFLOW_SIMPLE 1 nr_pages
UNITS 1 nr_pages unit_array_size
HALF_LOCKED2 &tls_ctx->tx_lock
HALF_LOCKED2 sk

io_uring/memmap.c io_pin_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1-268435455
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 1-18446744073709551614
BUF_SIZE 3 pages 8-2147483640
BUF_SIZE 3 pages 8-2147483640
DATA_SOURCE 0 start $0
DATA_SOURCE 3 pages r __kvmalloc_node_noprof
RX_PATH
USER_DATA 0 start 0-u64max
USER_DATA 1 nr_pages 2-268435455[c]
NO_OVERFLOW_SIMPLE 1 nr_pages
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

drivers/vhost/vhost.c set_bit_to_user() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 1
PARAM_VALUE 3 pages 5571654499062644736
DATA_SOURCE 0 start $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex

net/rds/rdma.c rds_pin_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages (-1)-s32max
BUF_SIZE 3 pages (-1)-s32max
DATA_SOURCE 0 start $0
DATA_SOURCE 1 nr_pages $1
DATA_SOURCE 3 pages $2
FUZZY_MAX 2 gup_flags 256
BIT_INFO 2 gup_flags 0x100,0x101
NOSPEC 0 start
NOSPEC 0 start
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 start 0-s32max[c]
USER_DATA 1 nr_pages 2-257[c]
NO_OVERFLOW_SIMPLE 0 start
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/infiniband/hw/mthca/mthca_memfree.c mthca_map_user_db() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 5852125309279383552
BIT_INFO 0 start 0x0,0xfffffffffffff000
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 start 0,4096-u64max[c]
LOCK2 &db_tab->mutex
TYPE_LOCK (struct mthca_user_db_table)->mutex

drivers/misc/xilinx_sdfec.c xsdfec_table_write() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 0-9
PARAM_VALUE 2 gup_flags 0
PARAM_VALUE 3 pages 8353517189221773312
BUF_SIZE 3 pages 72
DATA_SOURCE 0 start $2
USER_DATA 1 nr_pages 1-9[c]
UNITS 1 nr_pages unit_page

mm/gup_test.c __gup_test_ioctl() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0-18446744073709551614
PARAM_VALUE 3 pages 4096-ptr_max
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
CAPPED_DATA 1 nr_pages 1
USER_DATA 0 start 0-s32max[c]
USER_DATA 1 nr_pages s32min-s32max[c]
USER_DATA 2 gup_flags 0-u32max
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_page

mm/gup_test.c pin_longterm_test_start() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 1-u64max
BUF_SIZE 3 pages 8,u64max
BUF_SIZE 3 pages 8,u64max
BIT_INFO 2 gup_flags 0x100,0x101
USER_DATA 1 nr_pages s32min-s32max[c]
USER_DATA 3 pages 4096-ptr_max[c][u]
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_page
LOCK2 &data->longterm_mutex
TYPE_LOCK (struct gup_test_data)->longterm_mutex

kernel/bpf/syscall.c bpf_obj_pin_uptrs() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 1-u64max
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 2053658749805031424
USER_DATA 0 start 1-u64max
UNITS 0 start unit_byte

drivers/iommu/iommufd/pages.c pfn_reader_user_pin() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547520
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 1-u64max
BUF_SIZE 3 pages (-1),1-s32max
BUF_SIZE 3 pages (-1),1-s32max
CAPPED_DATA 1 nr_pages 1
FUZZY_MAX 0 start 18446744073709547520
HARD_MAX 0 start 18446744073709547520
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_byte
UNITS 3 pages unit_byte
HALF_LOCKED2 &access->ioas_lock
HALF_LOCKED2 &iopt->iova_rwsem
HALF_LOCKED2 &pages->mutex

drivers/fpga/dfl-afu-dma-region.c afu_dma_pin_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 1
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages 0-u64max
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
DATA_SOURCE 3 pages r _kzalloc_noprof
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 0 start 0x0,0xfffffffffffff000
NOSPEC 0 start
NOSPEC 0 start
USER_DATA 0 start 0-s32max[c]
USER_DATA 1 nr_pages s32min-s32max
NO_OVERFLOW_SIMPLE 0 start
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c create_pagelist() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 1 nr_pages 0-524288
PARAM_VALUE 2 gup_flags 0-1
PARAM_VALUE 3 pages 0-524288
PARAM_VALUE 3 *pages 0-u32max
FUZZY_MAX 2 gup_flags 1
PARAM_COMPARE 1 nr_pages <= $3
PARAM_COMPARE 3 pages >= $1
BIT_INFO 0 start 0x0,0xfffffffffffff000
HARD_MAX 2 gup_flags 1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 nr_pages 1-524288[c]
LOCK2 &service->bulk_mutex
TYPE_LOCK (struct vchiq_service)->bulk_mutex

drivers/iommu/iommufd/iova_bitmap.c iova_bitmap_get() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547520
PARAM_VALUE 1 nr_pages 0-512
PARAM_VALUE 2 gup_flags 1
CAPPED_DATA 1 nr_pages 1
HALF_LOCKED2 &mvdev->state_mutex
HALF_LOCKED2 &pds_vfio->state_mutex

arch/x86/kvm/svm/sev.c sev_pin_user_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1-s32max
PARAM_VALUE 2 gup_flags 0-1,256
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages (-1),8-s32max
BUF_SIZE 3 pages (-1),8-s32max
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start $1
DATA_SOURCE 1 nr_pages $2
DATA_SOURCE 2 gup_flags $3
DATA_SOURCE 3 pages $4
HARD_MAX 2 gup_flags 256
USER_DATA 0 start 0-u64max[c]
USER_DATA 1 nr_pages 1-s32max
NO_OVERFLOW_SIMPLE 0 start
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051
LOCK2 _T->lock

drivers/gpu/drm/exynos/exynos_drm_g2d.c g2d_userptr_get_dma_addr() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 1-18446744073709551614
BUF_SIZE 3 pages 0-34359738360
BUF_SIZE 3 pages 0-34359738360
DATA_SOURCE 3 pages r __kvmalloc_node_noprof
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 0 start 0x0,0xfffffffffffff000
USER_DATA 0 start 0,4096-u64max[c]
USER_DATA 1 nr_pages s32min-s32max
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/xen/gntdev.c gntdev_get_page() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547520
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 0-1
PARAM_VALUE 3 pages 8911372271595167744
DATA_SOURCE 0 start $1
FUZZY_MAX 2 gup_flags 1
HARD_MAX 2 gup_flags 1

fs/orangefs/orangefs-bufmap.c orangefs_bufmap_map() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 1 nr_pages 0-524287
PARAM_VALUE 2 gup_flags 1
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages 1-4194296
CAPPED_DATA 0 start 1
CAPPED_DATA 1 nr_pages 1
NO_OVERFLOW_SIMPLE 1 nr_pages

drivers/infiniband/core/umem.c __ib_umem_get_va() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1-512
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 4096-ptr_max
BUF_SIZE 3 pages 4096
BUF_SIZE 3 pages 4096
CAPPED_DATA 1 nr_pages 1
DATA_SOURCE 3 pages r _kmalloc_noprof
FUZZY_MAX 2 gup_flags 256
BIT_INFO 2 gup_flags 0x100,0x101
NOSPEC 0 start
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 start 0-8798240497664[c]
USER_DATA 1 nr_pages 1-511[c]
UNITS 1 nr_pages unit_page
HALF_LOCKED2 &context->db_page_mutex

drivers/virt/acrn/hsm.c acrn_dev_ioctl() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 6345527832272842752
DATA_SOURCE 0 start $2
USER_DATA 0 start 0-u64max

drivers/virt/acrn/ioreq.c acrn_ioreq_init() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 906929315541553152
DATA_SOURCE 0 start $1
USER_DATA 0 start 0-u64max

drivers/accel/ivpu/ivpu_gem_userptr.c ivpu_create_userptr_dmabuf() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 1-u64max
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 1-18446744073709551614
BUF_SIZE 3 pages 0-36028797018963960
BUF_SIZE 3 pages 0-36028797018963960
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start $1
DATA_SOURCE 3 pages r __kvmalloc_node_noprof
FUZZY_MAX 2 gup_flags 256
BIT_INFO 2 gup_flags 0x100,0x101
USER_DATA 1 nr_pages s32min-s32max
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/gpu/drm/i915/gem/i915_gem_userptr.c i915_gem_object_userptr_submit_init() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 0-1
PARAM_VALUE 3 pages 4096-ptr_max
FUZZY_MAX 2 gup_flags 0
UNITS 0 start unit_byte

drivers/block/ublk_drv.c ublk_ctrl_reg_buf() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 1-18446744073709551614
BUF_SIZE 3 pages 8
DATA_SOURCE 3 pages r _kvmalloc_array_node_noprof
FUZZY_MAX 2 gup_flags 256
BIT_INFO 2 gup_flags 0x100,0x101
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 start 0-u64max
NO_OVERFLOW_SIMPLE 1 nr_pages
UNITS 1 nr_pages unit_page
HALF_LOCKED2 &ctx->uring_lock

drivers/accel/amdxdna/amdxdna_ubuf.c amdxdna_get_ubuf() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 4096-ptr_max
CAPPED_DATA 1 nr_pages 1
UNITS 1 nr_pages unit_page

drivers/xen/privcmd.c lock_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 1
PARAM_VALUE 3 pages 16,4096-u64max
BUF_SIZE 3 pages (-1)-s32max
CAPPED_DATA 1 nr_pages 1
DATA_SOURCE 3 pages $2 [m]
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size

drivers/gpu/drm/vmwgfx/vmwgfx_msg.c vmw_mksstat_add_ioctl() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 1-u64max
PARAM_VALUE 1 nr_pages 0-24
PARAM_VALUE 2 gup_flags 256
PARAM_VALUE 3 pages 4096-ptr_max
BUF_SIZE 3 pages 768
BUF_SIZE 3 pages 768
DATA_SOURCE 3 pages r _kmalloc_noprof
USER_DATA 0 start 1-u64max[u]
USER_DATA 1 nr_pages 1-24[c]
UNITS 1 nr_pages unit_array_size

drivers/gpu/drm/vmwgfx/vmwgfx_msg.c vmw_mksstat_add_ioctl() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 1-u64max
PARAM_VALUE 1 nr_pages 0-32
PARAM_VALUE 2 gup_flags 256
BUF_SIZE 3 pages 576
BUF_SIZE 3 pages 576
USER_DATA 0 start 1-u64max[u]
USER_DATA 1 nr_pages 1-32[c]
UNITS 1 nr_pages unit_array_size

drivers/gpu/drm/vmwgfx/vmwgfx_msg.c vmw_mksstat_add_ioctl() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 1-u64max
PARAM_VALUE 1 nr_pages 0-40
PARAM_VALUE 2 gup_flags 256
PARAM_VALUE 3 pages 4096-ptr_max
BUF_SIZE 3 pages 320
BUF_SIZE 3 pages 320
USER_DATA 0 start 1-u64max[u]
USER_DATA 1 nr_pages 1-40[c]
UNITS 1 nr_pages unit_array_size

drivers/gpu/drm/etnaviv/etnaviv_gem.c etnaviv_gem_userptr_get_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 4096-ptr_max
FUZZY_MAX 2 gup_flags 256
BIT_INFO 2 gup_flags 0x100,0x101
RX_PATH
TASK_NOT_RUNNING
UNITS 0 start unit_byte
LOCK2 &etnaviv_obj->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 obj->resv
TYPE_LOCK (struct etnaviv_gem_object)->lock

drivers/accel/habanalabs/common/memory.c get_user_memory() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 1-18446744073709551614
BUF_SIZE 3 pages 0-34359738360
BUF_SIZE 3 pages 0-34359738360
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start $4
DATA_SOURCE 1 nr_pages $3
DATA_SOURCE 3 pages r __kvmalloc_node_noprof
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 0 start 0x0,0xfffffffffffff000
USER_DATA 0 start 0,4096-2147479552[c]
USER_DATA 1 nr_pages 0-s32max[c]
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/virt/acrn/mm.c acrn_vm_ram_map() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages s32min-(-1),1-s32max
PARAM_VALUE 2 gup_flags 257
PARAM_VALUE 3 pages 1-u64max
BUF_SIZE 3 pages 0-u64max
DATA_SOURCE 3 pages r vzalloc_noprof
USER_DATA 0 start 0-u64max
USER_DATA 1 nr_pages s32min-(-1),1-s32max
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/infiniband/hw/hfi1/user_pages.c hfi1_acquire_user_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 256-257
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages (-1)-524280
BUF_SIZE 3 pages (-1)-524280
CAPPED_DATA 1 nr_pages 1
DATA_SOURCE 0 start $1
DATA_SOURCE 1 nr_pages $2
DATA_SOURCE 3 pages $4
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 2 gup_flags 0x100,0x101
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 start 0-u64max
USER_DATA 1 nr_pages 0-s32max[c]
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051
HALF_LOCKED2 &fd->pq_srcu

drivers/media/common/videobuf2/frame_vector.c get_vaddr_frames() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1-134217727
PARAM_VALUE 2 gup_flags 256-257
CAPPED_DATA 1 nr_pages 1
DATA_SOURCE 0 start r __untagged_addr
DATA_SOURCE 1 nr_pages $1 [m]
FUZZY_MAX 2 gup_flags 256
BIT_INFO 2 gup_flags 0x100,0x101
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 nr_pages
UNITS 1 nr_pages unit_page
HALF_LOCKED2 &mdev->req_queue_mutex
HALF_LOCKED2 vb->vb2_queue->lock

drivers/scsi/st.c sgl_map_user_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 2 gup_flags 0-1
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages 0-34359738360
BUF_SIZE 3 pages 0-34359738360
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
CAPPED_DATA 1 nr_pages 1
DATA_SOURCE 0 start $2
DATA_SOURCE 3 pages r _kmalloc_noprof
FUZZY_MAX 2 gup_flags 1
NOSPEC 0 start
NOSPEC 1 nr_pages
HARD_MAX 2 gup_flags 1
USER_DATA 0 start 0-s32max[c]
USER_DATA 1 nr_pages 0-s32max[c]
NO_OVERFLOW_SIMPLE 0 start
UNITS 0 start unit_byte
UNITS 1 nr_pages unit_page
LOCK2 &STp->lock
TYPE_LOCK (struct scsi_tape)->lock

arch/x86/kvm/../../../virt/kvm/kvm_main.c hva_to_pfn_fast() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 1 nr_pages 1
PARAM_VALUE 2 gup_flags 1
PARAM_VALUE 3 pages 9076046864573931520
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 start 0-u64max[c]
UNITS 0 start unit_byte
HALF_LOCKED2 _T->lock

drivers/rapidio/devices/rio_mport_cdev.c rio_dma_transfer() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 2 gup_flags 0-1
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages 0-36028797018963960
BUF_SIZE 3 pages 0-36028797018963960
DATA_SOURCE 3 pages r _kmalloc_noprof
FUZZY_MAX 2 gup_flags 1
BIT_INFO 0 start 0x0,0xfffffffffffff000
HARD_MAX 2 gup_flags 1
USER_DATA 0 start 0,4096-u64max[c]
USER_DATA 1 nr_pages 0-s32max[c]
UNITS 1 nr_pages unit_array_size
ELEM_COUNT 3 ==pages1 8051

drivers/platform/goldfish/goldfish_pipe.c goldfish_pin_pages() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-18446744073709547520
PARAM_VALUE 1 nr_pages s32min-336
PARAM_VALUE 2 gup_flags 0-1
BUF_SIZE 3 pages 2688
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start $0
DATA_SOURCE 3 pages $4
FUZZY_MAX 1 nr_pages 336
FUZZY_MAX 2 gup_flags 1
BIT_INFO 0 start 0x0,0xfffffffffffff000
BIT_INFO 0 start 0x0,0xfffffffffffff000
NOSPEC 0 start
NOSPEC 0 start
HARD_MAX 1 nr_pages 336
HARD_MAX 2 gup_flags 1
USER_DATA 0 start 0,4096-2147479552[c]
USER_DATA 1 nr_pages 0-336[c]
UNITS 1 nr_pages unit_page
LOCK2 &pipe->lock
TYPE_LOCK (struct goldfish_pipe)->lock

drivers/misc/genwqe/card_utils.c genwqe_user_vmap() -> pin_user_pages_fast()

Type Parameter Key Value
PARAM_VALUE 0 start 0,4096-u64max
PARAM_VALUE 2 gup_flags 0-1
PARAM_VALUE 3 pages 16,4096-ptr_max
BUF_SIZE 3 pages 16
BUF_SIZE 3 pages 16
DATA_SOURCE 3 pages r _kmalloc_array_noprof
FUZZY_MAX 2 gup_flags 1
BIT_INFO 0 start 0x0,0xfffffffffffff000
HARD_MAX 2 gup_flags 1
NO_OVERFLOW_SIMPLE 1 nr_pages