[RESOLVED] [Arch linux] Kernel configuration / MTRR_SANITIZER_SPARE_REG_NR_DEFAULT
burster
Status: New User - Welcome
Joined: 01 Dec 2020
Posts: 2
Reply Quote
Hello forum, hello Steven!

System: Arch linux
i5-760 'nehalem', 8GB RAM
Kernel: 5.9.13-lqx1-1-lqx #1 ZEN SMP PREEMPT (and previous versions)
Downloaded from: https://liquorix.net/archlinux/$repo/$arch

Because of a problem with my PC I checked dmesg and found an some errors with my RAM:
[new user link]

Short version:
[burster@liza ~]$ dmesg | grep mtrr
[ 0.000648] MTRR default type: uncachable
[ 0.000649] MTRR fixed ranges enabled:
[ 0.000653] MTRR variable ranges enabled:
[[ 0.002470] mtrr_cleanup: can not find optimal value
[ 0.002470] please specify mtrr_gran_size/mtrr_chunk_size

[ 0.204519] pmd_set_huge: Cannot satisfy [mem 0xe0000000-0xe0200000] with a huge-page mapping due to MTRR override.

I checked your kernel config against 'vanilla', -zen, -ck and -pf and I think this is the reason for the failure:

Your conf:
:: Code ::
[burster@liza ~]$ zgrep -i mtrr /proc/config.gz
CONFIG_MTRR=y
CONFIG_MTRR_SANITIZER=y
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1

Results in this:
:: Code ::
[burster@liza ~]$ sudo cat /proc/mtrr
reg00: base=0x000000000 (    0MB), size= 8192MB, count=1: write-back
reg01: base=0x200000000 ( 8192MB), size=  512MB, count=1: write-back
reg02: base=0x220000000 ( 8704MB), size=  256MB, count=1: write-back
reg03: base=0x230000000 ( 8960MB), size=   64MB, count=1: write-back
reg04: base=0x0cc000000 ( 3264MB), size=   64MB, count=1: uncachable
reg05: base=0x0d0000000 ( 3328MB), size=  256MB, count=1: uncachable
reg06: base=0x0e0000000 ( 3584MB), size=  512MB, count=1: uncachable


While the other kernels have:
:: Code ::
[burster@liza ~]$ zgrep -i mtrr /proc/config.gz
CONFIG_MTRR=y
CONFIG_MTRR_SANITIZER=y
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=0


Gives:
:: Code ::
[burster@liza ~]$ dmesg | grep mtrr
[    0.001279] MTRR default type: uncachable
[    0.001279] MTRR fixed ranges enabled:
[    0.001285] MTRR variable ranges enabled:
[    0.003146] Found optimal setting for mtrr clean up

and:
:: Code ::
[burster@liza ~]$ sudo cat /proc/mtrr
reg00: base=0x000000000 (    0MB), size= 2048MB, count=1: write-back
reg01: base=0x080000000 ( 2048MB), size= 1024MB, count=1: write-back
reg02: base=0x0c0000000 ( 3072MB), size=  128MB, count=1: write-back
reg03: base=0x0c8000000 ( 3200MB), size=   64MB, count=1: write-back
reg04: base=0x100000000 ( 4096MB), size= 4096MB, count=1: write-back
reg05: base=0x200000000 ( 8192MB), size=  512MB, count=1: write-back
reg06: base=0x220000000 ( 8704MB), size=  256MB, count=1: write-back
reg07: base=0x230000000 ( 8960MB), size=   64MB, count=1: write-back


Because I really want to use your kernel it would be nice if you change the one value.
...or at least tell my why not ;)

Regards, burster
Back to top
damentz
Status: Assistant
Joined: 09 Sep 2008
Posts: 867
Reply Quote
Yep, I think there's no reason for that configuration to be the way it is. I remember turning it on way back when MTRR cleanup was a new feature, but I never revisited it once the values were set.

Next release should be coming out soon with that configuration fixed and the latest stable queue patches at the time of building.
Back to top
burster
Status: New User - Welcome
Joined: 01 Dec 2020
Posts: 2
Reply Quote
Thanks for the fast and positive reply.
Kernel is up and running fine (and I'm happy).

Regards, burster
Back to top
Display posts from previous:   

All times are GMT - 8 Hours