Manjaro detects the wrong GPU which is resulting in poor performance and hangs on native games

Oh. Huh … where did I get those? … anyways.
Still a problem with you loading radeon.
Lets just do the update and reinstall drivers thing first

sudo pacman-mirrors -f && sudo pacman -Syyu
sudo mhwd -f -i pci video-linux

(then you know reboot and lets check inxi -Gazy again)

After running the commands and rebooting, here is the output from inxi -Gazy:

Graphics:
  Device-1: AMD Mullins [Radeon R3 Graphics] vendor: Hewlett-Packard 
  driver: radeon v: kernel alternate: amdgpu bus ID: 00:01.0 
  chip ID: 1002:9850 
  Device-2: Cheng Uei Precision Industry (Foxlink) type: USB driver: uvcvideo 
  bus ID: 4-1.2:4 chip ID: 05c8:038f serial: <filter> 
  Display: server: X.Org 1.20.8 driver: ati,radeon unloaded: modesetting 
  alternate: fbdev,vesa display ID: :0.0 screens: 1 
  Screen-1: 0 s-res: 1600x900 s-dpi: 96 s-size: 423x238mm (16.7x9.4") 
  s-diag: 485mm (19.1") 
  Monitor-1: eDP res: 1600x900 hz: 60 dpi: 106 size: 382x215mm (15.0x8.5") 
  diag: 438mm (17.3") 
  OpenGL: renderer: AMD KABINI (DRM 2.50.0 5.8.1-3-MANJARO LLVM 10.0.1) 
  v: 4.5 Mesa 20.1.5 direct render: Yes 

I believe it remained the same.
Again, thank you for the help :slight_smile:

Thats different.
amdgpu wasnt listed before.
But you still want it instead of radeon.

**EDIT. oh wait a sec. **
Please do this first:
I notice you are on kernel 5.6 which is EOL.
Lets make sure you are up to date and install a current stable kernel:

sudo pacman-mirrors -f && sudo pacman -Syyu
sudo mhwd-kernel -i linux57

then if no errors reboot and continue…

Can you please return:

cat /etc/X11/{mhwd,xorg.conf}.d/*
grep MODULES= /etc/mkinitcpio.conf
mhwd -li
inxi -Fazy

…I am thinking there might be something forcing it … or conversely we can force amdgpu …

1 Like

I notice you are on kernel 5.6 which is EOL.

My apologies, I know you had already pointed that out but I sincerely thought I had updated to the latest kernel. I used the graphical settings manager to install kernel 5.8 and it shows as running there. I also thought that this line in my inxi output meant I’m running kernel 5.8.1-3, which is the same version number as shown in the graphical settings manager:

  OpenGL: renderer: AMD KABINI (DRM 2.50.0 5.8.1-3-MANJARO LLVM 10.0.1) 

In any case I’ve run the commands you posted to install kernel 5.7 through mhwd.

Now the output of each command you listed:

[leo@leo-zen ~]$ cat /etc/X11/{mhwd,xorg.conf}.d/*
cat: '/etc/X11/mhwd.d/*': Ficheiro ou pasta inexistente
# Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout" "pt"
        Option "XkbModel" "pc105"
EndSection
[leo@leo-zen ~]$ grep MODULES= /etc/mkinitcpio.conf
#     MODULES=(piix ide_disk reiserfs)
MODULES=""
[leo@leo-zen ~]$ mhwd -li
> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
           video-linux            2018.05.04                true            PCI


Warning: No installed USB configs!
[leo@leo-zen ~]$ inxi -Fazy
System:
  Kernel: 5.8.1-3-MANJARO x86_64 bits: 64 compiler: N/A 
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.8-x86_64 
  root=UUID=2e2611f5-154a-4072-84d3-219d22bd7fa1 rw quiet apparmor=1 
  security=apparmor udev.log_priority=3 
  Desktop: Xfce 4.14.2 tk: Gtk 3.24.20 info: xfce4-panel wm: xfwm4 
  dm: LightDM 1.30.0 Distro: Manjaro Linux 
Machine:
  Type: Laptop System: HP product: HP Notebook v: Type1ProductConfigId 
  serial: <filter> Chassis: type: 10 serial: <filter> 
  Mobo: HP model: 8224 v: 84.26 serial: <filter> UEFI: Insyde v: F.45 
  date: 06/10/2020 
Battery:
  ID-1: BAT0 charge: 39.6 Wh condition: 39.6/39.6 Wh (100%) volts: 16.7/14.6 
  model: 131-42-6E HS04041 type: Li-ion serial: <filter> status: Full 
CPU:
  Topology: Quad Core model: AMD E2-7110 APU with AMD Radeon R2 Graphics 
  bits: 64 type: MCP arch: Puma family: 16 (22) model-id: 30 (48) stepping: 1 
  microcode: 7030106 L2 cache: 2048 KiB 
  flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm 
  bogomips: 14379 
  Speed: 998 MHz min/max: 1000/1800 MHz Core speeds (MHz): 1: 998 2: 998 
  3: 998 4: 998 
  Vulnerabilities: Type: itlb_multihit status: Not affected 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: 
  disabled, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: AMD Mullins [Radeon R3 Graphics] vendor: Hewlett-Packard 
  driver: radeon v: kernel alternate: amdgpu bus ID: 00:01.0 
  chip ID: 1002:9850 
  Device-2: Cheng Uei Precision Industry (Foxlink) type: USB driver: uvcvideo 
  bus ID: 2-1.2:4 chip ID: 05c8:038f serial: <filter> 
  Display: x11 server: X.Org 1.20.8 driver: ati,radeon unloaded: modesetting 
  alternate: fbdev,vesa display ID: :0.0 screens: 1 
  Screen-1: 0 s-res: 1600x900 s-dpi: 96 s-size: 423x238mm (16.7x9.4") 
  s-diag: 485mm (19.1") 
  Monitor-1: eDP res: 1600x900 hz: 60 dpi: 106 size: 382x215mm (15.0x8.5") 
  diag: 438mm (17.3") 
  OpenGL: renderer: AMD KABINI (DRM 2.50.0 5.8.1-3-MANJARO LLVM 10.0.1) 
  v: 4.5 Mesa 20.1.5 direct render: Yes 
Audio:
  Device-1: AMD Kabini HDMI/DP Audio vendor: Hewlett-Packard 
  driver: snd_hda_intel v: kernel bus ID: 00:01.1 chip ID: 1002:9840 
  Device-2: AMD FCH Azalia vendor: Hewlett-Packard driver: snd_hda_intel 
  v: kernel bus ID: 00:14.2 chip ID: 1022:780d 
  Sound Server: ALSA v: k5.8.1-3-MANJARO 
Network:
  Device-1: Realtek RTL810xE PCI Express Fast Ethernet vendor: Hewlett-Packard 
  driver: r8169 v: kernel port: 3000 bus ID: 02:00.0 chip ID: 10ec:8136 
  IF: eno1 state: down mac: <filter> 
  Device-2: Realtek RTL8723BE PCIe Wireless Network Adapter 
  vendor: Hewlett-Packard driver: rtl8723be v: kernel port: 2000 
  bus ID: 03:00.0 chip ID: 10ec:b723 
  IF: wlo1 state: up mac: <filter> 
Drives:
  Local Storage: total: 465.76 GiB used: 26.48 GiB (5.7%) 
  SMART Message: Required tool smartctl not installed. Check --recommends 
  ID-1: /dev/sda vendor: Toshiba model: MQ01ABF050 size: 465.76 GiB 
  block size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s 
  rotation: 5400 rpm serial: <filter> rev: 4C scheme: GPT 
Partition:
  ID-1: / raw size: 78.52 GiB size: 76.79 GiB (97.79%) used: 26.41 GiB (34.4%) 
  fs: ext4 dev: /dev/sda6 
Swap:
  Alert: No Swap data was found. 
Sensors:
  System Temperatures: cpu: 48.0 C mobo: 34.0 C gpu: radeon temp: 47 C 
  Fan Speeds (RPM): N/A 
Info:
  Processes: 174 Uptime: 14m Memory: 3.31 GiB used: 1.12 GiB (34.0%) 
  Init: systemd v: 245 Compilers: gcc: 10.1.0 Packages: pacman: 1139 lib: 339 
  flatpak: 0 Shell: Bash v: 5.0.18 running in: xfce4-terminal inxi: 3.1.05 

Ok …
Lets edit a few things:
/etc/mkinitcpio.conf on the MODULES line we want it to look like this
MODULES=(amdgpu)
And at /etc/default/grub on the GRUB_CMDLINE_LINUX line we want it to look like this (assuming no other options):
GRUB_CMDLINE_LINUX="radeon.modeset=0"
Then run

sudo mkinitcpio -P
sudo update-grub

and reboot and check your inxi again

I edited the files and ran the commands but now Manjaro doesn’t boot, so I changed to a terminal through Alt+F2 to undo the changes, but not before getting the output of inxi -Gazy:

Graphics:
  Device-1: AMD Mullins [Radeon R3 Graphics] vendor: Hewlett-Packard 
  driver: N/A alternate: radeon, amdgpu bus ID: 00:01.0 chip ID: 1002:9850 
  Device-2: Cheng Uei Precision Industry (Foxlink) type: USB driver: uvcvideo 
  bus ID: 2-1.2:4 chip ID: 05c8:038f serial: <filter> 
  Display: server: X.org 1.20.8 driver: ati unloaded: modesetting,radeon 
  alternate: fbdev,vesa tty: 200x56 
  Message: Advanced graphics data unavailable in console. Try -G --display 

Mk. I guess lets treat it like its one of those islands cards:

sudo pacman -S amdgpu-experimental

(and reboot with systemctl reboot)

Ok, now I get a completely black screen upon boot and I can’t change to a terminal. I’m afraid I don’t know how to get out of this one :sweat_smile: I suppose we’d use kernel parameters to get to a terminal and undo the changes but I’m not familiar enough with them.

Also, just to be clear, I undid the previous changes to the config files before installing amd-experimental so that Manjaro would boot again. You recommended a reboot from a terminal so I got the impression that you might think Manjaro still wasn’t booting.

You can boot into runlevel 3 as outlined here:

(then you can uninstall the package, edit files, set/unset options, etc)

1 Like

I’ve followed the instructions to boot into runlevel 3 as detailed in your post but Manjaro still booted to an unresponsive blackscreen. I’m sure I followed the right procedure because I tried it in another computer with Manjaro and it worked correctly, so since I haven’t moved anything into this install yet I ended up simply reinstalling Manjaro instead to get around the problem.

Any more ideas?

Thank you for your help so far, I’ve learned quite a bit.

You probably made a typo right here:

as no driver was loaded. Go to the step above that and try again…

:thinking:

I tried it again and got the same result: Manjaro doesn’t boot but upon changing to a TTY the output of inxi -Gazy shows no driver loaded.

I don’t think I made any typo in editing the files according to cscs’ instructions, but here are the contents of the edited files, just in case:

/etc/mkinitcpio.conf:

# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES=(piix ide_disk reiserfs)
MODULES=(amdgpu)

# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()

# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.
FILES=""

# HOOKS
# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No raid, lvm2, or encrypted root is needed.
#    HOOKS=(base)
#
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS=(base udev autodetect block filesystems)
#
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev block filesystems)
#
##   This setup assembles a pata mdadm array with an encrypted root FS.
##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
#    HOOKS=(base udev block mdadm encrypt filesystems)
#
##   This setup loads an lvm2 volume group on a usb device.
#    HOOKS=(base udev block lvm2 filesystems)
#
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr, fsck and shutdown hooks.
HOOKS="base udev autodetect modconf block keyboard keymap filesystems"

# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"

# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()

/etc/default/grub:

GRUB_DEFAULT=saved
GRUB_TIMEOUT=10
GRUB_TIMEOUT_STYLE=hidden
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet apparmor=1 security=apparmor udev.log_priority=3"
GRUB_CMDLINE_LINUX="radeon.modeset=0"

# If you want to enable the save default function, uncomment the following
# line, and set GRUB_DEFAULT to saved.
GRUB_SAVEDEFAULT=true

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices
#GRUB_ENABLE_CRYPTODISK=y

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'videoinfo'
GRUB_GFXMODE=auto

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.
GRUB_COLOR_NORMAL="light-gray/black"
GRUB_COLOR_HIGHLIGHT="green/black"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/usr/share/grub/background.png"
GRUB_THEME="/usr/share/grub/themes/manjaro/theme.txt"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"
1 Like

Can you remove the changes, (reboot to ‘normal’,) then run

dmesg | grep -i amd
1 Like

After reverting the changes, here is the output of the command:

[    0.000000]   AMD AuthenticAMD
[    0.013641] RAMDISK: [mem 0x36d7f000-0x376b6fff]
[    0.217368] Spectre V2 : Mitigation: Full AMD retpoline
[    0.331871] smpboot: CPU0: AMD E2-7110 APU with AMD Radeon R2 Graphics (family: 0x16, model: 0x30, stepping: 0x1)
[    0.332244] Performance Events: AMD PMU driver.
[    0.819000] amd_uncore: AMD NB counters detected
[    0.819005] amd_uncore: AMD LLC counters detected
[    0.819393] perf: AMD IBS detected (0x000000ff)
[    0.880954] AMD-Vi: AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>
[    0.880962] AMD-Vi: AMD IOMMUv2 functionality not available on this system
[    1.856378] ehci-pci 0000:00:12.0: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround
[    1.873653] ehci-pci 0000:00:13.0: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround
[   17.207827] ATOM BIOS: AMD
[   17.394230] EDAC amd64: F16h_M30h detected (node 0).
[   17.394281] EDAC amd64: Node 0: DRAM ECC disabled.
[   17.444184] EDAC amd64: F16h_M30h detected (node 0).
[   17.444226] EDAC amd64: Node 0: DRAM ECC disabled.
[   17.497823] EDAC amd64: F16h_M30h detected (node 0).
[   17.497876] EDAC amd64: Node 0: DRAM ECC disabled.
[   17.547637] EDAC amd64: F16h_M30h detected (node 0).
[   17.547691] EDAC amd64: Node 0: DRAM ECC disabled.
[   23.395003] [drm] amdgpu kernel modesetting enabled.
[   23.395230] amdgpu: Topology: Add CPU node

Interesting … it kinda looks like amdgpu is loaded. Or begins to be.

After reading everything i guess it is this solution:

You have to use DRI3, but you use DRI2.5

We did that already (the options would have been added by amdgpu-experimental)

The problem is … the card is sorta recognized as volcanic+ … none of which should need the things anyways … but it still wont load amdgpu properly … if forced (disable radeon) we are still left with black screen.

maybe … an idea would be to use xorg to load amdgpu.
ex:
/etc/X11/xorg.conf.d/99-amdgpu.conf

Section "Device"
     Identifier "AMD"
     Driver "amdgpu"
     Option "TearFree" "True"
     Option "SWCursor" "True"
 EndSection

Yeah in the thread the OP was faced to the same problem, but adding amdgu and radeon to MODULES= should help, instead of only amdgpu. Sorry, i dont use a amd gpu just saying what happened there and it worked somehow for him.

Ok … that could be a difference … I neglected to add radeon as the secondary module.

But … now that you mention it … I think its a problem with the experimental package (this is actually my first time recommending it! :blush: )
It seems it adds a few more things . namely

# enable Display Core for Linux >=4.15
options amdgpu dc=1
# Add 10bit color support
options amdgpu deep_color=1
# Enable experimental hardware support in generall
options amdgpu exp_hw_support=1

Whereas I would have just done boot options:

radeon.si_support=0 amdgpu.si_support=1

or

radeon.cik_support=0 amdgpu.cik_support=1

(depending on whether it was southern or sea island and along with mkinitcpio)

So its possible that something like the dc option is actually the issue.

In any case … sure … I agree … might as well try the manual/minimal way and see.

2 Likes

I’m not an AMD user neither, but doesn’t that point to a hardware problem?

:scream:

1 Like