[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Copy big file from usb disk will hang under Linux when usin

From: Steven Hu
Subject: [Qemu-devel] Copy big file from usb disk will hang under Linux when using OHCI in QEMU to do full-virtualization
Date: Tue, 14 Aug 2007 15:21:52 +0800

Hello, all
I found that when use ohci to replace uhci in qemu, it will improve
the performance of USB storage device. The way to do this is making
little change in the file xen-3.1.0-src/tools/ioemu/hw/pc.c . You can
find the patch the in the end of this email.
I have tested it that under Windows XP SP2 and Vista, it can improve
the USB storage performance dramatically.

But when I do  the test under Linux(Fedora Core 5), copy a small file
is OK. But when I copy a big file about 80M, It stopped at about 35M.
It can also succeed to copy sometime.
The kernel message is in the attache file.( I rebuild the kernel and
open the debug option of USB). The kernel version is 2.6.15.
I also found that for newer version Linux, such as Fedorac Core 6 and
Redhat Enterprise 5, it can't recognize the usb disk. There is no USB
event in the kernel message. Ther kernel version is 2.6.18.  Is there
any big changes in the kernel to ohci usb part after kernel 2.6.16?
I am trying to find the root casue of this problem. Does anyone can
give me some hints about the problem? Thanks.


--- pc.c.original       2007-08-14 14:04:33.000000000 +0800
+++ pc.c        2007-08-08 08:57:33.000000000 +0800
@@ -897,7 +897,9 @@
         pci_piix4_acpi_init(pci_bus, piix3_devfn + 2);

     if (pci_enabled && usb_enabled) {
-        usb_uhci_init(pci_bus, piix3_devfn + (acpi_enabled ? 3 : 2));
+        //usb_uhci_init(pci_bus, piix3_devfn + (acpi_enabled ? 3 : 2));
+               //usb_ohci_init(pci_bus, 3, -1);
+        usb_ohci_init(pci_bus, 3,piix3_devfn + (acpi_enabled ? 3 : 2));

  #ifndef CONFIG_DM

Attachment: ohci-kernel.log
Description: Binary data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]