bad memory

Jan. 2nd, 2025 02:52 am
paroh: (Default)
[personal profile] paroh
Всё ещё не понимаю. Но решение вроде есть.

Утилита chmem позволяет заблокировать участки блоками по 128 мегабайт.

Ничего из этих ссылок не помогло. А memmap я не догоняю как что и куда.

Сначала в меню memtest выбрал badrampatterns. Потом этот код прописал в GRUB_BADRAM. И словил черный экран, пришлось chrootить.

Про использование chmem. В chmem проще без адресов, блоками ( -b ) заизолировать примерный участок. lsmem покажет адрес, и его надо сравнить с тем, что написал memtest. Тупо в python копипастится шестнадцатеричный адрес и нажимается ввод. Потом прописать в загрузку и ок.

upd. Минусом блокировки сбойных участков памяти с помощью chmem является вероятность того, что сбойные участки уже могут быть зарезервированы системой. В моем случае блокировка с chmem сработала отлично.

upd2. Щаз. Я обсчитался на порядок. Через примерно 2 недели работы был глюк. Стал смотреть внимательнее и выяснилось, что chmem таки не блокирует сбойный участок. Зато нашлась пара понятных ссылок.

Да, параметр надо писать в GRUB_CMDLINE_LINUX, а не в GRUB_CMDLINE_LINIX_DEFAULT.
Примерно так: GRUB_CMDLINE_LINUX="memmap=1M!2061M", что в переводе на человеческий означает заблокировать 1 мегабайт начиная от 2061-го мегабайта.
Нужный мегабайт находится так: берется плохой адрес, вместо последних пяти цифр ставятся нули. Полученное число пишется в python с префиксом 0x вот так: 0x95f00000. Нажимается ввод. Потом число два раза делится на 1024.

Проверить командой
#dmesg | grep user
должна быть строка с persistent (type 12).

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

January 2026

S M T W T F S
    123
45678910
111213141516 17
18192021222324
25262728293031

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 21st, 2026 09:18 pm
Powered by Dreamwidth Studios