Subject: bug#39671: Something appears to disable linux kernel modules from loading.

From: Joshua Branson <[email-masked]>
Date: Tue, 18 Feb 2020 18:11:26 -0500

Hello!

tl;dr

Something is causing linux 5.4.20 not to load kernel modules at boot.
Perhaps the culprit is the shepherd 0.7.0.

So I recently reconfigured guix on my ThinkPad T400.

#+BEGIN_SRC sh
$ guix describe
Generation 32	Feb 18 2020 16:53:46	(current)
  jmacs 1a401c8
    repository URL: https://notabug.org/jbranso/guix-packages.git
    branch: master
    commit: 1a401c81ed0617e2ca2fa37ec8caa9ca96032b7a
  guix 97c6670
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 97c6670ef79bbf5e82dece2e837ed73b6462da01
#+END_SRC

After I rebooted sway refused to start.  The sway error message said
#+BEGIN_SRC sh
$ sway

[backend/backend.c:339] Failed to open any DRM device.
[sway/server.c] Unable to create backend.
#+END_SRC

So sway is not starting.  I believe this is because my i915 intel
driver is not loaded.  I know this is the case, because the text on my
virtual console is LARGE.  $ sudo modprobe i915 loads the required
driver. And I can now log into sway.

However, my ethernet driver is not loaded.

#+BEGIN_SRC sh
$ lsmod | grep e1000e

#+END_SRC

#+BEGIN_SRC sh
$ sudo modprobe e1000e
#+END_SRC

Then I ran ifconfig, and indeed I now have an ethernet device.

#+BEGIN_SRC sh :results output :exports both
$ ifconfig
enp0s25   Link encap:Ethernet  HWaddr 00:1C:25:9A:37:BA
          inet addr:172.16.113.199  Bcast:172.16.115.255  Mask:255.255.252.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:505 errors:0 dropped:0 overruns:0 frame:0
          TX packets:570 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:143838  TX bytes:60886
          Interrupt:20 Memory:fc100000-fc120000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Bcast:0.0.0.0  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0  TX bytes:0

#+END_SRC

And I now have an internet connection.

#+BEGIN_SRC sh :results output :exports both
joshua@dobby ~/prog/org$ ping -c 3 gnu.org
PING gnu.org (209.51.188.148): 56 data bytes
64 bytes from 209.51.188.148: icmp_seq=0 ttl=56 time=35.610 ms
64 bytes from 209.51.188.148: icmp_seq=1 ttl=56 time=35.635 ms
64 bytes from 209.51.188.148: icmp_seq=2 ttl=56 time=35.501 ms
--- gnu.org ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 35.501/35.582/35.635/0.058 ms
#+END_SRC

But I do not have a working touchpad.  I guess my touchpad driver is
not loaded.  I'm not certain what driver my touchpad uses, so for now
I am doing with out.

I then went and asked for some tips on irc.  HappyEnt claimed the
problem for him was commit 205c1e0.

janneke was also having issues with kernel modules not being
automatically booted.  He said that this commit worked for him:
ef2b1d2c8b60776bf66573b0c810474e9e1a4abd. He then said that commit
d39885a8a9e0e03c2bf6277d475d384168bba642 also worked, which implied
the problem was not the linux version 5.4.20, but possibly the
shepherd.

I tried reconfiguring with commit
d39885a8a9e0e03c2bf6277d475d384168bba642, to see if that solved my issue.

#+BEGIN_SRC sh :results output :exports both
 guix time-machine --commit=d39885a8a9e0e03c2bf6277d475d384168bba642 -- system reconfigure
#+END_SRC

#+BEGIN_SRC sh
$ uname -r
5.4.20-gnu
#+END_SRC

janneke's commit did solve my issue.  After rebooting, sway starts, I
have internet, and my touchpad and sound work.

Man I love guix system.  It really does work smoothly, even when you
have problems.  So thanks for making a great GNU/Linux distro!

Thanks Joshua