Страница 1 из 1

Обнуляются свежих файлы при kernel panic. Куда копать?

Добавлено: 2014-07-30 10:38:49
fesse
Доброго времени суток товарищи!

Столкнулся с маленькой проблемкой, помогайте разобраться. Пишу модули ядра (вернее пока только пытаюсь в этом всём разобраться), и модули тестирую на живой рабочей машине. Порядок действий таков - поредактировал исходник -> make -> kldload -> kldunload. В очередной раз по недоглядке вызвал snd_mtxfree с нулём в качестве параметра и в процессе kldload естественно получил kernel panic, комп завис "наглухо", никаких 15 секунд до автоперезагрузки, ctrl+alt+del, в общем только ресет помог. Но главное - файлы, которые изменялись непосредственно перед этим - исходник и объектный файл обнулились (размер=0, внутри пусто), сам скомпиленный модуль (.ko) вообще пропал.

Работает gmirror. SU+J включено. Вопрос - что сделать, чтобы подобное с файлами не повторялось? Пожалуйста не предлагайте виртуалки и резервные копии - это понятно, нужно именно разобраться, а то ведь могут и свет рубануть пока диссертацию набиваешь...

Код: Выделить всё

uname -a
FreeBSD ---.-- 10.0-RELEASE FreeBSD 10.0-RELEASE #3: Mon May 19 09:07:01 MSK 2014     ---@---.--:/usr/obj/usr/src/sys/WORKHORSE  amd64

Код: Выделить всё

tunefs -p /dev/mirror/gm0s1f
tunefs: POSIX.1e ACLs: (-a)                               disabled
tunefs: NFSv4 ACLs: (-N)                                   disabled
tunefs: MAC multilabel: (-l)                                disabled
tunefs: soft updates: (-n)                                  enabled
tunefs: soft update journaling: (-j)                    enabled
tunefs: gjournal: (-J)                                        disabled
tunefs: trim: (-t)                                              disabled
tunefs: maximum blocks per file in a cylinder group: (-e)  4096
tunefs: average file size: (-f)                                     16384
tunefs: average number of files in a directory: (-s)           64
tunefs: minimum percentage of free space: (-m)             8%
tunefs: space to hold for metadata blocks: (-k)             6408
tunefs: optimization preference: (-o)                           time
tunefs: volume label: (-L)
PS: Может быть gjournal включить? Не будет он конфликтовать с gmirror?

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Добавлено: 2014-07-30 11:52:08
guest
fesse писал(а):Доброго времени суток товарищи!

Столкнулся с маленькой проблемкой, помогайте разобраться. Пишу модули ядра (вернее пока только пытаюсь в этом всём разобраться), и модули тестирую на живой рабочей машине. Порядок действий таков - поредактировал исходник -> make -> kldload -> kldunload. В очередной раз по недоглядке вызвал snd_mtxfree с нулём в качестве параметра и в процессе kldload естественно получил kernel panic, комп завис "наглухо", никаких 15 секунд до автоперезагрузки, ctrl+alt+del, в общем только ресет помог. Но главное - файлы, которые изменялись непосредственно перед этим - исходник и объектный файл обнулились (размер=0, внутри пусто), сам скомпиленный модуль (.ko) вообще пропал.

Работает gmirror. SU+J включено. Вопрос - что сделать, чтобы подобное с файлами не повторялось? Пожалуйста не предлагайте виртуалки и резервные копии - это понятно, нужно именно разобраться, а то ведь могут и свет рубануть пока диссертацию набиваешь...
SUJ - сами же указываете свою проблему, кривой пока journal, паника, свет - получаете потерю только что изменяемых
файлов, да еще в купе с gmirror
PS: Может быть gjournal включить? Не будет он конфликтовать с gmirror?
не должен, размеется, предварительно -> single user -> tunefs -j disable (SUJ -> SU)
медленно будет однако, с gjournal.

ps. чем Вам virtualbox для этих целей не угодил?

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Добавлено: 2014-07-30 12:08:50
fesse
Благодарю за совет, вырубаю SU+J. А что касается виртуалбокса, то есть у меня (возможно, дурная) привычка всё более-менее низкоуровневое писать и тестить на реальном железе, однажды было что написал кучу кода, а на железе он заработал не так, как на виртуалке, и сиди потом голову ломай. Правда то было давно и под форточки...

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Добавлено: 2014-08-01 16:58:36
Alex Keda
на софтупдатесах также бывает
--
вообще, поредактирвали конфиги, наберите пару раз e меня уже в привычку вошло.
правда, не из-за фри а линупса.... но всё же =)

Re: Обнуляются свежих файлы при kernel panic. Куда копать?

Добавлено: 2014-08-01 22:21:10
snorlov
fesse писал(а):Благодарю за совет, вырубаю SU+J. А что касается виртуалбокса, то есть у меня (возможно, дурная) привычка всё более-менее низкоуровневое писать и тестить на реальном железе, однажды было что написал кучу кода, а на железе он заработал не так, как на виртуалке, и сиди потом голову ломай. Правда то было давно и под форточки...
Заюзайте SU+GJOURNAL, почти та же технология,только испытанная временем, а еще лучше zfs, в случае su+j лучше заюзать версию 9.3, там эти болячки вылечены