Re: Low umass performance with USB 2.0 ports

From: Scott Long (scottl_at_samsco.org)
Date: 08/31/05

  • Next message: Hans Petter Selasky: "Re: Low umass performance with USB 2.0 ports"
    Date: Wed, 31 Aug 2005 13:47:15 -0600
    To: Ian Dowse <iedowse@iedowse.com>
    
    
    

    Scott Long wrote:
    > Ian Dowse wrote:
    >
    >> In message <20050830125031.GA775@rea.mbslab.kiae.ru>, "Eygene A.
    >> Ryabinkin" wri
    >> tes:
    >>
    >>>> What is filesystem has your USB drive?
    >>>
    >>>
    >>> The one I was extensively testing has FAT, but I've checked the UFS2 --
    >>> just a bit better -- 1.8 Mb/second. But you're right -- no wdrains at
    >>> all.
    >>>
    >>>> FreeBSD 4.x had very low performance with FAT filesystem,
    >>>> writing process spent lots of time in the wdrain state too.
    >>>
    >>>
    >>> Yes, it has. But here the same flash drive gives different results for
    >>> ehci and uhci devices, and the total speed of echi is lower due to
    >>> wdrains:
    >>> 300 Kb/sec versus 500 Kb/sec. And I sometimes write my data to the
    >>> Windows
    >>> partition with FAT to my home HDD -- it has no wdrains. At least,
    >>> I've not
    >>> noticed them. For flash I can.
    >>
    >>
    >>
    >> The patch in from the email below may help with the wdrain state -
    >> can you see if it makes any difference?
    >
    >
    > Is the problem that the interrupt gets fired but not all of the status
    > information has made it's way back to host memory when the driver gets
    > there? Would it make a difference to instead read back the EHCI_USBSTS
    > register after writing to it in ehci_intr1? That way all transactions
    > down to the controller would be guaranteed to be flushed before you
    > continue on. I wonder if this is a remnant of the famous problems with
    > VIA chipsets doing bad things under medium-to-high PCI contention. I
    > don't see any obvious workarounds for this in the Linux EHCI code, so
    > I wonder if it's a case of them not encountering it, or doing something
    > different that avoids the problem.
    >
    > Scott

    Actually, I just peeked inside the Linux EHCI code and it does a dummy
    read immediately after writing to the status register:

             /* clear (just) interrupts */
             writel (status, &ehci->regs->status);
             readl (&ehci->regs->command); /* unblock posted write */

    I wonder if that's the whole trick here. Would someone be willing to
    try the attached patch instead of the one that Ian posted?

    Scott

    
    

    Index: ehci.c
    ===================================================================
    RCS file: /usr/ncvs/src/sys/dev/usb/ehci.c,v
    retrieving revision 1.36
    diff -u -r1.36 ehci.c
    --- ehci.c 29 May 2005 04:42:27 -0000 1.36
    +++ ehci.c 31 Aug 2005 19:44:14 -0000
    @@ -578,6 +578,7 @@
                     return (0);
     
             EOWRITE4(sc, EHCI_USBSTS, intrs); /* Acknowledge */
    + EOREAD4(sc, EHCI_USBCMD); /* Flush posted writes on PCI */
             sc->sc_bus.intr_context++;
             sc->sc_bus.no_intrs++;
             if (eintrs & EHCI_STS_IAA) {

    
    

    _______________________________________________
    freebsd-hackers@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
    To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"


  • Next message: Hans Petter Selasky: "Re: Low umass performance with USB 2.0 ports"

    Relevant Pages

    • Re: Writing courses
      ... Brian M. Scott wrote: ... no matter how old and cold it's gotten (I was ... I can see how my writing from when I was 12 isn't as good as my writing now, but I can still see what I liked about it (and there are a few passages even in my first Doc Smith Ripoff Clone Mary Sue Space Opera which I find kick ass. ...
      (rec.arts.sf.composition)
    • Re: What SF is written and read?
      ... In article, Brian M. Scott ... of mine and mentioned not finishing one of his books because what was ... writing something, I'm in control and I know where I'm going with it. ...
      (rec.arts.sf.composition)
    • Re: The Perils of EFP
      ... Brian M. Scott wrote: ... This is according to the stuff he's written about his own writing, ... stopped reading when the third series looked too much like the first ...
      (rec.arts.sf.composition)
    • Re: Revision vent
      ... Brian M. Scott wrote: ... unless the writing is grossly incompetent. ... Dan Goodman ...
      (rec.arts.sf.composition)
    • Re: Reading a keystroke in a Console app
      ... Scott ... > I'm writing a console application. ... Both Read and ReadLine wait for enter ...
      (microsoft.public.dotnet.languages.csharp)