Documented in 1 files:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

net/9p/trans_virtio.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 0,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_pci_common.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 41
BUF_SIZE 0 vdev->priv (-1),112,200,336,368,448,576,816,928,2352,4520-s32max
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
STR_LEN 0 vdev (-1),3,5-6,8,11,13
STR_LEN 0 vdev (-1),3,5-6,8,11,13
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 vdev->failed 0-1
HALF_LOCKED2 global &the_virtio_vsock_mutex

drivers/virtio/virtio_pci_common.c virtio_pci_sriov_configure() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 37
BUF_SIZE 0 vdev 1872
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
LOCK2 &pci_dev->dev.mutex
LOCK2 global &pci_rescan_remove_lock
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct device)->mutex
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/virtio/virtio_ring.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 28-29,32-36
BUF_SIZE 0 vdev->priv (-1),4,112,168,192,336,576,928,2080,4520-s32max
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
STR_LEN 0 vdev (-1),3,5-6,8,11,13
STR_LEN 0 vdev (-1),3,5-6,8,11,13
HARD_MAX 1 fbit 36
RX_PATH
TASK_NOT_RUNNING

drivers/net/can/virtio_can.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 0-2,28,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 vdev->failed 0-1
NO_OVERFLOW_SIMPLE 0 vdev->priv->num_vqs
HALF_LOCKED2 0 &vdev->config_lock

drivers/iommu/virtio-iommu.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 0-2,4-6,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &group->mutex

drivers/nvdimm/virtio_pmem.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 0
BUF_SIZE 0 vdev->priv (-1),392
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_mem.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 0,2,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/firmware/arm_scmi/transports/virtio.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 0,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_pci_admin_legacy_io.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 1-ptr_max
PARAM_VALUE 1 fbit 41
BUF_SIZE 0 vdev 1872
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/gpio/gpio-virtio.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 0,32
BUF_SIZE 0 vdev->priv (-1),928
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/scsi/virtio_scsi.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 3,32
BUF_SIZE 0 vdev->priv (-1),4600-s32max
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/virtio/virtgpu_vq.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 33
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &(plane->dev)->mode_config.panic_lock
HALF_LOCKED2 flags

drivers/virtio/virtio_rtc_driver.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 0
BUF_SIZE 0 vdev->priv (-1),200
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING

net/vmw_vsock/virtio_transport.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &the_virtio_vsock_mutex

drivers/crypto/virtio/virtio_crypto_core.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 32
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_balloon.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 1-5,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &_d->mutex
HALF_LOCKED2 &vb->stop_update_lock
HALF_LOCKED2 flags

drivers/bluetooth/virtio_bt.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 0-3,32
BUF_SIZE 0 vdev->priv (-1),112
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_mmio.c vm_finalize_features() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 32
DATA_SOURCE 0 vdev $0
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_mmio.c vm_setup_vq() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 38
BUF_SIZE 0 vdev->priv (-1),112,336,576,928,4600-s32max
DATA_SOURCE 0 vdev $0
STR_LEN 0 vdev (-1),3,5-6,8,11,13
STR_LEN 0 vdev (-1),3,5-6,8,11,13
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &the_virtio_vsock_mutex

drivers/virtio/virtio_pci_modern.c __vp_check_common_size_one_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 39-41
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
STR_LEN 0 vdev 17,19,26
STR_LEN 0 vdev 17,19,26
HARD_MAX 1 fbit 41
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_pci_modern.c setup_vq() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 38
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &the_virtio_vsock_mutex

drivers/virtio/virtio_pci_modern.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 40-41
BUF_SIZE 0 vdev (-1),1872
BUF_SIZE 0 vdev (-1),1872
BUF_SIZE 0 vdev->config (-1),144
BUF_SIZE 0 vdev->dev.bus (-1),168
BUF_SIZE 0 vdev->dev.parent (-1),1616
BUF_SIZE 0 vdev->priv (-1),112,200,280,336,368,376-752,816,928,2352,4520-s32max
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
STR_LEN 0 vdev (-1),3,5-6,8,11,13
STR_LEN 0 vdev (-1),3,5-6,8,11,13
HARD_MAX 1 fbit 41
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 vdev->config_change_pending 0
HOST_DATA 0 vdev->config_core_enabled 0
HOST_DATA 0 vdev->config_driver_disabled 0
HOST_DATA 0 vdev->dev.bus_dma_limit 0-u64max
HOST_DATA 0 vdev->dev.coherent_dma_mask 0-u64max
HOST_DATA 0 vdev->dev.devt 0-u32max
HOST_DATA 0 vdev->dev.id 0-u32max
HOST_DATA 0 vdev->dev.kobj.release.cpu s32min-s32max
HOST_DATA 0 vdev->dev.kobj.release.timer.expires 0-u64max
HOST_DATA 0 vdev->dev.kobj.release.timer.flags 0-u32max
HOST_DATA 0 vdev->dev.kobj.release.work.data.counter s64min-s64max
HOST_DATA 0 vdev->dev.kobj.uevent_suppress 0-1
HOST_DATA 0 vdev->dev.mutex.osq.tail.counter s32min-s32max
HOST_DATA 0 vdev->dev.mutex.owner.counter s64min-s64max
HOST_DATA 0 vdev->dev.power.accounting_timestamp 0-u64max
HOST_DATA 0 vdev->dev.power.active_time 0-u64max
HOST_DATA 0 vdev->dev.power.async_suspend 0-1
HOST_DATA 0 vdev->dev.power.autosuspend_delay s32min-s32max
HOST_DATA 0 vdev->dev.power.can_wakeup 0-1
HOST_DATA 0 vdev->dev.power.detach_power_off 0-1
HOST_DATA 0 vdev->dev.power.direct_complete 0-1
HOST_DATA 0 vdev->dev.power.driver_flags 0-u32max
HOST_DATA 0 vdev->dev.power.in_dpm_list 0-1
HOST_DATA 0 vdev->dev.power.irq_safe 0-1
HOST_DATA 0 vdev->dev.power.last_busy 0-u64max
HOST_DATA 0 vdev->dev.power.links_count 0-u32max
HOST_DATA 0 vdev->dev.power.may_skip_resume 0-1
HOST_DATA 0 vdev->dev.power.memalloc_noio 0-1
HOST_DATA 0 vdev->dev.power.must_resume 0-1
HOST_DATA 0 vdev->dev.power.no_callbacks 0-1
HOST_DATA 0 vdev->dev.power.no_pm 0-1
HOST_DATA 0 vdev->dev.power.no_pm_callbacks 0-1
HOST_DATA 0 vdev->dev.power.out_band_wakeup 0-1
HOST_DATA 0 vdev->dev.power.power_state.event s32min-s32max
HOST_DATA 0 vdev->dev.power.smart_suspend 0-1
HOST_DATA 0 vdev->dev.power.strict_midlayer 0-1
HOST_DATA 0 vdev->dev.power.suspended_time 0-u64max
HOST_DATA 0 vdev->dev.power.syscore 0-1
HOST_DATA 0 vdev->dev.power.timer_autosuspends 0-1
HOST_DATA 0 vdev->dev.power.use_autosuspend 0-1
HOST_DATA 0 vdev->dev.power.work_in_progress 0-1
HOST_DATA 0 vdev->dev.removable 0-u32max
HOST_DATA 0 vdev->failed 0-1
HOST_DATA 0 vdev->features 0-u64max
HOST_DATA 0 vdev->id.device 1-u32max
HOST_DATA 0 vdev->id.vendor 0-u32max
HOST_DATA 0 vdev->index 0-s32max
NO_OVERFLOW_SIMPLE 0 vdev->priv->num_vqs

drivers/virtio/virtio_pci_modern.c vp_finalize_features() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 32
DATA_SOURCE 0 vdev $0
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/virtio/virtgpu_kms.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 0-5,28,32
BUF_SIZE 0 vdev->priv (-1),3696
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/char/virtio_console.c use_multiport() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 1-u64max
PARAM_VALUE 1 fbit 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vdev->config_lock

drivers/char/virtio_console.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 0-1,32
BUF_SIZE 0 vdev->priv (-1),472
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/rpmsg/virtio_rpmsg_bus.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 0,32
BUF_SIZE 0 vdev->priv (-1),552
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex

sound/virtio/virtio_card.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 0,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING

drivers/block/virtio_blk.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 1-2,4-6,9-14,16-17,28,32
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 32
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &vblk->vdev_mutex

drivers/gpu/drm/virtio/virtgpu_object.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 33
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vgdev->obj_restore_lock

drivers/virtio/virtio.c features_show() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 1 fbit 0-127
FUZZY_MAX 1 fbit 127
HARD_MAX 1 fbit 127
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/virtio/virtio.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 32-33
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
HARD_MAX 1 fbit 33
RX_PATH
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-virtio.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 0
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_vdpa.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 34
BUF_SIZE 0 vdev->priv (-1),112,336,576,928,4520-s32max
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
STR_LEN 0 vdev (-1),3,5-6,8,11,13
STR_LEN 0 vdev (-1),3,5-6,8,11,13
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &the_virtio_vsock_mutex

drivers/virtio/virtio_vdpa.c virtio_vdpa_setup_vq() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 1 fbit 38
BUF_SIZE 0 vdev->priv (-1),112,336,576,928,4600-s32max
DATA_SOURCE 0 vdev $0
STR_LEN 0 vdev (-1),3,5-6,8,11,13
STR_LEN 0 vdev (-1),3,5-6,8,11,13
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &the_virtio_vsock_mutex

drivers/net/virtio_net.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
CAPPED_DATA 1 fbit 1
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
STR_LEN 0 vdev (-1),15-16,20,22,24-27
STR_LEN 0 vdev (-1),15-16,20,22,24-27
STR_LEN 1 fbit (-1),20
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/spi/spi-virtio.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 32
BUF_SIZE 0 vdev->priv s32min-(-2),1-s32max
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING

drivers/virtio/virtio_input.c virtio_has_feature() -> __virtio_test_bit()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->features_array 4096-ptr_max
PARAM_VALUE 1 fbit 32
DATA_SOURCE 0 vdev $0
DATA_SOURCE 1 fbit $1
RX_PATH
TASK_NOT_RUNNING