Package Details: linux-amd-docs 5.18.v.9-1

Git Clone URL: (read-only, click to copy)
Package Base: linux-amd
Description: Linux kernel aimed at the latest AMD Ryzen CPU based hardware (ZNVER3/MZEN3)
Upstream URL:
Licenses: GPL2
Submitter: eggz
Maintainer: eggz (NhaMeh)
Last Packager: eggz
Votes: 22
Popularity: 1.38
First Submitted: 2019-11-10 15:20 (UTC)
Last Updated: 2022-07-02 18:48 (UTC)

Pinned Comments

eggz commented on 2020-10-26 18:15 (UTC) (edited on 2021-07-22 15:56 (UTC) by eggz)

GCC11.1 is mainlined in arch, so this means znver3 support can kick off on this kernel. The graysky compile patches have been updated too.

This kernel now natively supports the znver3 arch, but this kernel will most likely keep working on all AMD ryzen hardware. It's better to be able to address certain small perks or issues per architecture now and in the future.

If you use znver2 based hardware, please use linux-amd-znver2
If you use raven based hardware, please use linux-amd-raven

eggz commented on 2019-11-10 15:23 (UTC) (edited on 2020-02-18 12:08 (UTC) by eggz)

Tired of compiling? Use this binary repo instead! Add this at the end of /etc/pacman.conf :

Server =$repo/$arch
SigLevel = Optional TrustAll

Latest Comments

dekart811 commented on 2022-07-02 16:04 (UTC) (edited on 2022-07-02 16:06 (UTC) by dekart811)

I also have no idea why it only works with vers=2.1 for me, but at this point I don't really care. As long as I can mount my share, I'm OK with that.

Maybe it has something to do with that the server is still running Ubuntu 20.04 LTS? I didn't have the time to do an upgrade yet.

eggz commented on 2022-06-30 11:22 (UTC)

SMB3_11 works here on 5.18.8 so I am still really lost in how I can help you.

dekart811 commented on 2022-06-30 10:34 (UTC)

I got it working by changing vers=3.1.1 to vers=2.1. Now my cifs share is mounting fine.

They must have changed something in the kernel, because it only happens with 5.18.8-AMD. When I downgrade to 5.18.7-AMD or boot the lts kernel (5.15.50-1) it's working without even specifying a smb version.

blackhole commented on 2022-06-29 12:36 (UTC)

Try to remove forceuid forcegid

eggz commented on 2022-06-29 11:50 (UTC)

Samba mounts work fine here on my rig using 5.18.8-AMD. It looks to me that the cause of your SMB problems lie elsewhere and have nothing to do with the kernelupgrade.

dekart811 commented on 2022-06-29 10:47 (UTC)

Since 5.18.8-AMD I'm unable to mount any cifs share, it returns error code -22. With 5.18.7-AMD it works fine.

This is from my fstab:

//mynas/myshare /mnt/nas     cifs            x-systemd.automount,_netdev,nofail,vers=3.1.1,credentials=/path/to/my/.smbcredentials,uid=1000,gid=1000,forceuid,forcegid,nofail  0       0

eggz commented on 2022-04-07 12:39 (UTC)

@pooh You already said "after upgrading to 5.17". There is no need to repeat things. Since its "only" (?) a major release in diffrence, the number of commits to sift through is just way to much to find the problem, especially when I cannot reproduce the problem on my current hardware. I'm really sorry, but theres not much i can (humanly) do from my end. If you have more useful information I remain ready to investigate, but for now: I have no idea.

Pooh commented on 2022-04-07 12:21 (UTC)

@eggz 5.16.16 works correctly.

eggz commented on 2022-04-07 10:17 (UTC)


Sorry no idea man, dont have BT issues here and the hiberate could mean a million things.

Pooh commented on 2022-04-07 05:58 (UTC)

Hi. I had a bt mouse cursor lag after upgrading to 5.17.

And sometimes the laptop hangs when coming out of hibernation.

Any idea what may be causing this?


eggz commented on 2022-03-11 14:17 (UTC)

@cgu No... that was an announcemet from more than a year ago....

Please check the config to see with which gcc this kernel was built...


cguenther commented on 2022-03-11 13:34 (UTC) (edited on 2022-03-11 13:35 (UTC) by cguenther)

@eggz Thanks for your fast response. Nevertheless it feels strange. I am using manjaro and installed your kernel manually via aur. I have every package up to date. Also my gcc version is:

gcc --version
gcc (GCC) 11.2.0

I am wondering at the moment, since you mentioned the mainlined gcc 11.1 where i am getting the 11.2 from official repos.

eggz commented on 2022-03-11 13:22 (UTC) (edited on 2022-03-11 14:18 (UTC) by eggz)


Works fine over here:

(2/2) Install DKMS modules
==> dkms install --no-depmod v4l2loopback/0.12.5 -k 5.16.14-AMD-znver2
Deprecated feature: REMAKE_INITRD
==> dkms install --no-depmod v4l2loopback/0.12.5 -k 5.16.13-arch1-1
Deprecated feature: REMAKE_INITRD
==> dkms install --no-depmod v4l2loopback/0.12.5 -k 5.16.14-AMD
Deprecated feature: REMAKE_INITRD
==> depmod 5.16.13-arch1-1
==> depmod 5.16.14-AMD-znver2
==> depmod 5.16.14-AMD

cguenther commented on 2022-03-11 13:12 (UTC) (edited on 2022-03-11 13:14 (UTC) by cguenther)

i fail to install v4l2loopback-dkms (from official repository) module with this kernel and headers:

sudo dkms autoinstall                                                                                                                                                                              Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD

Building module:
cleaning build area...
make -j32 KERNELRELEASE=5.16.14-AMD KERNEL_DIR=/usr/lib/modules/5.16.14-AMD/build all...(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.16.14-AMD (x86_64)
Consult /var/lib/dkms/v4l2loopback/0.12.5/build/make.log for more information.


DKMS make.log for v4l2loopback-0.12.5 for kernel 5.16.14-AMD (x86_64)
Fr 11. Mär 14:09:44 CET 2022
Building v4l2-loopback driver...
make -C /usr/lib/modules/5.16.14-AMD/build M=/var/lib/dkms/v4l2loopback/0.12.5/build modules
make[1]: Entering directory '/usr/lib/modules/5.16.14-AMD/build'
  CC [M]  /var/lib/dkms/v4l2loopback/0.12.5/build/v4l2loopback.o
cc1: error: incompatible gcc/plugin versions
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/
cc1: error: incompatible gcc/plugin versions
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/
make[2]: *** [scripts/ /var/lib/dkms/v4l2loopback/0.12.5/build/v4l2loopback.o] Error 1
make[1]: *** [Makefile:1846: /var/lib/dkms/v4l2loopback/0.12.5/build] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.16.14-AMD/build'
make: *** [Makefile:43: v4l2loopback.ko] Error 2

The v4l2loopback-dkms-git package seems to run in the same problem during build.

Does someone have any clue on this?

Anarconda commented on 2022-03-08 20:29 (UTC)

@eggz After upgrade to 5.16.13 rebooted my machine and, as expected, no Bluetooth. I recalled your idea of rmmods and insmods and ... it works. It seems to me a timeout too short.

Thank you very much for your time and efforts.


Anarconda commented on 2022-03-06 14:02 (UTC)

Sound reasonable.

eggz commented on 2022-03-06 13:58 (UTC)

What you are experiencing there is the fact that the bluetooth has its own firmware running. And As long if you dont shut the system down completely (power it down), that firmware will keep being in the same state.

Anarconda commented on 2022-03-06 13:51 (UTC)

Trust me: I don't believe in ghosts (not even a little bit) but:

  1. Using linux-amd no Bluetooth.
  2. Restarted with linux-zen and Bluetooth is working.
  3. Restarted with linux-amd to rmmod and insmod (as you mentioned) but no need because Bluetooth is working.

So ... Sorry about the noise.

eggz commented on 2022-03-06 13:41 (UTC)

Mentioned patches do not guarantee a 100% workaround as far as I could see. This has yet to be researched, concluded and fixed upstream before I think its worth it for me to make any sort of adoption...

As for now, does spamming this make it work after a few tries? I'm just curious..

rmmod btusb
rmmod btintel
modprobe btintel
modprobe btusb

Anarconda commented on 2022-03-06 13:06 (UTC)

Just as a reference, Bluetooth is working correctly with linux-zen 5.16.12.zen1-1 and WAS working with previous versions of linux-amd. Maybe it's related to these posts "" and the problem comes from upstairs.


eggz commented on 2022-03-06 12:57 (UTC)

I dont have any Intel BT hardware around afaik, I only see this in the config:


It's enabled. That's all I know. Sorry... :-(

Anarconda commented on 2022-03-06 11:50 (UTC)

@eggz Hi, I'm on the latest kernel (-2) and having a problem with Bluetooth "Bluetooth: hci0: Reading Intel version command failed (-110)"

Are you aware of this? Is there something I can do to solve this problem?

Thank you very much for your time and efforts.


eggz commented on 2022-03-02 15:01 (UTC)

I have -3 installed, looks like I just missed the update, ill start a recompile.

blackhole commented on 2022-03-02 14:23 (UTC)

Here with gcc version 11.2.0-4 and last linux-amd 5.16.v.12-1 dkms modules are not compiling because of gcc incompatible version.

I am using repository linuxkernels linux-amd build

eggz commented on 2022-02-18 12:29 (UTC) (edited on 2022-02-18 12:31 (UTC) by eggz)

Yeah it should be present on my kernels, I always check for stuff like that after building, installing and running them aswel.

EDIT, should be fine:

(2/2) Install DKMS modules
==> dkms install --no-depmod px4_drv/r384.7fa9f05 -k 5.16.10-SLIM
==> dkms install --no-depmod px4_drv/r384.7fa9f05 -k 5.16.10-arch1-1
==> dkms install --no-depmod px4_drv/r384.7fa9f05 -k 5.16.10-AMD
==> dkms install --no-depmod px4_drv/r384.7fa9f05 -k 5.16.10-AMD-znver2
==> depmod 5.16.10-SLIM
==> depmod 5.16.10-arch1-1
==> depmod 5.16.10-AMD
==> depmod 5.16.10-AMD-znver2

hina commented on 2022-02-18 12:27 (UTC)

Oops, does that mean I built the kernel before updating gcc?

hina commented on 2022-02-18 12:19 (UTC) (edited on 2022-02-18 12:21 (UTC) by hina)

@eggz I have the following logs (building px4_drv dkms):

make[1]: Entering directory '/usr/lib/modules/5.16.10-AMD/build'
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: gcc (GCC) 11.1.0
  You are using:           gcc (GCC) 11.2.0
  CC [M]  /var/lib/dkms/px4_drv/r384.7fa9f05/build/driver/driver_module.o
cc1: error: incompatible gcc/plugin versions
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/
cc1: error: incompatible gcc/plugin versions
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/
make[2]: *** [scripts/ /var/lib/dkms/px4_drv/r384.7fa9f05/build/driver/driver_module.o] Error 1
make[1]: *** [Makefile:1846: /var/lib/dkms/px4_drv/r384.7fa9f05/build/driver] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.16.10-AMD/build'
make: *** [Makefile:19: px4_drv.ko] Error 2

eggz commented on 2022-02-18 12:12 (UTC)

@hina yes, these are the changes:


But can you elaborate on what the problem is exactly? All I can see it's enabled:


hina commented on 2022-02-18 11:49 (UTC)

The problem with stackleak_plugin is happening again. It seems that gcc11.2 has been mainlined recently, is this the reason?

Gatenkaas commented on 2022-01-31 15:52 (UTC) (edited on 2022-01-31 16:14 (UTC) by Gatenkaas)

CONFIG_FW_LOADER_COMPRESS is not set. The new linux-firmware package 20220119.0c6a7b3-2 implements kernel firmware compression. Without it my wifi cannot find the firmware. [OK, on latest firmware 5.16-4AMD it is enabled, thank you!]]

lucastanure commented on 2022-01-31 09:28 (UTC)

I did a benchmark on this kernel with my Ryzen Threadripper 3970X.

Running the standard kernel takes 6mins and 20 seconds to fully build the Linux kernel with 64 threads. It takes 6mins and 21 seconds to build the same Linux kernel.

So this kernel doesn't improve much if you, like me, only care about compiling source code.

Thanks Lucas Tanure

eggz commented on 2022-01-27 12:54 (UTC)

I seem to be having problems with the latest kernel when I reboot a system. Poweroff is fine. I have never seen a kernelupdate with this many commits, going through them seems like hell. As of now I have no idea where this issue comes from.

eggz commented on 2022-01-22 09:25 (UTC)

Thank you for bringing this to my attention blackhole!

blackhole commented on 2022-01-22 08:09 (UTC)

I think that the problems is this:


It should set to


blackhole commented on 2022-01-22 08:05 (UTC)

After last system update with new firmware package I have a lot of errors:

platform regulatory.0: Direct firmware load for regulatory.db failed with error -2

iwlwifi 0000:05:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-67.ucode failed with error -2


This is not happening with standard archlinux kernel

Gero commented on 2022-01-17 16:14 (UTC) (edited on 2022-01-17 16:24 (UTC) by Gero)

Apologies, "CONFIG_RTW89 is not set" was indeed what I meant.

Ie: (made sure to only copy from Arch kernel github)


Thanks for your efforts!

eggz commented on 2022-01-17 15:00 (UTC)


I now see you mean CONFIG_RTW89 instead of CONFIG_RTW88. :-)

Thank you for bringing this to my attention, I will include it asap.

eggz commented on 2022-01-17 14:57 (UTC) (edited on 2022-01-17 14:58 (UTC) by eggz)

Gero, im unsure what you mean here.

This is our config right now:


CONFIG_RTW88 is included in our .config file (which forces it inside the kernel) . Also what do you mean with


Because that doesnt seem like a valid Kconfig line to me. option "n" doesn't exist. Are you refering to the commented "is not set" option?

Because it is included right now. You can check this with doing zcat /proc/config.gz | grep CONFIG_RTW88

Please clarify...

Gero commented on 2022-01-17 11:35 (UTC) (edited on 2022-01-17 16:22 (UTC) by Gero)

rtw89 for RTL8852AE wireless nics has landed in 5.16, which means I can do with one less dkms module. However, make olddefconfig with no default means CONFIG_RTW89=n.

@eggz is it possible to semi-regularly pull in upstream changes from the official Arch Linux kernel .config into linux-amd?


I'd understand if keeping up with official Arch Linux would be too much work ;)

Anarconda commented on 2022-01-10 11:27 (UTC) (edited on 2022-01-10 11:28 (UTC) by Anarconda)

Just to end this "conversation":

  1. XOrg is working with nvidia proprietary drivers using the patch linked by @blackhole.
  2. Messages about "pstore: crypto_comp-decompress failed ..." and "Bluetooth: hci0: Failed to read codec ..." are still there. Obviously, they are not related to X system.

Thanks to both of you I'm using latest and greatest.

eggz commented on 2022-01-10 10:32 (UTC)

Good, because I know nothing about nvidia and certainly nothing about closed sourced drivers, and I really intend to keep it that way.

I had an AMDGPU crash But I think its just a one-off.

Anarconda commented on 2022-01-10 10:11 (UTC) (edited on 2022-01-10 10:40 (UTC) by Anarconda)

@eggz I don't have an amdgpu but 'VGA compatible controller: NVIDIA Corporation GP104 [GeForce GTX 1060 6GB] (rev a1)'.

Edit: Sorry, I just realized that nvidia dkms is not build with this kernel. Edit 2: @blackhole Thanks. I'll try it later.

blackhole commented on 2022-01-10 10:10 (UTC)

If you have nvidia closed source driver, version 5.16 will work only with this patch to nvidia-dkms:

eggz commented on 2022-01-10 10:02 (UTC)

Hello, seems amdgpu hasnt really tested their code yet again before releasing. If you have issues, downgrade and please tell me your system.

@anarconda Unfortunatly i dont see any logs that concern your amdgpu problems :)

Anarconda commented on 2022-01-10 09:44 (UTC)

With 'local/linux-amd 5.16.v.0-2' I'm not getting X system and the screen shows messages about "pstore: crypto_comp-decompress failed, ret 0 -22!" and "Bluetooth: hci0: Failed to read codec capabilities (-56)".

Thanks for your efforts. Regards.

Gero commented on 2022-01-06 15:10 (UTC)

Hi all, thanks for your comments and for looking into it. After switching to linux-amd I soon experienced 2 crashes, but did not find it worth mentionining yet. Seeing @deemon had the same experience I decided to add my experience.

I've been trying to get a kdump kernel working to provide something more than "it crashed", but with no succes yet. However, I haven't experienced another crash since then either.

I think in the meantime the package was however updated from linux 5.15.11 to 5.15.12, so the kernel I'm running is not identical.

That's all I have unfortunately.

Anarconda commented on 2022-01-05 17:44 (UTC)

No crashes with AMD Ryzen 5 5600X 6-Core.

blackhole commented on 2022-01-05 15:26 (UTC)

Here instead no crashes with Ryzen 5800X

eggz commented on 2022-01-05 15:25 (UTC)

I attempted to fix the problem by aligning the config to the vanilla (archlinux kernel) config as best as I could. As I dont have zen3 hardware or any detailed logs, this is the best I can attempt so far ..

eggz commented on 2022-01-01 17:01 (UTC)

That's interesting, also, no idea why :-D. Ill keep searching.

Gero commented on 2022-01-01 16:37 (UTC) (edited on 2022-01-01 16:38 (UTC) by Gero)

@deemon just wanted to share I'm experiencing the same issue. I've reverted to the default Arch kernel, on which I don't experience crashes.

I'm running native Arch Linux on AMD Ryzen:

root@arch:~ # lshw -C CPU -short
H/W path            Device          Class          Description
/0/4                                processor      AMD Ryzen 7 5800H with Radeon Graphics

root@arch:~ # lsb_release -a
LSB Version:    1.4
Distributor ID: Arch
Description:    Arch Linux
Release:    rolling
Codename:   n/a

deemon commented on 2022-01-01 11:40 (UTC)

don't know why, but this kernel has crashed me like 3 times already in last week. whereas "normal" manjaro kernel has not crashed for months. have 5950X.

eggz commented on 2021-12-18 15:02 (UTC)

You can read all about it here:

All kernels do it, were just being verbose about it. Just keep calm and boot :-)

blackhole commented on 2021-12-18 13:29 (UTC)

I have this output at the first stage of booting:

Start testing find_bit() with random-filled bitmap...

What is that?

eggz commented on 2021-12-15 15:37 (UTC)

Yes this kernel is tuned for your cezanne znver3 based cpu

Archttila commented on 2021-12-15 14:44 (UTC)

hi, Is this kernel compatible with my processor? (Ryzen 5700G)

lspci | grep -i VGA
02:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev c8)

sorry for my very bad English!

astor commented on 2021-11-02 18:18 (UTC)

@eggz solved editing PKGBUILD as you said. I can confirm that it is working. Thank you very much.

eggz commented on 2021-11-02 17:53 (UTC) (edited on 2021-11-02 17:55 (UTC) by eggz)


It was an easy fix. Only one file needs modifications: ( )

To get it easily, You can replace the gitsource in the PKGBUILD of rtl8821ce-dkms-git with my forked version;


and then run a good old makepkg -fi, compilation should work then. Atleast it did for me. I don't have the hardware tho so I cant test it out myself.

eggz commented on 2021-11-02 17:31 (UTC)

Hi Astor, Thanks for letting me know.

IPX is not supported by the linux kernel since v5.15-rc1.

The module will have to update accordingly: all NET_INET_IPX_H references in the C code will need to be handled by the dev.

