|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xenconsole: Allow non-interactive use
On Thu, Jul 23, 2015 at 09:48:50AM +0100, Ian Campbell wrote:
> On Wed, 2015-07-22 at 19:08 +0200, Martin Lucina wrote:
> > If xenconsole is run with stdin closed or redirected to /dev/null,
> > console_loop() will return immediately due to failure to read from
> > STDIN_FILENO. This patch tests if stdin and stdout are both connected
> > to
> > a TTY and, if not, xenconsole will not attempt to read from stdin or
> > modify stdout terminal attributes.
> >
> > Existing behaviour when xenconsole is run from a terminal does not
> > change.
> >
> > This allows for non-interactive use, eg. running "xl create -c" under
> > systemd or piping the output of "xl console" to another command.
> >
> > Signed-off-by: Martin Lucina <martin@xxxxxxxxxx>
> > Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> > Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> > Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
> > Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
>
> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
>
> WRT the 4.6 freeze I'm torn between calling this a feature or a bugfix.
>
I'm inclined to say it's a bugfix. It is reasonable that users want to
pipe console output to logging daemon.
Wei.
> A pair of nits, which probably aren't worth acting on:
>
> > @@ -176,8 +177,13 @@ static int console_loop(int fd, struct xs_handle
> > *xs, char *pty_path)
> > fd_set fds;
> >
> > FD_ZERO(&fds);
> > - FD_SET(STDIN_FILENO, &fds);
> > - max_fd = STDIN_FILENO;
> > + if (interactive) {
> > + FD_SET(STDIN_FILENO, &fds);
> > + max_fd = STDIN_FILENO;
> > + }
> > + else {
> > + max_fd = -1;
> > + }
>
> Looking at the rest of the file and tools/console subtree it seems the
> prevailing coding style is:
>
> } else
> max_fd = -1;
>
> (i.e. } brace on the same line as the else and no {} for single
> statements after an else).
>
> But maybe it would be better to set max_fd = -1 on declaration and do
> the max dance here as with the following cases?
>
> Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |