Index: uspace/lib/usb/src/host/bandwidth.c
===================================================================
--- uspace/lib/usb/src/host/bandwidth.c	(revision 63dabb64cb1bfc0544d962fae8a18f957494705c)
+++ uspace/lib/usb/src/host/bandwidth.c	(revision 6bf9bc48813063ec7168cda4dda64163106e37cd)
@@ -221,5 +221,5 @@
 /*----------------------------------------------------------------------------*/
 int bandwidth_use(bandwidth_t *instance, usb_address_t address,
-    usb_endpoint_t endpoint, usb_direction_t direction)
+    usb_endpoint_t endpoint, usb_direction_t direction, size_t bw)
 {
 	assert(instance);
@@ -237,8 +237,12 @@
 		    hash_table_get_instance(item, transfer_status_t, link);
 		assert(status);
-		if (status->used) {
-			ret = EINPROGRESS;
+		if (status->required >= bw) {
+			if (status->used) {
+				ret = EINPROGRESS;
+			}
+			status->used = true;
+		} else {
+			ret = ENOSPC;
 		}
-		status->used = true;
 	} else {
 		ret = EINVAL;
