Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/can/usb/ucan.c ucan_close() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->can.state 4
PARAM_VALUE 0 up->rx_urbs.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 up->rx_urbs.suspend_wakeups.counter 0
PARAM_VALUE 0 up->tx_urbs.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 up->tx_urbs.suspend_wakeups.counter 0
PARAM_VALUE 1 cmd 1
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 0
PARAM_COMPARE 0 &up->rx_urbs.urb_list == $0->rx_urbs.urb_list.next
PARAM_COMPARE 0 &up->tx_urbs.urb_list == $0->tx_urbs.urb_list.next
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->lock
HALF_LOCKED2 &rdev->wiphy.mtx
HALF_LOCKED2 global &rtnl_mutex

drivers/net/can/usb/ucan.c ucan_close() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->can.state 4
PARAM_VALUE 0 up->rx_urbs.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 up->rx_urbs.suspend_wakeups.counter 0
PARAM_VALUE 0 up->tx_urbs.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 up->tx_urbs.suspend_wakeups.counter 0
PARAM_VALUE 0 up->udev 4096-ptr_max
PARAM_VALUE 0 *up->netdev->name 0-255
PARAM_VALUE 1 cmd 4
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 0
PARAM_COMPARE 0 &up->rx_urbs.urb_list == $0->rx_urbs.urb_list.next
PARAM_COMPARE 0 &up->tx_urbs.urb_list == $0->tx_urbs.urb_list.next
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->lock
HALF_LOCKED2 &rdev->wiphy.mtx
HALF_LOCKED2 global &rtnl_mutex

drivers/net/can/usb/ucan.c ucan_open() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->available_tx_urbs 0-255
PARAM_VALUE 0 up->context_array 16,4096-ptr_max
PARAM_VALUE 0 up->ctl_msg_buffer 4096-ptr_max
PARAM_VALUE 0 up->ctl_msg_buffer->cmd_start.mode 16-31
PARAM_VALUE 0 up->rx_urbs.urb_list.prev 40,4096-ptr_max
PARAM_VALUE 0 up->rx_urbs.urb_list.prev->next 40,4096-ptr_max
PARAM_VALUE 0 up->rx_urbs.urb_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 up->udev 4096-ptr_max
PARAM_VALUE 0 up->udev->bus 1-u64max
PARAM_VALUE 1 cmd 0
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 2
CAPPED_DATA 0 up->device_info.tx_fifo 1
BIT_INFO 0 up->ctl_msg_buffer->cmd_start.mode 0x10,0x1f
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 up->available_tx_urbs
NO_OVERFLOW_SIMPLE 0 up->device_info.tx_fifo
HALF_LOCKED2 global &rtnl_mutex

drivers/net/can/usb/ucan.c ucan_open() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->available_tx_urbs 0-255
PARAM_VALUE 0 up->bittiming.bitrate 0-4294967295
PARAM_VALUE 0 up->context_array 16,4096-ptr_max
PARAM_VALUE 0 up->ctl_msg_buffer 4096-ptr_max
PARAM_VALUE 0 up->ctl_msg_buffer->cmd_start.mode 16-31
PARAM_VALUE 0 up->rx_urbs.urb_list.prev 40,4096-ptr_max
PARAM_VALUE 0 up->rx_urbs.urb_list.prev->next 40,4096-ptr_max
PARAM_VALUE 0 up->rx_urbs.urb_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 up->udev 4096-ptr_max
PARAM_VALUE 0 up->udev->bus 1-u64max
PARAM_VALUE 0 *up->netdev->name 0-255
PARAM_VALUE 1 cmd 1
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 0
CAPPED_DATA 0 up->bittiming.bitrate 1
CAPPED_DATA 0 up->device_info.tx_fifo 1
BIT_INFO 0 up->ctl_msg_buffer->cmd_start.mode 0x10,0xffffffffffffffff
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 up->available_tx_urbs
NO_OVERFLOW_SIMPLE 0 up->device_info.tx_fifo
HALF_LOCKED2 global &rtnl_mutex

