From mboxrd@z Thu Jan 1 00:00:00 1970 From: Danny Milosavljevic Subject: bug#30505: marionette/virtio-console issues lead to test failures Date: Mon, 19 Feb 2018 23:35:53 +0100 Message-ID: <20180219233553.31aeef1a@scratchpost.org> References: <87vaevi2sk.fsf@gnu.org> <20180218114833.7d5e7848@scratchpost.org> <87r2phezzv.fsf@gnu.org> <20180219180849.3a509e80@scratchpost.org> <87d110g1l2.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46912) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1enu3V-0005jL-P7 for bug-guix@gnu.org; Mon, 19 Feb 2018 17:37:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1enu3S-0003D8-JP for bug-guix@gnu.org; Mon, 19 Feb 2018 17:37:05 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:43881) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1enu3S-0003Cv-GD for bug-guix@gnu.org; Mon, 19 Feb 2018 17:37:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1enu3S-0006Wl-9G for bug-guix@gnu.org; Mon, 19 Feb 2018 17:37:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87d110g1l2.fsf@gnu.org> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 30505@debbugs.gnu.org Hi Ludo, On Mon, 19 Feb 2018 21:35:05 +0100 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > > It was a bad idea to do the "\x1b%G" in the first place. =20 >=20 > Because it=E2=80=99s redundant with IUTF8? I meant because the Linux kernel does it already and it's better not to have random multi-byte racy writes onto the tty while the mingetty is starting up (and possibly buffering and pending half of another sequence= ). As far as I understand it's not redundant to do both. According to src/Linux/linux-4.12-rc2/drivers/tty/vt/vt.c, the 'G' controls the conversion utf-8->unicode that happens before the virtual terminal displays a corresponding character on the screen. On the other hand, the termios iutf8 is meant for the program running in th= e session. Say you have bash on vt1, then bash can check termios for the settings and = find out whether vt1 is UTF-8-capable (also has other settings like whether the terminal already supports line editing etc - old-school terminals were quite cool; a friend of mine salvaged a real one ^^). Note that drivers/tty/vt/vt.c only copies ONE way, from the 'G' flag to the termios (and that seldomly). Makes sense since the programs shouldn't have a say in what the terminal ca= n do :) So I'd say guix services fiddling with termios is ... weird and the 'G' sli= ghtly less weird. > This =E2=80=98unicode-start=E2=80=99 procedure is essentially a port of t= he > =E2=80=98unicode_start=E2=80=99 script from =E2=80=98kbd=E2=80=99. I sup= pose the justification is to > make sure we=E2=80=99re using UTF-8 input regardless of what the kernel d= efaults > or command-line options are. Yeah, but it's asking for trouble. I just checked Linux 2.6.32.1, it defaults to utf8 (IUTF8 in termios, and '= G'). I'd suggest to remove both.