As of now rtl8821ce ( is deprecated untill they take action.

Ill take a look at the C code if an easy fix is possible but I won't make any promises there.

astor commented on 2021-11-02 17:05 (UTC)

I'm having issues with rtl8821ce module with this kernel: Warning, `dkms install --no-depmod -m rtl8821ce -v 1.0.5.r128.gf93db73 -k 5.15.0-AMD' returned 10

Kernel issue or module?

eggz commented on 2021-10-21 16:02 (UTC)

You can find the intel optimised version here:

NhaMeh commented on 2021-10-21 14:13 (UTC)

Could you make an Intel optimised version? Thanks!

eggz commented on 2021-10-18 16:08 (UTC)

No prob, I just want to keep the PKGBUILD as simple as possible. If people want advanced stuff its best they make the modifications on their own.

Always remember other people are using it as well. If people love to compile a certain way, it would be dangerous to override it with scripts and the likes.

avzb_arch commented on 2021-10-18 14:50 (UTC)

Sorry for my bad english, I didn't mean that.

I just want to help after reading the PKGBUILD You shared.

The newbie about maintain arch package is just me, so basically I am just ask permit to You Can I help or not.

But no problem, thanks for maintaining this, really useful.

eggz commented on 2021-10-18 13:10 (UTC)

No thanks, I dont like telling people what to do. And if people dont know how makepkg.conf works then compiling is not for them.

ps: Do you really think I'm not capable of scripting that? Wow, thx man...

avzb_arch commented on 2021-10-18 12:33 (UTC)

Hi @eggz, I'd like to add some script to automatically use CPU Cores - 1 in the PKGBUILD to the script, could You allow me?

adekmaulana commented on 2021-09-30 22:32 (UTC)

oooh i see thank you!!

eggz commented on 2021-09-30 20:52 (UTC) (edited on 2021-09-30 20:53 (UTC) by eggz)

3500U ==> AMD Picasso ==> a 12 nm refresh of Raven Ridge ==> znver1. this package is znver3 that package is znver2

You would probably want, but thats an LTS kernel (alot of ravenridge hardware have problems getting past linux 5.4, I have one of those laptops, thats why it is on LTS)

If works for you, I recommend going with that kernel. (unless you have no problems with running an LTS kernel)

adekmaulana commented on 2021-09-30 20:13 (UTC) (edited on 2021-09-30 20:37 (UTC) by adekmaulana)

i'm on amd ryzen 5 3500U so the correct one is i raven right? because it's zen+ and i'm confused

eggz commented on 2021-09-29 09:44 (UTC)

I am unable to detach the CONFIG_AS_AVX512 component from a (working) kconfig. It seems to be rooted in too many important core modules as a dependency. Things that first came to mind is raid6, kvm, and encryptions like chacha and blake2s, but the scope seems to be even bigger than that. I do not know the full list of dependencies.

To be completely clear on things: Sure, you can disable the config and then turn a blind eye, but the "makeconfig" part will reenable the module just before the kernel is compiled. The kconfig I post in PKGBUILDs will always be reflective of what the "makeconfig" has decided to do for full transparancy. I do a copy right after the compilement of the effective endresult kconfig.

If anyone can find the true dependencies of CONFIG_AS_AVX512, I am all ears, but atleast for me, the roots go way too deep.

eggz commented on 2021-09-29 06:11 (UTC)

@RCheese Good catch, but its being enabled by default by some other module(s?). Ill keep searching.

RCheese commented on 2021-09-28 18:31 (UTC)


but AVX512 doesn't support by Zen3

eggz commented on 2021-09-16 16:35 (UTC)

Yup! I had a naughty pipeline. Thanks!

Darkpelz commented on 2021-09-16 14:55 (UTC)

The sha256sum for the patch file has changed. The new checksum is 2f99d9e37f372925e054115bfead4723a328ffbdb7bf958753aab2ac48dc5673

ciupenhauer commented on 2021-09-10 19:40 (UTC)

Anyone interested in creating a linux-amd-pstate package for the new patches? I would if I knew how to compile custom patches myself

eggz commented on 2021-09-02 15:38 (UTC)

4800H = renoir = znver2, correct.

traysh commented on 2021-09-02 10:27 (UTC)

I've got a AMD Ryzen 7 4800H with Radeon Graphics. I suppose I should use linux-amd-znver2, is that correct?

eggz commented on 2021-08-25 15:25 (UTC)

Yeah, they are probably good enough on zen 3.

itoffshore commented on 2021-08-25 12:09 (UTC)

The performance impact is zero for signed modules once booted & enforcing them is a kernel boot option choice by the user. They are implemented with no issues on the following performance kernels:

  • linux-hardened-cacule
  • linux-cacule-rt
  • linux-xanmod-cacule

The cacule kernels allow AMD optimizations which is probably good enough on Zen 3.

eggz commented on 2021-08-25 07:11 (UTC)

For the same reason I disabled audit on these kernels, Hardening security is not a prio on this kernel, performance is. Signing all drivers by default and then not forcing a lockdown policy seems a pointless exercise to me (heck, signing modules in general is a bit too paranoid for my taste anyway) -- It would take away from the performance profile we have been building up.

If you want a hardened kernel, this is not the one.

itoffshore commented on 2021-08-25 02:57 (UTC) (edited on 2021-08-25 03:56 (UTC) by itoffshore)

Can you enable configuration please so that for example /usr/lib/modules/5.13.12-AMD/build/scripts/sign-file is created ? (so kernel modules can be cryptographically signed):

At the moment it is not enabled with /usr/lib/modules/5.13.12-AMD/build/scripts/sign-file.c showing in the package.

Officially supported kernels are configured with:

# CONFIG_MODULE_SIG_SHA224 is not set
# CONFIG_MODULE_SIG_SHA256 is not set
# CONFIG_MODULE_SIG_SHA384 is not set

eggz commented on 2021-08-22 07:27 (UTC)

in regards to powersaving features this kernel does not offer any special features.

ciupenhauer commented on 2021-08-21 23:11 (UTC)

Are there any notes about power saving regarding this kernel? Is it optimized to be more power hungry than default or does it not have any impact?

JP-Ellis commented on 2021-08-18 22:19 (UTC)

@eggz Thanks, the addition of fscrypt is much appreciated.

I'm not sure why there is a concern regarding performance hit as it should only apply to those people who wish to use it, and the performance degradation would only appear when it is being used. Lastly, although LUKS and fscrypt both offer encryption, they have two very different approaches and definitely are not interchangeable.

eggz commented on 2021-08-18 21:37 (UTC)

I added fscrypt support due to popular demand, but I have my reservations over its security and performance. Luks seems to be a much better way to do this...

Moo-Crumpus commented on 2021-08-05 12:37 (UTC)

however, it should not pull mkinitcpio

eggz commented on 2021-08-05 06:56 (UTC)

@Moo, no swearing and slander please. You have been warned.

Moo-Crumpus commented on 2021-08-05 06:35 (UTC) (edited on 2021-08-05 12:32 (UTC) by Moo-Crumpus)

Why does this kernel pull mkinitcpio? Think about booster and dracut, it should the users choice, not the kernels.

g99 commented on 2021-07-30 08:58 (UTC) (edited on 2021-07-30 09:09 (UTC) by g99)

subjectively, this kernel feels much snappier / faster than stock Manjaro on Picasso zen+ that is zen_ver_1

graysky commented on 2021-07-22 14:22 (UTC)

No problem

eggz commented on 2021-07-22 13:53 (UTC)

I believe this should do it. Thank you again for all your work, Graysky.

eggz commented on 2021-07-22 12:34 (UTC)

woops, unless you update your patch before I update my kernel. Good point! OK, I will implement tagging.

eggz commented on 2021-07-22 12:26 (UTC)

@Graysky My pipeline autoupdates the sha256sum in the PKGBUILD each build. I dont need to do anything for that, it is all done automatic for me each kernelversion increase, or whenever I feel like building. I will never post an outdated sha256sum.

graysky commented on 2021-07-22 12:08 (UTC)

Only problem is if I update the patch, your checksums will be wrong since I do not iterate the file name. This is why you should download the tagged version.

--- a/PKGBUILD  2021-07-22 07:59:31.000000000 -0400
+++ b/PKGBUILD  2021-07-22 08:04:48.755848604 -0400
@@ -2,6 +2,7 @@

@@ -18,19 +19,14 @@ source=("git+
         # linux package install directives for pacman
-   # patch from our graysky archlinux colleague
-   ''
+        # patch from our graysky archlinux colleague
+        "more-uarches-$_gcc_more_v.tar.gz::$_gcc_more_v.tar.gz"
-            #config.x86_64
-            #.preset file
-            #linux install file
-            #grayskypatch
-            'fa6cee9527d8e963d3398085d1862edc509a52e4540baec463edb8a9dd95bee0'
+            '49750c51711e011786888a501fb8deef26da8bcabfa71e9ad3e85ed01e2f60ef')


@@ -51,6 +47,7 @@ prepare() {
   sed -i '2iexit 0' scripts/

   # Implement all packaged patches.
+  ln -s $srcdir/kernel_compiler_patch-$_gcc_more_v/more-uarches-for-kernel-5.8+.patch ../more-uarches-for-kernel-5.8+.patch
   msg2 "Implementing custom kernel patches"
   while read patch; do
    echo "Applying $patch"

eggz commented on 2021-07-22 12:03 (UTC)

@Graysky Thank you for bringing this to my attention!

I see no problem in referencing your original source in the PKGBUILD. For my upstream kernels this seems to be no problem, I already adapted the pipelines. I will now always download your latest kernel patch (master) from your git. For non upstream kernels its a bit trickier because my pipeline works more flexible with the gentoo git, since you can dynamicly pick kernelversions there by branchname. But I will still mention you there. Thanks again and if there is anything else, just let me know.

graysky commented on 2021-07-22 10:11 (UTC)

The patch you're shipping (5010_enable-cpu-optimizations-universal.patch) is my more-uarches-for-kernel-5.8+.patch:

It's fine to pull it from gentoo's git repo, just suggesting that you hit mine directly. Look at how linux-ck does it if you want to, or just keep using gentoo as your upstream source.

% md5sum 5010_enable-cpu-optimizations-universal.patch more-uarches-for-kernel-5.8+.patch
15bc6521aae3d5aaded3da70b95ba854  5010_enable-cpu-optimizations-universal.patch
15bc6521aae3d5aaded3da70b95ba854  more-uarches-for-kernel-5.8+.patch

eggz commented on 2021-07-22 06:36 (UTC)

Hello Graysky,

I use the patches on, Are you maintaining those aswel, or? Are those the same?

graysky commented on 2021-07-21 21:56 (UTC)

You might want to link my compiler patch directly:

JP-Ellis commented on 2021-07-18 00:22 (UTC) (edited on 2021-07-18 00:22 (UTC) by JP-Ellis)

@webmeister In addition to what @eggz said, this kernel specifically omits certain features deemed unnecessary. For example, filesystem encryption is specifically disabled despite the encryption being compatible with AMD hardware.

eggz commented on 2021-07-17 18:01 (UTC)

@webmeister The config is based on my pickings, findings, and testing. Its not copy pasted from anywhere, so it will be impossible for me to give you any source except but myself. I took a look at almost every CONFIG line and researched it was still relevant for modern AMD hardware. My Friend NhaMeh (comaintainer) also assisted in this picking. This didn't sit well indeed with some people in the past searching for a vanillaarch 'drop in' replacement, but this is, for all intends and purposes, a custom kernel.

Now, for the reason why I stay away from 1:1 vanilla arch based configs, I will need to go back in the past. I started maintaining amd kernels because the vanilla config of arch linux was completely incompatible with amd and amdgpu hardware in the past (~2018) for months on end. Now I want to be very clear in this: Arch linux does not build or test anything on AMD hardware, atleast they didn't for a very large period. My kernels their intention is to keep an upstream kernel version compatible with specific amd hardware. Apperantly this was a very unique thing to do around 2018. Long story short: I will never release a kernel that doesn't run/work on AMD hardware. I'm sorry, but making a 1:1 "drop in" kernelconfig simply puts that fact into serious jeopardy.

And thank you so much for pointing out the mtune! its still an old reference. I'll fix it asap! Can't believe I missed that. Thanks again!!

webmeister commented on 2021-07-17 17:14 (UTC)

Thanks for maintaining this. What is your config.x86_64 based on? I assumed, it would follow more closely, but the diff is huge (which makes it difficult to use as a drop-in replacement).

Also, is there any reason it still says mtune=znver2 in the PKGBUILD?

eggz commented on 2021-06-28 08:27 (UTC)

Linux Kernel 5.13 git development log:

       - Revert GFX9/10 doorbell fixes, we just end up trading one bug for

Yeah, totaly didn't see that one coming ..

5.13 Coming up.

eggz commented on 2021-06-26 13:19 (UTC)

I reverted the faulty "doorbell" (thats how they call it in the git...) commits to remove the idle bug as referenced in the linux-slim and linux-amd-znver2 aur comments

eggz commented on 2021-06-24 11:37 (UTC)

FYI, With the current kernelrelease I have a problem with my SIENNA (6800 series) GPU. The idle usage is through the roof, for some reason the GPU is not clocking back. There seems to be something using it but I have no idea what. This is at the kernel level.

I have succesfully removed the problem on my linux-slim kernel by reverting the "doorbell" commits which seems to cause this high usage bug (in some way I do not understand)

I have searched around alot EVERYWHERE the last few days, and it seems to me I am the ONLY one with this problem (or a sienna gpu?), if there is a need for the fix on this kernel, let me know and I will make it so.

eggz commented on 2021-02-26 10:15 (UTC)

5.11.2 still does not contain the upstream amdgpu fixes, but atleast they are spotted in the master tree of stable:

Which leads me to believe they will finally be merged in 5.11.3

Until then, enjoy this prepatched kernel I guess..

eggz commented on 2021-02-23 13:53 (UTC)

Looks like the amdgpu patches are still not mainlined, so... enjoy this patched kernel I guess? Can't really follow why it is so hard to merge these commits to stable.

eggz commented on 2021-02-23 09:26 (UTC)

Hey fellow AMD users, this is just a PSA; Be sure to check this thread out:

As it turns out, I myself was/is also affected by those problems. But mostly the 'replug' happens so fast I don't even notice it. But my kernel logs sure does! :

Feb 23 09:45:21 eggzpc kernel: usbcore: registered new interface driver usbfs
Feb 23 09:45:21 eggzpc kernel: usbcore: registered new interface driver hub
Feb 23 09:45:21 eggzpc kernel: usbcore: registered new device driver usb
Feb 23 09:45:21 eggzpc kernel: usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
Feb 23 09:45:21 eggzpc kernel: usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
Feb 23 09:45:21 eggzpc kernel: usb: port power management may be unreliable
Feb 23 09:45:21 eggzpc kernel: usb usb6: We don't know the algorithms for LPM for this host, disabling LPM.
Feb 23 09:45:21 eggzpc kernel: usb usb8: We don't know the algorithms for LPM for this host, disabling LPM.
Feb 23 09:45:21 eggzpc kernel: usb 1-3: new full-speed USB device number 2 using xhci_hcd
Feb 23 09:45:21 eggzpc kernel: usb 5-1: new full-speed USB device number 2 using xhci_hcd
Feb 23 09:45:21 eggzpc kernel: usb 3-4: new full-speed USB device number 2 using xhci_hcd
Feb 23 09:45:21 eggzpc kernel: usb 7-2: new full-speed USB device number 2 using xhci_hcd
Feb 23 09:45:21 eggzpc kernel: usb 3-4: config 1 has an invalid interface number: 2 but max is 1
Feb 23 09:45:21 eggzpc kernel: usb 3-4: config 1 has no interface number 1
Feb 23 09:45:21 eggzpc kernel: usb 5-1: not running at top speed; connect to a high speed hub
Feb 23 09:45:21 eggzpc kernel: usbcore: registered new interface driver usbhid

Lets hope AMD adresses them soon!

eggz commented on 2021-02-18 12:52 (UTC)

I identified the AMDgpu troubles in the linux-next tree and "backported" the patch


This reverts commit 8866a67ab86cc0812e65c04f1ef02bcc41e24d68.

This breaks hotplug of HDMI on some systems, resulting in
a blank screen also causes failures for displays to light up
on other systems.

There are a bunch of other fixes in upstream (linux-next), but this one seems standalone and is compatible with the stable tree. I'm not going to put everything upstream inhere, this seems to be enough for me to supress all the AMDGPU errors.

I tested this on 2 machines already and it seems to have good results.

eggz commented on 2021-02-15 12:41 (UTC)

Hmmm, I had some trouble with the amdgpu driver on a random boot on this release, but it appears to be random and its very hard to recreate for me (it happens very rarely it seems). It could also just be my new SIENNA hardware acting up. Keep me posted if there are any major problems with amdgpu, I personally think it was just a one-off.

eggz commented on 2021-02-15 12:33 (UTC)

I am currently experiencing some trouble with building this particular kernel on the new version, please hang on while I identify the problem..

Moo-Crumpus commented on 2021-01-27 18:08 (UTC)

The point is, mkinitcpio must not be part of your kernel package at all. Which tool you use, whether dracut, mkinitcpio must not affect your kernel image package in any case. This is sad, your kernel image is well done, and this mix with mkinitcpio administration is a bad design flaw. Sorry.

eggz commented on 2021-01-27 12:04 (UTC)

Archlinux is a distro of choice, just like this kernel is a kernel of choice. No one is forcing you to use this kernel. I also had to make my own choices, deciding what is best for the greater good. I'm sorry, but I cannot please everyone. I'm using mkinitcpio. I will not support every tool on the planet for using/building this kernel, I am just one person doing this in his free time, for everyone, for free, asking absolutely nothing in return.

This kernel started when I wanted to share my efforts with the world while working around some upstream issues on AMD hardware. I do not bear any resposabilities publishing this kernel; but I always try to do whats best for everyone none the less. If the world decides that someone else must use the "linux-amd" name in AUR, I will step back and let him do all that work -- but that is not decided by one man. (well unless its an arch linux core admin I guess)

This kernel is free for use. You have lost nothing in the proces. Learn to respect other peoples choices before going on some crazy dracut crusade. This is contrived, unnecessary and unkind.

PS. I make my living working with redhat servers, so I don't have anything against RHEL based distros. I do, however, have something against people attacking other peoples free will and trying too hard to make them look very bad in public.

Moo-Crumpus commented on 2021-01-27 05:48 (UTC) (edited on 2021-01-27 06:03 (UTC) by Moo-Crumpus)

@eggz depending on mkinitcpio BECAUSE THIS IS NOT REDHAT? Archlinux is the distro of choice, there is no need for this dependency. This is contrived, unnecessary and unkind.

eggz commented on 2021-01-25 11:25 (UTC)

Because this is Arch Linux, not Red Hat. This package only uses and tunes mkinitcpio. If you deviate from the mkinitcpio tools, indeed, this kernel/package is not for you.

Moo-Crumpus commented on 2021-01-25 11:20 (UTC)

Why does this depend on mkinitcpio. dracut is available, too.

JP-Ellis commented on 2021-01-13 10:28 (UTC)

Ok, thanks for letting me know. From the description:

Linux kernel aimed at the latest AMD Ryzen CPU based hardware

I thought this was meant to be compatible with the standard Arch Linux kernel, it does not mention that it disables certain core features. You probably should update the description to make people aware that this is not a drop-in replacement for core/linux as features are removed.

eggz commented on 2021-01-13 10:16 (UTC)

This kernel is performance oriented, encryption is not part of that.

If your priority is to be more compatible with the upstream kernel, and avoid any "disparities", I suggest you install the upstream kernel :-)

JP-Ellis commented on 2021-01-13 09:46 (UTC) (edited on 2021-01-13 10:20 (UTC) by JP-Ellis)

Thanks for creating thie PKGBUILD.

I am having an issue logging in when using this kernel, but both core/linux and extra/linux-zen kernel work fine. My user is managed by systemd-homed and it appears that the issue is with access to the .homedir file. Logging in as root still works fine. I have no idea though why permissions on the linux-amd kernel would be any different. Does anyone have an idea?

I'm thinking it might be something with fscrypt not being supported in the same way?

Actually, looking at the linux-amd config, it appears that fscrypt is disbled as the CONFIG_FS_ENCRYPTION is not set. I'm also noticing that the PKGBUILD has quite a few disparities from the upstream linux PKGBUILD (for example, it still is using a .install file even though I believe these are all handled by pacman hooks now).

Scimmia commented on 2020-12-10 16:42 (UTC)

Please see the warning here:

eggz commented on 2020-10-31 11:25 (UTC) (edited on 2020-10-31 11:35 (UTC) by eggz)

I have added 'COMPRESSION="lzop"' in the mkinitcpio preset of this kernel. I find this balanced compression for the ramdisk alot faster for installing, and booting from it. Please check your preset file in /etc/mkinitcpio.d/ to make sure that this change is adopted (as there is probably a pacsave file created there instead). Also make sure you have lzop installed.

eggz commented on 2020-10-26 18:15 (UTC) (edited on 2021-07-22 15:56 (UTC) by eggz)

GCC11.1 is mainlined in arch, so this means znver3 support can kick off on this kernel. The graysky compile patches have been updated too.

This kernel now natively supports the znver3 arch, but this kernel will most likely keep working on all AMD ryzen hardware. It's better to be able to address certain small perks or issues per architecture now and in the future.

If you use znver2 based hardware, please use linux-amd-znver2
If you use raven based hardware, please use linux-amd-raven

eggz commented on 2020-10-21 07:22 (UTC)

I am going to be honest with you: I have no idea. I do not have all the hardware lying around. Mostly if vanilla kernels work so should mine. I don't do anything too radical on this kernel.

dedguy21 commented on 2020-10-20 22:36 (UTC)

I just bought a new Dell G5 SE Ryzen 9 4900hs chip with Radeon 5600 gpu. Just wondering if this Kernel is compatible?

eggz commented on 2020-09-28 13:50 (UTC)

Well Im looking to keep this package for ZEN2 now for the time being. If ZEN3 comes out this package will become ZEN3 oriented, since this is supposed to target the newest amd hardware, but ill fork this package into a linux-amd-zen2 or something.

PS if you really want a ZEN1 pkg with the current linux version, you can always checkout "linux-raven-latest" on my repo. Its a hidden package I use for some of my machines that have ZEN1 -- But other than tat Im not really looking to maintain for zen1 hardware.

Maybe not useful for you, but just putting it out there.

gebau00a commented on 2020-09-27 05:51 (UTC) (edited on 2020-09-27 05:53 (UTC) by gebau00a)

I checked a little bit in the PKBUILD file and the config. I think you're in so far right, the config does not need to be adjusted. Only in the PKGBUILD, when you enforce the compiler flags, you could replace the znver2 with native. In this case, gcc would revert to the options possible for the processor, not the ones enfored. Kernel else runs smooth without changes to the config file.

Actually I still like to use the aur package so I do not need to manually update my kernel sources and all dkms dependencies all the time. Type of lazy solution for me ;-)

