lkml.org 
[lkml]   [2003]   [May]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: 2.5.69 Interrupt Latency
    On Mon, 12 May 2003, Greg KH wrote:

    > > > This should only happen when your hardware receives a "RESUME" signal
    > > > from a USB device AND the host controller is in a global suspend state
    > > > at that time.
    > > >
    > > > Now I think the wait_ms() call is valid for when this is really
    > > > happening, but it sounds like you are having this happen all the time
    > > > during normal operation.
    > >
    > > It does appear to happen on a regular basis.
    > >
    > > Should the 20ms delay be in the ISR though?
    > > I thought it was standard practice to move such
    > > lengthy operations outside of the ISR so as not to
    > > impact interrupt latency for the system.
    >
    > This should only happen when the hardware is suspended, and we are being
    > woken up by a device. So this should be a _very_ rare occurance, and
    > when it does happen, the latency isn't that big of a deal (we need it to
    > wake up the hardware properly.)

    Putting in a sanity check for the global suspend state will be very easy.
    But I would like to point out that this "global suspend" does not refer to
    the entire system, only the USB bus. I'm not sure under what
    circumstances the bus is placed in global suspend; I think it's just when
    there are no devices attached (or the last remaining device is detached).

    However, there have been cases on my own system where turning off the only
    USB peripheral caused the driver to bounce between suspend_hc() and
    wakeup_hc() several times without any apparent explanation -- possibly as
    a result of transient electrical signals on the bus (?). So perhaps
    moving that delay out of the ISR isn't such a bad idea.

    Alan Stern

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:35    [W:6.172 / U:0.056 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site