On Thu, Feb 23, 2006 at 10:13:50PM +0000, Martin Michlmayr wrote:
> * Martin Michlmayr <tbm@cyrius.com> [2006-02-17 22:58]:
> > When you try to shutdown or reboot an IP22 with 2.6.15 or 2.6.16-rc2,
> > you see that the TERM signal is sent but then nothing happens. At the
> > beginning, the light on the Indy is green but after about 20 seconds
> > it turns red. Nothing happens on the console and the machine doesn't
> > turn off. Seen on Indy and Indigo2.
> [and, as mentioned later, this only happens on serial, not when using
> the bf]
>
> I've tracked down now while the old 2.6.12 Debian package shut down
> correctly while no recent git does. The following simple change to
> the serial driver makes the difference for me:
>
> --- a/drivers/serial/serial_core.c~ 2006-02-23 21:58:51.000000000 +0000
> +++ b/drivers/serial/serial_core.c 2006-02-23 21:59:14.000000000 +0000
> @@ -108,7 +108,8 @@
> static void uart_tasklet_action(unsigned long data)
> {
> struct uart_state *state = (struct uart_state *)data;
> - tty_wakeup(state->info->tty);
> + if (state->info->tty)
> + tty_wakeup(state->info->tty);
> }
>
> static inline void
>
> I cannot easily check why this change was in Debian's 2.6.12 package
> nor why it's not in Linus' git. Russell, can you say whether this
> change looks obviously good to you? If not, I can dig some more and
> see why this change was in our 2.6.12 package.
This patch was dropped when a real fix went into one of the sun serial
drivers with which this issue was seen before. Please look through
the drivers/serial/sun* changelogs and see what fix needs to be
ported to the ip22zilog driver.
|