Keith Owens wrote:

> 
> Sections marked __exit get discarded when the code is linked into the
> kernel, they are kept when the code is a module.  But the spin lock
> code is kept (in another section) and relocation from .text.lock back
> to .text.exit fails.  Possible fixes:
> 
> Use RTC as a module.
> Remove __exit from rtc_exit.
> Compile rtc_exit conditional on not being a module.
> Remove the spin locks.

... or 

5) Delete paranoia check altogether.

Thanks,
Paul.


--- drivers/char/rtc.c~ Sun Jul 23 03:39:15 2000
+++ drivers/char/rtc.c  Tue Sep 19 11:08:47 2000
@@ -723,17 +723,6 @@
 
 static void __exit rtc_exit (void)
 {
-       /* interrupts and maybe timer disabled at this point by rtc_release */
-       /* FIXME: Maybe??? */
-
-       if (rtc_status & RTC_TIMER_ON) {
-               spin_lock_irq (&rtc_lock);
-               rtc_status &= ~RTC_TIMER_ON;
-               del_timer(&rtc_irq_timer);
-               spin_unlock_irq (&rtc_lock);
-
-               printk(KERN_WARNING "rtc_exit(), and timer still running.\n");
-       }
 
        remove_proc_entry ("driver/rtc", NULL);
        misc_deregister(&rtc_dev);





__________________________________________________
Do You Yahoo!?
Talk to your friends online with Yahoo! Messenger.
http://im.yahoo.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to