[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <46391716.9040001@redhat.com>
Date: Wed, 02 May 2007 18:56:22 -0400
From: Chuck Ebbert <cebbert@...hat.com>
To: Zachary Amsden <zach@...are.com>
CC: Marcos Pinto <markybob@...il.com>, Andi Kleen <ak@...e.de>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Alessandro Zummo <a.zummo@...ertech.it>
Subject: Re: Mysterious RTC hangs on x86_64 - fixed, sort of
Zachary Amsden wrote:
> With this patch, /sbin/hwclock no longer hangs my AMD64 machine when run
> after reaching multiuser. What I don't understand is why. I have the
> RTC based sound sequencer timer as a module, but not loaded, and the
> error message I added to indicate broken rtc control does not fire.
>
> So why is it that if I stop taking the rtc_task_lock and issuing the
> callbacks which should never be held or exist that my system no longer
> hard freezes?
>
> --- /tmp/a 2007-05-03 15:36:07.451256181 -0700
> +++ drivers/char/rtc.c 2007-05-03 15:27:49.000000000 -0700
> @@ -265,10 +265,10 @@
> spin_unlock (&rtc_lock);
>
> /* Now do the rest of the actions */
> - spin_lock(&rtc_task_lock);
> - if (rtc_callback)
> - rtc_callback->func(rtc_callback->private_data);
> - spin_unlock(&rtc_task_lock);
> +/* spin_lock(&rtc_task_lock); */
> +// if (rtc_callback)
> +// rtc_callback->func(rtc_callback->private_data);
> +/* spin_unlock(&rtc_task_lock); */
> wake_up_interruptible(&rtc_wait);
Try leaving the spinlocks and just disabling the callbacks. And maybe
enable spinlock debugging...
>
> CONFIG_HPET_EMULATE_RTC=y
Did you try without that?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists