Lines Matching full:ud

463 			if (vhci_hcd->vdev[rhport].ud.status ==  in vhci_hub_control()
465 vhci_hcd->vdev[rhport].ud.status == in vhci_hub_control()
470 vhci_hcd->vdev[rhport].ud.status); in vhci_hub_control()
673 usbip_event_add(&vdev->ud, VDEV_EVENT_ERROR_MALLOC); in vhci_tx_urb()
725 spin_lock(&vdev->ud.lock); in vhci_urb_enqueue()
726 if (vdev->ud.status == VDEV_ST_NULL || in vhci_urb_enqueue()
727 vdev->ud.status == VDEV_ST_ERROR) { in vhci_urb_enqueue()
729 spin_unlock(&vdev->ud.lock); in vhci_urb_enqueue()
733 spin_unlock(&vdev->ud.lock); in vhci_urb_enqueue()
770 spin_lock(&vdev->ud.lock); in vhci_urb_enqueue()
771 vdev->ud.status = VDEV_ST_USED; in vhci_urb_enqueue()
772 spin_unlock(&vdev->ud.lock); in vhci_urb_enqueue()
901 if (!vdev->ud.tcp_socket) { in vhci_urb_dequeue()
933 usbip_event_add(&vdev->ud, VDEV_EVENT_ERROR_MALLOC); in vhci_urb_dequeue()
1014 static void vhci_shutdown_connection(struct usbip_device *ud) in vhci_shutdown_connection() argument
1016 struct vhci_device *vdev = container_of(ud, struct vhci_device, ud); in vhci_shutdown_connection()
1019 if (ud->tcp_socket) { in vhci_shutdown_connection()
1020 pr_debug("shutdown tcp_socket %d\n", ud->sockfd); in vhci_shutdown_connection()
1021 kernel_sock_shutdown(ud->tcp_socket, SHUT_RDWR); in vhci_shutdown_connection()
1025 if (vdev->ud.tcp_rx) { in vhci_shutdown_connection()
1026 kthread_stop_put(vdev->ud.tcp_rx); in vhci_shutdown_connection()
1027 vdev->ud.tcp_rx = NULL; in vhci_shutdown_connection()
1029 if (vdev->ud.tcp_tx) { in vhci_shutdown_connection()
1030 kthread_stop_put(vdev->ud.tcp_tx); in vhci_shutdown_connection()
1031 vdev->ud.tcp_tx = NULL; in vhci_shutdown_connection()
1036 if (vdev->ud.tcp_socket) { in vhci_shutdown_connection()
1037 sockfd_put(vdev->ud.tcp_socket); in vhci_shutdown_connection()
1038 vdev->ud.tcp_socket = NULL; in vhci_shutdown_connection()
1039 vdev->ud.sockfd = -1; in vhci_shutdown_connection()
1070 static void vhci_device_reset(struct usbip_device *ud) in vhci_device_reset() argument
1072 struct vhci_device *vdev = container_of(ud, struct vhci_device, ud); in vhci_device_reset()
1076 spin_lock_irqsave(&ud->lock, flags); in vhci_device_reset()
1084 if (ud->tcp_socket) { in vhci_device_reset()
1085 sockfd_put(ud->tcp_socket); in vhci_device_reset()
1086 ud->tcp_socket = NULL; in vhci_device_reset()
1087 ud->sockfd = -1; in vhci_device_reset()
1089 ud->status = VDEV_ST_NULL; in vhci_device_reset()
1091 spin_unlock_irqrestore(&ud->lock, flags); in vhci_device_reset()
1094 static void vhci_device_unusable(struct usbip_device *ud) in vhci_device_unusable() argument
1098 spin_lock_irqsave(&ud->lock, flags); in vhci_device_unusable()
1099 ud->status = VDEV_ST_ERROR; in vhci_device_unusable()
1100 spin_unlock_irqrestore(&ud->lock, flags); in vhci_device_unusable()
1107 vdev->ud.side = USBIP_VHCI; in vhci_device_init()
1108 vdev->ud.status = VDEV_ST_NULL; in vhci_device_init()
1109 spin_lock_init(&vdev->ud.lock); in vhci_device_init()
1110 mutex_init(&vdev->ud.sysfs_lock); in vhci_device_init()
1120 vdev->ud.eh_ops.shutdown = vhci_shutdown_connection; in vhci_device_init()
1121 vdev->ud.eh_ops.reset = vhci_device_reset; in vhci_device_init()
1122 vdev->ud.eh_ops.unusable = vhci_device_unusable; in vhci_device_init()
1124 usbip_start_eh(&vdev->ud); in vhci_device_init()
1244 usbip_event_add(&vdev->ud, VDEV_EVENT_REMOVED); in vhci_stop()
1245 usbip_stop_eh(&vdev->ud); in vhci_stop()