From 5231ef1439e966728a0772ba8f5b6ca06d20bcf3 Mon Sep 17 00:00:00 2001 From: thompsa Date: Wed, 22 Apr 2009 17:07:53 +0000 Subject: MFp4 //depot/projects/usb@160413 Use direct reference to parent high-speed HUB instead of indirect, due to pointer clearing race at detach of parent USB HUB. Reported by: kientzle Submitted by: Hans Petter Selasky PR: usb/133545 --- sys/dev/usb/controller/ehci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sys/dev/usb/controller') diff --git a/sys/dev/usb/controller/ehci.c b/sys/dev/usb/controller/ehci.c index 8be6bec..e3f42d4 100644 --- a/sys/dev/usb/controller/ehci.c +++ b/sys/dev/usb/controller/ehci.c @@ -3651,8 +3651,8 @@ ehci_pipe_init(struct usb2_device *udev, struct usb2_endpoint_descriptor *edesc, if ((udev->speed != USB_SPEED_HIGH) && ((udev->hs_hub_addr == 0) || (udev->hs_port_no == 0) || - (udev->bus->devices[udev->hs_hub_addr] == NULL) || - (udev->bus->devices[udev->hs_hub_addr]->hub == NULL))) { + (udev->parent_hs_hub == NULL) || + (udev->parent_hs_hub->hub == NULL))) { /* We need a transaction translator */ goto done; } -- cgit v1.1