ddb\kdb нужен совет по отладке
нид хелп в отладке,
как сделать автоматический ребут без нажатия клавиши и сохранение дампа в /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"
но файлика нет.
»
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- 1722 просмотра
а зачем commandonenter? есть
а зачем commandonenter? есть serial console?
казалось бы, достаточно sysctl ddb.onpanic=0 и savecore=YES в /etc/rc.conf
>а зачем
>а зачем 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, только хз как посмотреть
если ddb.onpanic=0, то дамп
если ddb.onpanic=0, то дамп должен делаться автоматически.
что пишет savecore на консоль после reboot? хватает ли места в /var/crash?
savecore ничего не пишет,
savecore ничего не пишет, просто ddb просит нажать любую клавишу для ребута. В /var/crash 2 гига свободно
рассказывайте тогда подробно,
рассказывайте тогда подробно, что вообще происходит. платформа, версия, конфиг ядра, скриншот с консоли в момент panic...
в конфиге... options
в конфиге...
options DDB
options DDB_ONPANIC=0
options DDB_COMMANDONENTER="trace; [];sync;reboot"
по идее sync должен сделать дапм, но нет его или как понял можно reboot 0x104, ребут с синхронизацией. платформа i386.
еще раз. рассказывайте
еще раз.
рассказывайте подробно, что происходит.
платформа?
версия?
конфиг ядра?
dmesg?
скриншот с консоли в момент panic? т.е. происходит ли дамп вообще?
конфиг полностью не нужен,
конфиг полностью не нужен, мне нужно сделать только дамп, что-бы можно было отлаживать на одном хосте все. хотя паник возникает при
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.
Я не могу ответить на этот
Я не могу ответить на этот вопрос. Попробуйте задать его в tech-kern@ (речь о разработке нового драйвера, я правильно понял?)