Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

mm/mmap.c hstate_sizelog() -> size_to_hstate()

Type Parameter Key Value

mm/hugetlb.c default_hugepagesz_setup() -> size_to_hstate()

Type Parameter Key Value
PARAM_VALUE 0 size 2097152
DATA_SOURCE 0 size r memparse
USER_DATA 0 size 2097152
LOCK2 irq

mm/hugetlb.c demote_pool_huge_page() -> size_to_hstate()

Type Parameter Key Value
PARAM_VALUE 0 size 2097152,1073741824
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
LOCK2 &src->resize_lock
LOCK2 global &hugetlb_lock
LOCK2 irq
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hstate)->resize_lock
TYPE_LOCK (struct kernfs_open_file)->mutex

mm/hugetlb.c folio_hstate() -> size_to_hstate()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &hugetlb_lock
HALF_LOCKED2 global &pcp_batch_high_lock
HALF_LOCKED2 irq

mm/hugetlb.c free_hpage_workfn() -> size_to_hstate()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

mm/hugetlb.c hugepagesz_setup() -> size_to_hstate()

Type Parameter Key Value
PARAM_VALUE 0 size 2097152
DATA_SOURCE 0 size r memparse
USER_DATA 0 size 2097152
LOCK2 irq

mm/hugetlb.c hugetlb_add_hstate() -> size_to_hstate()

Type Parameter Key Value
PARAM_VALUE 0 size 2097152,1073741824
USER_DATA 0 size 2097152[c]
HALF_LOCKED2 irq

mm/hugetlb.c hugetlb_init() -> size_to_hstate()

Type Parameter Key Value
PARAM_VALUE 0 size 2097152

mm/page_isolation.c page_is_unmovable() -> size_to_hstate()

Type Parameter Key Value
CAPPED_DATA 0 size 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &zone->lock
HALF_LOCKED2 &zone->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct zone)->lock

mm/hugetlb_sysfs.c demote_size_store() -> size_to_hstate()

Type Parameter Key Value
DATA_SOURCE 0 size r memparse
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 size 0-u64max
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

mm/hugetlb_cgroup.c folio_hstate() -> size_to_hstate()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 global &pcp_batch_high_lock

fs/hugetlbfs/inode.c hstate_sizelog() -> size_to_hstate()

Type Parameter Key Value
HALF_LOCKED2 &ids->rwsem

fs/hugetlbfs/inode.c hugetlbfs_parse_param() -> size_to_hstate()

Type Parameter Key Value
DATA_SOURCE 0 size r memparse
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 size 0-u64max
HALF_LOCKED2 &fc->uapi_mutex

mm/mempolicy.c folio_hstate() -> size_to_hstate()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

mm/migrate.c folio_hstate() -> size_to_hstate()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

ipc/shm.c hstate_sizelog() -> size_to_hstate()

Type Parameter Key Value
LOCK2 &ids->rwsem
TYPE_LOCK (struct ipc_ids)->rwsem