Skip to content

Instantly share code, notes, and snippets.

@themagicalmammal
Last active March 6, 2026 11:18
Show Gist options
  • Select an option

  • Save themagicalmammal/e443d3c5440d566f8206e5b957ab1493 to your computer and use it in GitHub Desktop.

Select an option

Save themagicalmammal/e443d3c5440d566f8206e5b957ab1493 to your computer and use it in GitHub Desktop.
Set of optimizations, I use on my Void Setup

Void Linux — Complete System Optimization Guide

Warning: This guide contains system-level modifications. Some steps are irreversible or can render your system unbootable. Read every section fully before executing any command. Know what you are doing, or do not proceed.


Table of Contents

# Section
1 Gummiboot (systemd-boot)
2 Silent GRUB
3 Disable CPU Mitigations
4 Disable Watchdog
5 Kernel Parameters
6 fstab Optimization
7 Initramfs Optimization (Dracut)
8 Fix Font Rendering
9 Remove Unnecessary Packages
10 Xorg Configuration (iGPU)
11 Intel Graphics Parameters
12 NVIDIA Drivers
13 Bumblebee & bbswitch
14 Backlight Persistence
15 Profile Sync Daemon (PSD)
16 Colord
17 Irqbalance
18 Ananicy (CPU/IO Priority Daemon)
19 EarlyOOM (OOM Killer)
20 Thermald
21 Preload
22 Power Saving
23 Intel Undervolt
24 Intel Microcode
25 Bash Aliases

1. Gummiboot

What it is: Gummiboot is the original name for what became systemd-boot. It is a minimal, fast UEFI bootloader that replaces GRUB. It has zero configuration complexity and boots faster because it does not scan for OS entries dynamically at every boot.

Prerequisites:

  • UEFI system (not legacy/MBR)
  • A separate EFI partition

Steps

1. Install gummiboot:

sudo xbps-install gummiboot

2. Verify EFI partition flags. Open GParted or use parted and confirm your EFI partition has both boot and esp flags set. Without these, the firmware will not detect your bootloader.

3. Update /etc/fstab to mount EFI at /boot. If your EFI partition is currently mounted at /boot/efi, change it to /boot. This is required for gummiboot to place kernel images in the correct location.

sudo nano /etc/fstab

After editing, reboot to apply the new mount point before proceeding.

4. Install the bootloader to the EFI partition:

sudo gummiboot install

5. Create a kernel options file:

sudo nano /boot/loader/void-options.conf

Example contents (adjust root=, resume=, and flags to match your hardware):

root=/dev/sda2 ro loglevel=0 console=tty2 udev.log_level=0 \
vt.global_cursor_default=0 mitigations=off nowatchdog \
msr.allow_writes=on pcie_aspm=force module.sig_unenforce \
intel_idle.max_cstate=1 cryptomgr.notests initcall_debug \
intel_iommu=igfx_off no_timer_check page_alloc.shuffle=1 \
rcupdate.rcu_expedited=1 tsc=reliable \
resume=UUID=0b27b94d-1f89-4772-aca2-977b62544472

To find your root UUID:

blkid

Or check /etc/fstab — it is already listed there.

6. Reconfigure your kernel so the new bootloader entry is written:

sudo xbps-reconfigure -f linux<version>

To find your installed kernel version:

sudo xbps-query -l | grep linux

7. Test the boot. The UEFI entry labeled "Linux Boot Manager" should now work. If it does, GRUB can be safely removed.


2. Silent GRUB

What it does: Suppresses all kernel log output during boot and redirects it to tty2, giving you a clean, silent boot sequence.

Step 1 — Add kernel parameters to GRUB

Edit /etc/default/grub and add the following to GRUB_CMDLINE_LINUX_DEFAULT:

loglevel=0 console=tty2 udev.log_level=0 vt.global_cursor_default=0

Then regenerate the GRUB configuration:

sudo update-grub

Step 2 — Remove the "Welcome to GRUB!" message

This message is hardcoded in GRUB's source. The tool grub-shusher patches it out.

Step 3 — Remove boot-time echo messages

sudo nano /boot/grub/grub.cfg

Delete all lines beginning with echo.

Warning: This file is overwritten every time GRUB updates. You must redo this after every update-grub run.


3. Disable CPU Mitigations

What it does: Disables Spectre, Meltdown, and related CPU vulnerability mitigations. This can meaningfully improve performance on older Intel CPUs, but it reduces security. Do not do this on machines that run untrusted code or are accessible by other users.

Further reading: Linux Intel CPU performance mitigations | Meltdown & Spectre

Add to GRUB_CMDLINE_LINUX_DEFAULT, then run sudo update-grub:

mitigations=off

4. Disable Watchdog

What it does: The kernel watchdog monitors system health and reboots the machine if it detects a hang. On a personal computer where you can manually reboot, this is unnecessary overhead.

Further reading: Linux Kernel Watchdog Explained

Add to GRUB_CMDLINE_LINUX_DEFAULT, then run sudo update-grub:

nowatchdog

5. Kernel Parameters

What it does: These parameters reduce unnecessary work during boot and runtime. Most were sourced from Clear Linux and the Arch Wiki.

Note: Some of these are Intel-specific (intel_idle, intel_iommu). If you are on AMD hardware, omit those and research the AMD equivalents.

Add to GRUB_CMDLINE_LINUX_DEFAULT:

intel_idle.max_cstate=1 cryptomgr.notests initcall_debug \
intel_iommu=igfx_off no_timer_check noreplace-smp \
page_alloc.shuffle=1 rcupdate.rcu_expedited=1 tsc=reliable

Complete example /etc/default/grub:

GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=0 console=tty2 udev.log_level=0 \
  vt.global_cursor_default=0 mitigations=off nowatchdog \
  msr.allow_writes=on pcie_aspm=force module.sig_unenforce \
  intel_idle.max_cstate=1 cryptomgr.notests initcall_debug \
  intel_iommu=igfx_off no_timer_check noreplace-smp \
  page_alloc.shuffle=1 rcupdate.rcu_expedited=1 tsc=reliable \
  resume=UUID=b6063c20-d091-4334-8726-55e0ee6b0aed"
GRUB_DISABLE_OS_PROBER=true
GRUB_DISABLE_RECOVERY=true
GRUB_DISABLE_SUBMENU=true

6. fstab Optimization

Disable Filesystem Check (fsck)

fsck runs periodically on mounted filesystems to check for errors. On servers this is valuable; on a personal machine it adds minutes to an unexpected reboot. The last two numbers on each fstab line control this behavior:

  • 0 in the final column = fsck disabled
  • 1 or 2 in the final column = fsck enabled
sudo nano /etc/fstab

Set both trailing numbers to 0 for every partition you want to skip:

UUID=f634ad84-2283-4c62-b1ab-d57718e64cbb  swap  swap  sw           0  0
UUID=5c24bcde-e284-457d-b1e1-5845e0e77fb8  /     xfs   noatime      0  0
UUID=C61D-2685                             /boot vfat  umask=0077   0  0
tmpfs                                      /tmp  tmpfs noatime,nosuid 0  0

Use noatime Instead of defaults

Every file access on a standard Linux filesystem updates the file's atime (access timestamp). This means even reading a file triggers a disk write. Replacing defaults with noatime eliminates this unnecessary write overhead.

Replace defaults with noatime on all non-swap partitions as shown in the example above.


7. Initramfs Optimization (Dracut)

What it does: Strips the initramfs down to only what your specific hardware needs. A smaller initramfs means faster decompression and a faster boot.

Warning: Setting hostonly=yes means the resulting initramfs will only boot on this exact machine. Do not do this on a system image you intend to clone.

Step 1 — Create the Dracut config:

sudo nano /etc/dracut.conf.d/boot.conf

Paste the following:

hostonly=yes
hostonly_cmdline=no
use_fstab=yes
compress="cat"
omit_dracutmodules+=" dash i18n rpmversion convertfs btrfs lvm qemu \
  multipath qemu-net lunmask fstab-sys terminfo securityfs img-lib \
  biosdevname caps crypt crypt-gpg dmraid dmsquash-live mdraid nbd \
  nfs network "
nofscks=yes
no_hostonly_commandline=yes

Only omit modules you are certain you do not use. For example, if your root filesystem is btrfs, do not omit btrfs.

Step 2 — Rebuild the initramfs:

sudo xbps-reconfigure -f linux<version>

Tip: If you are not on XFS, rEFInd is worth considering as a bootloader alternative — it is often faster than GRUB.


8. Fix Font Rendering

