[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <200812191145.31556.oliver@neukum.org>
Date: Fri, 19 Dec 2008 11:45:30 +0100
From: Oliver Neukum <oliver@...kum.org>
To: ajb@...eresystems.co.uk, "Greg Kroah-Hartman" <greg@...ah.com>,
Denis Joseph Barrow <D.Barow@...ion.com>,
linux-usb@...r.kernel.org, netdev@...r.kernel.org
Subject: another race in hso
Hi,
there is another race.
static int hso_get_activity(struct hso_device *hso_dev)
{
if (hso_dev->usb->state == USB_STATE_SUSPENDED) {
if (!hso_dev->is_active) {
hso_dev->is_active = 1;
schedule_work(&hso_dev->async_get_intf);
}
}
if (hso_dev->usb->state != USB_STATE_CONFIGURED)
return -EAGAIN;
here's the window.
usb_mark_last_busy(hso_dev->usb);
return 0;
}
CPU A CPU B
run until the window
autosuspend of device
submitting URB to suspended device
You get an unnecessary error.
Regards
Oliver
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists