Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/usb/gadget/legacy/zero.c zero_bind() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->driver 4096-ptr_max
PARAM_VALUE 0 cdev->driver->bind 4096-ptr_max
PARAM_VALUE 0 cdev->driver->dev 4096-ptr_max
PARAM_VALUE 0 cdev->driver->disconnect 0
PARAM_VALUE 0 cdev->driver->max_speed 1-3,5-6
PARAM_VALUE 0 cdev->driver->resume 0,5142684716101427200
PARAM_VALUE 0 cdev->driver->strings 4096-ptr_max
PARAM_VALUE 0 cdev->driver->suspend 0,5398328222922911744
PARAM_VALUE 0 cdev->driver->unbind 4096-ptr_max
PARAM_VALUE 0 cdev->gadget 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->driver_data 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops->alloc_request 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->in_epnum 0
PARAM_VALUE 0 cdev->gadget->is_selfpowered 1
PARAM_VALUE 0 cdev->gadget->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->out_epnum 0
PARAM_VALUE 0 cdev->gstrings.next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->req 4096-ptr_max
PARAM_VALUE 0 cdev->req->buf 4096-ptr_max
PARAM_VALUE 0 cdev->req->complete 6839047502870331392
PARAM_VALUE 0 cdev->req->context 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep->ops 4096-ptr_max
PARAM_VALUE 1 config 5355486087278854144
PARAM_VALUE 1 config->bmAttributes 64,96
BUF_SIZE 0 cdev 496
DATA_SOURCE 0 cdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/gadget/legacy/zero.c zero_bind() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->driver 4096-ptr_max
PARAM_VALUE 0 cdev->driver->bind 4096-ptr_max
PARAM_VALUE 0 cdev->driver->dev 4096-ptr_max
PARAM_VALUE 0 cdev->driver->disconnect 0
PARAM_VALUE 0 cdev->driver->max_speed 1-3,5-6
PARAM_VALUE 0 cdev->driver->resume 0,5142684716101427200
PARAM_VALUE 0 cdev->driver->strings 4096-ptr_max
PARAM_VALUE 0 cdev->driver->suspend 0,5398328222922911744
PARAM_VALUE 0 cdev->driver->unbind 4096-ptr_max
PARAM_VALUE 0 cdev->gadget 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->driver_data 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops->alloc_request 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->in_epnum 0
PARAM_VALUE 0 cdev->gadget->is_selfpowered 1
PARAM_VALUE 0 cdev->gadget->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->out_epnum 0
PARAM_VALUE 0 cdev->gstrings.next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->req 4096-ptr_max
PARAM_VALUE 0 cdev->req->buf 4096-ptr_max
PARAM_VALUE 0 cdev->req->complete 6839047502870331392
PARAM_VALUE 0 cdev->req->context 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep->ops 4096-ptr_max
PARAM_VALUE 1 config 4830571888289595392
PARAM_VALUE 1 config->bmAttributes 64,96
BUF_SIZE 0 cdev 496
DATA_SOURCE 0 cdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/gadget/legacy/zero.c zero_bind() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->driver 4096-ptr_max
PARAM_VALUE 0 cdev->driver->bind 4096-ptr_max
PARAM_VALUE 0 cdev->driver->dev 4096-ptr_max
PARAM_VALUE 0 cdev->driver->disconnect 0
PARAM_VALUE 0 cdev->driver->max_speed 1-3,5-6
PARAM_VALUE 0 cdev->driver->resume 0,5142684716101427200
PARAM_VALUE 0 cdev->driver->strings 4096-ptr_max
PARAM_VALUE 0 cdev->driver->suspend 0,5398328222922911744
PARAM_VALUE 0 cdev->driver->unbind 4096-ptr_max
PARAM_VALUE 0 cdev->gadget 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->driver_data 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops->alloc_request 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->in_epnum 0
PARAM_VALUE 0 cdev->gadget->is_selfpowered 1
PARAM_VALUE 0 cdev->gadget->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->out_epnum 0
PARAM_VALUE 0 cdev->gstrings.next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->req 4096-ptr_max
PARAM_VALUE 0 cdev->req->buf 4096-ptr_max
PARAM_VALUE 0 cdev->req->complete 6839047502870331392
PARAM_VALUE 0 cdev->req->context 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep->ops 4096-ptr_max
PARAM_VALUE 1 config 4830571888289595392
PARAM_VALUE 1 config->bmAttributes 64,96
BUF_SIZE 0 cdev 496
DATA_SOURCE 0 cdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/gadget/legacy/zero.c zero_bind() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->driver 4096-ptr_max
PARAM_VALUE 0 cdev->driver->bind 4096-ptr_max
PARAM_VALUE 0 cdev->driver->dev 4096-ptr_max
PARAM_VALUE 0 cdev->driver->disconnect 0
PARAM_VALUE 0 cdev->driver->max_speed 1-3,5-6
PARAM_VALUE 0 cdev->driver->resume 0,5142684716101427200
PARAM_VALUE 0 cdev->driver->strings 4096-ptr_max
PARAM_VALUE 0 cdev->driver->suspend 0,5398328222922911744
PARAM_VALUE 0 cdev->driver->unbind 4096-ptr_max
PARAM_VALUE 0 cdev->gadget 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->driver_data 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops->alloc_request 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->in_epnum 0
PARAM_VALUE 0 cdev->gadget->is_selfpowered 1
PARAM_VALUE 0 cdev->gadget->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->out_epnum 0
PARAM_VALUE 0 cdev->gstrings.next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->req 4096-ptr_max
PARAM_VALUE 0 cdev->req->buf 4096-ptr_max
PARAM_VALUE 0 cdev->req->complete 6839047502870331392
PARAM_VALUE 0 cdev->req->context 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep->ops 4096-ptr_max
PARAM_VALUE 1 config 5355486087278854144
PARAM_VALUE 1 config->bmAttributes 64,96
BUF_SIZE 0 cdev 496
DATA_SOURCE 0 cdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/gadget/configfs.c config_desc_make() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 1 config 4096-ptr_max
PARAM_VALUE 1 config->MaxPower 2
PARAM_VALUE 1 config->bmAttributes 128
PARAM_VALUE 1 config->label 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 config->bConfigurationValue 0-255
NO_OVERFLOW_SIMPLE 1 config->bConfigurationValue
LOCK2 &subsys->su_mutex
HALF_LOCKED2 &dentry->d_lockref.lock
TYPE_LOCK (struct configfs_subsystem)->su_mutex

drivers/usb/gadget/legacy/serial.c serial_register_ports() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->driver 4096-ptr_max
PARAM_VALUE 0 cdev->driver->bind 4096-ptr_max
PARAM_VALUE 0 cdev->driver->dev 4096-ptr_max
PARAM_VALUE 0 cdev->driver->disconnect 0
PARAM_VALUE 0 cdev->driver->max_speed 1-3,5-6
PARAM_VALUE 0 cdev->driver->resume 0,5142684716101427200
PARAM_VALUE 0 cdev->driver->strings 4096-ptr_max
PARAM_VALUE 0 cdev->driver->suspend 0,5398328222922911744
PARAM_VALUE 0 cdev->driver->unbind 4096-ptr_max
PARAM_VALUE 0 cdev->gadget 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->driver_data 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops->alloc_request 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->in_epnum 0
PARAM_VALUE 0 cdev->gadget->is_selfpowered 1
PARAM_VALUE 0 cdev->gadget->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->out_epnum 0
PARAM_VALUE 0 cdev->gstrings.next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->req 4096-ptr_max
PARAM_VALUE 0 cdev->req->buf 4096-ptr_max
PARAM_VALUE 0 cdev->req->complete 6839047502870331392
PARAM_VALUE 0 cdev->req->context 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep->ops 4096-ptr_max
PARAM_VALUE 1 config 3860547593020981248
PARAM_VALUE 1 config->bmAttributes 64,96
BUF_SIZE 0 cdev 496
DATA_SOURCE 0 cdev $0
DATA_SOURCE 1 config $1
STR_LEN 0 cdev 3-4
STR_LEN 0 cdev 3-4
RX_PATH
TASK_NOT_RUNNING

drivers/usb/gadget/composite.c usb_add_config() -> usb_add_config_only()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->configs.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->driver 4096-ptr_max
PARAM_VALUE 0 cdev->gadget 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->driver_data 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->ep0->ops->alloc_request 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->in_epnum 0
PARAM_VALUE 0 cdev->gadget->is_selfpowered 1
PARAM_VALUE 0 cdev->gadget->ops 4096-ptr_max
PARAM_VALUE 0 cdev->gadget->out_epnum 0
PARAM_VALUE 0 cdev->gstrings.next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.next->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->next 4096-ptr_max
PARAM_VALUE 0 cdev->gstrings.prev->prev 4096-ptr_max
PARAM_VALUE 0 cdev->req 4096-ptr_max
PARAM_VALUE 0 cdev->req->buf 4096-ptr_max
PARAM_VALUE 0 cdev->req->complete 6839047502870331392
PARAM_VALUE 0 cdev->req->context 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep 4096-ptr_max
PARAM_VALUE 0 cdev->req->ep->ops 4096-ptr_max
PARAM_VALUE 1 config 4096-ptr_max
PARAM_VALUE 1 config->bConfigurationValue 1-3
BUF_SIZE 0 cdev (-1),496
BUF_SIZE 0 cdev (-1),496
DATA_SOURCE 0 cdev $0
DATA_SOURCE 1 config $1
RX_PATH
TASK_NOT_RUNNING