Seeking Guidance: GRUB Settings for Fedora 41 (Dual-GPU Issues, Power Management, and Recovery Concerns)

Hi Fedora Community,

I’m encountering some issues with my Fedora 41 system, particularly with dual-GPU configurations (NVIDIA and AMD), power management modes, and GRUB settings. I’d like to get your advice on the following:


1. Issues I’m Facing

  • Hangs and Black Screen:
    • My system often hangs with a black screen when using “Balanced” or “Power Saver” power modes.
    • Switching to “Performance” mode seems to mitigate the issue.
  • ACPI Errors:
    • Boot logs show errors like [Firmware Bug]: BIOS _OSI(Linux) query ignored.
    • There are also indications of TSC (Time Stamp Counter) instability and possible resource conflicts.
  • Dual-GPU Configuration:
    • My laptop has both NVIDIA and AMD GPUs. I suspect the issues might be due to driver conflicts or improper power management settings.

2. GRUB Settings I Plan to Apply

Here’s the GRUB configuration I’m considering:

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet nvidia-drm.modeset=1 rd.driver.blacklist=nouveau modprobe.blacklist=nouveau pci=nocrs acpi_osi=! acpi_osi='Windows 2020' acpi_backlight=vendor"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true

Added Parameters:

  • pci=nocrs: Avoid relying on BIOS for PCI resource settings.
  • acpi_osi=! acpi_osi='Windows 2020': Use Windows-compatible ACPI calls to bypass firmware-related Linux ACPI bugs.
  • acpi_backlight=vendor: Use vendor-specific methods for backlight control.

Questions:

  • Will these settings address the power management and GPU issues without introducing new problems?
  • Is there anything I should add, remove, or adjust for better stability?

3. Concerns About Kernel Crashing

If the new GRUB settings result in a kernel crash or my system becomes unbootable:

  • What are the best practices to safely revert to my previous GRUB settings?
  • Can I test these settings temporarily without making them permanent (e.g., via GRUB menu)?
  • Are there better fallback mechanisms I should implement (like rescue kernels or bootable USBs)?

4. Recovery Plan

Here’s what I plan to do in case of issues:

  1. Backup the current GRUB file:
sudo cp /etc/default/grub /etc/default/grub.backup
  1. Regenerate GRUB after editing:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg  # For BIOS
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg  # For UEFI
  1. Use the GRUB menu to test changes temporarily.
  2. Keep a Fedora live USB ready for recovery:
  • Mount root, chroot into the environment, and restore the backup:
sudo cp /etc/default/grub.backup /etc/default/grub
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

5. Seeking Community Advice

  • Are the new GRUB parameters appropriate for addressing dual-GPU and power management issues?
  • Do you have any suggestions for a safer approach or additional precautions I should take before applying the changes?

Thank you in advance for your guidance!

There are several recent threads about the problems when using “balanced” or “power saver”. One of the workarounds was setting performance mode IIRC.
I suggest you search and read them before digging in as much as you seem to be planning.
It is a known issue and I seem to remember a bug report was listed in one of the threads
Heavy display flickering after Power Saver Blank Screen on Fedora 41 - #2 by alexmex90 is one example.
This seems to be the bug report 2333543 – Lenovo Ideapad 1 14ALC7 monitor flickers and dies after suspend with kernel 6.12.5

If setting your machine to performance mode mitigates the problem I would suggest that you stick with that until the bug fix is released and updates occur. Doing lots of other stuff may be unnecessary and may cause other problems.

Question 3
Yes
It is easy to use the grub menu and edit the kernel command line there to test new options. Things added there are temporary and are only in effect for the current boot. Test new options with the grub menu method to avoid permanent changes that might require recovery during testing.

Press e when the desired kernel is highlighted then add the options to be tested into the line that begins with linux
After completing your edit there should be a prompt at the bottom of the screen telling how to continue booting (ctrl-X or F10 if I recall correctly)

Question 4

NO NO
That has not been used since about f32. You do not wish to overwrite that file.
The other command is used for all systems regardless of boot mode.
If you overwrite the file under /boot/efi the system will no longer see any kernel upgrades since the named file is only a pointer file that redirects grub to the one under /boot/grub2 and is never updated or overwritten by any normal system updates

Please do not alter /etc/default/grub until after your changes have been tested and confirmed. Then only make the changes using the grubby command which updates everything and the grub2-mkconfig command is not normally necessary.