[freebsd] 13.0 memstick не грузится

spell at itl.ua spell at itl.ua
Sun Jan 23 14:13:34 EET 2022


23 января 2022 г., 13:45, "Eugene Grosbein" <eugen at grosbein.net> написал:

> On Sun, Jan 23, 2022 at 01:33:21AM +0000, spell at itl.ua wrote:
> 
>> 21 января 2022 г., 9:24, "Eugene Grosbein" <eugen at grosbein.net> написал:
>> 
>> Загрузчик от 11.2 работает.
>> 
>> Вместо одного bd_int13probe() поставила цикл из сотни вызовов, и 11.2 тоже свалилася.
>> Просто без zfs probing этот int 13h вызываеся всего 2-3 раза, так что вероятность крэша очень мала.
>> А при zfs probing - десятки, поэтому всплыло именно на нем.
>> 
>> BTW, bd_int13probe() не использует никакую память.
> 
> Не исключён баг в BIOS, так как биосописатели тестируют свой код,
> я уверен, только на Windows разных версий и паре-тройке линуксов может быть.
> Не представляю, как это дебажить тогда. Можно попробовать вместо этого
> в boot2 и его конфиг /boot.config добавить новый флаг для отключения
> zfs_probing, либо в сам loader. Сделать workaround для такого железа
> и случая, когда искать ZFS на removable drives не нужно.

Там есть уже MK_LOADER_ZFS и HAVE_ZFS, я убрала HAVE_ZFS из loader/Makefile и так собрала
loader без zfs probing.
Но это не решение проблемы, а только уменьшение вероятности креша.
За время тестирования из моих 100500 загрузок loader падал дважды на этапе пробы дисков.

Да, мне тоже кажется, что это баг в BIOS.
Возможно, он проявляется и под Windows/Linux, но из-за того, что это случается так редко,
его просто не заметили.

А мы можем как-то заглянуть в код биосовского interrupt handler'а?


More information about the freebsd mailing list