My laptop shows black screen after suspend.

Dear Opensuse Comunity,

I have installed a dual boot on my new HP Pavilion Power Laptop 15-cb0xx. When I supend to RAM the laptop seems to suspend correctly but when I try to wake it up it just shows a black screen and when I hit F2+CRT+ALT nothing happens. My kernel version is 4.4.114-42-default and I have not yet installed the NVIDIA drivers so I am using the discrete card. I don’t use a swap partition, I do not know if this is relevant. Can any body help me?

SPerezConesa

PS: I know I am not giving much information but I don’t know which commands can give good diagnostic information. So I am happy to hear any suggestions.

And why not the latest one? (4.4.126)

Update your system, your problem may be fixed already.
(I do remember some recent suspend/resume fixes for certain Laptops)

If that doesn’t help, you could try to uninstall drm-kmp-default, which contains updated graphics drivers from Kernel 4.9 (and would break the nvidia driver anyway).

and I have not yet installed the NVIDIA drivers so I am using the discrete card.

Note that you cannot just install and use the nvidia driver on an Optimus system (intel+nvidia hybrid graphics).
You’d need to use Bumblebee to run applications on the nvidia card

I don’t use a swap partition, I do not know if this is relevant.

This means that hibernate will not work (as it saves the current state to the swap partition).
But suspend should be fine.

I have updated the kernel and the problem persists. I have uninstalled drm and it is not the problem.

I have blindly been able to reboot the laptop typing with F2+CRT+ALT. So it seems the system is working on some level but graphically dead.

Thank you for your help! :slight_smile:

So, is this a hybrid intel+nvidia laptop. i.e. Optimus? (you mentioned nvidia and something about using the discrete card currently)
Or what graphics card does it have?

If intel (or intel+nvidia), try to install xf86-video-intel if it’s not installed, or uninstall it if it is.
In case of nvidia (only), try the same with xf86-video-nouveau.

If you’re in doubt, please provide the file /var/log/Xorg.0.log, e.g. via http://susepaste.org/.

I have a intel+nvidia. I tried installing xf86-video-intel and the result was the same.

This is my Xorg.log.0
http://susepaste.org/95536890

Hm, it doesn’t seem to use the intel driver though (even though it is installed), but rather fbdev.
Your intel chip may be too new for kernel 4.4.

Can you try again with drm-kmp-default installed, please?
And then post the Xorg log again.

Also, please post the output of this command to show what exact graphics chips you have:

/sbin/lspci -nnk | egrep -A3 "VGA|3D"

It worked!!! By instaling drm-kmp-default.

Now I have another problem hahaha. I had original uninstalled it because I wanted to intall the NVIDIA driver doing all the bu
mblebee procedure. Now if I try to install the nvidia drivers they uninstall drm-kmp-default . Is there a work around or do I
have to choose between the two?

The command /sbin/lspci -nnk | egrep -A3 “VGA|3D”

gives

00:02.0 VGA compatible controller [0300]: Intel Corporation Device [8086:591b] (rev 04)        Subsystem: Hewlett-Packard Company Device [103c:836b]
    Kernel driver in use: i915
    Kernel modules: i915


01:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:1c8d] (rev ff)
Kernel modules: nouveau
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader [10ec:522a] (rev 01)
Subsystem: Hewlett-Packard Company Device [103c:836b]

Well, one problem is that the kernel apparently doesn’t support your intel chip yet, so you need drm-kmp-default.
OTOH, nvidia will not work with drm-kmp-default installed, that will break the compilation of the kernel module because of the backports from kernel 4.9 (the kernel itself still is 4.4 after all).

The only way out of this dilemma I see is to install a newer kernel.

Unfortunately, the latest one, 4.16, is not supported by the latest stable nvidia driver yet either… Fortunately, the packages in the repo have been patched though, so if you use those it should work.

The repo with the latest kernel:
http://download.opensuse.org/repositories/Kernel:/stable/standard/

You probably also need this one for updated kernel modules (bbswitch in particular is needed for Bumblebee AFAIK):
http://download.opensuse.org/repositories/Kernel:/stable:/KMP/standard/

If you get a conflict about openssl when you install the new kernel, also add this repo:
http://download.opensuse.org/repositories/Kernel:/tools/openSUSE_Leap_42.3/

There is a downside though: the nvidia packages will probably stop working after every kernel update. You’d have to reinstall the kernel module at least, nvidia-gfxG04-kmp-default. Or just disable the repo after you installed the kernel, so that you won’t get any further updates.

Sorry for taking a little while to write back. I have installed the kernel 4.16 as you said and I have now suspend properly. The problem is I had to take off in the BIOS the secure boot, I guess because I have not intalled the ssl. I will try that next.

In addition, I know have to install the NVIDIA drivers of tumbleweed which work with 4.16 in order to use optimus. I am working on that now and I will get back ASAP with how it went.

Thank you,
Sergio

Hello again,

Maybe I am going a little bit off-topic but. Now with the suspend working and the new kernel. I cannot get the NVIDIA + bumblebee to work. I install bumblebee and NVIDIA (the easy way) as I have done in the past but now bumblebee cannot find the nvidia module.


R2D2:~ # systemctl status bumblebeed
● bumblebeed.service - Bumblebee C Daemon
   Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2018-05-02 10:13:15 CEST; 25min ago
 Main PID: 872 (bumblebeed)
    Tasks: 1 (limit: 512)
   CGroup: /system.slice/bumblebeed.service
           └─872 /usr/sbin/bumblebeed


May 02 10:13:15 R2D2 systemd[1]: Started Bumblebee C Daemon.
May 02 10:13:15 R2D2 bumblebeed[872]:     5.847358] [INFO]/usr/sbin/bumblebeed 3.2.1 started
May 02 10:38:11 R2D2 bumblebeed[872]: modprobe: ERROR: could not find module by name='nvidia'
May 02 10:38:11 R2D2 bumblebeed[872]: modprobe: ERROR: could not insert 'nvidia': Function not implemented
May 02 10:38:11 R2D2 bumblebeed[872]:  1501.051879] [ERROR]Module nvidia could not be loaded (timeout?)
May 02 10:38:11 R2D2 bumblebeed[872]:  1501.051892] [ERROR]Could not load GPU driver

And zypper does not install the nvidia-kmp modules in /lib/modules/4.16.4-1.g2ebc2ec-default/updates/ and /lib/modules/4.16.4-1.g2ebc2ec-default/weak-updates/updates/ has links pointing to /lib/modules/4.16.0-1-default/updates/ which is also empty.

I am using LEAP 42.3 with the tumbleweed NVIDIA drivers and the 4.16 kernel. Could that be the issue?

Yes.
This “weak-updates” mechanism only works with standard Leap kernel updates, not if you use the latest one.

This by itself should not be a problem as the kernel module should get installed into the current kernel modules tree, but you need to reinstall the kernel module after every kernel update as I wrote.

So, try to reinstall nvidia-gfxG04-kmp-default, e.g.:

sudo zypper in -f nvidia-gfxG04-kmp-default

Also make sure that kernel-default-devel and kernel-devel are installed in the corresponding versions. (otherwise building the kernel module will fail)

PS, regarding secure boot: AFAIK the kernels in that repo are not signed.