------------[ cut here ]------------
WARNING: at /home/jeremy/hg/xen/paravirt/linux/drivers/usb/host/uhci-q.c:1744 uhci_scan_schedule+0xb7/0x9a3()
uhci->skelqh[1]->node.next is NULL
Odd. Is skelqh[1] the only entry whose node.next is NULL? Not skelqh[2] or others?
The node is initialized during uhci_start() in uhci-hcd.c -- there's a
loop which initializes all the uhci->skelqh[i] entries by calling
uhci_alloc_qh(). You should check inside that loop to see whether
uhci->skelqh[i]->node.next is NULL to begin with. If it is then
something about the DMA-coherent memory is funny; if not then the
linked list pointer gets corrupted somewhere.