Defined in 2 files as a function:

Referenced in 17 files:

Smatch caller information:

kernel/fork.c try_release_thread_stack_to_cache() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node r numa_node_id
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING

drivers/iommu/iommu-pages.c warn_if_node_offline() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev_data->mutex
HALF_LOCKED2 &iommu->lock
HALF_LOCKED2 global &dmar_global_lock

kernel/dma/map_benchmark.c map_benchmark_ioctl() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 0
USER_DATA 0 node 0-1023

mm/slub.c can_free_to_pcs() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 2
DATA_SOURCE 0 node r numa_node_id
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/iommu/intel/dmar.c dmar_parse_one_rhsa() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r pxm_to_node
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &dmar_global_lock

arch/x86/pci/acpi.c pci_acpi_root_get_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &acpi_scan_lock

kernel/futex/core.c __futex_hash() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 0
CAPPED_DATA 0 node 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 node 1-1024[c]
HALF_LOCKED2 &curr->futex.exit_mutex
HALF_LOCKED2 &curr->pi_lock
HALF_LOCKED2 irq

kernel/futex/core.c get_futex_key() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 0
BIT_INFO 0 node 0xffffffff,0xffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/vmstat.c pagetypeinfo_show() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
TYPE_LOCK (struct seq_file)->lock

mm/vmstat.c unusable_show() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
TYPE_LOCK (struct seq_file)->lock

mm/vmstat.c vmstat_cpu_online() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 4
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

mm/percpu.c pcpu_fc_alloc() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r cpu_to_nd_fn
LOCK2 irq

net/core/pktgen.c pktgen_if_write() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 0
USER_DATA 0 node 1-9[c][u]

mm/memory-tiers.c set_node_memory_tier() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node $0
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &memory_tier_lock

kernel/bpf/syscall.c map_create_alloc() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 1
CAPPED_DATA 0 node 1
DATA_SOURCE 0 node r bpf_map_attr_numa_node
USER_DATA 0 node 1-1024[c]

mm/memory_hotplug.c __add_memory_resource() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 0
DATA_SOURCE 0 node $0 [m]
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &device_hotplug_lock

mm/memory_hotplug.c __try_online_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &device_hotplug_lock

mm/memory_hotplug.c online_pages() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->mutex
HALF_LOCKED2 &device->physical_node_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &device_hotplug_lock
TYPE_LOCK (struct device)->mutex

mm/memory_hotplug.c online_pages() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->mutex
HALF_LOCKED2 &device->physical_node_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &device_hotplug_lock
TYPE_LOCK (struct device)->mutex

drivers/base/node.c node_add_cache() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
BIT_INFO 0 node 0x0,0x7fffffff
LOCK2 _T->lock

drivers/base/node.c node_set_perf_attrs() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
BIT_INFO 0 node 0x0,0x7fffffff
LOCK2 _T->lock

drivers/base/node.c node_update_perf_attrs() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
CAPPED_DATA 0 node 1
DATA_SOURCE 0 node $0

drivers/base/node.c register_cpu_under_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex

drivers/base/node.c register_memory_blocks_under_nodes() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1

drivers/base/node.c register_memory_node_under_compute_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $1
BIT_INFO 0 node 0x0,0x7fffffff
LOCK2 _T->lock

drivers/base/node.c register_memory_node_under_compute_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
BIT_INFO 0 node 0x0,0x7fffffff
LOCK2 _T->lock

drivers/base/node.c unregister_cpu_under_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 global &device_hotplug_lock

drivers/of/of_numa.c of_node_to_nid() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &domain->root->mutex
HALF_LOCKED2 irq

mm/mm_init.c early_page_initialised() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $1
HALF_LOCKED2 irq

mm/hugetlb.c hugepages_setup() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
LOCK2 irq

samples/damon/mtier.c nid_to_phys() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
RX_PATH
TASK_NOT_RUNNING

net/openvswitch/flow_table.c ovs_flow_alloc() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0
PARAM_VALUE 1 state 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

mm/filemap.c warn_if_node_offline() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
RX_PATH
TASK_NOT_RUNNING

mm/compaction.c compact_store() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 1
CAPPED_DATA 0 node 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

mm/page_alloc.c __build_all_zonelists() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &zonelist_update_seq.lock
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 irq
TYPE_LOCK (struct seqlock)->lock

mm/page_alloc.c find_next_best_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &zonelist_update_seq.lock

mm/page_alloc.c warn_if_node_offline() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 node s32min-(-2),0-s32max
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &espfix_init_mutex
HALF_LOCKED2 global &pcpu_alloc_mutex
HALF_LOCKED2 rcu_read

mm/vmscan.c node_reclaim() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 4
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &oom_lock

mm/vmscan.c run_cmd() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node $2
HARD_MAX 0 node 1023

arch/x86/kernel/quirks.c quirk_amd_nb_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
BIT_INFO 0 node 0x0,0x7fffffff
HOST_DATA 0 node 0-s32max[c]

arch/x86/kernel/cpu/hygon.c nearby_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s16min-(-2),0-s16max
PARAM_VALUE 1 state 1

arch/x86/kernel/cpu/hygon.c nearby_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s16min-(-2),0-s16max
PARAM_VALUE 1 state 1

arch/x86/kernel/cpu/hygon.c srat_detect_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
HOST_DATA 0 node s32min-s32max

arch/x86/kernel/cpu/hygon.c srat_detect_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
HOST_DATA 0 node s32min-s32max

