dadv: (chuck)
[personal profile] dadv

В продолжение темы.

После того, как Глеб исправил несколько проблем в ядре FreeBSD, нагруженные роутеры с mpd5/PPPoE у меня работают стабильно. Однако, где-то раз в год всё-таки на каком-нибудь из них нет-нет, да и произойдет паника и все следы ведут в dummynet. Но раньше по разным причинам не удавалось сохранить одновременно крешдамп и отладочное ядро, а сегодня-таки удалось.

По итогам предварительного разбирательства найдено подозрительное место в коде dummynet и оформлен PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=195102

Судя по коду, проблема общая и для 9.x, 10.x и CURRENT - это место практически неизменно во всех ветках. Теперь главное, чтобы PR не завис незамеченным на годы.

Date: 2014-11-17 16:42 (UTC)
From: [identity profile] http://users.livejournal.com/_apm_/
У меня прижилось 9.1-STABLE

Date: 2014-11-17 17:34 (UTC)
From: [identity profile] dadv.livejournal.com
В ней тоже есть этот баг.

Я не сижу на релизах не последних в ветке. В этом нет никакого смысла. Минорные обновления FreeBSD это практически всегда хорошо и даётся без проблем.

Date: 2014-11-17 17:35 (UTC)
From: [identity profile] http://users.livejournal.com/_apm_/
А в целом помогите.

Вот у меня pppoe/mpd5, ngcar и dummynet тоже.

Пора на десятку?

Date: 2014-11-17 18:59 (UTC)
From: [identity profile] dadv.livejournal.com
Работает - не трогай. Вот у меня 8.4 скоро саппорт кончится, я подумываю 10.1 попробовать в той же конфигурации, да. Но у меня ещё и NanoBSD, там с пакетами будут проблемы из-за нового pkg. Надеюсь, решаемые.

Date: 2014-11-17 19:08 (UTC)
From: [identity profile] http://users.livejournal.com/_apm_/
нене, работает оно работает.

Но железо не вечно. Оно там уж прилично трудится, нужно переезжать на соседнее железо,
И вот я в раздумьях, чего брать то.

Date: 2014-11-17 19:34 (UTC)
From: [identity profile] dadv.livejournal.com
В случае с NanoBSD переезд на новое железо заключается в заливании образа на новый носитель. Ну, может, ещё loader.conf подправить под другие сетевые и rc.conf тоже.

Для традиционной инсталляции переезд тоже может заключаться в dump/restore.

Date: 2014-12-03 20:35 (UTC)
From: [identity profile] guest-o.livejournal.com
На десятку пока не очень пора. Там есть бага, что при создании или закрытии пачкой кучи соединений mpd зависает наглухо. Конкретно мы столкнулись с этим когда на одном из bras–ов запретили приём новых соединений, чтобы пользовательские сессии на другие сервера переехали. В итоге через сутки обнаружили, что сессий ещё осталось более 80 по данным мониторинга, хотя по факту mpd глухо висел, даже в логи не писал ничего.

Date: 2014-12-04 19:02 (UTC)
From: [identity profile] dadv.livejournal.com
Не будешь репортить проблему - и в 11.1 будет не пора.

Date: 2014-12-04 19:16 (UTC)
From: [identity profile] guest-o.livejournal.com
Багрепорт там уже есть, просто по нему движения пока нет. Завтра на работе буду, уточню номер.

Date: 2014-12-04 19:31 (UTC)
From: [identity profile] guest-o.livejournal.com
Нашёл. Вот с этой граблей столкнулись: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=186114

Date: 2014-12-04 19:31 (UTC)
From: [identity profile] guest-o.livejournal.com
Кстати, товарищ. Вы на ruBSD 14-го декабря в Москву не собираетесь?

Date: 2014-12-05 06:01 (UTC)
From: [identity profile] dadv.livejournal.com
Нет.

Date: 2014-12-09 12:44 (UTC)
From: [identity profile] guest-o.livejournal.com
А имеет смысл в уже существующий репорт дописать чего-нибудь? Типа "у нас тоже всплыла эта проблема"? Я бы подебажил её, только не знаю, как. Да и там вроде репортер достаточно информации предоставил, даже не знаю, что там можно добавить.

Date: 2014-12-09 12:51 (UTC)
From: [identity profile] dadv.livejournal.com
Чем больше отзывов от разных людей, тем лучше. Если можешь позволить себе подебажить и собрать хорошую статистику - можно оформить отдельный PR, а в старый добавить комментарий со ссылкой на свой.