drivers/net/can/usb/ucan.c ucan_open() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->available_tx_urbs 0-255
PARAM_VALUE 0 up->bittiming.bitrate 0-4294967295
PARAM_VALUE 0 up->context_array 16,4096-ptr_max
PARAM_VALUE 0 up->ctl_msg_buffer 4096-ptr_max
PARAM_VALUE 0 up->ctl_msg_buffer->cmd_start.mode 16-31
PARAM_VALUE 0 up->rx_urbs.urb_list.prev 40,4096-ptr_max
PARAM_VALUE 0 up->rx_urbs.urb_list.prev->next 40,4096-ptr_max
PARAM_VALUE 0 up->rx_urbs.urb_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 up->udev 4096-ptr_max
PARAM_VALUE 0 up->udev->bus 1-u64max
PARAM_VALUE 0 *up->netdev->name 0-255
PARAM_VALUE 1 cmd 4
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 0
CAPPED_DATA 0 up->bittiming.bitrate 1
CAPPED_DATA 0 up->device_info.tx_fifo 1
BIT_INFO 0 up->ctl_msg_buffer->cmd_start.mode 0x10,0xffffffffffffffff
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 up->available_tx_urbs
NO_OVERFLOW_SIMPLE 0 up->device_info.tx_fifo
HALF_LOCKED2 global &rtnl_mutex

