MTRR (регистр диапазона типов памяти) в сообщениях dmesg Debian 10

MTRR (регистр диапазона типов памяти) в сообщениях dmesg Debian 10
[Sun Mar  1 07:51:40 2020] MTRR default type: uncachable
[Sun Mar  1 07:51:40 2020] MTRR fixed ranges enabled:
[Sun Mar  1 07:51:40 2020] MTRR variable ranges enabled:
[Sun Mar  1 07:51:40 2020] pmd_set_huge: Cannot satisfy [mem 0xf8000000-0xf8200000] with a huge-page mapping due to MTRR override.

Заметил эти сообщения только сейчас, после того как перезагрузил сервер несколько дней назад.

Может быть актуально:

enable_mtrr_cleanupнайти впараметры ядра, Я цитирую:

The kernel tries to adjust MTRR layout from continuous
to discrete, to make X server driver able to add WB
entry later. This parameter enables that.

Я не понимаю вышесказанного, но считаю, что должен упомянуть об оборудовании:

Это более старая модель от Dell, PowerEdge T20 с процессором (и iGPU) IntelXeon E3-1225 v33,2 ГГц, кэш 8 МБ, 4C/4T, полные характеристики наКовчег Intel+ у него есть32 ГБ DDR3 в UDIMM.

Все, что мне удалось найти наMTRR (регистр диапазона типов памяти) есть на Википедии, к сожалению, я тоже не очень много понимаю в этом. Есть ли какие-нибудь намеки в более или менее простых терминах? Стоит ли мне вообще обращать внимание на это dmesgсообщение на моем Debian 10?


В отличие от сервера, описанного выше, здесь есть соответствующая часть, в которой упоминается MTRR на оборудовании, поскольку мой новый ноутбук также от Dell, Inspiron 15,32 ГБ DDR4 в SO-DIMM:

[Sat Mar  7 10:00:42 2020] MTRR default type: write-back
[Sat Mar  7 10:00:42 2020] MTRR fixed ranges enabled:
[Sat Mar  7 10:00:42 2020] MTRR variable ranges enabled:

Я не вижу большой разницы, возможно, ее нет в реальном применении... а может и есть.

решение1

TheРегистры диапазона типа памяти(MTRR) может управлять поведением кэширования в отношении записи в память. В обоих ваших журналах не включено какое-либо конкретное поведение. Если бы оно было включено, оно выглядело бы так (из моей старой системы):

MTRR default type: uncachable
MTRR fixed ranges enabled:
  00000-9FFFF write-back
  A0000-EFFFF uncachable
  F0000-FFFFF write-protect
MTRR variable ranges enabled:
  0 base 000000000 mask FE0000000 write-back
  1 base 020000000 mask FF8000000 write-back
  2 disabled
  3 disabled
  4 disabled
  5 disabled
  6 disabled
  7 disabled

Обычно это необходимо только для старых видеокарт, где это может повлиять на производительность.

Так что ваши логи не указывают на ненормальное поведение в отношении MTRR. Единственная потенциальная вещь - это

pmd_set_huge: Cannot satisfy [mem 0xf8000000-0xf8200000] with a huge-page mapping due to MTRR override.

и невозможно сказать, почему это так, не посмотрев остальные журналы или не покопавшись в вашей системе: что это за диапазон памяти, откуда берется переопределение MTRR и подойдет ли он вообще для отображения больших страниц.

Так что вполне возможно, что с этим все в порядке, и это просто какое-то пространство ввода-вывода карты PCI, которое просто не может иметь огромные таблицы страниц.

Связанный контент