What it does: Enables proper font anti-aliasing and disables bitmap fonts, which fixes blurry or jagged text in Firefox and many GTK applications.

sudo ln -s /usr/share/fontconfig/conf.avail/70-no-bitmaps.conf /etc/fonts/conf.d/
sudo xbps-reconfigure -f fontconfig

9. Remove Unnecessary Packages

What it does: Removes packages pulled in as dependencies that are irrelevant to your hardware or desktop. This reduces update overhead, disk usage, and potential attack surface.

Warning: Only remove packages you are certain you do not need. Removing the wrong package can break your desktop or leave your system in an inconsistent state.

Step 1 — Prevent future reinstallation

Add entries to the ignore file so xbps does not reinstall removed packages as dependencies:

sudo nano /etc/xbps.d/99-ignore.conf

Example for a machine with no AMD GPU, no btrfs, no wacom tablet, and no mobile broadband:

ignorepkg=btrfs-progs
ignorepkg=f2fs-tools
ignorepkg=ipw2100-firmware
ignorepkg=ipw2200-firmware
ignorepkg=linux-firmware-amd
ignorepkg=linux-firmware-broadcom
ignorepkg=mobile-broadband-provider-info
ignorepkg=nvi
ignorepkg=openssh
ignorepkg=os-prober
ignorepkg=rtkit
ignorepkg=void-artwork
ignorepkg=xbacklight
ignorepkg=xf86-input-wacom
ignorepkg=xf86-video-amdgpu
ignorepkg=xf86-video-fbdev
ignorepkg=xf86-video-nouveau
ignorepkg=xf86-video-vesa
ignorepkg=xf86-video-vmware
ignorepkg=zd1211-firmware

For KDE Plasma specifically, also add:

ignorepkg=ksystemstats
ignorepkg=oxygen
ignorepkg=plasma-systemmonitor
ignorepkg=plasma-thunderbolt
ignorepkg=plasma-workspace-wallpapers

Step 2 — Remove the packages:

sudo xbps-remove -Rcon \
  f2fs-tools ipw2100-firmware ipw2200-firmware ksystemstats \
  linux-firmware-amd linux-firmware-broadcom \
  mobile-broadband-provider-info nvi openssh os-prober oxygen \
  plasma-systemmonitor plasma-thunderbolt plasma-workspace-wallpapers \
  rtkit void-artwork xbacklight xf86-input-wacom xf86-video-amdgpu \
  xf86-video-fbdev xf86-video-nouveau xf86-video-vesa xf86-video-vmware

Additional optional removals (adjust to your setup):

sudo xbps-remove -Rcon \
  lvm2 cryptsetup micro rsync ntfs-3g vim AppStream appstream-glib \
  flatpak xdg-desktop-portal-gtk gnome-keyring dialog grub-i386-efi \
  inetutils accounts-integration kaccounts-providers kwrite ntp \
  octoxbps p7zip topgrade vdpauinfo void-repo-multilib xterm

10. Xorg Configuration (iGPU)

What it does: Configures the Intel GPU driver to use the SNA acceleration method and enables TearFree rendering, which eliminates screen tearing without needing a compositor.

sudo mkdir -p /etc/X11/xorg.conf.d
sudo nano /etc/X11/xorg.conf.d/20-intel.conf

Paste:

Section "Device"
    Identifier  "Intel Graphics"
    Driver      "Intel"
    Option      "AccelMethod"  "sna"
    Option      "TearFree"     "true"
EndSection

Warning: This configuration is for Intel integrated graphics only. If Xorg fails to start after applying this, either comment out the Option lines one at a time to isolate the issue, or delete the file entirely and reboot:

sudo rm /etc/X11/xorg.conf.d/20-intel.conf

11. Intel Graphics Parameters

What it does: Passes low-level options to the i915 kernel module to enable power-saving states, disable error capture overhead, and enable fastboot for the GPU.

Warning: These parameters are hardware-specific. The values below were chosen for a specific machine. Always cross-reference with the Arch Wiki — Intel graphics before applying. Incorrect options can cause display crashes or kernel panics.

sudo nano /etc/modprobe.d/i915.conf

Example (verify each option applies to your GPU generation):

options i915 enable_guc=2 enable_dc=4 enable_hangcheck=0 \
  error_capture=0 enable_dp_mst=0 fastboot=1

Then rebuild the initramfs:

sudo xbps-reconfigure -f linux<version>

If your display stops working after a reboot, remove the file and reboot again:

sudo rm /etc/modprobe.d/i915.conf

12. NVIDIA Drivers

What it does: Installs the proprietary NVIDIA driver and configures Xorg to use it. This enables hardware-accelerated rendering and PRIME offloading for hybrid graphics laptops.

Steps

1. Enable the non-free repository:

sudo xbps-install void-repo-nonfree
sudo xbps-install -S

2. Install the driver:

sudo xbps-install nvidia

Use nvidia390 if your GPU is from the 400 or 500 series (Fermi/Kepler era). Check NVIDIA's legacy driver page to confirm which version your card requires.

3. Install and apply the Xorg configuration:

wget https://raw.githubusercontent.com/uditkarode/dots/master/xorg/xorg.conf
sudo mv xorg.conf /etc/X11/

Reboot after this step.

4. Verify the driver is active:

glxinfo | grep "OpenGL renderer"
prime-run glxinfo | grep "OpenGL renderer"

The two commands should return different renderers — one for the iGPU and one for the NVIDIA GPU.


13. Bumblebee & bbswitch

What it does: Bumblebee implements NVIDIA PRIME power management, keeping the discrete GPU completely powered off unless an application explicitly requests it via optirun or primusrun. This significantly extends battery life on hybrid graphics laptops.

1. Install and configure Bumblebee:

sudo xbps-install bumblebee
sudo usermod -a -G bumblebee <your-username>
sudo ln -sfv /etc/sv/bumblebeed /var/service/

2. Install bbswitch and reboot:

sudo xbps-install bbswitch
reboot

3. Verify the NVIDIA GPU is off:

cat /proc/acpi/bbswitch

Expected output: 0000:01:00.0 OFF


14. Backlight Persistence

What it does: Saves your screen brightness level across reboots. Without this service, the backlight resets to maximum on every boot.

git clone https://github.com/madand/runit-services
cd runit-services
sudo mv backlight /etc/sv/
sudo ln -s /etc/sv/backlight /var/service/

15. Profile Sync Daemon (PSD)

What it does: Symlinks browser profile directories (Firefox, Chromium, etc.) into a tmpfs RAM disk and periodically syncs changes back to disk. This reduces SSD wear and makes browser startup and operation noticeably faster.

Further reading: Arch Wiki — Profile Sync Daemon

Note: rsync must be installed and the rsyncd service enabled for PSD to sync correctly. Ensure you have all build tools installed before compiling.

git clone https://github.com/graysky2/profile-sync-daemon
cd profile-sync-daemon
make
sudo make install
sudo rm -rf /usr/lib/systemd/

cd
git clone https://github.com/madand/runit-services
cd runit-services
sudo mv psd /etc/sv/
sudo ln -s /etc/sv/psd /var/service/

16. Colord

What it does: A system daemon that manages ICC color profiles for displays, printers, and scanners. Required for accurate color reproduction and useful if you calibrate your display.

Further reading: Colord — freedesktop.org | Arch Wiki — ICC profiles

sudo xbps-install colord colord-kde gnome-color-manager
sudo ln -sfv /etc/sv/colord /var/service/

Adjust the package list based on your desktop: colord-kde is for KDE Plasma; for GNOME you only need colord and gnome-color-manager.


17. Irqbalance

What it does: Distributes hardware interrupt (IRQ) processing across all available CPU cores, preventing a single core from becoming a bottleneck under heavy I/O load.

Further reading: irqbalance.github.io

sudo xbps-install irqbalance
sudo ln -sfv /etc/sv/irqbalance /var/service/

18. Ananicy

What it does: Ananicy (ANother Auto NICe daemon) automatically adjusts the CPU and I/O scheduling priorities of running processes using a community-maintained rule set. Interactive applications get boosted priority; background tasks get throttled.

Further reading: Ananicy on GitHub

git clone https://github.com/Nefelim4ag/Ananicy.git
cd Ananicy
sudo make install
sudo rm -rf /lib/systemd
sudo mkdir /etc/sv/ananicy

Create the run script:

sudo nano /etc/sv/ananicy/run
#!/bin/sh
exec /usr/bin/ananicy start

Create the finish script:

sudo nano /etc/sv/ananicy/finish
#!/bin/sh
exec /sbin/sysctl -e kernel.sched_autogroup_enabled=1