drivers/net/can/usb/ucan.c ucan_probe() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->available_tx_urbs 0
PARAM_VALUE 0 up->can.bittiming_const 4096-ptr_max
PARAM_VALUE 0 up->can.clock.freq 0
PARAM_VALUE 0 up->can.ctrlmode_supported 0
PARAM_VALUE 0 up->can.do_set_bittiming 4505547161331716096
PARAM_VALUE 0 up->can.do_set_mode 7070385293240037376
PARAM_VALUE 0 up->can.state 4
PARAM_VALUE 0 up->context_array 0
PARAM_VALUE 0 up->ctl_msg_buffer 4096-ptr_max
PARAM_VALUE 0 up->device_info.bittiming_const.brp_inc 0
PARAM_VALUE 0 up->device_info.bittiming_const.brp_max 0
PARAM_VALUE 0 up->device_info.bittiming_const.brp_min 0
PARAM_VALUE 0 up->device_info.bittiming_const.sjw_max 0
PARAM_VALUE 0 up->device_info.tx_fifo 0
PARAM_VALUE 0 up->in_ep_addr 0-15
PARAM_VALUE 0 up->in_ep_size 16-2047
PARAM_VALUE 0 up->netdev 4096-ptr_max
PARAM_VALUE 0 up->netdev->_rx 16,4096-ptr_max
PARAM_VALUE 0 up->netdev->_tx 16,4096-ptr_max
PARAM_VALUE 0 up->netdev->adj_list.lower.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->adj_list.lower.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->adj_list.upper.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->adj_list.upper.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->cfg 4096-ptr_max
PARAM_VALUE 0 up->netdev->cfg_pending 4096-ptr_max
PARAM_VALUE 0 up->netdev->close_list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->close_list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->dev_addrs.list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->dev_addrs.list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->ethtool 4096-ptr_max
PARAM_VALUE 0 up->netdev->ethtool_ops 1-u64max
PARAM_VALUE 0 up->netdev->gro_ipv4_max_size 65536
PARAM_VALUE 0 up->netdev->gro_max_size 65536
PARAM_VALUE 0 up->netdev->group 0
PARAM_VALUE 0 up->netdev->gso_ipv4_max_size 65536
PARAM_VALUE 0 up->netdev->gso_max_segs u16max
PARAM_VALUE 0 up->netdev->gso_max_size 65536
PARAM_VALUE 0 up->netdev->link_watch_list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->link_watch_list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->lock.first_waiter 0
PARAM_VALUE 0 up->netdev->lock.magic 4096-ptr_max
PARAM_VALUE 0 up->netdev->lock.osq.tail.counter 0
PARAM_VALUE 0 up->netdev->lock.owner.counter 0
PARAM_VALUE 0 up->netdev->lower_level 1
PARAM_VALUE 0 up->netdev->mc.count 0
PARAM_VALUE 0 up->netdev->mc.list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->mc.list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->ml_priv_type 1
PARAM_VALUE 0 up->netdev->name_assign_type 0
PARAM_VALUE 0 up->netdev->napi_config 16,4096-ptr_max
PARAM_VALUE 0 up->netdev->napi_list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->napi_list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->nd_net.net 1824583183996030976
PARAM_VALUE 0 up->netdev->nested_level 0
PARAM_VALUE 0 up->netdev->net_notifier_list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->net_notifier_list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->nf_hooks_egress 0
PARAM_VALUE 0 up->netdev->nf_hooks_ingress 0
PARAM_VALUE 0 up->netdev->num_napi_configs 1-u32max
PARAM_VALUE 0 up->netdev->num_rx_queues 1
PARAM_VALUE 0 up->netdev->num_tx_queues 1
PARAM_VALUE 0 up->netdev->pcpu_refcnt 4096-ptr_max
PARAM_VALUE 0 up->netdev->priv_flags 131104,655392
PARAM_VALUE 0 up->netdev->ptype_all.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->ptype_all.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->ptype_specific.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->ptype_specific.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->real_num_rx_queues 1
PARAM_VALUE 0 up->netdev->real_num_tx_queues 1
PARAM_VALUE 0 up->netdev->refcnt_tracker.class 7541498157787627520
PARAM_VALUE 0 up->netdev->refcnt_tracker.dead 0
PARAM_VALUE 0 up->netdev->refcnt_tracker.list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->refcnt_tracker.list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->refcnt_tracker.no_tracker.refs.counter 1
PARAM_VALUE 0 up->netdev->refcnt_tracker.quarantine.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->refcnt_tracker.quarantine.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->refcnt_tracker.quarantine_avail 128
PARAM_VALUE 0 up->netdev->refcnt_tracker.untracked.refs.counter 1
PARAM_VALUE 0 up->netdev->rx_mode_addr_cache.count 0
PARAM_VALUE 0 up->netdev->rx_mode_addr_cache.list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->rx_mode_addr_cache.list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->rx_mode_retry_timer.flags 0-4194302
PARAM_VALUE 0 up->netdev->tso_max_segs u16max
PARAM_VALUE 0 up->netdev->tso_max_size 65536
PARAM_VALUE 0 up->netdev->tx_queue_len 1-u32max
PARAM_VALUE 0 up->netdev->uc.count 0
PARAM_VALUE 0 up->netdev->uc.list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->uc.list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->unlink_list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->unlink_list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->unreg_list.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->unreg_list.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->unreg_list_net.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->unreg_list_net.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->upper_level 1
PARAM_VALUE 0 up->netdev->watchdog_ref_held 0
PARAM_VALUE 0 up->netdev->work_node.next 4096-ptr_max
PARAM_VALUE 0 up->netdev->work_node.prev 4096-ptr_max
PARAM_VALUE 0 up->netdev->xdp_zc_max_segs 1
PARAM_VALUE 0 up->out_ep_addr 0-15
PARAM_VALUE 0 up->udev 4096-ptr_max
PARAM_VALUE 0 up->udev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 up->udev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 up->udev->dev.driver 0,4096-ptr_max
PARAM_VALUE 0 *up->device_info.bittiming_const->name 0-255
PARAM_VALUE 1 cmd 4
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 0
BUF_SIZE 0 up->can.bittiming_const 48
BUF_SIZE 0 up->can.do_set_mode 8
BUF_SIZE 0 up->ctl_msg_buffer 128
BUF_SIZE 0 up->netdev s32min-s32max
TERMINATED 0 up->netdev->refcnt_tracker.class 1
TERMINATED 0 up->refcnt_tracker.class 1
RX_PATH
TASK_NOT_RUNNING

drivers/net/can/usb/ucan.c ucan_set_bittiming() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 1 cmd 7
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 12
RX_PATH
TASK_NOT_RUNNING
UNITS 3 datalen unit_byte
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &ops->srcu
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rx_queue_mutex

drivers/net/can/usb/ucan.c ucan_set_mode() -> ucan_ctrl_command_out()

Type Parameter Key Value
PARAM_VALUE 0 *up->netdev->name 0-255
PARAM_VALUE 1 cmd 8
PARAM_VALUE 2 subcmd 0
PARAM_VALUE 3 datalen 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex