Re: PROBLEM: 2.6.13 crash on sparc64 in sunsu_kbd_ms_interrupt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: "David S. Miller" <[email protected]>
Date: Mon, 03 Oct 2005 16:50:46 -0700 (PDT)

> Please turn off CONFIG_PREEMPT on sparc64, it really doesn't
> get very much testing on this platform.

Nevermind, there is a real bug there in the sunsu driver.
We drop/retake the lock when it's not actually held.

The preempt debugging was good at catching this. :-)

Please try this fix, thanks.

diff-tree 62ba86fc7c72edc77a67e04b6fb593db5046cc92 (from baaf9033270c9cb10c1441195bc1a0a7665bee7e)
Author: David S. Miller <[email protected]>
Date:   Mon Oct 3 16:55:10 2005 -0700

    [SUNSU]: Fix bogus locking in sunsu_change_mouse_baud()
    
    The lock is not held when calling this function, so we
    shouldn't drop then reacquire it.
    
    Based upon a report from Jim MacBaine.
    
    Signed-off-by: David S. Miller <[email protected]>

diff --git a/drivers/serial/sunsu.c b/drivers/serial/sunsu.c
--- a/drivers/serial/sunsu.c
+++ b/drivers/serial/sunsu.c
@@ -518,11 +518,7 @@ static void sunsu_change_mouse_baud(stru
 
 	quot = up->port.uartclk / (16 * new_baud);
 
-	spin_unlock(&up->port.lock);
-
 	sunsu_change_speed(&up->port, up->cflag, 0, quot);
-
-	spin_lock(&up->port.lock);
 }
 
 static void receive_kbd_ms_chars(struct uart_sunsu_port *up, struct pt_regs *regs, int is_break)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux