Long Boot Time and slow SSD speed

Hello everyone,

I’ve recently made the switch from Windows to Manjaro and noticed that my system’s boot time is quite slow, it’s taking about 1 minute and 30 seconds from when the Manjaro logo appears until the login window shows up.

Initially, I thought this lengthy boot time might be the main issue, but I started to suspect that my SSD’s performance could be a contributing factor. After running several speed tests using fio and hdparm, I found that my SSD is performing about three times slower than its expected speeds.

Has anyone else experienced similar issues, or does anyone have advice on troubleshooting slow SSD performance on Manjaro? Any suggestions would be greatly appreciated!

I’ve read online about some kernel issues, but these topics were around 1 year ago, so i am not sure if this is still relevant.

Linux Kernel: 6.12.39-1

Here are my specs

Specs
System:
  Kernel: 6.12.39-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 15.1.1
  Desktop: Xfce v: 4.20.1 Distro: Manjaro base: Arch Linux
Machine:
  Type: Desktop System: Micro-Star product: MS-7A34 v: 4.0
    serial: <superuser required>
  Mobo: Micro-Star model: B350 GAMING PLUS (MS-7A34) v: 4.0
    serial: <superuser required> UEFI: American Megatrends v: M.A0
    date: 05/02/2018
Battery:
  Device-1: hidpp_battery_0 model: Logitech Wireless Mouse MX Master 3
    charge: 100% (should be ignored) status: discharging
CPU:
  Info: 8-core model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+
    rev: 2 cache: L1: 768 KiB L2: 4 MiB L3: 16 MiB
  Speed (MHz): avg: 3700 min/max: N/A cores: 1: 3700 2: 3700 3: 3700 4: 3700
    5: 3700 6: 3700 7: 3700 8: 3700 9: 3700 10: 3700 11: 3700 12: 3700 13: 3700
    14: 3700 15: 3700 16: 3700 bogomips: 118434
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: NVIDIA GA106 [GeForce RTX 3060 Lite Hash Rate] vendor: ASUSTeK
    driver: nvidia v: 575.64.03 arch: Ampere bus-ID: 20:00.0
  Display: x11 server: X.org v: 1.21.1.18 driver: X: loaded: nvidia
    gpu: nvidia,nvidia-nvswitch resolution: 1: 1440x900~60Hz 2: 1920x1080~60Hz
  API: EGL v: 1.5 drivers: nvidia,swrast platforms:
    active: gbm,x11,surfaceless,device inactive: wayland,device-1
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 575.64.03
    glx-v: 1.4 direct-render: yes renderer: NVIDIA GeForce RTX 3060/PCIe/SSE2
  Info: Tools: api: eglinfo,glxinfo de: xfce4-display-settings
    gpu: nvidia-settings,nvidia-smi x11: xprop,xrandr
Audio:
  Device-1: NVIDIA GA106 High Definition Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel bus-ID: 20:00.1
  Device-2: Advanced Micro Devices [AMD] Family 17h HD Audio
    vendor: Micro-Star MSI driver: snd_hda_intel v: kernel bus-ID: 22:00.3
  API: ALSA v: k6.12.39-1-MANJARO status: kernel-api
  Server-1: JACK v: 1.9.22 status: off
  Server-2: PipeWire v: 1.4.6 status: active
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: Micro-Star MSI driver: r8169 v: kernel port: f000 bus-ID: 1e:00.0
  IF: enp30s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Bluetooth:
  Device-1: ASUSTek ASUS USB-BT500 driver: btusb v: 0.8 type: USB
    bus-ID: 1-3:2
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
Drives:
  Local Storage: total: 3.64 TiB used: 74.94 GiB (2.0%)
  ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 990 PRO 2TB size: 1.82 TiB
    temp: 43.9 C
  ID-2: /dev/sda vendor: Seagate model: ST2000VN004-2E4164 size: 1.82 TiB
Partition:
  ID-1: / size: 109.75 GiB used: 26.08 GiB (23.8%) fs: ext4
    dev: /dev/nvme0n1p4
  ID-2: /boot/efi size: 1.41 GiB used: 320 KiB (0.0%) fs: vfat
    dev: /dev/nvme0n1p7
  ID-3: /home size: 1.62 TiB used: 48.86 GiB (2.9%) fs: ext4
    dev: /dev/nvme0n1p3
