unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de>
Cc: Mathieu Othacehe <othacehe@gnu.org>,
	39341-done@debbugs.gnu.org,
	Maxim Cournoyer <maxim.cournoyer@gmail.com>
Subject: bug#39341: Installer using 100% of a CPU core
Date: Tue, 27 Apr 2021 23:26:41 +0200	[thread overview]
Message-ID: <8735vbwh9q.fsf@gnu.org> (raw)
In-Reply-To: <20210427123209.jyqw77edsbt5qhdj@pelzflorian.localdomain> (pelzflorian@pelzflorian.de's message of "Tue, 27 Apr 2021 14:32:09 +0200")

Hi,

"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:

> On Tue, Apr 27, 2021 at 12:38:23PM +0200, Ludovic Courtès wrote:
>> What do you mean by “fails on real hardware”?  That the keyboard layout
>> is unchanged?
>
> Yes.
>
>
>> Is there anything in /var/log/messages
>
> No, nothing out of the ordinary, only the installer pages I went
> through.
>
>> or wherever kmscon
>> writes its logs?
>
> I try with
>
> diff --git a/gnu/services/base.scm b/gnu/services/base.scm
> index 24b3ea785b..0eff24828c 100644
> --- a/gnu/services/base.scm
> +++ b/gnu/services/base.scm
> @@ -2330,6 +2330,7 @@ This service is not part of @var{%base-services}."
>  
>         (define kmscon-command
>           #~(list
> +            #$(file-append strace "/bin/strace") "-o" "/var/log/kmscon-out" "-f"
>              #$(file-append kmscon "/bin/kmscon") "--login"
>              "--vt" #$virtual-terminal
>              "--no-switchvt" ;Prevent a switch to the virtual terminal.

I tried this in ‘guix system vm gnu/system/install.scm’.  I proceed like
so:

  1. after the installer’s welcome screen I choose French layout;
  2. the next dialog is the host name, which is where I confirm I really
     got French layout;
  3. from there I press F1, choose German layout, confirm by typing into
     the host name dialog that I got German layout;
  4. I repeat step #3 with a variety of layouts.

Changing layouts there just works and is instantaneous.  (Note that this
only changes the layout of kmscon, so tty3 & co. are unaffected.)

The strace log shows this when changing layouts (FD 17 corresponds to
/tmp/kmscon-165-keymap-update, the FIFO node):

--8<---------------cut here---------------start------------->8---
165   epoll_wait(3, [{EPOLLIN, {u32=17731792, u64=17731792}}, {EPOLLIN|EPOLLHUP, {u32=18285248, u64=18285248}}, {EPOLLIN, {u32=17639536, u64=17639536}}], 32, -1) = 3
165   epoll_wait(12, [{EPOLLIN, {u32=17678528, u64=17678528}}], 32, 0) = 1
165   read(20, "\33[5;22H\33[44m\33[K\33[6;22H\33[K\33[7;22H"..., 16384) = 1657
165   read(20, 0x10f6c28, 16384)        = -1 EAGAIN (Resource temporarily unavailable)
165   read(17, "p", 1)                  = 1
165   read(17, "c", 1)                  = 1
165   read(17, "1", 1)                  = 1
165   read(17, "0", 1)                  = 1
165   read(17, "5", 1)                  = 1
165   read(17, "\0", 1)                 = 1
165   read(17, "f", 1)                  = 1
165   read(17, "r", 1)                  = 1
165   read(17, "\0", 1)                 = 1
165   read(17, "\0", 1)                 = 1
165   read(17, "\0", 1)                 = 1
165   read(17, "", 1)                   = 0
165   stat("/gnu/store/m734r6j7g74x9k74sgjb8835pg7dnqbk-libxkbcommon-1.0.3/etc/xkb", 0x7fff179314b0) = -1 ENOENT (No such file or directory)
165   stat("/gnu/store/qz3zdrz12rxawlkvah9qjhjyf6fh1v98-xkeyboard-config-2.31/share/X11/xkb", {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0

[...]

165   openat(AT_FDCWD, "/gnu/store/qz3zdrz12rxawlkvah9qjhjyf6fh1v98-xkeyboard-config-2.31/share/X11/xkb/symbols/inet", O_RDONLY) = 22
165   fstat(22, {st_mode=S_IFREG|0444, st_size=64040, ...}) = 0
165   mmap(NULL, 64040, PROT_READ, MAP_SHARED, 22, 0) = 0x7f50d23b5000
165   brk(0x12bb000)                    = 0x12bb000
165   munmap(0x7f50d23b5000, 64040)     = 0
165   close(22)                         = 0
165   epoll_ctl(3, EPOLL_CTL_DEL, 17, NULL) = 0
165   close(17)                         = 0
165   getpid()                          = 165
165   unlink("/tmp/kmscon-165-keymap-update") = 0
165   mknod("/tmp/kmscon-165-keymap-update", S_IFIFO|0700) = 0
165   openat(AT_FDCWD, "/tmp/kmscon-165-keymap-update", O_RDONLY|O_NONBLOCK) = 17
165   epoll_ctl(3, EPOLL_CTL_ADD, 17, {EPOLLIN, {u32=19410896, u64=19410896}}) = 0
--8<---------------cut here---------------end--------------->8---

The last lines show that we delete the FIFO from the poll set, close the
FIFO, recreate it, and re-add it to the poll set.

So for me it works exactly as intended.

Do you have a scenario I could follow to try to reproduce the problem?

Thanks,
Ludo’.




  parent reply	other threads:[~2021-04-27 21:28 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-29  5:19 bug#39341: Installer using 100% of a CPU core Maxim Cournoyer
2021-04-25 21:41 ` Ludovic Courtès
2021-04-26 14:32   ` pelzflorian (Florian Pelz)
2021-04-26 16:07     ` Ludovic Courtès
2021-04-26 16:14       ` pelzflorian (Florian Pelz)
2021-04-27 10:38         ` Ludovic Courtès
2021-04-27 12:32           ` pelzflorian (Florian Pelz)
2021-04-27 17:43             ` Bengt Richter
2021-04-27 19:58               ` pelzflorian (Florian Pelz)
2021-04-27 21:26             ` Ludovic Courtès [this message]
2021-04-28  7:02               ` pelzflorian (Florian Pelz)
2021-04-28  7:06                 ` pelzflorian (Florian Pelz)
2021-04-28 13:43                 ` Ludovic Courtès
2021-04-28 15:20                   ` pelzflorian (Florian Pelz)
2021-04-29  9:33                   ` Mathieu Othacehe
2021-04-29  9:59                     ` Ludovic Courtès
2021-04-29 10:13                       ` Mathieu Othacehe
2021-04-29 10:47                     ` pelzflorian (Florian Pelz)
2021-04-28 15:22                 ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8735vbwh9q.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=39341-done@debbugs.gnu.org \
    --cc=maxim.cournoyer@gmail.com \
    --cc=othacehe@gnu.org \
    --cc=pelzflorian@pelzflorian.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).