URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 74067
[ Назад ]

Исходное сообщение
"Физическая память во FreeBSD анигилировалась..."

Отправлено lion , 15-Май-07 14:25 
FreeBSD 5.4, на машине 2Gb ОЗУ.
В один "прекрасный" момент заметил, что в системе только "почти" 1Gb:
hw.physmem: 1064656896
hw.usermem: 795160576
hw.realmem: 1073610752

Но ведь при загрузке он определил, что там 2 Gb:
hw.cbb.start_memory: 2281701376
hw.pci.host_mem_start: 2147483648

Может ли фря сама вырубить сбойную память и как исправить ситуацию?



Содержание

Сообщения в этом обсуждении
"Физическая память во FreeBSD анигилировалась..."
Отправлено lavr , 15-Май-07 16:30 
>FreeBSD 5.4, на машине 2Gb ОЗУ.
>В один "прекрасный" момент заметил, что в системе только "почти" 1Gb:
>hw.physmem: 1064656896
>hw.usermem: 795160576
>hw.realmem: 1073610752
>
>Но ведь при загрузке он определил, что там 2 Gb:
>hw.cbb.start_memory: 2281701376
>hw.pci.host_mem_start: 2147483648
>
>Может ли фря сама вырубить сбойную память и как исправить ситуацию?

by default в i386 памяти распределяется 1GB, для собственного распределения, читай:

# less /sys/conf/NOTES
...
поиск MAXDSIZ/MAXSSIZ/DFLDSIZ
и лучше выставляй эти переменные ядра через /boot/loader.conf:

# 2.  In /boot/loader.conf, set the tunables kern.maxswzone,
#     kern.maxbcache, kern.maxtsiz, kern.dfldsiz, kern.maxdsiz,
#     kern.dflssiz, kern.maxssiz and kern.sgrowsiz.

вместо вкомпиливания в монолитное ядро.

Важно: не забывать что в FreeBSD i386 максимально адресуется до 4GB RAM и часть из
нее необходимо резервировать под само ядро, чтобы потом не задавать вопросов.
Для использования RAM > 4GB на платформе i386, можно воспользоваться PAE на свой


"Физическая память во FreeBSD анигилировалась..."
Отправлено lavr , 15-Май-07 16:33 
>>FreeBSD 5.4, на машине 2Gb ОЗУ.
>>В один "прекрасный" момент заметил, что в системе только "почти" 1Gb:
>>hw.physmem: 1064656896
>>hw.usermem: 795160576
>>hw.realmem: 1073610752
>>
>>Но ведь при загрузке он определил, что там 2 Gb:
>>hw.cbb.start_memory: 2281701376
>>hw.pci.host_mem_start: 2147483648
>>
>>Может ли фря сама вырубить сбойную память и как исправить ситуацию?
>
by default в i386 памяти распределяется 1GB, для собственного распределения, читай:

# less /sys/conf/NOTES
...
поиск MAXDSIZ/MAXSSIZ/DFLDSIZ
и лучше выставлять эти переменные ядра через /boot/loader.conf:

# 2.  In /boot/loader.conf, set the tunables kern.maxswzone,
#     kern.maxbcache, kern.maxtsiz, kern.dfldsiz, kern.maxdsiz,
#     kern.dflssiz, kern.maxssiz and kern.sgrowsiz.

вместо вкомпиливания в монолитное ядро.

Важно: не забывать что в FreeBSD i386 максимально адресуется до 4GB RAM
и часть из нее необходимо резервировать под само ядро, чтобы потом не задавать вопросов.
Для использования RAM > 4GB на платформе i386, можно воспользоваться PAE на свой
страх и риск: man pae и пример ядра для pae с вдумчивым чтением комментариев


"Физическая память во FreeBSD анигилировалась..."
Отправлено lion , 15-Май-07 18:51 
>by default в i386 памяти распределяется 1GB, для собственного распределения, читай:
Ещё на двух идентичных по железу серверах такой проблемы нет, определил при загрузке 2 Гига, их и использует. Без всякого шаманства.  

># less /sys/conf/NOTES
>...
>поиск MAXDSIZ/MAXSSIZ/DFLDSIZ
>и лучше выставлять эти переменные ядра через /boot/loader.conf:
>
># 2.  In /boot/loader.conf, set the tunables kern.maxswzone,
>#     kern.maxbcache, kern.maxtsiz, kern.dfldsiz, kern.maxdsiz,
>#     kern.dflssiz, kern.maxssiz and kern.sgrowsiz.
>
>вместо вкомпиливания в монолитное ядро.
Эти параметры:(MAXDSIZ -размер сегмента данных /MAXSSIZ размер сегмента стека /DFLDSIZ значение по умолчанию размера сегмента данных) влияют на перераспределение размеров этих сегментов в используемой памяти. Можно сделать больше сегмент данных или стека,но ты всё-равно останешься в тисках РазмерОЗУ+РазмерСвопа. Если решать проблему таким путём, то просто уйду в своп.
Тут же совсем другое: ОЗУ в системе в половину меньше...

>
>Важно: не забывать что в FreeBSD i386 максимально адресуется до 4GB RAM
>
>и часть из нее необходимо резервировать под само ядро, чтобы потом не
>задавать вопросов.
>Для использования RAM > 4GB на платформе i386, можно воспользоваться PAE на свой
>страх и риск: man pae и пример ядра для pae с вдумчивым
>чтением комментариев
До 4Гигов ещё далеко.


"Физическая память во FreeBSD анигилировалась..."
Отправлено lavr , 16-Май-07 11:12 
>FreeBSD 5.4, на машине 2Gb ОЗУ.
>В один "прекрасный" момент заметил, что в системе только "почти" 1Gb:
>hw.physmem: 1064656896
>hw.usermem: 795160576
>hw.realmem: 1073610752
>
>Но ведь при загрузке он определил, что там 2 Gb:
>hw.cbb.start_memory: 2281701376
>hw.pci.host_mem_start: 2147483648
>
>Может ли фря сама вырубить сбойную память и как исправить ситуацию?

опс, sorry, невнимательно прочитал.

Проблема может быть в кривом BIOS/ACPI.

Попробуйте при загрузке выйти в loader и установить руками значение hw.physmem,
это аналог старому MAXMEM в ядре для машин где неверно определяется RAM.

Ядро никак не проверяет RAM на предмет сбоев, при ошибках памяти - просто будут
ошибки или panic, легко распознается при сборке ядра или системы - падает в
произвольных местах.

Все остальное: memory hole 16MB, OS/2 compatible -> off и мапирование памяти от других
устройств, просто не может дать утечку в 1GB. За интегрированное ВИДЕО не скажу - не
имею и не приобретаю таких материнок.


"Физическая память во FreeBSD анигилировалась..."
Отправлено lion , 16-Май-07 12:13 
>опс, sorry, невнимательно прочитал.
>
>Проблема может быть в кривом BIOS/ACPI.
>
>Попробуйте при загрузке выйти в loader и установить руками значение hw.physmem,
>это аналог старому MAXMEM в ядре для машин где неверно определяется RAM.
>
>
>Ядро никак не проверяет RAM на предмет сбоев, при ошибках памяти -
>просто будут
>ошибки или panic, легко распознается при сборке ядра или системы - падает

>произвольных местах.
>
>Все остальное: memory hole 16MB, OS/2 compatible -> off и мапирование памяти от других
>устройств, просто не может дать утечку в 1GB. За интегрированное ВИДЕО не
>скажу - не
>имею и не приобретаю таких материнок.

hw.physmem="2G" в loader.conf не позволило серверу перезагрузиться:
panic: pmap_mapdev: couldn't alloc kernel virtual memory

Фигня какая-то. Проблема решилась перекомпиляцией ядра.



"Физическая память во FreeBSD анигилировалась..."
Отправлено lavr , 16-Май-07 15:43 
>>опс, sorry, невнимательно прочитал.
>>
>>Проблема может быть в кривом BIOS/ACPI.
>>
>>Попробуйте при загрузке выйти в loader и установить руками значение hw.physmem,
>>это аналог старому MAXMEM в ядре для машин где неверно определяется RAM.
>>
>>
>>Ядро никак не проверяет RAM на предмет сбоев, при ошибках памяти -
>>просто будут
>>ошибки или panic, легко распознается при сборке ядра или системы - падает
>>в
>>произвольных местах.
>>
>>Все остальное: memory hole 16MB, OS/2 compatible -> off и мапирование памяти от других
>>устройств, просто не может дать утечку в 1GB. За интегрированное ВИДЕО не
>>скажу - не
>>имею и не приобретаю таких материнок.
>
>hw.physmem="2G" в loader.conf не позволило серверу перезагрузиться:
>panic: pmap_mapdev: couldn't alloc kernel virtual memory

с этим параметром есть проблемы, были фиксы, но иного способа нет, ибо по спец.вызовам
определяют кол-во RAM, ну разве что попробовать MAXMEM в ядро...
Ну и задавать его не принято в GB,MB,KB.

>Фигня какая-то. Проблема решилась перекомпиляцией ядра.

дык а какое было, GENERIC?


"Физическая память во FreeBSD анигилировалась..."
Отправлено lion , 16-Май-07 16:14 
>>
>>hw.physmem="2G" в loader.conf не позволило серверу перезагрузиться:
>>panic: pmap_mapdev: couldn't alloc kernel virtual memory
>
>с этим параметром есть проблемы, были фиксы, но иного способа нет, ибо
>по спец.вызовам
>определяют кол-во RAM, ну разве что попробовать MAXMEM в ядро...
> Ну и задавать его не принято в GB,MB,KB.
GB взято из /boot/defaults/loader.conf. Как там прописано, так и сделал.
>>Фигня какая-то. Проблема решилась перекомпиляцией ядра.
>
>дык а какое было, GENERIC?
:) конечно нет. Свой конфиг, просто выкинул из него ktrace и всё.


"Физическая память во FreeBSD анигилировалась..."
Отправлено lavr , 16-Май-07 17:08 
>>>
>>>hw.physmem="2G" в loader.conf не позволило серверу перезагрузиться:
>>>panic: pmap_mapdev: couldn't alloc kernel virtual memory
>>
>>с этим параметром есть проблемы, были фиксы, но иного способа нет, ибо
>>по спец.вызовам
>>определяют кол-во RAM, ну разве что попробовать MAXMEM в ядро...
>> Ну и задавать его не принято в GB,MB,KB.
>GB взято из /boot/defaults/loader.conf. Как там прописано, так и сделал.
>>>Фигня какая-то. Проблема решилась перекомпиляцией ядра.
>>
>>дык а какое было, GENERIC?
>:) конечно нет. Свой конфиг, просто выкинул из него ktrace и всё.
>

понято