eggz commented on 2020-09-25 06:44 (UTC)

Uhm... This kernel is actually made for zen2. Where in the makefile would I change what? What kind of override are you thinking about? I'm willing to take a look at this.

As you might have noticed, I always stage the configfiles myself (you can see it is always updated each release in the sources), in the olddefconfig way (save for manual intervention if needed). So it already is flexible if I forget some things, but we are talking about the config that I want to push, the config I deem best for most people (best to my capabilities).

Advanced users with their own settings can surely script around this. With your knowledge, I'm guessing it won't be that hard to create a script that automaticly handles your preferences. I already learned that adapting this kernel to everyone's personal needs would be a never ending back and forth game to play (with me in the middle of it)... I mean: if you got your own config and so your own proper kernel,... then why use this kernel?

gebau00a commented on 2020-09-24 23:59 (UTC)

Whenever I update the kernel, I replace the optimizations for Zen generation 2 with Zen generation 1, both for the kernel config as well as the makefile. Thus i would suggest: In the makefile itself, replace the znver2 with native, so it would always be use the most efficient optimizations available. For the config file, as I come originally from Gentoo where it was standard ro reuse your old config and only adjust on new options, could the aur script be changed in a way to store the old config or use the one from /proc/config.gz?

eggz commented on 2020-09-09 08:03 (UTC)

OK, Always intrested to help (where I can atleast)

Trbl commented on 2020-09-09 06:54 (UTC)

Actually nevermind my report, I don't think it's kernel related, something else changed recently that I had missed until now. Chromium stoppoed using HW acceleration, switched from EGL to ANGLE and it always seems to lock up while a youtube video is playing in the foreground/background

Sorry for blaming the kernel

eggz commented on 2020-09-08 10:54 (UTC)

So soft lock up then. That could be about anything. No idea without some pointers or other examples.

Trbl commented on 2020-09-08 08:35 (UTC)

Since the previous update, I get frequent lock-ups. Audio continues to play, Screen is frozen, input doesn't work (laptop doesn't go to sleep if I close the lid, hotkeys I've setup to kill Xorg don't seem to do anything, can't switch to a tty,..)


