?

Log in

No account? Create an account
Cat-light

klink0v


Блохи в свитере деда Сергеича


Что-то поломали в 3.2.0
Cat-light
klink0v

Стоял у меня на одной из KVM-ных виртуалок Debian GNU/Linux Squeeze c ядром 2.6.32. Стоял себе и стоял, каши не просил. Дык вот зачесалось у меня в одном месте попробовать вкатить туда ядро посвежее. Попробовал 3.2.0 для i686 с официальных же репозиториев. А дальше начались чудеса.

[Читать дальше]</a>

Конфигурация виртуалки: процессор, память, жесткий диск на VirtIO, три сетевые платы (тоже на VirtIO). Одна смотрит в локальную сеть, две другие - каждая в своего провайдера. Машина используется как failover, "на подхвате". Один интерфейс (вовнутрь) у неё поднят постоянно, а двум другим IPшники присваиваются по команде от Corosync/Pacemaker.

Дык вот, загружается всё нормально. Но при попытке назначить IP любому из внешних интерфейсов ядро вываливается в soft lockup (скриншот кликабельный):

Я подумал "чё за фигня". Может, это corosync косячит? Но ведь с 2.6.32 все было нормально. Попробовал проделать аналогичную операцию руками. Остановил corosync, сделал "ifconfig eth1 бла-бла-бла". Та же ерунда.

Тогда я подумал, что сломан драйвер VirtIO сетевой платы. В настройках Qemu на хосте заменил все сетевые платы с VirtIO на Intel E1000. Попробовал загрузиться. Машина вообще не нашла сеть. То есть почему-то не поднялся даже внутренний интерфейс eth0, хотя никаких привязок к MAC-адресам или драйверам нет и соответствующее правило генерации привязок в /etc/udev/rules.d отсутствует.

Тогда я попробовал оставить на eth0 VirtIO, а для eth1 и eth2 назначить E1000. Загрузился. Работает. Назначил интерфейсам eth1 и eth2 IP-адреса. Работает. Порадовался. Запустил corosync. Работает. Перезагрузился. Работает. Принудительно сделал ноду активной. Работает. Подождал 5 минут. Всё снова рухнуло. Вот так. На этот раз почему-то якобы на процессе rsync:

В-общем, я бы и рад запостить баг. Но пока что ни хрена не понимаю. То ли косячит именно дебиановская сборка, то ли это что-то в коде самого ядра не то. То ли это VirtIO виноват, то ли что-то более глобальное. Сам я навряд ли смогу отладить ядро, нет для этого достаточной квалификации. Кому, как и о чём именно сообщать по теме данной ошибки, тоже пока разобраться не могу.

Линуксоиды, ау. I need your help.