Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 14 files:

Smatch caller information:

arch/x86/kernel/fpu/core.c fpregs_lock_and_load() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

arch/x86/kernel/fpu/core.c kernel_fpu_begin_mask() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh

lib/crypto/sm3.c sm3_blocks_avx() -> irq_fpu_usable()

Type Parameter Key Value

lib/crypto/blake2s.c may_use_simd() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &checker->secret_lock
HALF_LOCKED2 &wg->device_update_lock
HALF_LOCKED2 global &rtnl_mutex

lib/crypto/sha512.c sha512_blocks_avx() -> irq_fpu_usable()

Type Parameter Key Value

lib/crypto/sha512.c sha512_blocks_avx2() -> irq_fpu_usable()

Type Parameter Key Value

lib/crypto/sha512.c sha512_blocks_ssse3() -> irq_fpu_usable()

Type Parameter Key Value

net/netfilter/nft_set_pipapo_avx2.c nft_pipapo_avx2_lookup() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
LOCK2 bh

lib/crypto/nh.c nh_arch() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

lib/crc/crc64-main.c crc64_be_arch() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/crc/crc64-main.c crc64_nvme_arch() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

lib/crypto/aes.c aes_decrypt_arch() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

lib/crypto/aes.c aes_encrypt_arch() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mbox->lock

lib/crypto/aes.c aes_preparekey_arch() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/crc/crc-t10dif-main.c crc_t10dif_arch() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &lpfc_cmd->buf_lock

lib/crypto/poly1305.c poly1305_blocks() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

arch/x86/crypto/aesni-intel_glue.c may_use_simd() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdata->sec_mtx
HALF_LOCKED2 sk

lib/crypto/gf128hash.c ghash_blocks_arch() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

lib/crypto/gf128hash.c polyval_blocks_arch() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/crypto/gf128hash.c polyval_mul_x86() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

lib/crypto/gf128hash.c polyval_preparekey_arch() -> irq_fpu_usable()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &kunit_run_lock

lib/crc/crc32-main.c crc32_le_arch() -> irq_fpu_usable()

Type Parameter Key Value

lib/crc/crc32-main.c crc32c_arch() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &aw88395->lock
HALF_LOCKED2 &bat_priv->tt.commit_lock
HALF_LOCKED2 &cache->writeback_lock
HALF_LOCKED2 &caching_ctl->mutex
HALF_LOCKED2 &con->mutex
HALF_LOCKED2 &edev->qede_lock
HALF_LOCKED2 &fs_info->commit_root_sem
HALF_LOCKED2 &log->io_mutex
HALF_LOCKED2 &mddev->reconfig_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &orig_node->tt_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &qp->state_lock
HALF_LOCKED2 &queue->send_mutex
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/netfilter/nft_set_pipapo.c pipapo_get() -> irq_fpu_usable()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh

lib/crypto/sha1.c sha1_blocks_avx() -> irq_fpu_usable()

Type Parameter Key Value

lib/crypto/sha1.c sha1_blocks_avx2() -> irq_fpu_usable()

Type Parameter Key Value

lib/crypto/sha1.c sha1_blocks_ni() -> irq_fpu_usable()

Type Parameter Key Value

lib/crypto/sha1.c sha1_blocks_ssse3() -> irq_fpu_usable()

Type Parameter Key Value