kernel/sched/build_utility.c sched_domains_numa_masks_set() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 4
CAPPED_DATA 0 node 1
CONSTRAINT 0 node <3016
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

kernel/sched/build_utility.c sched_numa_warn() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 4
CAPPED_DATA 0 node 1
CONSTRAINT 0 node <3016
RX_PATH
TASK_NOT_RUNNING

kernel/sched/build_utility.c sched_numa_warn() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 4
CAPPED_DATA 0 node 1
CONSTRAINT 0 node <3016
RX_PATH
TASK_NOT_RUNNING

mm/hugetlb_cgroup.c hugetlb_cgroup_css_alloc() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-64
PARAM_VALUE 1 state 2
CAPPED_DATA 0 node 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cgroup_mutex

kernel/sched/fair.c should_numa_migrate_memory() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node r __cpu_to_node
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 rcu_read

kernel/cpu.c cpuhp_smt_enable() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &cpu_add_remove_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex

arch/x86/kernel/cpu/amd.c nearby_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s16min-(-2),0-s16max
PARAM_VALUE 1 state 1

arch/x86/kernel/cpu/amd.c nearby_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s16min-(-2),0-s16max
PARAM_VALUE 1 state 1

arch/x86/kernel/cpu/amd.c srat_detect_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1

arch/x86/kernel/cpu/amd.c srat_detect_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1

arch/x86/mm/numa.c init_cpu_to_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s16min-(-2),0-s16max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r numa_cpu_node
LOCK2 irq

arch/x86/mm/numa.c init_gi_nodes() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-64
PARAM_VALUE 1 state 1
CAPPED_DATA 0 node 1
LOCK2 irq

arch/x86/mm/numa.c numa_init() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r early_cpu_to_node
LOCK2 irq

drivers/pci/pci-sysfs.c numa_node_store() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
CAPABLE 0 21
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 node 0-1023
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

arch/x86/kernel/cpu/sgx/main.c sgx_page_cache_init() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-64
PARAM_VALUE 1 state 3
CAPPED_DATA 0 node 1

arch/x86/kernel/cpu/sgx/main.c sgx_page_cache_init() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-64
PARAM_VALUE 1 state 4
CAPPED_DATA 0 node 1

kernel/bpf/arena.c arena_alloc_pages() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1024
PARAM_VALUE 1 state 1
CAPPED_DATA 0 node 1
DATA_SOURCE 0 node $3

kernel/dma/contiguous.c dma_numa_cma_reserve() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-64
PARAM_VALUE 1 state 1
CAPPED_DATA 0 node 1
LOCK2 irq

drivers/pci/pci-driver.c pci_call_probe() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
RX_PATH
TASK_NOT_RUNNING

mm/damon/ops-common.c damon_migrate_pages() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node $1
HARD_MAX 0 node 1023
LOCK2 &ctx->walk_control_lock
TYPE_LOCK (struct damon_ctx)->walk_control_lock

arch/x86/kernel/cpu/intel.c srat_detect_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s16min-(-2),0-s16max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r numa_cpu_node
BIT_INFO 0 node 0x0,0x7fff

drivers/acpi/numa/hmat.c alloc_memory_initiator() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 4
RX_PATH
TASK_NOT_RUNNING

drivers/acpi/numa/hmat.c hmat_hotplug_target() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r pxm_to_node
HALF_LOCKED2 _T->lock

drivers/acpi/numa/hmat.c hmat_update_target() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 4
RX_PATH
TASK_NOT_RUNNING

drivers/acpi/numa/hmat.c hmat_update_target_attrs() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 4
DATA_SOURCE 0 node r pxm_to_node
BIT_INFO 0 node 0x0,0x7fffffff
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &target_lock

mm/mempolicy.c __do_sys_set_mempolicy_home_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $2
USER_DATA 0 node 0-1023

mm/mempolicy.c __do_sys_set_mempolicy_home_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $2
USER_DATA 0 node 0-1023

mm/mempolicy.c add_weighted_interleave_group() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-64
PARAM_VALUE 1 state 3
CAPPED_DATA 0 node 1

mm/mempolicy.c numa_nearest_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1,4
DATA_SOURCE 0 node $0
DATA_SOURCE 1 state $1
HARD_MAX 1 state 4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &acpi_desc->init_mutex
HALF_LOCKED2 &hbus->state_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &hmem_resource_lock
HALF_LOCKED2 global &pci_rescan_remove_lock
HALF_LOCKED2 rcu_read

drivers/block/mtip32xx/mtip32xx.c mtip_pci_probe() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node s32min-(-2),0-s32max
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node r __pcibus_to_node
RX_PATH
TASK_NOT_RUNNING

drivers/base/memory.c memory_group_register() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 0
RX_PATH
TASK_NOT_RUNNING

mm/migrate.c do_pages_move() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 3
USER_DATA 0 node 0-1023

mm/migrate.c warn_if_node_offline() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
RX_PATH
TASK_NOT_RUNNING

mm/damon/core.c damos_get_node_eligible_mem_bp() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $2

mm/damon/core.c invalid_mem_node() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 3
DATA_SOURCE 0 node $0
HARD_MAX 0 node 1023

net/sunrpc/svc.c warn_if_node_offline() -> node_state()

Type Parameter Key Value
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &nfsd_mutex

kernel/workqueue.c select_numa_node_cpu() -> node_state()

Type Parameter Key Value
PARAM_VALUE 0 node 0-1023
PARAM_VALUE 1 state 1
DATA_SOURCE 0 node $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq_flags