ddb\kdb нужен совет по отладке

syn аватар

нид хелп в отладке,
как сделать автоматический ребут без нажатия клавиши и сохранение дампа в /var/crashe?
сейчас делаю дамп вот так
options DDB_COMMANDONENTER="trace; [];reboot 0x100"
еще пробовал вот так
options DDB_COMMANDONENTER="capture on;show pcpu;trace;ps;show locks;alltrace;show alllocks;show lockedvnods;call doadump;reset"
но файлика нет.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
shattered аватар

а зачем commandonenter? есть

а зачем commandonenter? есть serial console?

казалось бы, достаточно sysctl ddb.onpanic=0 и savecore=YES в /etc/rc.conf

syn аватар

>а зачем

>а зачем commandonenter?
что-бы автоматом камынды выполнить
>есть serial console?
нет провода+)
>казалось бы, достаточно sysctl ddb.onpanic=0 и savecore=YES в /etc/rc.conf
не, у меня ядро крэшется раньше чем это прочитается, поэтому указываю в конфиге ядра при сборке.
так это ведь выключает ddb...
To disable entering ddb upon kernel panic:
options DDB_ONPANIC=0
там еще есть history, только хз как посмотреть

shattered аватар

если ddb.onpanic=0, то дамп

если ddb.onpanic=0, то дамп должен делаться автоматически.

что пишет savecore на консоль после reboot? хватает ли места в /var/crash?

syn аватар

savecore ничего не пишет,

savecore ничего не пишет, просто ddb просит нажать любую клавишу для ребута. В /var/crash 2 гига свободно

shattered аватар

рассказывайте тогда подробно,

рассказывайте тогда подробно, что вообще происходит. платформа, версия, конфиг ядра, скриншот с консоли в момент panic...

syn аватар

в конфиге... options

в конфиге...
options DDB
options DDB_ONPANIC=0
options DDB_COMMANDONENTER="trace; [];sync;reboot"
по идее sync должен сделать дапм, но нет его или как понял можно reboot 0x104, ребут с синхронизацией. платформа i386.

shattered аватар

еще раз. рассказывайте

еще раз.

рассказывайте подробно, что происходит.

платформа?
версия?
конфиг ядра?
dmesg?
скриншот с консоли в момент panic? т.е. происходит ли дамп вообще?

syn аватар

конфиг полностью не нужен,

конфиг полностью не нужен, мне нужно сделать только дамп, что-бы можно было отлаживать на одном хосте все. хотя паник возникает при
config_interrupts(self, my_device_config);
и дальше функция уже не работает...
my_device_config(self)
struct device *self;
{
...
}
девайс успешно маппится, конфигурится dma и interrupt и падает при попытке интерапта.
почему это может происходить?
Build platform: NetBSD 4.0.1_PATCH i386

fatal protection fault in supervisor mode
trap type 4 code 66b eip c0104324 cs 8 eflags 10206 cr2 0 ilevel e
panic: trap
Begin traceback...
uvm_fault(0xc03d05e0, 0,1) -> 0xe
fatal page fault in supervisor mode
trap type 6 code 0 eip c028f290 cs 8 eflags 10246 cr2 4 ilevel e
panic: trap
Faulted in mid-traceback; aborting...
The operating system has halted.
Please press any key to reboot.

shattered аватар

Я не могу ответить на этот

Я не могу ответить на этот вопрос. Попробуйте задать его в tech-kern@ (речь о разработке нового драйвера, я правильно понял?)