ipt-netflow icon indicating copy to clipboard operation
ipt-netflow copied to clipboard

crashed on interface flap

Open mort1k opened this issue 10 years ago • 10 comments

Привет, взумалось увеличить tx\rx ring через ethtool. словил такую каку:

nflow.txt

mort1k avatar Dec 16 '15 01:12 mort1k

Hi. Пришлите, пожалуйста, бинарник (ipt_NETFLOW.ko) вашего модуля, который работал, когда была паника.

aabc avatar Dec 16 '15 01:12 aabc

Это произошло на двух одинаковых железяках ipt_NETFLOW.zip

mort1k avatar Dec 16 '15 08:12 mort1k

Что-то мои исходники 2.1 не подходят к вашему бинарнику. Судя по стек трейсу

INFO: rcu_sched detected stalls on CPUs/tasks: { 2}
CPU: 2 PID: 1258 Comm: kworker/2:2 
Call Trace:
 [<ffffffff8129b7b0>] ? wait_for_xmitr+0x1a/0x78
 [<ffffffff8129b823>] ? serial8250_console_putchar+0x15/0x25
 [<ffffffff81297fdd>] ? uart_console_write+0x39/0x4c
 [<ffffffff8129d298>] ? serial8250_console_write+0xb3/0x109
 [<ffffffff81081d84>] ? T.998+0xaa/0xb8
 [<ffffffff81082023>] ? console_unlock+0x291/0x340
 [<ffffffff8108256c>] ? vprintk_emit+0x36c/0x39d
 [<ffffffff81082586>] ? vprintk_emit+0x386/0x39d
 [<ffffffff813eb03a>] ? printk+0x4c/0x51
 [<ffffffffa040749e>] ? netflow_sendmsg+0x17e/0x2ab [ipt_NETFLOW]
 [<ffffffff8108d6c1>] ? __getnstimeofday+0x28/0x6d
 [<ffffffffa040776a>] ? netflow_export_pdu_v9+0xb1/0x10c [ipt_NETFLOW]
 [<ffffffffa04021f1>] ? pdu_alloc_fail_export+0x1e/0x2b [ipt_NETFLOW]
 [<ffffffffa0403791>] ? alloc_record_key+0x66/0x315 [ipt_NETFLOW]
 [<ffffffffa04053bf>] ? netflow_export_flow_tpl+0x1a1/0x783 [ipt_NETFLOW]
 [<ffffffff81079297>] ? do_raw_spin_unlock+0x13/0x50
 [<ffffffffa0404704>] ? netflow_scan_and_export+0x639/0x6c5 [ipt_NETFLOW]
 [<ffffffff81070c4f>] ? finish_task_switch+0x4f/0x90
 [<ffffffffa04047d5>] ? netflow_work_fn+0x45/0x64 [ipt_NETFLOW]
 [<ffffffff8106186b>] ? process_one_work+0x1fb/0x302
 [<ffffffff8105e493>] ? spin_unlock_irq+0x4a/0x54
 [<ffffffff81061ad1>] ? worker_thread+0x15f/0x26c
 [<ffffffff81061972>] ? process_one_work+0x302/0x302
 [<ffffffff81061972>] ? process_one_work+0x302/0x302
 [<ffffffff810650b9>] ? kthread+0xc3/0xcb

Подвис вывод в консоль ком порта, который вызывался из netflow_sendmsg(), скорей всего это было одно из сообщений ipt_NETFLOW: sendmsg[0] error -101: data loss 0 pkt, 0 bytes: network is unreachable. То есть зависание не в самом коде ipt-netflow.

aabc avatar Dec 16 '15 10:12 aabc

Я могу попробовать воспроизвести проблему. Вы просто делали down + up интерфейсу?

aabc avatar Dec 16 '15 11:12 aabc

ethtool -G eth0 rx 4096 tx 4096

mort1k avatar Dec 16 '15 14:12 mort1k

Просто ethtool? По идее это вообще не должно ни на что влиять. Я думал, что "flap" имелось ввиду down/up интерфейсу.

aabc avatar Dec 16 '15 14:12 aabc

Если стабильно крашится при ethtool -G eth0 rx 4096 tx 4096 - попробуйте сначала последнюю версию из git.

aabc avatar Dec 16 '15 14:12 aabc

Это последняя версия. На самом деле ошибка очень специфическая. Обычно эти параметры конфигуряться при инициализации.

mort1k avatar Dec 16 '15 14:12 mort1k

Сегодня на одной железяке упал поднялся интерфейс в течении 3 сек. В итоге железяка то пинается то нет, в консоль не спеша оповещает о не доступности колектора. На клавиатуру никакой реакции. По прошествии ~20 мин отпустило. Может это быть связано с параметром загрузки ядра "console=ttyS0,9600 console=tty0"?

mort1k avatar Dec 16 '15 21:12 mort1k

Может, если много текста выводится на консоль. Поставьте хотябы 115200 вместо 9600.

aabc avatar Dec 16 '15 21:12 aabc