Swap:
  ID-1: swap-1 type: partition size: 64.63 GiB used: 0 KiB (0.0%)
    dev: /dev/nvme0n1p6
Sensors:
  System Temperatures: cpu: 77.4 C mobo: N/A gpu: nvidia temp: 47 C
  Fan Speeds (rpm): N/A gpu: nvidia fan: 53%
Info:
  Memory: total: 64 GiB note: est. available: 62.75 GiB used: 2.75 GiB (4.4%)
  Processes: 359 Uptime: 17m Init: systemd
  Packages: 1287 Compilers: clang: 20.1.8 gcc: 15.1.1 Shell: Zsh v: 5.9
    inxi: 3.3.38```
lspci ssd log

This text will be hidden

sudo lspci -vv | grep -i nvme -A 20                                                                                                    
01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller S4LV008[Pascal] (prog-if 02 [NVM Express])
	Subsystem: Samsung Electronics Co Ltd Device a801
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 57
	IOMMU group: 13
	Region 0: Memory at f7800000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [40] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [50] MSI: Enable- Count=1/32 Maskable- 64bit+
		Address: 0000000000000000  Data: 0000
	Capabilities: [70] Express (v2) Endpoint, IntMsgNum 0
		DevCap:	MaxPayload 512 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
			ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 0W TEE-IO-
		DevCtl:	CorrErr+ NonFatalErr+ FatalErr+ UnsupReq+
			RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+ FLReset-
			MaxPayload 512 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend-
		LnkCap:	Port #0, Speed 16GT/s, Width x4, ASPM L1, Exit Latency L1 <64us
fio test log
sudo fio --name=seqread --filename=/dev/nvme0n1 --rw=read --bs=1M --direct=1 --size=4G --numjobs=1 --time_based --runtime=30 --group_reporting

seqread: (g=0): rw=read, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=psync, iodepth=1
fio-3.39
Starting 1 process
Jobs: 1 (f=1): [R(1)][100.0%][r=2436MiB/s][r=2436 IOPS][eta 00m:00s]
seqread: (groupid=0, jobs=1): err= 0: pid=4152: Wed Jul 23 17:19:07 2025
  read: IOPS=2413, BW=2413MiB/s (2530MB/s)(70.7GiB/30001msec)
    clat (usec): min=353, max=9223, avg=413.91, stdev=60.72
     lat (usec): min=353, max=9223, avg=413.98, stdev=60.72
    clat percentiles (usec):
     |  1.00th=[  355],  5.00th=[  355], 10.00th=[  355], 20.00th=[  379],
     | 30.00th=[  392], 40.00th=[  400], 50.00th=[  408], 60.00th=[  416],
     | 70.00th=[  437], 80.00th=[  445], 90.00th=[  457], 95.00th=[  474],
     | 99.00th=[  586], 99.50th=[  635], 99.90th=[  840], 99.95th=[  979],
     | 99.99th=[ 1483]
   bw (  MiB/s): min= 2338, max= 2532, per=100.00%, avg=2414.37, stdev=64.53, samples=59
   iops        : min= 2338, max= 2532, avg=2414.37, stdev=64.53, samples=59
  lat (usec)   : 500=97.26%, 750=2.51%, 1000=0.19%
  lat (msec)   : 2=0.04%, 4=0.01%, 10=0.01%
  cpu          : usr=0.22%, sys=21.34%, ctx=72418, majf=0, minf=265
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued rwts: total=72394,0,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
   READ: bw=2413MiB/s (2530MB/s), 2413MiB/s-2413MiB/s (2530MB/s-2530MB/s), io=70.7GiB (75.9GB), run=30001-30001msec

Disk stats (read/write):
  nvme0n1: ios=577261/244, sectors=147778816/3728, merge=0/66, ticks=115098/86, in_queue=115205, util=88.32%

and hdparm gave a very similiar result

Thanks a lot in Advance!

Run systemd-analyze critical-chain and maybe systemd-analyze blame, it may show where the slowdown is.

1 Like
graphical.target @1min 31.086s
└─lightdm.service @1min 31.063s +22ms
  └─plymouth-quit.service @1min 31.035s +26ms
    └─systemd-user-sessions.service @1min 31.024s +7ms
      └─nss-user-lookup.target @1min 31.089s
Blame
2.604s systemd-modules-load.service
1.909s snapd.apparmor.service
1.350s modprobe@dm_mod.service
1.350s modprobe@loop.service
1.334s home.mount
1.285s boot-efi.mount
1.264s proc-sys-fs-binfmt_misc.mount
1.263s tmp.mount
 610ms systemd-rfkill.service
 530ms dev-nvme0n1p4.device
 375ms apparmor.service
 335ms ufw.service
 301ms tlp.service
 286ms upower.service
 276ms NetworkManager.service
 248ms snapd.service
 237ms user@1000.service
 208ms systemd-udev-trigger.service
 194ms udisks2.service
 181ms systemd-fsck@dev-disk-by\x2duuid-9F25\x2d1296.service
 178ms systemd-fsck@dev-disk-by\x2duuid-b19f8e48\x2d8837\x2d46ad\x2d9fba\x2d0b507a2a786>
 171ms dev-disk-by\x2duuid-3433ea55\x2d84b7\x2d4f09\x2d8cd9\x2dc3c26ca79afd.swap
 157ms systemd-vconsole-setup.service
 149ms lvm2-monitor.service
 145ms systemd-tmpfiles-setup-dev-early.service
 137ms systemd-journal-flush.service

this seems to be pretty much my 1 min. 30
But what does this mean?

Can’t say yet. You only provided a partial systemd-analyze critical-chain, you’ve only shown what happened at @1min onwards.

because there is no more

    ~  systemd-analyze critical-chain                                    ✔  6s 
The time when unit became active or started is printed after the "@" character.
The time the unit took to start is printed after the "+" character.

graphical.target @1min 31.086s
└─lightdm.service @1min 31.063s +22ms
  └─plymouth-quit.service @1min 31.035s +26ms
    └─systemd-user-sessions.service @1min 31.024s +7ms
      └─nss-user-lookup.target @1min 31.089s

thats all that gets printed

Well then, that’s unusual as there should be several more items shown. Someone else will have to help you, sorry.

1 Like

its alright thank you anyways <3

Really?

systemd-analyze time

Please show us output of

cat /etc/fstab
sudo blkid

I guess you have a bad mount situation.

Startup finished in 15.440s (firmware) + 6.127s (loader) + 3.767s (kernel) + 1min 31.368s (userspace) = 1min 56.704s
graphical.target reached after 1min 31.086s in userspace.

log of blkid and content of fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=665fc563-df33-46be-9c98-b6af64019343 /              ext4    defaults   0 1
UUID=3433ea55-84b7-4f09-8cd9-c3c26ca79afd swap           swap    defaults   0 0
UUID=9F25-1296                            /boot/efi      vfat    defaults,umask=0077 0 2
UUID=b19f8e48-8837-46ad-9fba-0b507a2a7865 /home          ext4    defaults   0 2
tmpfs                                     /tmp           tmpfs   defaults,noatime,mode=1777 0 0
[sudo] password for blackcan:
/dev/nvme0n1p7: UUID="9F25-1296" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="020ccc5e-037c-458f-9b9f-08f0d54fcdc4"
/dev/nvme0n1p3: UUID="b19f8e48-8837-46ad-9fba-0b507a2a7865" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="719651f4-74df-405d-b131-101caa6e7b93"
/dev/nvme0n1p1: LABEL="Wiederherstellung" BLOCK_SIZE="512" UUID="BEBA82C5BA827A23" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="b47bd6aa-cb37-4b10-95f5-77a6605fa59c"
/dev/nvme0n1p6: UUID="3433ea55-84b7-4f09-8cd9-c3c26ca79afd" TYPE="swap" PARTUUID="eff62814-8d7c-465a-a4f8-b1a52ce54ffc"
/dev/nvme0n1p4: LABEL="root" UUID="665fc563-df33-46be-9c98-b6af64019343" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="7e98586e-24b5-4dec-aada-149d08d48c13"
/dev/nvme0n1p2: UUID="8C83-57B6" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="f065661f-a622-4ea5-96d6-f5de3261c1dc"
/dev/sda1: LABEL="D0-P1" BLOCK_SIZE="512" UUID="8AFAFA4EFAFA35D3" TYPE="ntfs" PARTUUID="216b8c6e-01"

i thought about this too

May guess is that it slows down because of the NVIDIA driver. The GPU needs longer to be initialized. There are some reports when I remember correctly that users report longer boot times with the newest NVIDIA driver.

Try removing or blacklisting the driver and see if that improves boot time.

Have you checked your firmware setting? Disk is set to AHCI or RAID?
Have you properly unmounted the ntfs partition on /dev/sda1?
Have you switched-off “Fast startup” in Windows before shutting it down?
What is the output of

sudo efibootmgr

i will try this! thanks
i do this with a blacklist.conf right?

@Wollie

Disk is set to AHCI
Do you mean the firmware of the ssd?
I don’t think i’ve disabled “Fast startup” correctly

/dev/sda1 is my “file” hdd from windows, i’ve left it untouched as i thought i could just continue using it without altering with it

log from efibootmgr

BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0001,0000,0006,0004
Boot0000* Windows Boot Manager	HD(2,GPT,f065661f-a622-4ea5-96d6-f5de3261c1dc,0xe1800,0x31800)/\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000033000100000010000000040000007fff0400
Boot0001* Manjaro	HD(7,GPT,020ccc5e-037c-458f-9b9f-08f0d54fcdc4,0x1627e000,0x2d1800)/\EFI\MANJARO\GRUBX64.EFI
Boot0004* UEFI: PXE IP4 Realtek PCIe GBE Family Controller	PciRoot(0x0)/Pci(0x1,0x3)/Pci(0x0,0x2)/Pci(0x1,0x0)/Pci(0x0,0x0)/MAC(309c239ddf4a,0)/IPv4(0.0.0.0,0,DHCP,0.0.0.0,0.0.0.0,0.0.0.0)0000424f
Boot0006* UEFI OS	HD(7,GPT,020ccc5e-037c-458f-9b9f-08f0d54fcdc4,0x1627e000,0x2d1800)/\EFI\BOOT\BOOTX64.EFI0000424f

If it is the nvidia driver slowing it down, you can try making a few changes, see: NVIDIA - ArchWiki

No, the mainboard firmware.

If you still can boot Windoof, then try to disable Fast startup.

sadly not, i just went all in and completly wiped my windows partition

when setting up the partitions i was a bit hesistant about that windows boot manager so thats why it is still left

I can’t see that the right disk partition is booted. You could try to restore the boot loader.
I also would check what boot options (incl. selected boot entry) are selected in your firmware.

You still have two partitions being capable as ESP ( /dev/nvme0n1p2 and /dev/nvme0n1p7). The first one probably used before with Windoof. Make sure the right ESP has the esp flag set.

when i try to use the chroot script it says

==> ERROR: No Linux partitions detected!

Should i then just continue mounting it manually or is does this suggest a bigger problem?

When you can normally boot you don’t need to chroot. Just follow this for EFI System:

1 Like

okay i was confused as i thought i always need in chroot for this

Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-6.12-x86_64
Found initrd image: /boot/intel-ucode.img /boot/amd-ucode.img /boot/initramfs-6.12-x86_64.img
Found initrd fallback image: /boot/initramfs-6.12-x86_64-fallback.img
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Found Windows Boot Manager on /dev/nvme0n1p2@/efi/Microsoft/Boot/bootmgfw.efi
Adding boot menu entry for UEFI Firmware Settings ...
Root filesystem isn't btrfs
If you think an error has occurred, please file a bug report at "https://github.com/Antynea/grub-btrfs"
Found memtest86+ image: /boot/memtest86+/memtest.bin
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
Found memtest86+ EFI image: /boot/memtest86+/memtest.efi
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
done

i suppose it was successful ? should i reboot to test?