--- linux-2.6.0/drivers/usb/core/devio.c	2003-12-18 21:32:47.000000000 +0100
+++ linux-2.6.0/drivers/usb/core/devio-new.c	2003-12-18 21:33:51.000000000 +0100
@@ -834,6 +834,9 @@
 		break;
 
 	case USBDEVFS_URB_TYPE_ISO:
+		if (!(ep_desc = usb_epnum_to_ep_desc(ps->dev, uurb.endpoint)))
+			return -ENOENT;
+		interval = ep_desc->bInterval;
 		/* arbitrary limit */
 		if (uurb.number_of_packets < 1 || uurb.number_of_packets > 128)
 			return -EINVAL;
