Module Name: src Committed By: pooka Date: Thu Feb 18 15:25:13 UTC 2010
Modified Files: src/sys/rump/dev/lib/libugenhc: ugenhc.c Log Message: Change match to be based on the existence of the ugen device node and signal the root hub interrupt only once we are succesfully able to open the device node. This makes it possible to insert a device after the rump kernel was booted and have it succesfully attach (does not make detach possible yet, though, as there are some ugen and host kernel uhci/ohci/ehci evil crashies with that). XXX: optimally, match would fail if there is a permanent error in opening. However, it is difficult to figure out the difference between the device backing ugen not being present, a transient error in opening and a permanent error in opening. For example, which of the latter two would EPERM be? And, ugen returns ENXIO if the device is not present, but how would be know that's really the case and not some other ENXIO from elsewhere in the stack? To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/rump/dev/lib/libugenhc/ugenhc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.