public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Dmitry Torokhov <dtor_core@ameritech.net>
To: William Lee Irwin III <wli@holomorphy.com>
Cc: linux-kernel@vger.kernel.org, Andrew Morton <akpm@osdl.org>
Subject: Re: 2.6.7-mm6
Date: Wed, 7 Jul 2004 00:15:37 -0500	[thread overview]
Message-ID: <200407070015.39507.dtor_core@ameritech.net> (raw)
In-Reply-To: <20040706231256.GV21066@holomorphy.com>

On Tuesday 06 July 2004 06:12 pm, William Lee Irwin III wrote:
> On Tuesday 06 July 2004 07:54 am, William Lee Irwin III wrote:
> >> Uneventful on alpha, needed a make rpm compilefix Andi's got queued for
> >> the next merge on x86-64 and otherwise uneventful there.
> >> OTOH, various things made sparc64 a living Hell that took about 9
> >> hours of solid compile/boot/crash drudgery to carry out bisection
> >> search on to find the offending patches.
> >> First, I had to back out bk-input because it has a sysfsification patch
> >> that deadlocks sunzilog.c at boot.
> 
> On Tue, Jul 06, 2004 at 12:51:16PM -0500, Dmitry Torokhov wrote:
> > Ok, I think I know what the problem is - it should be an oops rather than a
> > deadlock though - serial drivers are initialized before serio core when serio
> > bus structure is not registered with driver core yet. Could you please try
> > the patch below - I do not have hardware to test it:
> 
> Unfortunately this didn't repair it. Bootlog attached. The failure to
> respond to "send brk" indicates deadlock with interrupts disabled.
> 

The only suspicious thing that I see is that sunzilog tries to register its
serio ports with spinlock held and interrupts off. I wonder if that is what
causing a deadlock. Could you please try applying this patch on top of the
changes to the drivers/Makefile that I sent earlier.

-- 
Dmitry


===== drivers/serial/sunzilog.c 1.44 vs edited =====
--- 1.44/drivers/serial/sunzilog.c	2004-06-28 22:45:23 -05:00
+++ edited/drivers/serial/sunzilog.c	2004-07-06 23:46:54 -05:00
@@ -1529,7 +1529,6 @@
 static void __init sunzilog_init_kbdms(struct uart_sunzilog_port *up, int channel)
 {
 	int baud, brg;
-	struct serio *serio;
 
 	if (channel == KEYBOARD_LINE) {
 		up->flags |= SUNZILOG_FLAG_CONS_KEYB;
@@ -1546,8 +1545,15 @@
 	up->curregs[R15] = BRKIE;
 	brg = BPS_TO_BRG(baud, ZS_CLOCK / ZS_CLOCK_DIVISOR);
 	sunzilog_convert_to_zs(up, up->cflag, 0, brg);
+	sunzilog_set_mctrl(&up->port, TIOCM_DTR | TIOCM_RTS);
+	__sunzilog_startup(up);
+}
 
 #ifdef CONFIG_SERIO
+static void __init sunzilog_register_serio(struct uart_sunzilog_port *up, int channel)
+{
+	struct serio *serio;
+
 	up->serio = serio = kmalloc(sizeof(struct serio), GFP_KERNEL);
 	if (serio) {
 
@@ -1576,11 +1582,8 @@
 		printk(KERN_WARNING "zs%d: not enough memory for serio port\n",
 			channel);
 	}
-#endif
-
-	sunzilog_set_mctrl(&up->port, TIOCM_DTR | TIOCM_RTS);
-	__sunzilog_startup(up);
 }
+#endif
 
 static void __init sunzilog_init_hw(void)
 {
@@ -1624,6 +1627,11 @@
 		}
 
 		spin_unlock_irqrestore(&up->port.lock, flags);
+
+#ifdef CONFIG_SERIO
+		if (i == KEYBOARD_LINE || i == MOUSE_LINE)
+			sunzilog_register_serio(up, i);
+#endif
 	}
 }
 

  parent reply	other threads:[~2004-07-07  5:15 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-07-05  9:31 2.6.7-mm6 Andrew Morton
2004-07-05 10:18 ` 2.6.7-mm6 Christoph Hellwig
2004-07-05 10:44   ` 2.6.7-mm6 Christoph Hellwig
2004-07-05 10:32 ` 2.6.7-mm6 Redeeman
2004-07-05 13:54   ` 2.6.7-mm6 Frieder Buerzele
2004-07-05 14:41     ` 2.6.7-mm6 Redeeman
2004-07-05 10:39 ` 2.6.7-mm6 Martin Zwickel
2004-07-05 19:04 ` 2.6.7-mm6 Jurgen Kramer
2004-07-05 20:38 ` 2.6.7-mm6 - ppc32 inconsistent kallsyms data Joseph Fannin
2004-07-05 20:54   ` Andrew Morton
2004-07-06  2:06   ` Keith Owens
2004-07-06  7:31     ` Keith Owens
2004-07-06  7:43       ` Keith Owens
2004-07-06 20:54         ` Joseph Fannin
2004-07-06  9:09       ` Rusty Russell
2004-07-06 12:28         ` Keith Owens
2004-07-05 22:52 ` 2.6.7-mm6: ALSA: vortex_asXtalkGainsAllChan multiple definitions Adrian Bunk
2004-07-05 22:56 ` [patch] 2.6.7-mm6: let CDROM_PKTCDVD depend on experimental Adrian Bunk
2004-07-06  6:49 ` USB Lockups with 2.6.7-mm6, was Re: 2.6.7-mm6 Ralf Hildebrandt
2004-07-06 12:54 ` 2.6.7-mm6 William Lee Irwin III
2004-07-06 17:51   ` 2.6.7-mm6 Dmitry Torokhov
2004-07-06 18:55     ` 2.6.7-mm6 Jan-Benedict Glaw
2004-07-06 23:12     ` 2.6.7-mm6 William Lee Irwin III
2004-07-06 23:55       ` 2.6.7-mm6 William Lee Irwin III
2004-07-07  5:15       ` Dmitry Torokhov [this message]
2004-07-07  6:37         ` 2.6.7-mm6 William Lee Irwin III
2004-07-07 12:47           ` 2.6.7-mm6 Dmitry Torokhov
2004-07-07 12:55             ` 2.6.7-mm6 William Lee Irwin III
2004-07-07 16:31         ` 2.6.7-mm6 Vojtech Pavlik
2004-07-07 17:15           ` 2.6.7-mm6 Dmitry Torokhov
2004-07-07 19:05             ` 2.6.7-mm6 Vojtech Pavlik
2004-07-06 22:34   ` 2.6.7-mm6 Andrew Morton
2004-07-06 22:45     ` 2.6.7-mm6 David S. Miller
2004-07-06 22:52       ` 2.6.7-mm6 William Lee Irwin III
2004-07-06 23:07         ` 2.6.7-mm6 Russell King
2004-07-06 23:36   ` 2.6.7-mm6 William Lee Irwin III
2004-07-07  0:02     ` 2.6.7-mm6 David S. Miller
2004-07-07  2:29       ` 2.6.7-mm6 Nick Piggin
2004-07-07  7:35       ` 2.6.7-mm6 Ingo Molnar
2004-07-07 21:02         ` 2.6.7-mm6 David S. Miller
2004-07-09  2:45           ` 2.6.7-mm6 Nick Piggin
2004-07-09  2:51             ` 2.6.7-mm6 William Lee Irwin III
2004-07-09  5:09               ` 2.6.7-mm6 Nick Piggin
2004-07-09  6:29                 ` 2.6.7-mm6 Ingo Molnar
2004-07-09  6:58                 ` 2.6.7-mm6 William Lee Irwin III
2004-07-09  7:07                   ` 2.6.7-mm6 Nick Piggin
2004-07-09  7:16                     ` 2.6.7-mm6 William Lee Irwin III
2004-07-06 14:49 ` 2.6.7-mm6 - USB problems Jesse Stockall
2004-07-07 16:44 ` 2.6.7-mm6 Jesse Barnes
  -- strict thread matches above, loose matches on Subject: below --
2004-07-05 14:41 2.6.7-mm6 Martin Knoblauch
2004-07-06 13:42 2.6.7-mm6 Dmitry Torokhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200407070015.39507.dtor_core@ameritech.net \
    --to=dtor_core@ameritech.net \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=wli@holomorphy.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox