Re: [PATCH] ktest: restore tty settings after closing console

From: Steven Rostedt
Date: Wed Jan 28 2015 - 22:32:57 EST


On Wed, 28 Jan 2015 08:59:23 -0600
Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:

> On Tue, Jan 27, 2015 at 05:01:29PM -0500, Steven Rostedt wrote:
> > On Tue, 27 Jan 2015 12:10:04 -0600
> > Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
> >
> > > When ktest runs the console program as a child process, the parent and
> > > child share the same tty for stdin and stderr. This is problematic when
> > > using a libvirt target. The "virsh console" program makes a lot of
> > > changes to the tty settings, making ktest's output hard to read
> > > (carriage returns don't work). After ktest exits, the terminal is
> > > unusable (CRs broken, stdin isn't echoed).
> > >
> > > I think the best way to fix this issue would be to create a
> > > pseudoterminal (pty pair) so the child process would have a dedicated
> > > tty, and then use pipes to connect the two ttys. I'm not sure if that's
> > > overkill, but it's far beyond my current Perl abilities.
> >
> > And beyond mine too. I tried to get that right a few times, and it
> > never worked out. Maybe someone with more oyster skilz can fix this.
>
> I decided to level up my oyster skilz. I came up with this (to be
> applied instead of the original patch). It's working well for me.

I already applied your other patch. If there's any other work, please
apply it on top. I in the process of testing other changes on top of
this too. I'll be pushing it soon to my for-next linux-ktest.git tree,
after I'm finished testing.


> Right now, stdin isn't hooked up, so the user can't mess with the
> console. Is stdin needed?

Actually, I do. I found it's nice to move things along when the console
shows grub or syslinux options, and I can hit enter and it continues.

It's not critical, but it's a freebee for me.

-- Steve

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/