Ticket #1103 (new enhancement)
Qemu gadgetfs needs to use asynchronous IO
|Reported by:||balrogg@…||Owned by:||balrogg@…|
|Component:||qemu-neo1973||Version:||current svn head|
|Blocking:||Estimated Completion (week):|
Qemu currently uses blocking calls to talk to gadgetfs. Gadgetfs under linux is
poorly written and perhaps unused by anyone for a at least a couple of years
before we started using it in qemu, so it doesn't support any kind of polling.
As a result qemu sometimes blocks waiting for usbnet to respond on the host.
Another side effect is qemu relies on the blocking calls getting interrupted by
signals, which is ok when using "unix" clocksource but rules out "dynticks", so
currently I'm disabling dynticks every time usbgadget is used, it's a hack.
Before upstreaming gadgetfs needs to be rewritten to use AIO. Otherwise low