It's mandatory reboot if kernel is updated? - eviltoast

Hello mates,

As you know, in arch Linux the kernel is updated frequently but, is mandatory or good practice reboot any time the kernel is updated?

Edit: Thank you guys for your replies

  • Rustmilian@lemmy.world
    link
    fedilink
    arrow-up
    10
    ·
    edit-2
    1 year ago

    The kernel is loaded into RAM so it shouldn’t cause issues unless for some reason it gets unloaded. The updated kernel is written to disc first then loaded into RAM apon a reboot. Other parts of the system can cause issues when updated tho, like the audio stack as it gets unloaded whenever it’s not in use.

    • nous@programming.dev
      link
      fedilink
      English
      arrow-up
      9
      ·
      edit-2
      1 year ago

      Except for kernel modules - which are stored on disk and often loaded on demand. Though most distros keep around the old kernel and kernel modules to avoid issues. You can still get issues on distro such as Arch which replace the kernel and modules on an upgrade - though there is the kernel-modules-hook package with pacman hooks to keep the old modules around until the next reboot to fix this.

      If you don’t have the kernel-modules-hook package installed on Arch you really should reboot shortly after an upgrade to the kernel or else new devices you plug in might not function until you do (typically USB as those tend to be what you hotplug the most).

      • Rustmilian@lemmy.world
        link
        fedilink
        arrow-up
        6
        ·
        edit-2
        1 year ago

        To further clarify : On Arch Linux, the new kernel and its corresponding modules are installed on the system, but they are not immediately loaded into RAM. Until you reboot your system, the old kernel and its associated modules remain in memory. Once you restart your system, the new kernel is loaded into RAM, and the old kernel and its modules are unloaded from memory. From that point onward, the system uses the new kernel and its modules.

        If the modules from the old Kernel weren’t loaded previously then they won’t be loadable into RAM when you say pluggin a USB device, but USB devices that were already plugged in will continue to work because the module was already loaded into RAM from the old kernel.
        You’d have to unplug the USB device and wait for the system to unload the module from memory automatically(which doesn’t happen often because it’s in best interest for the system to keep the module around in case it’s needed again) Or unload it yourself for problems to occurred.
        By unplugging and replugging the same USB device during this time, it’ll still work as the model wasn’t immediately unloaded.

        The package you shared makes a copy of the old kernel modules on disc to a different location prior to the Kernel update process replacement of the old Kernel as to load them if they’re not already available in RAM.

      • Xhenon@lemmy.worldOP
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        First time I hear about kernel-modules-hook. For sure I’m going to try.

        Thanks for the recommendation