now add the cstate parameter: kate /etc/default/grub
and replace the acpi parameters: acpi_osi=! acpi_osi='Windows 2015'
with this one: intel_idle.max_cstate=4
save the file, update grub: sudo update-grub
reboot and test…
now check if you have any issues, if you have noticable overheating, or fan spinning …
if you still have the same issue, change the parameter to state 3: intel_idle.max_cstate=3
save and update grub, reboot and test again…
and if you have again the same issue, change it to number 2…
if you still have the same issue, dont change it lower, we then try modifying the power states of the nvidia…
So, the intel_idle.max_cstate=4 did not work, I’ll try again with changing the parameter to 3.
What is interesting is that I tried booting into windows-10 (dual boot) instead of linux and screen was black again but everything was actually working. I know this cause my keyboard lights went green (this doesn’t work in linux). I was able to login and then use Alt+F4 to shutdown windows normally. The only thing not working was the screen. I don’t know if Windows has any logging features otherwise I should be able to see logs which should tell something.
so if windows have similar issue, it could be a hardware thing, or some bios setting…
yes windows have logs, in the event viewer select windows logs, and check…
and if the cstate 3 doesnt work, change it to 2 and test with it…
So, finally things worked this time. I went barebones removing any extra peripherals including the cpu cooler, removed silent from boot (which did nothing), turned the fans to maximum to avoid potential heating and used linux-lts 5.15 fallback. This created some log warnings, which for the most part are usual except for the last two which are reproducible only on fallback boot images.
Jul 12 09:23:45 exigov2 kernel: ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
Jul 12 09:23:45 exigov2 kernel: pci 0000:6e:00.0: [Firmware Bug]: disabling VPD access (can't determine size of non-standard VPD format)
Jul 12 09:23:45 exigov2 kernel: tpm_crb MSFT0101:00: [Firmware Bug]: ACPI region does not cover the entire command/response buffer. [mem 0xfed40000-0xfed4087f flags 0x200] vs fed40080 f80
Jul 12 09:23:45 exigov2 kernel: tpm_crb MSFT0101:00: [Firmware Bug]: ACPI region does not cover the entire command/response buffer. [mem 0xfed40000-0xfed4087f flags 0x200] vs fed40080 f80
Jul 12 09:23:45 exigov2 kernel: ACPI Warning: \_SB.PCI0.PEG0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20210730/nsarguments-61)
Jul 12 09:23:45 exigov2 kernel: [Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0x52 (or later)
Jul 12 09:23:45 exigov2 kernel: RETBleed: WARNING: Spectre v2 mitigation leaves CPU vulnerable to RETBleed attacks, data leaks possible!
Since using the intel_idle.max_cstate parameter, i’ve been getting this new ACPI Warning (third last entry above). Also, the grub entry has itself added a new parameter called DEEPIN_GFXMODE= which probably does nothing as seen below.
Jul 12 09:23:45 exigov2 kernel: Unknown kernel command line parameters "BOOT_IMAGE=/boot/vmlinuz-6.4-x86_64 DEEPIN_GFXMODE=", will be passed to user space.
I’ll see if I can consistently open my laptop without a black screen.
you should not changed anything else, except adding the cstate parameter… now we dont know what exactly helped…
did you noticed overheating when changing the cstates?
dont use the fallback one kernel… revert to normal one and test…
this was definitely not added because of the cstate parameter…
it looks like its from deepin… do you have deepin or some deepin apps installed? pacman -Qs deepin
No, changing the cstate did cause any overheating at least none that’s noticeable.
It works fine with normal kernel also at least now.
Yes, I didn’t like the kde system monitor so I am using deepin system monitor. It’s kinda weird cause I have that since long but DEEPIN_GFXMODE= is showing after a reinstall of deepin apps.
Not too much of an issue, I’ll test it today and let you know.
What about the ACPI warning though? I hope it’s not a big issue.
Alright so everything seems to be working fine till now at least. I booted normally with 6.4 kernel and the boot is slightly slow at 10 sec but it works fine. Although, I did wait for like 2 min (cause I had some work) after the kernel select menu before logging in. That shouldn’t make any difference right?
Also, removing the deepin stuff did reduce the load times by 2 sec so that’s nice. If everything works fine in the next boot also, I’ll mark the intel_idle.max_cstate=3 comment as answer.
Thank you for being patient with me
glad that it works, but you have 9 states available:
the lower the state, the less power save available when idle…
maybe we can try modify the nvidia power saving and test with it, and see if it works, and if there is not increased overheating and etc… and maybe it will work better with nvidia, than with your cpu… but its up to you
Seems like that didn’t fix it, if anything the issue is even more frequent now. It happened twice while booting when I had to reisub. There’s definitely no heating issue, in the worst case, I think my GPU might be dying. I’ll get my laptop cleaned and cpu paste changed to see if that helps.
There are some kinda newish errors when the screen goes black -
yes these are related to nvidia, and could be a hardware issue…
and the last black sceens also happened after the pc was idle? or when in use?
if it still happens when idle, we can try changing the nvidia power save options… maybe that will help…
The first time it happened was around 17:30 after I had left the laptop unused for half an hour. The screen had gone to login screen (NO suspend/sleep). It didn’t immediately crash, instead I normally closed the browser, dolphin and pressed Ctrl+Alt+Del which starts the 30 sec countdown to shutdown. The screen went black in around 7 seconds after which the fans became pretty loud. After that I sent SIGTERM which reduced fan speed to normal but didn’t fix the screen. Then Sync and finally the reboot.
This thing happened again when I tried booting at 19:30 but this time with the grub entry changed to intel_idle.max_cstate=2 which immediately led to black screen. I again had to reboot again but intel_idle.max_cstate=2 cause yet another black screen after which I just tried going normally and it worked fine.
So, far the screen black outs have never been during normal usage, happening exclusively when the laptop is not in usage. Light gaming also works fine.
ok, so change it to 1: intel_idle.max_cstate=1
save and update grub; reboot and test…
if it happens again, remove the cstate parameter, save and update grub;
then open this file: kate /etc/modprobe.d/nvidia-power-management.conf
and add there this line: options nvidia NVreg_DynamicPowerManagement=0x01
save the file and run: sudo mkinitcpio -P
reboot and test…
if it happens again, change the line to 00: options nvidia NVreg_DynamicPowerManagement=0x00
save the file and run: sudo mkinitcpio -P
reboot and test…
Using both cstate and nvidia-power-management crashed my PC to the point GPU was not even detected across reboots (I had forgot to update mkinitcpio)
The later ONLY seems to be working fine, I left my laptop on for an hour without any work with no issues. The only bigger test will be the future boot. I really hope this goes well. Thanks again for the help.
so remove the NVreg_DynamicPowerManagement option from: kate /etc/modprobe.d/nvidia-power-management.conf
save it, and dont forget to update it: sudo mkinitcpio -P
maybe its really some nvidia hardware issue, since in windows you have also the black screen…
I don’t think I even have the option for standby.
There’s Dim screen, Screen Energy Saving, Suspend session, hibernate after some time sub-option in suspend screen, that’s all.
Everything except dim screen is already turned off. Also more importantly the bigger issue is black screen at first boot so this is a bit pointless.
Currently using rcutree.gp_init_delay=1 and waiting some time before selecting the kernel seems to work fine but I have no idea if this is a proper solution or I’m just being lucky. Will let you know if this behaviour is consistent.