Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/net/hyperv/netvsc.c hv_get_avail_to_write_percent() -> hv_get_bytes_to_write()

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

drivers/hv/vmbus_drv.c write_avail_show() -> hv_get_bytes_to_write()

Type Parameter Key Value
PARAM_VALUE 0 rbi 4096-ptr_max
PARAM_VALUE 0 rbi->ring_buffer 1-u64max
BUF_SIZE 0 rbi 272
CAPPED_DATA 0 &rbi->ring_buffer_mutex 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
LOCK2 0 &rbi->ring_buffer_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hv_ring_buffer_info)->ring_buffer_mutex
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/hv/ring_buffer.c hv_pkt_iter_close() -> hv_get_bytes_to_write()

Type Parameter Key Value
PARAM_VALUE 0 rbi 4096-ptr_max
PARAM_VALUE 0 rbi->ring_buffer 4096-ptr_max
BUF_SIZE 0 rbi 272
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk

drivers/hv/ring_buffer.c hv_ringbuffer_write() -> hv_get_bytes_to_write()

Type Parameter Key Value
PARAM_VALUE 0 rbi 4096-ptr_max
BUF_SIZE 0 rbi 272
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &rbi->ring_lock
TYPE_LOCK (struct hv_ring_buffer_info)->ring_lock

drivers/scsi/storvsc_drv.c hv_get_avail_to_write_percent() -> hv_get_bytes_to_write()

Type Parameter Key Value
PARAM_VALUE 0 rbi 368,4096-ptr_max
DATA_SOURCE 0 rbi $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->state_mutex

net/vmw_vsock/hyperv_transport.c hvs_channel_cb() -> hv_get_bytes_to_write()

Type Parameter Key Value
PARAM_VALUE 0 rbi 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &channel->sched_lock
HALF_LOCKED2 rcu_read

net/vmw_vsock/hyperv_transport.c hvs_channel_writable_bytes() -> hv_get_bytes_to_write()

Type Parameter Key Value
PARAM_VALUE 0 rbi 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk