Defined in 1 files as a macro:

Referenced in 43 files:

Smatch caller information:

crypto/scompress.c scomp_acomp_comp_decomp() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &acomp_ctx->mutex

crypto/scompress.c scomp_acomp_comp_decomp() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &acomp_ctx->mutex

drivers/usb/core/message.c usb_sg_init() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0,4-u64max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->dev.mutex
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &ucr->dev_mutex
HALF_LOCKED2 &vub300->cmd_mutex
HALF_LOCKED2 global &drm_unplug_srcu

io_uring/memmap.c io_region_init_ptr() -> PageHighMem()

Type Parameter Key Value
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 _T->lock

fs/squashfs/zstd_wrapper.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &stream->mutex

drivers/scsi/sd.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read

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

Type Parameter Key Value

drivers/media/pci/ivtv/ivtv-udma.c ivtv_udma_fill_sg_list() -> PageHighMem()

Type Parameter Key Value
LOCK2 &itv->udma.lock
TYPE_LOCK (struct ivtv_user_dma)->lock

drivers/md/dm-ebs-target.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
UNITS 0 page unit_page
HALF_LOCKED2 &pool->lock

drivers/media/common/saa7146/saa7146_core.c vmalloc_to_sg() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
DATA_SOURCE 0 page r vmalloc_to_page
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

fs/squashfs/zlib_wrapper.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &stream->mutex

drivers/iommu/dma-iommu.c iommu_dma_alloc_pages() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
BUF_SIZE 0 page 0,4096-u64max
BUF_SIZE 0 page 0,4096-u64max

drivers/usb/mon/mon_bin.c mon_bin_get_data() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0,4-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mbus->lock
LOCK2 &rp->b_lock
LOCK2 flags
TYPE_LOCK (struct mon_bus)->lock
TYPE_LOCK (struct mon_reader_bin)->b_lock

kernel/kexec_core.c kimage_alloc_page() -> PageHighMem()

Type Parameter Key Value
DATA_SOURCE 0 page r boot_pfn_to_page

fs/squashfs/lzo_wrapper.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &stream->mutex

drivers/nvme/host/core.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

kernel/power/snapshot.c free_unnecessary_pages() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &device_hotplug_lock
LOCK2 global &system_transition_mutex

kernel/power/snapshot.c get_buffer() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &system_transition_mutex
HALF_LOCKED2 global &device_hotplug_lock

kernel/power/snapshot.c preallocate_image_pages() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
DATA_SOURCE 0 page r alloc_image_page
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &device_hotplug_lock
LOCK2 global &system_transition_mutex

kernel/power/snapshot.c saveable_page() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
DATA_SOURCE 0 page r pfn_to_online_page
RX_PATH
TASK_NOT_RUNNING

kernel/power/snapshot.c snapshot_read_next() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &system_transition_mutex
HALF_LOCKED2 global &device_hotplug_lock

drivers/xen/gntdev.c gntdev_map_grant_pages() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

block/bio-integrity.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

mm/page_alloc.c __free_pages_prepare() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
BUF_SIZE 0 page (-1),1-s32max
BUF_SIZE 0 page (-1),1-s32max
DATA_SOURCE 0 page $0
BIT_INFO 0 page->flags.f 0x0,0xffffffffc0200000
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 page 4096-s32max[c]
USER_DATA 0 page 4096-s32max[c]
UNITS 0 page unit_page

drivers/edac/edac_mc.c edac_mc_scrub_block() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 flags
HALF_LOCKED2 global &ghes_lock

drivers/edac/edac_mc.c edac_mc_scrub_block() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 flags
HALF_LOCKED2 global &ghes_lock

fs/squashfs/block.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

drivers/gpu/drm/ttm/ttm_pool.c ttm_pool_free_page() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
DATA_SOURCE 0 page $3
NOSPEC 0 page->private
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 page->private 0-10[c]

drivers/gpu/drm/ttm/ttm_pool.c ttm_pool_page_allocated() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
DATA_SOURCE 0 page $2
NOSPEC 0 page->private
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 page->private 0-10[c]

drivers/gpu/drm/ttm/ttm_pool.c ttm_pool_restore_commit() -> PageHighMem()

Type Parameter Key Value
NOSPEC 0 page->private
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 page->private 0-10[c]

drivers/gpu/drm/ttm/ttm_pool.c ttm_pool_type_give() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
DATA_SOURCE 0 page $1
RX_PATH
TASK_NOT_RUNNING

block/bio.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock

drivers/gpu/drm/i915/gem/i915_gem_pages.c i915_gem_object_map_page() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0,4-u64max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &gt->perf.lock
HALF_LOCKED2 __flags
HALF_LOCKED2 batch->obj->base.resv
HALF_LOCKED2 ce->ring->vma->obj->base.resv
HALF_LOCKED2 ce->timeline->hwsp_ggtt->obj->base.resv
HALF_LOCKED2 dst->base.resv
HALF_LOCKED2 obj->base.resv
HALF_LOCKED2 obj->base.resv
HALF_LOCKED2 scratch->obj->base.resv
HALF_LOCKED2 src->base.resv
HALF_LOCKED2 timeline->hwsp_ggtt->obj->base.resv
HALF_LOCKED2 vma->obj->base.resv

fs/squashfs/xz_wrapper.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &stream->mutex

drivers/md/dm-integrity.c __journal_read_write() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &md->io_barrier

drivers/md/dm-integrity.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

drivers/md/dm-integrity.c integrity_metadata() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

kernel/dma/debug.c check_for_stack() -> PageHighMem()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/dma/debug.c debug_dma_map_phys() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

kernel/dma/debug.c debug_dma_map_sg() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0,4-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/dma/swiotlb.c rmem_swiotlb_device_init() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &rproc->lock
HALF_LOCKED2 global &component_mutex

kernel/dma/swiotlb.c swiotlb_bounce() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/xen/balloon.c balloon_append() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
DATA_SOURCE 0 page $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 global &balloon_mutex

drivers/xen/balloon.c balloon_retrieve() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &balloon_mutex
HALF_LOCKED2 &mm->mmap_lock

drivers/xen/balloon.c balloon_retrieve() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &balloon_mutex

drivers/block/rbd.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
UNITS 0 page unit_page
LOCK2 &obj_req->state_mutex
HALF_LOCKED2 &img_req->state_mutex
TYPE_LOCK (struct rbd_obj_request)->state_mutex

drivers/usb/mon/mon_text.c mon_text_get_data() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0,4-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mbus->lock
LOCK2 flags
TYPE_LOCK (struct mon_bus)->lock

net/sunrpc/xdr.c xdr_set_page_base() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/core/gro.c skb_gro_reset_offset() -> PageHighMem()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/block/virtio_blk.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &vq->lock
HALF_LOCKED2 flags

fs/erofs/decompressor.c z_erofs_lz4_prepare_dstpages() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max

kernel/iomem.c try_ram_remap() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &card->mutex
HALF_LOCKED2 &core->lock
HALF_LOCKED2 &device->dev_set->lock
HALF_LOCKED2 &nvdev->remap_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &dmar_global_lock

drivers/dma-buf/heaps/cma_heap.c cma_heap_allocate() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
DATA_SOURCE 0 page r cma_alloc

arch/x86/mm/pat/set_memory.c __cpa_addr() -> PageHighMem()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpa_lock

arch/x86/mm/pat/set_memory.c __kernel_map_pages() -> PageHighMem()

Type Parameter Key Value
DATA_SOURCE 0 page $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 page 4096-s32max[c]
USER_DATA 0 page 4096-s32max[c]
UNITS 0 page unit_page
HALF_LOCKED2 &dev->mutex

arch/x86/mm/pat/set_memory.c _set_pages_array() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

arch/x86/mm/pat/set_memory.c _set_pages_array() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

arch/x86/mm/pat/set_memory.c kernel_page_present() -> PageHighMem()

Type Parameter Key Value
DATA_SOURCE 0 page $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

arch/x86/mm/pat/set_memory.c set_pages_array_wb() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bo->mutex
HALF_LOCKED2 obj->resv

mm/kasan/common.c __kasan_mempool_poison_pages() -> PageHighMem()

Type Parameter Key Value
DATA_SOURCE 0 page $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 flags

mm/kasan/common.c __kasan_poison_pages() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 4096-ptr_max
CAPPED_DATA 0 page 1
DATA_SOURCE 0 page $0
BIT_INFO 0 page->flags.f 0x0,0xffffffffc0200000
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 page 4096-s32max[c]
USER_DATA 0 page 4096-s32max[c]
UNITS 0 page unit_page

mm/kasan/common.c __kasan_unpoison_pages() -> PageHighMem()

Type Parameter Key Value
DATA_SOURCE 0 page $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page

fs/squashfs/lz4_wrapper.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page
HALF_LOCKED2 &stream->mutex

kernel/dma/direct.c __dma_direct_alloc_pages() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
BUF_SIZE 0 page 0,4096-u64max
BUF_SIZE 0 page 0,4096-u64max
DATA_SOURCE 0 page r dma_alloc_contiguous
RX_PATH
TASK_NOT_RUNNING

kernel/dma/direct.c dma_direct_alloc() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
BUF_SIZE 0 page s32min-s32max

kernel/dma/direct.c dma_direct_alloc_no_mapping() -> PageHighMem()

Type Parameter Key Value
PARAM_VALUE 0 page 1-u64max
BUF_SIZE 0 page s32min-s32max
DATA_SOURCE 0 page r __dma_direct_alloc_pages

drivers/infiniband/core/rw.c bvec_virt() -> PageHighMem()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 page unit_page