Dave,

I've added a return in the ehci-hcd.c:

static void ehci_stop (struct usb_hcd *hcd)
{
        struct ehci_hcd         *ehci = hcd_to_ehci (hcd);

printk("ehci_stop\n");

        /* no more interrupts ... */
        if (hcd->state == USB_STATE_RUNNING)
                ehci_ready (ehci);
        if (in_interrupt ()) {          /* must not happen!! */
                ehci_err (ehci, "stopped in_interrupt!\n");
                return;
        }
        del_timer_sync (&ehci->watchdog);
        ehci_reset (ehci);

        //what you suggested
        //works better. Get ksymoops later during shutdown/reboot.
        //sorry. But no log in kernel.log. Cannot force with MagicKey

//return;

        /* let companion controllers work when we aren't */
        writel (0, &ehci->regs->configured_flag);
        unregister_reboot_notifier (&ehci->reboot_notifier);

        // shuts down without any ksymoops. Shuts down cleanly. /B
        return;
        // *******************************************************

remove_debug_files (ehci);

        /* root hub is shut down separately (first, when possible) */
        spin_lock_irq (&ehci->lock);
        ehci_work (ehci, NULL);
        spin_unlock_irq (&ehci->lock);
        ehci_mem_cleanup (ehci);

The return prevens any ksymoops. Shutdown is possible.

/Bernd


David Brownell wrote:
Bernd Porr wrote:

I've added some debug info into the ehci code:

When I shut down the kernel I get following function calls:

ehci_stop
ehci_work
timer_action_done
scan_async
scan_periodic


I can't quite make sense of what you're saying.
After ehci_stop() returns, ehci_work() should never
again be called.

What do the driver's normal diagnostics say?
(That is, CONFIG_USB_DEBUG.)

If you modify ehci_stop() to del_timer_sync()
only after ehci_reset() is called, does that make
things better?

[ Note I've updated the Subject: to stop implying this
is related to the recent patch, since you also said
it happened without that patch ... ]

- Dave



------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to