Для дебага лучше всего почитать главу Kernel Debug в Developers Handbook (раньше эта глава была в основном Handbook, зачем убрали в девелоперский, непонятно). Первым делом нужно собрать отладочное ядро (kernel.debug) плюс добавить в его конфиг INVARIANTS/WITNESS/DIAGNOSTICS (для начала можно только INVARIANTS) с тем, чтобы вместо тупого зависания спровоцировать раннюю панику и получить крешдамп, с которым дальше по Handbook поступать.

Из-за высокой вероятности и даже желаемости паники тестовое ядро желательно загружать через nextboot (однократная загрузка тестового ядра), чтобы не получить циклический ребут из-за паники при старте.

Date: 2014-12-09 12:54 (UTC)
From: [identity profile] guest-o.livejournal.com
Окэ, спасибо. Соберу тестовый стенд, попробую с помощью твоих скриптов создать соответствующую нагрузку и подебажить.

Date: 2014-12-08 11:04 (UTC)
From: [identity profile] http://users.livejournal.com/_apm_/
И как жить?
9.3 или чего там?

Date: 2014-12-08 14:22 (UTC)
From: [identity profile] guest-o.livejournal.com
Пока живём на 9.3, да. На ней всё ровно. Ну вот я тут с хозяином журнала общаюсь в ru-root по поводу стресс-теста на BRASах. С помощью написанных им скриптов можно будет потестить фрю 10.1. Вероятнее всего, этот баг всплывёт при создании/убивании кучи соединений. Если не всплывёт, то или попутно с чем-нибудь починили, или совпадение, и надо стресс-тестировать дальше :-) Потому как в баг-репорте пока движения нет: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=186114

Date: 2014-11-17 19:08 (UTC)
From: [identity profile] http://users.livejournal.com/_apm_/
Новый pkg это песня.

Я прям не знаю что и делать, я понимаю оно может хорошо.
Но у меня всё поперек.

У меня и привычки, и миилон скриптов всяких и пуппеты, всё лесом пошло.

Date: 2014-11-17 19:35 (UTC)
From: [identity profile] dadv.livejournal.com
Аналогично. Допиливать придётся, чо.

Date: 2014-11-18 06:41 (UTC)
From: (Anonymous)
Если не затруднит - сообщите о результатах с 10.1
Использую 8-STABLE - работает отлично. В этом году пытался перейти на 9/10 - при небольшой нагрузке система паниковала стабильно раз в неделю-две.

Date: 2014-11-18 06:44 (UTC)
From: [identity profile] dadv.livejournal.com
Это будет, скорее всего, не раньше января.

Date: 2015-03-24 20:54 (UTC)
From: [identity profile] coolcold.livejournal.com
Январь наступил, появились новости?

Date: 2015-03-25 04:02 (UTC)
From: [identity profile] dadv.livejournal.com
Вообще-то наступил март, но от этого не легче. Пока много других дел, десятку попробовать времени не было.

Date: 2014-11-17 19:04 (UTC)
From: [identity profile] dado.livejournal.com
использую под mpd фрю 8.0/i386, не паниковало никогда, но лимит пппое-сессий в мпд стоит меньше тыщи, 700 кажется, с нетграфом замечал что нельзя вланы создавать на ходу, мпд начинает дурить, помогает только перезагрузка, дамминет привязывал к одному процу а то кушал много..

Date: 2014-11-17 19:40 (UTC)
From: [identity profile] dadv.livejournal.com
В 8.4 можно создавать вланы на ходу, у меня это вообще автоматизировано, скрипты создают при подключении нового дома.

Конкретно в этом посте речь об очень редко проявляющемся баге, нужна нагрузка на dummynet порядка 400 Kpps, 1200+ юзеров и то очень редко вылазит, еле поймал.
Edited Date: 2014-11-17 21:41 (UTC)

Date: 2014-11-17 19:09 (UTC)
From: [identity profile] dado.livejournal.com
а, еще есть новая:

[root@i0 ~]# ifconfig | grep -c ng
694

[root@i0 ~]# uname -a
FreeBSD i0 9.3-RELEASE FreeBSD 9.3-RELEASE #1 r272347M: Mon Oct 6 08:53:58 MSK 2014 root@i0:/usr/obj/opt/usr/src/sys/I0 amd64

[root@i0 ~]# ipfw pipe show | wc -l
872

[root@i0 ~]# w
10:08PM up 42 days, 13:43, 1 user, load averages: 0.78, 0.90, 0.88

Profile

dadv: (Default)
Choose your future

July 2024

M T W T F S S
12 34567
891011121314
15161718192021
22232425262728
293031    

Tags

Style Credit

Powered by Dreamwidth Studios