ralawa commented on 2020-08-31 13:01 (UTC)

Sorry eggz, I think the issue comes from the driver version on Manjaro. It uses 6.1.12-3 vs 6.1.12-4 on Archlinux. I think I have to wait for an update. Regards.

eggz commented on 2020-08-31 12:19 (UTC)

@ralawa what do you mean, "still"? This has already been fixed, I hadn't compiled the kernelheaders with the newest gcc, 10.2, with a recompile it worked again.

==> dkms install --no-depmod -m vboxhost -v 6.1.12_OSE -k 5.8.5-AMD

works fine here.

Check your config: kernel-headers and gcc version.

ralawa commented on 2020-08-31 10:31 (UTC)

Hi eggz,

I'm sorry, I still cannot compile the virtualbox drivers.

I tried, dkms install --no-depmod -m vboxhost -v 6.1.12_OSE -k 5.8.5-AMD

The error is:

Building module:
cleaning build area...
make -j8 KERNELRELEASE=5.8.5-AMD -C /usr/lib/modules/5.8.5-AMD/build M=/var/lib/dkms/vboxhost/6.1.12_OSE/build...(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.8.5-AMD (x86_64)
Consult /var/lib/dkms/vboxhost/6.1.12_OSE/build/make.log for more information.


DKMS make.log for vboxhost-6.1.12_OSE for kernel 5.8.5-AMD (x86_64)
lun. 31 août 2020 12:26:16 CEST
make: Entering directory '/usr/lib/modules/5.8.5-AMD/build'
  AR      /var/lib/dkms/vboxhost/6.1.12_OSE/build/built-in.a
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetadp/linux/VBoxNetAdp-linux.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetadp/VBoxNetAdp.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetflt/linux/VBoxNetFlt-linux.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetflt/VBoxNetFlt.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetflt/SUPR0IdcClient.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetflt/SUPR0IdcClientComponent.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetflt/linux/SUPR0IdcClient-linux.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPDrv.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPDrvGip.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPDrvSem.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPDrvTracer.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPLibAll.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/r0drv/alloc-r0drv.o
  CC [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/r0drv/initterm-r0drv.o
In file included from ./include/asm-generic/percpu.h:7,
                 from ./arch/x86/include/asm/percpu.h:556,
                 from ./arch/x86/include/asm/preempt.h:6,
                 from ./include/linux/preempt.h:78,
                 from ./include/linux/spinlock.h:51,
                 from /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/../SUPDrvInternal.h:79,
                 from /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.c:32:
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.c: In function 'supdrvOSChangeCR4':
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:38: error: 'cpu_tlbstate' undeclared (first use in this function); did you mean 'cpuhp_state'?
  760 |     RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
      |                                      ^~~~~~~~~~~~
./include/linux/percpu-defs.h:318:9: note: in definition of macro '__pcpu_size_call_return'
  318 |  typeof(variable) pscr_ret__;     \
      |         ^~~~~~~~
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:24: note: in expansion of macro 'this_cpu_read'
  760 |     RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
      |                        ^~~~~~~~~~~~~
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:38: note: each undeclared identifier is reported only once for each function it appears in
  760 |     RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
      |                                      ^~~~~~~~~~~~
./include/linux/percpu-defs.h:318:9: note: in definition of macro '__pcpu_size_call_return'
  318 |  typeof(variable) pscr_ret__;     \
      |         ^~~~~~~~
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:24: note: in expansion of macro 'this_cpu_read'
  760 |     RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4);
      |                        ^~~~~~~~~~~~~
make[2]: *** [scripts/ /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/linux/SUPDrv-linux.o] Error 1
make[2]: *** Waiting for unfinished jobs....
  LD [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetadp/vboxnetadp.o
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPDrvTracer.o: warning: objtool: .text+0x7: indirect jump found in RETPOLINE build
/var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv/SUPDrvTracer.o: warning: objtool: supdrvTracerProbeFireStub() is missing an ELF size annotation
  LD [M]  /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxnetflt/vboxnetflt.o
make[1]: *** [scripts/ /var/lib/dkms/vboxhost/6.1.12_OSE/build/vboxdrv] Error 2
make: *** [Makefile:1756: /var/lib/dkms/vboxhost/6.1.12_OSE/build] Error 2
make: Leaving directory '/usr/lib/modules/5.8.5-AMD/build'

scruffidog commented on 2020-08-27 17:08 (UTC) (edited on 2020-08-27 19:58 (UTC) by scruffidog)

HW is a Dell Inspiron 7375 with a Ryzen 2700u which is a fairly new vintage (2018-ish). I believe it is a Raven Ridge2 chipset:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Root Complex

00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 IOMMU

00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge

00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0]

00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge

00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus A

00:08.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus B

00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 61)

00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)

00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 0

00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 1

00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 2

00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 3

00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 4

00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 5

00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 6

00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 7

01:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)

02:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] (rev c3)

02:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Raven/Raven2/Fenghuang HDMI/DP Audio Controller

02:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor

02:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.1

02:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Raven USB 3.1

02:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller

03:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 61)

v5 is still no go...

eggz commented on 2020-08-27 05:43 (UTC)

I see.

Very strange. For now, since you are the only one with that problem, your problem seems to be local.

Do you have special hardware? Special motherboard? Or maybe old hardware? I do not carry along legacy and special hardware in the kconfig, maybe you need some kind of obscure southbridge module to even see the SATA devices...?

scruffidog commented on 2020-08-26 22:51 (UTC) (edited on 2020-08-26 23:00 (UTC) by scruffidog)

the initrd dumps me into the busybox shell where I was able to look at the loaded modules and also see that there is no disk anything in /dev/{disk/,sd}. That (ahci) seem to be the only obvious that I can find diff-wise in the initrd* images.

So it also looks like /sys/block/sd* is missing...

eggz commented on 2020-08-26 21:54 (UTC)

How do you know its due to missing disk devices? You'd have to describe the way it "bombs" a bit better in order for me to get what the problem is :-)

scruffidog commented on 2020-08-26 21:50 (UTC) (edited on 2020-08-26 21:51 (UTC) by scruffidog)

very strange issue with the mkinitcpio process. the generated initrd image bombs due to missing missing disk devicess. The only difference that I can find between the linux-amd and stock linux-arch is that ahci is compiled as a builtin. Am I missing something ? Using the same presets on generating the initrd images...

eggz commented on 2020-08-23 17:17 (UTC) (edited on 2020-08-23 17:17 (UTC) by eggz)

You got that backwards; thank you! I didn't even see gcc 10.2 was released. Good catch!

nerio commented on 2020-08-23 11:26 (UTC)

Yup, it's working now. Thanks a lot! :-)

eggz commented on 2020-08-23 08:53 (UTC)


With the new kernel build (compiled on gcc10.2), I do not see this error:

==> dkms install --no-depmod -m vboxhost -v 6.1.12_OSE -k 5.8.3-AMD (no errors)

Can you verify?

eggz commented on 2020-08-23 08:18 (UTC)

Oh yeah, gcc 10.2 has released! I'm going to rebuild my kernels first and then take a look at your problem. Thanks!

nerio commented on 2020-08-23 07:05 (UTC) (edited on 2020-08-23 07:16 (UTC) by nerio)

DKMS modules does not work with this kernel.

==> dkms install --no-depmod -m broadcom-wl -v -k 5.8.3-AMD
Error! Bad return status for module build on kernel: 5.8.3-AMD (x86_64)
Consult /var/lib/dkms/broadcom-wl/ for more information.
==> Warning, `dkms install --no-depmod -m broadcom-wl -v -k 5.8.3-AMD' returned 10
==> dkms install --no-depmod -m vboxhost -v 6.1.12_OSE -k 5.8.3-AMD
Error! Bad return status for module build on kernel: 5.8.3-AMD (x86_64)
Consult /var/lib/dkms/vboxhost/6.1.12_OSE/build/make.log for more information.
==> Warning, `dkms install --no-depmod -m vboxhost -v 6.1.12_OSE -k 5.8.3-AMD' returned 10
==> dkms install --no-depmod -m corefreqk -v 1.80 -k 5.8.3-AMD
Error! Bad return status for module build on kernel: 5.8.3-AMD (x86_64)
Consult /var/lib/dkms/corefreqk/1.80/build/make.log for more information.
==> Warning, `dkms install --no-depmod -m corefreqk -v 1.80 -k 5.8.3-AMD' returned 10
==> depmod 5.8.3-AMD

Following error repeats in make.log

cc1: error: incompatible gcc/plugin versions  
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/  
cc1: error: incompatible gcc/plugin versions  
cc1: error: failed to initialize plugin ./scripts/gcc-plugins/

Most probably plugin was compiled with gcc version 10.1, whereas arch is already shipped with gcc 10.2.
Please check.


Trbl commented on 2020-08-14 14:56 (UTC)

this and the rt kernel are the only kernels that boot on my ryzen 4600U. Thanks!

eggz commented on 2020-08-13 05:33 (UTC)

Looks that way. Your specific error is mentioned in the comment section of

With upstream kernels, its best to use upstream modules I guess :-)

ralawa commented on 2020-08-12 18:02 (UTC)

You have 6.1.12 and I, 6.1.10. Maybe, an issue with my version which would not be compatible with 5.8 kernels.

cat /var/lib/dkms/vboxhost/6.1.10_OSE/build/make.log
DKMS make.log for vboxhost-6.1.10_OSE for kernel 5.8.1-AMD (x86_64) mer. 12 août 2020 20:00:25 CEST make: Entering directory '/usr/lib/modules/5.8.1-AMD/build' AR /var/lib/dkms/vboxhost/6.1.10_OSE/build/built-in.a CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPDrv.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPDrvGip.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetflt/linux/VBoxNetFlt-linux.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetadp/linux/VBoxNetAdp-linux.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPDrvSem.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetadp/VBoxNetAdp.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPDrvTracer.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPLibAll.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/r0drv/alloc-r0drv.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/r0drv/initterm-r0drv.o In file included from ./include/asm-generic/percpu.h:7, from ./arch/x86/include/asm/percpu.h:556, from ./arch/x86/include/asm/preempt.h:6, from ./include/linux/preempt.h:78, from ./include/linux/spinlock.h:51, from /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/../SUPDrvInternal.h:79, from /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.c:32: /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.c: In function 'supdrvOSChangeCR4': /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:38: error: 'cpu_tlbstate' undeclared (first use in this function); did you mean 'cpuhp_state'? 760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~ ./include/linux/percpu-defs.h:318:9: note: in definition of macro 'pcpu_size_call_return' 318 | typeof(variable) pscr_ret; \ | ^~~~~~~~ /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:24: note: in expansion of macro 'this_cpu_read' 760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~~ /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:38: note: each undeclared identifier is reported only once for each function it appears in 760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~ ./include/linux/percpu-defs.h:318:9: note: in definition of macro 'pcpu_size_call_return' 318 | typeof(variable) pscr_ret; \ | ^~~~~~~~ /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.c:760:24: note: in expansion of macro 'this_cpu_read' 760 | RTCCUINTREG uOld = this_cpu_read(cpu_tlbstate.cr4); | ^~~~~~~~~~~~~ make[2]: [scripts/ /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/linux/SUPDrv-linux.o] Error 1 make[2]: Waiting for unfinished jobs.... CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetflt/VBoxNetFlt.o /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPDrvTracer.o: warning: objtool: .text+0x7: indirect jump found in RETPOLINE build /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv/SUPDrvTracer.o: warning: objtool: supdrvTracerProbeFireStub() is missing an ELF size annotation CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetflt/SUPR0IdcClient.o LD [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetadp/vboxnetadp.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetflt/SUPR0IdcClientComponent.o CC [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetflt/linux/SUPR0IdcClient-linux.o LD [M] /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxnetflt/vboxnetflt.o make[1]: [scripts/ /var/lib/dkms/vboxhost/6.1.10_OSE/build/vboxdrv] Error 2 make: [Makefile:1756: /var/lib/dkms/vboxhost/6.1.10_OSE/build] Error 2 make: Leaving directory '/usr/lib/modules/5.8.1-AMD/build'

eggz commented on 2020-08-12 14:36 (UTC)

==> dkms install --no-depmod -m vboxhost -v 6.1.12_OSE -k 5.8.1-AMD Throwed no error on my system. Did you reboot after installing the headers? Peut etre ca peut aider.

Aussi, quand ca reste la meme probleme et tu as un logfile du dkms build, tu peut montrer moi /var/lib/dkms/vboxhost/6.1.12_OSE/build/make.log ou quelque chose comme ca?

bon chance.

ralawa commented on 2020-08-12 13:29 (UTC)

Hi eggz, Thank you for your work on this kernel. I have an issue with the virtualbox driver (vboxhost) which does not compile with this kernel.

" ==> dkms install --no-depmod -m vboxhost -v 6.1.10_OSE -k 5.8.1-AMD Error! Bad return status for module build on kernel: 5.8.1-AMD (x86_64) Erreur lors de la configuration de Consult /var/lib/dkms/vboxhost/6.1.10_OSE/build/make.log for more information. ==> Warning, `dkms install --no-depmod -m vboxhost -v 6.1.10_OSE -k 5.8.1-AMD' returned 10 "


stevenHY commented on 2020-08-04 17:17 (UTC) (edited on 2020-08-04 17:18 (UTC) by stevenHY)

OK, Thank's for your help. Also, i am really appreciated with your project. I followed the arch wiki many times. It did't boot at all.

your kernels gave my PC alive.

eggz commented on 2020-08-04 17:09 (UTC)

I honestly don't know what specific option is the cause of that, they probably have crossed some AMD config of the list. I dont have a 5700xt but a vega64, so its a bit hard for me to find out.

It can also be the diffrence between linux 5.7 and 5.8, though that card should already be mainlined in 5.7 as far as I can tell...

Perhaps you can try with to answer that last question (the kernel on the testing repo of arch)

stevenHY commented on 2020-08-04 17:02 (UTC) (edited on 2020-08-04 17:09 (UTC) by stevenHY)

No No No.. Sorry about that... I just... I Just afraid that I will really rely on your Project. If you leave this Project. My PC must be dead...

So I really want to know why I can boot into the regular Arch-Linux Kernel when I installed your kernel.

eggz commented on 2020-08-04 16:52 (UTC)


If I'm reading this correctly, you can use this kernel just fine, but you don't really trust it; so you want me to figure out whats wrong with the kernel I have nothing to do with, just so you can use the kernel that completely doesn't work with your hardware?

Thats... I don't... What?

You know, I started maintaining this kernel (and other kernels) because of very poor AMD support (gpu and cpu). As far as I can tell, the vanilla arch linux kernel is never tested with, or towards, AMD hardware.

So Ill just answer your issue with: "Yes. I agree. You're welcome...?"

stevenHY commented on 2020-08-04 16:34 (UTC) (edited on 2020-08-04 16:43 (UTC) by stevenHY)

Hi there.. I have bought a New AMD-5700XT last week.. I can't boot into the system with the regular Arch-Linux Kernel.. (Did linux support AMD-5700XT right now?)

One more things.. I can boot into regular Arch-Linux Kernel when I installed your Kernel.. (sure , I can boot into your Kernel too) But I want to know why.?

If I want to make the regular Arch-Linux Kernel support AMD-5700XT by my self . How can I do?


linuxergr commented on 2020-07-31 12:16 (UTC)

Does not boot either...

linuxergr commented on 2020-07-31 11:20 (UTC)

Thanks for you answer.

The case is that any source of the overhead cannot be easily spotted. (CPU Usage has instantly peaks of 1% to 2% usage)

I have the same OS and DE + Applications on my intel i5 laptop, without any such issue.

This is the reason that I am searching if this is caused by the kernel(s).

I will try the linux-amd-raven too.


eggz commented on 2020-07-31 11:07 (UTC) (edited on 2020-07-31 11:13 (UTC) by eggz)

This CPU has MZEN2 optimisations because it is aimed at the latest AMD hardware. You can use linux-amd-raven for MZEN(zenver1) hardware. This is not some random mistake, see (EDIT) for more info.

Enabeling options like that does not change anything for other hardware.

None of the optimisations or ACPI options will have anything to do with CPU usage. A kernel, apart from system calls and some overhead, does not generate work for your CPU, unless it's overhead is legendary (which probably no kernel ever will be. Hopefully.) ALso, changing from module to internal will have almost no effect at all, and certainly not "50% cpu usage", you can take my word for that.

Perhaps it is more wise to first pinpoint where the overhead is coming from (userland or system) and then what proces or kmodule, instead of concluding it must be the kernel :-)

linuxergr commented on 2020-07-31 10:33 (UTC) (edited on 2020-07-31 11:10 (UTC) by linuxergr)

@eggz, I found out that the untrimmed config file at, has the following line enabled.


Q: shouldn't be disabled and the following to be enabled instead? CONFIG_MK8 is not set

Any further help will be appreciated, because I have a high idle 50% of CPU Usage, with all other kernels (zen, ck-k10, lts and default), and this is my main reason that I am trying to find a solution.

eggz commented on 2020-07-31 09:31 (UTC)

Small update: I declared the linux.install file, like linuxergr issue pointed out, it was a bit confusing it was not in the sources list (but it was in the git so the PKGBUILD could still use it) I also trimmed some more stuff.

take care, guys.

linuxergr commented on 2020-07-31 08:56 (UTC) (edited on 2020-07-31 08:57 (UTC) by linuxergr)

@matbonn, this is awful. At least you are sound and safe.

@eggz, I am a rather old user but never had to compile any kernel, lol. Yes, we are not using systemd. The message I get and stack on boot is exactly the Loading initram... The relative images exist at /boot/ folder

eggz commented on 2020-07-31 08:51 (UTC)

@matbonn omg that sounds so horrible! Good thing you had an extra-extra heavy PC though... This opens up new perspectives for anti theft of pc cases: stuff them with heavy gear!!

@linuxergr oh, I thought you were an old user! And only now I see your distro does not use systemd. I'm not completely sure the kernel supports non-systemd distros, but actually, it should. Here is a question right off the bat: Did your distro make a ramdisk? Also, what exactly do you see on your screen? pitch black right after grub?

matbonn commented on 2020-07-31 08:01 (UTC)

Just an update on the SSR / Chromium / OpenGL audio sync issues I was having. I did a new build that evening of the 13th and it appears to be fine now. Sorry for my late reply. They stole my dual 4k monitors at 3am...taken a while to get a replacement. PC was too heavy to carry ;).

linuxergr commented on 2020-07-31 07:29 (UTC)

Packages build with untrimmed config version Ok.

But still does not boot, on Artix.

eggz commented on 2020-07-30 16:34 (UTC)

well the file is there, and building the kernel works on this end (obviously) so I don't really know what to tell you...

you can run this to verify: git clone ; ls -l linux-amd/linux.instal

linuxergr commented on 2020-07-30 16:16 (UTC)

Well, the case is that makepkg on localbuild, is moaning, even with the default PKGBUILD: ==> ERROR: install file (linux.install) does not exist or is not a regular file.

eggz commented on 2020-07-30 11:55 (UTC)


You can always build it yourself if you replace the configfile with the older one on

Again, really sorry, but we prefer performance/trimming instead of supporting (much) older architectures, or we might aswell use a vanilla kconfig...

eggz commented on 2020-07-30 11:39 (UTC)

We dropped legacy modules from this kernel since the last trim, Im afraid phenom was using that.. we're so sorry mate... We are trying to focus on zen now..

linuxergr commented on 2020-07-30 11:28 (UTC)


On Artix Linux the binary package from, boot hangs on start.

Will go with build, and post my feedback.

My CPU is AMD Phenom II X4 955

eggz commented on 2020-07-22 17:55 (UTC) (edited on 2020-07-22 17:57 (UTC) by eggz)

Hello, As far as I know, apparmor needs the AUDIT framework to be active, which is an enormous hit on performance. In my opinion the level of security provided by apparmor and AUDIT is rarely worth it unless you are running a critical public service and you have deep knowledge in navigating through the massive audit logs (to make it actually tell you something). This kernel is aimed for desktop and performance, not for server and security. Also apparmor is from canonical, and as history has taught me its mostly wise to avoid this company, especially when their coorperate sense starts kicking in (like with MIR and UNITY).

You can always change the config yourself, but I will not keep everyone's machine occupied with logging MASSIVE amounts of data they will probably never use, need, or even see!

Yes, I also have rare GPU freezes with chromium, AMDGPU had some serious movement the last kernelversions, and I think they created some new problems by solving old ones. Seems chromium has some WebGL instructions that trigger and AMDGPU timeout (they DID some timer reworks in the past mentioning an infinite timeout), but thats just me guessing here. Guess we'll have to wait for upstream patches, it will certainly be faster than me rewriting it myself :P

salcedo commented on 2020-07-22 12:36 (UTC) (edited on 2020-07-22 12:37 (UTC) by salcedo)

This kernel might be more stable than linux-zen on my Ryzen 5 4500u. I still encounter occasional GPU freezes while watching video in chromium, but they do not seem to occur as often.

One thing to request and it will be perfect:

Please add AppArmor (see:


Setting these options makes possible the use of AppArmor as the default security model, but only if certain kernel parameters are set (details in wiki).

matbonn commented on 2020-07-13 09:27 (UTC) (edited on 2020-07-13 09:33 (UTC) by matbonn)

@eggz - Thanks for testing I'm using a 3900X, 5700XT GPU and 3600X, 5700XT. I will do more testing today. I do a screen grab using OpenGL in SSR. That way I can limit the frames and record an app instead of the whole screen. The settings on SSR are OpenGL - /usr/bin/chromium MKV - H.264 - CRF 23 - VERYSLOW - Allow FS - Vorbis 96. @3840x2160 I use SSR as the quality is just WAY WAY better than OBS and the files are almost 20% smaller. Even on the highest quality OBS is blurry (text and colours are off) compared to SSR. Compiling latest build as I post this

eggz commented on 2020-07-11 11:29 (UTC)

@MGM175 Thanks so much for this information. I missed some more new AMD mods it seems. Looks like I'm going to have to update my pipelines to warn/instruct me about new upcoming amd mods, this isn't the first time some new module slipped through my nets.

@matbonn Sorry I didn't spot this myself, I should have, but for some reason I did not have the erros. Looks like it only happens on specific AMD Raven hardware. thanks for mentioning.

New builds coming up ASAP, testing them out at the moment.

MGM175 commented on 2020-07-11 08:36 (UTC)

@eggz It seems that this kernel is missing "pci-acp3x" for "Raven/Raven2/FireFlight/Renoir Audio Processor".

Here is the probe of my HP laptop:

eggz commented on 2020-07-10 13:41 (UTC) (edited on 2020-07-10 13:42 (UTC) by eggz)

Yeah, so I went ahead and install aur/ssrt 2020.07.07.19-1, And, I have to be honest, I have completely no clue what you are talking about.. I recorded a 1920x1080 + a 2560x1080 screen at the same time both playing videos (so two total) in two chromium sessions, and I encountered zero errors, warning, or sync issues.

Im afraid that I'm completely lost at what your issue is with the kernel.

EDIT: What kind of GPU are you using??

matbonn commented on 2020-07-10 13:07 (UTC) (edited on 2020-07-10 13:09 (UTC) by matbonn)

Not sure where to mention this but I noticed something odd using this kernel and when trying to record with SimpleScreenRecorder. My audio gets stuttered and SSR says "delaying audio to keep up with video". I have tried this on both my 3600X MSI A320 Pro Max and 3900X (Asus Hero 7) with nothing else running just SSR recording a chromium session. I reboot and try with 5.4LTS and no issues. ArcoLinux. Anything I can try to investigate with? The 5.7 Kernel runs benchmarks much better than 5.4LTS. I'm also limiting the FPS to 10 so it's certainly not a bottleneck thing.

eggz commented on 2020-07-02 20:29 (UTC)

Nope, couldn't bring up any errors.

Perhaps you are building with unstable hardware? (overclock/undervolt going wrong under high load, killing random threads?)

eggz commented on 2020-07-02 10:07 (UTC)


Hi there!

I only release my kernels when the compile works, they boot, and I get X/opengl running in a DE with that kernel.

That being said, when I got time, I'll look into it by using multiple systems to build linux-amd and I hope I run in the same problem, because at this very moment I am clueless why the build didnt work for you...

Take care!

iltoga commented on 2020-07-02 09:07 (UTC)

got this while compiling with gcc (10.1.0) on amd (zen2):

  CC      arch/x86/lib/inat.o
arch/x86/lib/inat.c: In function ‘inat_get_opcode_attribute’:
arch/x86/lib/inat.c:15:9: error: ‘inat_primary_table’ undeclared (first use in this function)
   15 |  return inat_primary_table[opcode];
      |         ^~~~~~~~~~~~~~~~~~
arch/x86/lib/inat.c:15:9: note: each undeclared identifier is reported only once for each function it appears in
arch/x86/lib/inat.c: In function ‘inat_get_escape_attribute’:
arch/x86/lib/inat.c:34:10: error: ‘inat_escape_tables’ undeclared (first use in this function); did you mean ‘inat_escape_id’?
   34 |  table = inat_escape_tables[n][0];
      |          ^~~~~~~~~~~~~~~~~~
      |          inat_escape_id
arch/x86/lib/inat.c: In function ‘inat_get_group_attribute’:
arch/x86/lib/inat.c:53:10: error: ‘inat_group_tables’ undeclared (first use in this function); did you mean ‘inat_group_id’?
   53 |  table = inat_group_tables[n][0];
      |          ^~~~~~~~~~~~~~~~~
      |          inat_group_id
arch/x86/lib/inat.c: In function ‘inat_get_avx_attribute’:
arch/x86/lib/inat.c:72:10: error: ‘inat_avx_tables’ undeclared (first use in this function)
   72 |  table = inat_avx_tables[vex_m][0];
      |          ^~~~~~~~~~~~~~~
arch/x86/lib/inat.c: In function ‘inat_get_opcode_attribute’:
arch/x86/lib/inat.c:16:1: warning: control reaches end of non-void function [-Wreturn-type]
   16 | }
      | ^
make[1]: *** [scripts/ arch/x86/lib/inat.o] Error 1
make: *** [Makefile:1732: arch/x86/lib] Error 2
==> ERROR: A failure occurred in build().

eggz commented on 2020-06-18 19:23 (UTC)

You shouldn't. I mean; one should never take my word for it. Personally, I'm more a promoter of "free will" instead of obedience.

ARM_User commented on 2020-06-18 17:01 (UTC)

Hi, I'm installing this kernel rn. How does it compare to linux-zen in terms of performance. If I have an AMD Ryzen 5 1500x, why should I choose this kernel over the other thousands existing?

NhaMeh commented on 2020-06-03 11:19 (UTC)

As if you had anything better to do...

eggz commented on 2020-06-03 07:25 (UTC)

Sorry for the "late" 5.7 update. We temporarily had to move our hosting from ovh to digitalocean. (Like we don't have anything better to do...) And judging by the way OVH support is treating us... Maybe even permanently.

Let me know if the (new) repo gives you any trouble!

eggz commented on 2020-06-02 14:10 (UTC)

Our hosting provider (OVH) is having some major difficulties: renewal of our service has been rejected and results in errors. Its out of our hands. Comment the repo in pacman.conf until OVH solves our problem ...

eggz commented on 2020-05-21 09:09 (UTC)

OMG! We don't speak of shintel here... Just kidding, 'linux-test' coming right up.

usuariopolivalen commented on 2020-05-21 07:41 (UTC)


I have mistaken the cpu of the user, it was Intel so the kernel stucks at boot. Can you make the same as before with bat 0,1,t... with other "vanilla" kernel without amd pacthes please? Just to test and report to Linux this problem. Thanks in advance!

usuariopolivalen commented on 2020-05-20 15:10 (UTC) (edited on 2020-05-20 15:32 (UTC) by usuariopolivalen)

@eggz I have send the repo to the user, let's see if it fix the problems. I feel like asus have a serious disorder in them laptops -.- i hope they fix it in the future and attend the problem of now in the shot-term future.

PD: other thing, what patch have you used?

eggz commented on 2020-05-20 14:45 (UTC)

Nevermind, I pushed it directly. Feel free to test when you have the time.

eggz commented on 2020-05-20 14:25 (UTC)

Well, looks like we have to do everything ourselves. That's okay, I'm already warmed up with the gcc-10 shenanigans. Do you have specific hardware to test this on? I will provide you a testbuild on the repo in a moment. I will do it for BAT0, BATT AND BAT1.

usuariopolivalen commented on 2020-05-20 14:18 (UTC)

The problem is that another Asus put the battery in bat1 nor the batt or bat0 so.. Please tell me your opinion

usuariopolivalen commented on 2020-05-20 14:17 (UTC)

@eggz do you remember when we spoke about Asus thresholds? If you can I would need you to recompile one of those kernels but with another patch. This patch have to containe the same as the before patch . Change batt or bat0 to bat1 or add another option to the patch . May be something like: / The WMI method does not provide a way to specific a battery, so we * just assume it is the first battery. + * Note: On some newer ASUS laptops (Zenbook UM431DA), the primary/first + * battery is named BATT. / - if (strcmp(battery->desc->name, "BAT0") != 0) + if (strcmp(battery->desc->name, "BAT0") != 0 && + strcmp(battery->desc->name, "BATT") != 0 && + if (strcmp(battery->desc->name, "BAT1") != 0 ) return -ENODEV;

if (device_create_file(&battery->dev,

eggz commented on 2020-05-20 11:49 (UTC)

Still no structleak fix. The kernelconfig gets overridden during the build where structleak is disabled. Since this exact problem does not occur in my upstream 5.7 builds, I'm pretty sure this is not really intended. but I'm afraid for mainline they will just wait till it hits 5.7, So I guess until then, no structleak.

eggz commented on 2020-05-15 15:00 (UTC)

I fixed basic stackprotection, but extra kernel hardening like structleak does not seem functional on 5.6 kernels. I will wait for upstream for that one.

eggz commented on 2020-05-15 10:38 (UTC)

I temporarily disabled stack canaries and used an upstream supression patch to get the gcc-10.1 builds going. I will re enable them as soon everything catches up. Have fun.

eggz commented on 2020-05-14 21:42 (UTC)

I managed to enable gcc-10 on every kernel by disabling stack canaries like CONFIG_STACKPROTECTOR (otherwise it doesn't even boot), but on this kernel, it doesn't even get there. the build fails on gcc-10. Ill keep looking... something to do with unprintable errors in the modules.order ... what the hell ...

eggz commented on 2020-05-14 14:55 (UTC) (edited on 2020-05-14 14:57 (UTC) by eggz)

Hi Folks, I know some of you are yearning to use the first gcc10.1 build (as any true ZEN user should), but the build on 5.6 looks anything but stable. I'm working as fast as I can to implement the right fixes to get gcc-10 built kernels in our hands, but I cant promise anything!!

If you HAVE to check it out and can't wait, the 'linux-next' and 'linux-new' (mainline) did build succesfully, you can take a look at them on our repo with those exact package names -- It appears that there are gcc10 fixed present upstream. Let's go hunting.

eggz commented on 2020-05-03 17:07 (UTC)

You can keep a local copy of the git and copy it to the pkgbuild dir before the makepkg so that the source matches the copied git. With that, you only need to git pull on your local linux git, which only downloads the updates.

Thats how I do it at home. I just download the updates. But I also use other tools that rely on a git source, to implement other patches, to watch for updates, config commit comparing, and other automated stuff that escapes me for the moment.

And most people download from my repo so there is not much git hammering going on there :)

If you really are anti git, you could also edit the pkgbuild source to get the tar instead and unpack it there. But youll have to find your own links then..

Above all, that git is meant to be hammered and if its not .. Ill host it myself ;)

For the moment I wont maintain the tar way since everything is running pretty smooth and automated right now, and I dont have the time right now to deal with suprises (believe it or not, during this pandemic I have more work than ever..) I might look into it when I'm feeling more adventurous..

Again, if speed is important to you and you really want to leave the git alone, the repo doesnt bite ;)

Thank you for using my kernel and appreciating our work!

anaconda commented on 2020-05-03 13:48 (UTC)

Wouldn't it be a very small change to the PKGBUILD though? You can keep your local pipeline and only change it for here. Or does your local pipeline involve downloading this package? I'm grateful for your work on this package, so don't worry if this is something you cannot do, I'm just wondering. This wouldn't be so bad if we could set "--depth 1" for git cloning for AUR packages, this just hammers the git servers for no reason at all.

eggz commented on 2020-05-03 10:58 (UTC)

Sorry, I use a local git at home so I can streamline the AUR and my repo builds, it's much easier that way (mostly because of the stuff already in place) ..

If you are looking for speed you can always use my repo..

If I really wanted to push your change I have to change my entire pipeline of kernel autobuilds (with autodetection of changes and other small and bigger tools that expects a git repo present) from local to aur to repo... It would take me a terribly long time for almost the same result...

Sorry, I hope you understand..

anaconda commented on 2020-05-03 10:50 (UTC)

Can you modify your PKGBUILD to download the tarball from instead of cloning the whole linux repository? On some connections it takes longer to download than it does to compile.

eggz commented on 2020-04-21 08:25 (UTC)

Seems that the upstream code finally caught up, amdgpu fix no longer needed.

bedson commented on 2020-04-20 17:14 (UTC)

@eggz thank you! New build working like a charm :-)

eggz commented on 2020-04-19 21:29 (UTC) (edited on 2020-04-19 22:06 (UTC) by eggz)

@bedson yes, I have got the same patch implemented on my linux-amd-raven kernel suggested by markuschaaf. ( Wait, you were first! )

Going to implement it here aswell. Hang on. Thank you for your attention!

bedson commented on 2020-04-19 10:31 (UTC) (edited on 2020-04-19 14:37 (UTC) by bedson)

Thanks @eggz The shutdown process runs correctly, however, when the motherboard should poweroff, the process hangs (black screen). It wasn't there before. If you need something to diagnose the problem, write and I'll do it.

I downloaded logs from the entire last session - complete journalctl -b:

Edit: Downgrade did not help. Some other package had to mess up something - systemd? I keep searching.. Maybe?


eggz commented on 2020-04-19 09:34 (UTC)

Hi there Bedson,

Since I haven't seen your issue anywhere on any system on the new kernel, I'm going to need more info :), where exactly does systemd hang during the shutdown proces?

bedson commented on 2020-04-19 06:24 (UTC)

Thank you for your time. Without your kernel I can't use 3400G on linux but in the latest build (both linux-amd and raven) the computer does not turn off (B450). I will be grateful for the tips. Greetings.

eggz commented on 2020-04-03 06:16 (UTC) (edited on 2020-04-03 06:26 (UTC) by eggz)

woops! Thanks Hina!

hina commented on 2020-04-02 23:54 (UTC)

I have failed to check sums. Did you commit change of config.x86_64?

==> Making package: linux-amd 5.6.v.2-1 (Fri Apr  3 08:51:44 2020)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating linux git repo...
Fetching origin
  -> Found config.x86_64
  -> Found linux-amd.preset
  -> Found 5012_enable-cpu-optimizations-for-gcc91.patch
  -> Found asusbat.patch
==> Validating source files with sha256sums...
    linux ... Skipped
    config.x86_64 ... FAILED
    linux-amd.preset ... Passed
    5012_enable-cpu-optimizations-for-gcc91.patch ... Passed
    asusbat.patch ... Passed
==> ERROR: One or more files did not pass the validity check!

eggz commented on 2020-03-26 10:31 (UTC)

@agm thank you for the heads up!! I will get on it right away. This option must be a new one of linux 5.5 and I completely failed to notice it.

This is what I love about communities like AUR in linux. Thank you so much for your contribution and vigilance.

usuariopolivalen commented on 2020-03-26 09:49 (UTC)

@eggz I am interested in testing something about HDCP in linux but it will need : DRM_AMD_DC_HDCP

CONFIG_INTEL_MEI_HDCP in the build. The future release can you config them at build time please? ( the intel ones for me is not needed anyways)

I want to test if firefox can make use of the HDCP of amd by default or is there any more work needed.

Thanks in advance

usuariopolivalen commented on 2020-03-20 11:17 (UTC)

@eggz thanks for mantain that patch I am not sure if my girlfriend is the only person who uses it.. but much thanks.

eggz commented on 2020-02-26 12:16 (UTC)

If I had the time, I'd flood that asuswmi module with printing debug info so I'd get to know the kernel ACPI modules and all that, but for now, I'm glad the experts are taking a look at it in my place :)

usuariopolivalen commented on 2020-02-26 11:48 (UTC)

@eggz luck with your pc, wish you can fix it

eggz commented on 2020-02-25 07:28 (UTC) (edited on 2020-02-25 07:39 (UTC) by eggz)

I'm not sure what you mean, the suggested patch in that code is the exact same thing as the current patch I offer. theres just a linebreak right in the middle, maybe the coder was using a windows with a small putty screen? xD. And I will say the same as I always do when during workhours: If I did this stuff just for the credit, Man, I would have dried and burned out a long time ago. It is not needed, I'm just glad I could help. Also most of it was about your suggestion, so you actually found it :-)

usuariopolivalen commented on 2020-02-24 21:51 (UTC)

@eggz the patch is sent. Can you build your kernel with thaat patch for testing? It is suppose to be your patch anyways :)

PD: thanks in advance, thanks anyway, and much thnanks for all :) wanna credit for this? I think I can try to do it if you want

usuariopolivalen commented on 2020-02-22 12:51 (UTC)

It should be accepting at least the limits on the charge. Try in Windows if you can please if not. Pls give info in that link.

eggz commented on 2020-02-22 10:30 (UTC)

@agm yeah about being busy, I know the feeling :) Im working on it now.

I have a GL702ZC, it was the first ryzen laptop for ASUS, So I think they gave it a B treatment back then. (it shipped with a broken BIOS, and they updated it later...)

usuariopolivalen commented on 2020-02-22 01:08 (UTC)

@eggz both of them were working good :) sorry for the late response i have been very busy these days. I am now having the file that control the charges and the limits are working with the backwards compability. What asus are you using? it is something weird that your asus wmi doesn't control the battery

eggz commented on 2020-02-20 20:27 (UTC)

Can you say if it was the dirty BATT override (-3, or the backwards compatibility one (-2, that worked? I really liked my way better...

I never had the file so asuswmi is not working for my hardware at all. But I can patch it for other people like you.

usuariopolivalen commented on 2020-02-20 18:58 (UTC)

@eggz sorry. Put the patch of Asus again with you backwards compability please. The limits of the battery were working good. But only 80, 60 and 100 percent values are accepted, with other values the laptop just ignore them. Try to edit that file. You will get limits on your battery charge.

dunkiper commented on 2020-02-19 18:39 (UTC)

@eggz Sorry, noob fault. I didn't reboot. Now It worked perfect! thanks!

eggz commented on 2020-02-19 06:46 (UTC)


is this virtualbox-host-dkms-6.1.2-1-x86_64 ?

Nevermind what I said (without looking, silly me!), it seems to be working for me; ==> dkms install vboxhost/6.1.2_OSE -k 5.5.4-AMD (no errors)

Did you reboot after installing the headers/kernel and then install the dkms??

eggz commented on 2020-02-19 06:39 (UTC)

@agm i have /sys/class/power_supply/BAT0/ but not the charge_* file. I had placed debug messages down in the asus wmi module, and it is not finding/adding batteries at all. The only section that does something is the initialisement. So asuswmi doesnt work/do anything on my laptop aswell.

I have BAT0 according to the generic acpi module.

It seems asus wmi only supports specific laptop models. I think im going to delete the patch as this seems pointless.

@dunkiper it seems the vboxdrv does not support structleak, a proven vulnerability. I have serveral other dkms modules (3+) on other systems that work fine, so this seems a specific vbox-dkms issue (why am I not supprised...) with unsafe struct declarations.

Ill have a look at it anyway to see if it can be mitigated.

dunkiper commented on 2020-02-18 22:06 (UTC)

I tried to install your packages linux-amd and linux-amd-headers, but then virtualbox DKMS says this:

==> dkms install vboxhost/6.1.2_OSE -k 5.5.4-AMD Error! Bad return status for module build on kernel: 5.5.4-AMD (x86_64) Consult /var/lib/dkms/vboxhost/6.1.2_OSE/build/make.log for more information.

In the log says something like this:

make: se entra en el directorio '/usr/lib/modules/5.5.4-AMD/build' AR /var/lib/dkms/vboxhost/6.1.2_OSE/build/built-in.a CC [M] /var/lib/dkms/vboxhost/6.1.2_OSE/build/vboxdrv/linux/SUPDrv-linux.o CC [M] /var/lib/dkms/vboxhost/6.1.2_OSE/build/vboxdrv/SUPDrv.o CC [M] /var/lib/dkms/vboxhost/6.1.2_OSE/build/vboxnetadp/linux/VBoxNetAdp-linux.o CC [M] /var/lib/dkms/vboxhost/6.1.2_OSE/build/vboxnetflt/linux/VBoxNetFlt-linux.o cc1: error: incompatible gcc/plugin versions cc1: error: no se puede inicializar el plugin ./scripts/gcc-plugins/ cc1: error: incompatible gcc/plugin versions cc1: error: no se puede inicializar el plugin ./scripts/gcc-plugins/

I suppose I am doing something wrong or missing something on virtualbox kernel module.

thanks in advance

usuariopolivalen commented on 2020-02-18 20:38 (UTC)

@eggz It is not working in my girlfriend's laptop. Don't know why, your battery is BAT0 or BATT? if it is BAT0 you can edit in.. nano /sys/class/power_supply/BAT0/charge_end_control_threshold ( the last path I am not very sure) and put the percent you want to have limits on your battery charge. The only thing is happening to my girlfriend is that her laptop is putting the battery in BAT0, not BATT ones. Try it and tell me. It is suppose to work well with asus laptops...

eggz commented on 2020-02-18 19:07 (UTC)

I did some debugging, and for my laptop asus wmi is not responsible at all for any battery stuff but the ACPI interface is. For my laptop its not used at all, BAT0 is added with acpi, it doesnt matter what I write in asus_wmi.

So if you're not having any positive results I'm probably going to revert, it's probably not worth it then.

eggz commented on 2020-02-18 16:27 (UTC)

uhm okay,

can you try

with pacman -U?

No need to spam other people for this. :-)

usuariopolivalen commented on 2020-02-18 15:42 (UTC) (edited on 2020-02-18 15:46 (UTC) by usuariopolivalen)

The batttery is not using the thresholds,,the file exists but there is no working limits. Don't know why. Can you put another package with the only change I said before with no backware compability . It is to see if it is working well without the backwards compatibility

eggz commented on 2020-02-18 14:50 (UTC)

Yes repo is always synced with AUR. I hope my backwards compatible move worked but I think it did. My asus laptop uses BAT0 and the wmi interface still seems to work.

usuariopolivalen commented on 2020-02-18 14:16 (UTC)

@eggz is in your repo, no? I will try this afternoon because I am busy and the laptop is from my girlfriend. I was seeing how to do it in the moment u have read it, much thanks eggz. Anyways I have discovered that patch the kernel with only one line is so easy. The only thing is that after that I have to compile with a core 2 duo... XD

eggz commented on 2020-02-18 11:59 (UTC) (edited on 2020-02-18 12:03 (UTC) by eggz)


I have retained backwards compatibility with doing this, for whatever it is worth:

if ( (strcmp(battery->desc->name, "BAT0") != 0) && (strcmp(battery->desc->name, "BATT") != 0) )

Can you check if it has the desired effect on your hardware?

usuariopolivalen commented on 2020-02-18 09:11 (UTC)

@eggz Can you try to compile this kernel changing this line: from BAT0 to BATT and I will try from your repository please?

eggz commented on 2020-02-02 09:49 (UTC)

For now this package is only CPU oriented, I might do something (new package?) in the future for upstream amdgpu patches, but for now I don't have the time for that...

usuariopolivalen commented on 2020-02-01 14:51 (UTC)

withouth having time to benchmark good kernel, may be it is possible to put paches of amgpu amd's git too? I am running this kernel in a lenovo e595 with ryzen 7 2700U

Anonymo commented on 2020-01-14 19:36 (UTC)

Thank you for this. Running good on my T495.

eggz commented on 2019-11-10 15:23 (UTC) (edited on 2020-02-18 12:08 (UTC) by eggz)

Tired of compiling? Use this binary repo instead! Add this at the end of /etc/pacman.conf :

Server =$repo/$arch
SigLevel = Optional TrustAll