lkml.org 
[lkml]   [2006]   [Jun]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Bisects that are neither good nor bad
On Tue, May 30, 2006 at 03:29:26PM +0000, Pavel Machek wrote:
> > > > I think I've seen the same problem on one of my (similar spec) laptops.
> > > > Serial console was useless. On resume, there's a short spew of garbage
> > > > (just like if the baud rate were misconfigured) over serial before it
> > > > locks up completely.
> > >
> > > <http://bugzilla.kernel.org/show_bug.cgi?id=4270> discusses a similar
> > > problem on a couple of machines. In my resume script (for a TP 600X),
> > > I have to restore the serial console with
> > >
> > > setserial -a /dev/ttyS0
> > >
> > > Until that magic executes, garbage characters (like modem noise)
> > > appear across the serial console.
> >
> > With the resume failure I'm seeing, we don't get back to userspace
> > to run anything like this. It goes bang long before that.
> >
> > The SATA fix Mark proposed also didn't improve the situation for me :-/
>
> If setserial -a is needed.. it means that someone really needs to fix
> suspend/resume support for serial... do it on working machine to
> enable debugging of broken ones...

I've explained why this occurs in bugzilla - but for the sake of
repeating repeating repeating myself at great length, let's repeat
it again here.

The serial layer does _not_ have access to the "current" termios
settings due to the layering by the tty subsystem. If the serial
port being used by serial console has been opened once by the user,
but is closed at the moment when a suspend/resume cycle occurs,
the serial layer and lower level drivers do not have access to the
baud rate.

Hence, it is impossible for the serial layer to do a proper resume
in this scenario. Either always suspend with the console port open
or never open the console port before suspend. Alternatively, we
need the tty layer to mature, so that there is some way for drivers
to get the termios structures for the console from the upper layer.
Or maybe we need the tty layer to be responsible for implementing
suspend/resume support for tty devices.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-06-03 11:14    [W:0.067 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site