Lines Matching full:ud
456 if (vhci_hcd->vdev[rhport].ud.status == in vhci_hub_control()
461 vhci_hcd->vdev[rhport].ud.status); in vhci_hub_control()
668 usbip_event_add(&vdev->ud, VDEV_EVENT_ERROR_MALLOC); in vhci_tx_urb()
720 spin_lock(&vdev->ud.lock); in vhci_urb_enqueue()
721 if (vdev->ud.status == VDEV_ST_NULL || in vhci_urb_enqueue()
722 vdev->ud.status == VDEV_ST_ERROR) { in vhci_urb_enqueue()
724 spin_unlock(&vdev->ud.lock); in vhci_urb_enqueue()
728 spin_unlock(&vdev->ud.lock); in vhci_urb_enqueue()
763 spin_lock(&vdev->ud.lock); in vhci_urb_enqueue()
764 vdev->ud.status = VDEV_ST_USED; in vhci_urb_enqueue()
765 spin_unlock(&vdev->ud.lock); in vhci_urb_enqueue()
888 if (!vdev->ud.tcp_socket) { in vhci_urb_dequeue()
920 usbip_event_add(&vdev->ud, VDEV_EVENT_ERROR_MALLOC); in vhci_urb_dequeue()
1005 static void vhci_shutdown_connection(struct usbip_device *ud) in vhci_shutdown_connection() argument
1007 struct vhci_device *vdev = container_of(ud, struct vhci_device, ud); in vhci_shutdown_connection()
1010 if (ud->tcp_socket) { in vhci_shutdown_connection()
1011 pr_debug("shutdown tcp_socket %d\n", ud->sockfd); in vhci_shutdown_connection()
1012 kernel_sock_shutdown(ud->tcp_socket, SHUT_RDWR); in vhci_shutdown_connection()
1016 if (vdev->ud.tcp_rx) { in vhci_shutdown_connection()
1017 kthread_stop_put(vdev->ud.tcp_rx); in vhci_shutdown_connection()
1018 vdev->ud.tcp_rx = NULL; in vhci_shutdown_connection()
1020 if (vdev->ud.tcp_tx) { in vhci_shutdown_connection()
1021 kthread_stop_put(vdev->ud.tcp_tx); in vhci_shutdown_connection()
1022 vdev->ud.tcp_tx = NULL; in vhci_shutdown_connection()
1027 if (vdev->ud.tcp_socket) { in vhci_shutdown_connection()
1028 sockfd_put(vdev->ud.tcp_socket); in vhci_shutdown_connection()
1029 vdev->ud.tcp_socket = NULL; in vhci_shutdown_connection()
1030 vdev->ud.sockfd = -1; in vhci_shutdown_connection()
1061 static void vhci_device_reset(struct usbip_device *ud) in vhci_device_reset() argument
1063 struct vhci_device *vdev = container_of(ud, struct vhci_device, ud); in vhci_device_reset()
1066 spin_lock_irqsave(&ud->lock, flags); in vhci_device_reset()
1074 if (ud->tcp_socket) { in vhci_device_reset()
1075 sockfd_put(ud->tcp_socket); in vhci_device_reset()
1076 ud->tcp_socket = NULL; in vhci_device_reset()
1077 ud->sockfd = -1; in vhci_device_reset()
1079 ud->status = VDEV_ST_NULL; in vhci_device_reset()
1081 spin_unlock_irqrestore(&ud->lock, flags); in vhci_device_reset()
1084 static void vhci_device_unusable(struct usbip_device *ud) in vhci_device_unusable() argument
1088 spin_lock_irqsave(&ud->lock, flags); in vhci_device_unusable()
1089 ud->status = VDEV_ST_ERROR; in vhci_device_unusable()
1090 spin_unlock_irqrestore(&ud->lock, flags); in vhci_device_unusable()
1097 vdev->ud.side = USBIP_VHCI; in vhci_device_init()
1098 vdev->ud.status = VDEV_ST_NULL; in vhci_device_init()
1099 spin_lock_init(&vdev->ud.lock); in vhci_device_init()
1109 vdev->ud.eh_ops.shutdown = vhci_shutdown_connection; in vhci_device_init()
1110 vdev->ud.eh_ops.reset = vhci_device_reset; in vhci_device_init()
1111 vdev->ud.eh_ops.unusable = vhci_device_unusable; in vhci_device_init()
1113 usbip_start_eh(&vdev->ud); in vhci_device_init()
1236 usbip_event_add(&vdev->ud, VDEV_EVENT_REMOVED); in vhci_stop()
1237 usbip_stop_eh(&vdev->ud); in vhci_stop()