I'm struggling to understand the ins and outs of the usb ohci driver (usbohci.c) and have a question (well, several).
If one writes to an endpoint, then "epio" gets called. This in turn does ilock(ctrl) which disables interrupts on my single-processor machine. Then "epgettd" is called several times to allocate transfer descriptors. Each call to epgettd copies a portion from the user space buffer which was passed as a parameter to "epio". What happens here if the user space buffer is in a page which is not present? Is it possible for a page-in to happen even when interrupts are disabled by the ilock? Thanks for any insight. rod