Make both executable and enable the service:

sudo chmod +x /etc/sv/ananicy/run /etc/sv/ananicy/finish
sudo ln -sfv /etc/sv/ananicy /var/service

19. EarlyOOM

What it does: Monitors available RAM and swap space at a set interval. When memory drops below configured thresholds, it kills the most memory-hungry process before the kernel's own OOM killer is triggered — which is slower and less selective.

Further reading: EarlyOOM on GitHub

sudo xbps-install earlyoom
sudo ln -sfv /etc/sv/earlyoom /var/service/

Configure the thresholds:

sudo nano /etc/default/earlyoom

Example configuration:

EARLYOOM_ARGS=" -m 96,92 -s 99,99 -r 5 -n --avoid '(^|/)(runit|Xorg|sshd)$'"

Parameter breakdown:

  • -m 96,92 — kill when free RAM drops below 4% (96% used); stop killing at 8% (92% used)
  • -s 99,99 — same thresholds for swap (99% = essentially full swap)
  • -r 5 — check every 5 seconds
  • -n — send a desktop notification before killing
  • --avoid — never kill these processes (adjust the list to your needs)

20. Thermald

What it does: A thermal management daemon that monitors CPU and platform temperatures and applies cooling policies (fan speed, P-state throttling) before the hardware enforces emergency throttling.

Only install this if your machine throttles or runs hot under load and cannot manage its own thermals adequately.

Further reading: Debian Wiki — thermald

sudo xbps-install thermald
sudo ln -sfv /etc/sv/thermald /var/service/

21. Preload

What it does: An adaptive read-ahead daemon. It monitors which applications you launch most frequently and preloads their libraries into RAM, reducing cold-start load times.

This is only beneficial on systems with an HDD. On SSD or NVMe, application cold-start times are already fast enough that preload provides no measurable benefit and wastes RAM.

Further reading: Arch Wiki — Preload

sudo xbps-install preload
sudo ln -sfv /etc/sv/preload /var/service/

22. Power Saving

Option A — TLP (Recommended)

TLP is a comprehensive laptop power management tool. It automatically applies a large set of power-saving settings on battery and performance settings on AC without requiring any manual configuration.

Further reading: TLP on GitHub

sudo xbps-install tlp
sudo ln -sfv /etc/sv/tlp /var/service/

To customize TLP's behavior:

sudo nano /etc/tlp.conf

The defaults are well-tuned for most laptops. Unless you have specific requirements, leaving the configuration as-is will give you excellent battery life.

Option B — PowerTop (Alternative / Supplement)

PowerTop measures per-process power consumption and can automatically enable power-saving modes across devices. Use it instead of TLP, or to manually extract settings that TLP does not cover and add them to /etc/rc.local.

Further reading: PowerTop on GitHub

sudo xbps-install powertop

To enable all power-saving tunings automatically on boot, add this to /etc/rc.local:

powertop --auto-tune

USB Autosuspend Delay

If you use PowerTop or custom power scripts, the default USB autosuspend timer is too aggressive and causes external keyboards and mice to stutter or disconnect. Increase the delay by adding the following to /etc/rc.local:

for dev in /sys/bus/usb/devices/*/power/autosuspend_delay_ms; do
    echo 60000 > "$dev"
done

This sets a 60-second idle timeout on all USB devices before they are suspended.


23. Intel Undervolt

What it does: Reduces the voltage supplied to the CPU, CPU cache, and GPU below Intel's factory defaults. A successful undervolt lowers power consumption, reduces heat output, and can reduce thermal throttling — with no meaningful performance loss at stable voltages.

Risk: Too aggressive an undervolt causes crashes or freezes under load. Start conservatively and stress-test each change. This does not damage hardware but can cause data corruption if a crash occurs during a write operation.

Further reading: intel-undervolt on GitHub

1. Install intel-undervolt:

sudo xbps-install intel-undervolt

2. Configure voltage offsets:

sudo nano /etc/intel-undervolt.conf

Apply the configuration immediately to test for stability:

sudo intel-undervolt apply

An example configuration (values are machine-specific — do not copy blindly) is available here.

3. Create a runit service to apply the undervolt on every boot:

sudo mkdir /etc/sv/intel-undervolt
sudo nano /etc/sv/intel-undervolt/run
#!/bin/sh
intel-undervolt apply >/dev/null 2>&1
exec chpst -b intel-undervolt pause
sudo chmod +x /etc/sv/intel-undervolt/run
sudo ln -sfv /etc/sv/intel-undervolt /var/service/

24. Intel Microcode

What it does: Applies CPU microcode patches distributed by Intel to fix hardware errata (bugs in the CPU silicon) discovered after release. These patches are applied by the operating system on each boot and do not persist to the CPU itself. Keeping microcode current is important for stability and security.

1. Enable the non-free repository (if not already done):

sudo xbps-install void-repo-nonfree
sudo xbps-install -S

2. Install the microcode package:

sudo xbps-install intel-ucode

3. Rebuild the initramfs so the microcode is loaded early in the boot process:

sudo xbps-reconfigure -f linux<version>

25. Bash Aliases

What it does: Replaces long, frequently typed commands with short keywords, reducing repetitive typing and mistakes.

Add aliases to ~/.bashrc (for Bash) or ~/.zshrc (for Zsh). They take effect on the next shell session or after running source ~/.bashrc.

Example aliases for Void Linux:

# System update
alias update='sudo xbps-install -Su'

# Install a package
alias install='sudo xbps-install'

# Remove a package and its orphaned dependencies
alias remove='sudo xbps-remove -Rcon'

# Search for a package
alias search='xbps-query -Rs'

# List installed packages
alias list='xbps-query -l'

# Reconfigure a package
alias reconf='sudo xbps-reconfigure -f'

# Enable a runit service
alias svenable='sudo ln -sfv /etc/sv/$1 /var/service/'

# Disable a runit service
alias svdisable='sudo rm /var/service/$1'

# Check service status
alias svstatus='sudo sv status /var/service/*'

Full alias collections:


Last revised: Dec 2025. Commands are verified against Void Linux with runit and xbps. Always review upstream documentation before applying system-level changes.

@themagicalmammal
Copy link
Author

Thanks to Duncaen for pointing out the obvious flaws in this.

@themagicalmammal
Copy link
Author

Lots of Thanks to madand for his all services.

@akhiljalagam
Copy link

thanks for backlight, noatime and nowatchdog

@slightly-seasoned
Copy link

Thanks for this. The descriptions of the optimizations are easy to read and very straightforward.

@rilysh
Copy link

rilysh commented Dec 28, 2022

At silent-grub instead of editing grub.cfg in the boot directory, you can edit /etc/default/grub file and run update-grub.

Each time you issue update-grub or update the grub or the kernel through the package manager, it will overwrite the previous configuration in /boot/grub/grub.cfg.

@themagicalmammal
Copy link
Author

At silent-grub instead of editing grub.cfg in the boot directory, you can edit /etc/default/grub file and run update-grub.

Each time you issue update-grub or update the grub or the kernel through the package manager, it will overwrite the previous configuration in /boot/grub/grub.cfg.

I have written that in bold just below it. I think I was unable to find ways to remove "Welcome to GRUB!" message, so the alternative as written on it, is using the grub-shusher.

@mindmix703
Copy link

Thank you very much. Useful, accessible, concise.

@oech3
Copy link

oech3 commented Apr 5, 2025

When will noreplace-smp improve performance? It seems not related at reast for boot performance.

@themagicalmammal
Copy link
Author

When will noreplace-smp improve performance? It seems not related at reast for boot performance.

That is true, I will be removing that parameter.

@rezaosman92
Copy link

Dayum, I stumbled on a gold mine here!

Thanks mate!

@themagicalmammal
Copy link
Author

Dayum, I stumbled on a gold mine here!

Thanks mate!

I haven't updated this in a while. If you find something broken please do report.

@themagicalmammal
Copy link
Author

When will noreplace-smp improve performance? It seems not related at reast for boot performance.

On further research, noreplace-smp ensures the kernel always uses full multi-CPU (SMP) code paths instead of falling back to single-CPU ones, which can improve performance and consistency.

It’s mainly useful on multi-core x86 systems where maintaining true SMP behavior matters.

I originally tested this on a 32-bit x86 Intel system, where the noreplace-smp flag has a real effect when added to the boot parameters. On x86-64 systems, however, the flag does nothing and is essentially just a harmless unused parameter, but I’ve kept it enabled for compatibility with older 32-bit systems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment