lkml.org 
[lkml]   [2008]   [Mar]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: WARNING: at drivers/usb/host/ehci-hcd.c:287
    On Tue, 4 Mar 2008, Alan Stern wrote:
    > How about replacing the
    >
    > WARN_ON(!ehci->reclaim);
    >
    > line in ehci_iaa_watchdog() with
    >
    > if (unlikely(!ehci->reclaim ||
    > !HC_IS_RUNNING(ehci_to_hcd(ehci)->state) ||
    > timer_pending(&ehci->iaa_watchdog))
    > goto done;
    >
    > where "done:" is added just before the spin_unlock_irqrestore?

    I'm not sure, but do you mean:

    --- linux-2.6/drivers/usb/host/ehci-hcd.c 2008-02-24 22:25:54.000000000 +0100
    +++ linux-2.6/drivers/usb/host/ehci-hcd.c.edited 2008-03-04 19:46:13.000000000 +0100
    @@ -284,7 +284,10 @@ static void ehci_iaa_watchdog(unsigned l
    u32 status, cmd;

    spin_lock_irqsave (&ehci->lock, flags);
    - WARN_ON(!ehci->reclaim);
    + if (unlikely(!ehci->reclaim ||
    + !HC_IS_RUNNING(ehci_to_hcd(ehci)->state) ||
    + timer_pending(&ehci->iaa_watchdog))
    + goto done;

    status = ehci_readl(ehci, &ehci->regs->status);
    cmd = ehci_readl(ehci, &ehci->regs->command);

    Thanks,
    Christian.
    --
    BOFH excuse #189:

    SCSI's too wide.


    \
     
     \ /
      Last update: 2008-03-04 19:57    [W:2.700 / U:0.116 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site