сбой ядра при работе с сетью - PullRequest
2 голосов
/ 28 февраля 2011

ошибка возникает при большом количестве передачи данных udp в моем маршрутизаторе DSL.
моя среда:

pc1 ---- (ethernet) ---> DSLAM - (PPPoEoA) ->DSL router - (ethernet) - pc2,
pc1 отправляет данные udp на pc2, размер данных udp: 1460 байт.скорость: 20 Мбит / с,
процессор: mips, оперативная память: 16M

Маршрутизатор DSL имеет eth0, wl0 и ATM, они находятся в br0.
ключевые моменты:
1. TCP в порядке ваналогичное тестирование.
2. ppp mtu равно 1492.
3. когда размер данных udp меньше (1452), чем ppp mtu, ошибок нет.
4. при отключении wl0 тестирование UDP в порядке, ошибок нет.

Любая идея приветствуется!

информация об ошибке:

sirq-net-rx / 0: ошибка выделения страницы.заказ: 0, режим: 0x20 Трассировка вызова: [<80017010>] [<80017010>] [<8005559c>] [<800685a4>] [<80068948>] [<8006ad00>] [<8006af44>] [<8006896c>][<80164130>] [<80011a40>] [<80142a08>] [<801429e8>] [<80143db4>] [<8006af44>] [<80141e68>] [<80165808>] [<80165758>] [<80164130>][<80131d2c>] [<80164130>] [] [<8015dd1c>] [<8014adcc>] [<80164130>] [<80164130>] [<8015df5c>] [<801698a0>] [<80164130>] [<80164a44>] [<80164130>] [<80148930>] [<8014a794>] [<8014a950>] [<80029778>] [<80033238>] [<80033100>] [<80043f28>] [<80013898>] [<80013888>]
Mem-info:
DMA на процессор:
ЦП 0: горячий: привет: 0, btch: 1 usd: 0 холодный: привет: 0, btch: 1 usd: 0
Активно: 1178 неактивно: 721 грязно: 0 обратная запись: 0 нестабильно: 0
свободно: 35 слябов: 438 сопоставлено: 660 страниц: отскок: 0
Свободно DMA: 140 кБ, мин: 368 КБ, низко: 400 КБ, высоко: 432 КБ, активно: 4712 КБ неактивно: 2884 КБ присутствует: 15876 КБ страниц_сканированных: 0 all_unreclaimable?нет
lowmem_reserve []: 0 0
DMA: 1 * 4 КБ 1 * 8 КБ 0 * 16 КБ 0 * 32 КБ 0 * 64 КБ 1 * 128 КБ 0 * 256 КБ 0 * 512 КБ 0 * 1024 КБ 0 * 2048 КБ 0 * 4096 КБ = 140 КБ
Свободный обмен: 0 КБ
4000 страниц ОЗУ
0 страниц HIGHMEM
700 зарезервированных страниц
Совместное использование 1958 страниц
0 обмен страниц в кеше
ЦП 0 Не удается обработать подкачку ядразапрос по виртуальному адресу 00000074, epc == 8016582c, ra == 80165814
Упс [# 1]:
ЦП 0
$ 0: 00000000 1000fc00 00000000 00000068
$ 4: 80cec490 80cd5410 00000002 fffe2080
$ 8: 00000056 00000055 00000800 0000000a * тысяче тридцать-девять * $ 12: 00000002 00000000 8028fcf4 00000000
$ 16: 00000000 807dcf80 807dcf80 00000000
$ 20: 00000019 0a6e3365 000089af 00000000 * тысяча сорок-два * $ 24: 00000000 80131d2c
$ 28: 80f8e000 80f8fd8800000002 80165814
Hi: 00000056
Lo: 00000000
epc: 8016582c Tainted: P
ra: 80165814 Статус: 1000fc03 KERNEL EXL IE
Причина: 00800008
BadVA: 00000074
PrId: 00029010
Модули, связанные в:

* 1053.c00c8000 - c00c8884)
nf_nat_sip init_addr (00000000 - 00000000), core_addr (c00c6000 - c00c6b9c)
nf_nat_h323 init_addr (00000000 - 00000000), core_addr (c00ab000 - c00ac27c)
nf_nat_ftp init_addr (00000000 - 00000000), core_addr(c00b6000 - c00b6444)
nf_conntrack_tftp init_addr (00000000 - 00000000), core_addr (c00b4000 - c00b4200)
nf_conntrack_irc init_addr (00000000 - 0000000000000000000000)core_addr (c0079000 - c007a140)
nf_conntrack_sip init_addr (00000000 - 00000000), core_addr (c00b0000 - c00b1930)
nf_conntrack_ftp init_addr (00000000 --000000_0000_0000) - 60000-й (ноль) 00000000000000000000 (факс): 600000000_00_0000_0000_0000_00_00_00_00_00_00_00_00_00_00_00_0000_00_d_c_c_c_c_d_d_c_c_c_c_c_d_d_c_c_c_00_0000_0000_0000_0000_000000 (;, core_addr (c00b8000 -c00bc534)
nf_nat_pptp init_addr (00000000 - 00000000), core_addr (c0077000 - c00773fc)
nf_conntrack_pptp init_addr (00000000 - 00000000), core_addr (c0075000 - c0075a30)
nf_nat_proto_gre init_addr (00000000 - 00000000), core_addr (c0073000- c0073204)
nf_conntrack_proto_gre init_addr (00000000 - 00000000), core_addr (c006e000 - c006e700)
ip_queue init_addr (00000000 - 00000000), core_addr (c0070000 - c0070fec)
iptable_mangle init_addr (00000000 - 00000000), core_addr (c0048000 - c004819c)
xt_MARK init_ad_000000000000000000000000 (0000)* xt_mark init_addr (00000000 - 00000000), core_addr (c0064000 - c0064048)
ipt_LOG init_addr (00000000 - 00000000), core_addr (c0068000 - c0068d28)
xt_limit init_addr00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001075 * xt_state init_addr (00000000 - 00000000), core_addr (c0055000 - c00550e8)
ipt_REDIRECT init_addr (00000000 - 00000000), core_addr (c004a000 - c004a0f4)
rd00000000000000000000 (60000 )0000 (60000 )0000 (600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (10000000000000000000000000000000000000000000000000000 (10000000000000000000000000000000000000000000000000000000000 (10000 )0000)
iptable_nat init_addr (00000000 - 00000000), core_addr (c0050000 - c0050b44)
nf_nat init_addr (00000000 - 00000000), core_addr (c004c000 - c004e1cc)
nf_conntrack_0000000000000000000000000000000000000000000000000000000000 (cd))
nf_conntrack init_addr (00000000 - 00000000), core_addr (c0057000 - c005dd94)
nfnetlink init_addr (00000000 - 00000000), core_addr (c002e000 - c002e9cc)
xt_SKIPLOG init_addr (00000000 - 00000000) (100_000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 все еще- 00000000), core_addr (c002a000 - c002a938)
xt_tcpudp init_addr (00000000 - 00000000), core_addr (c0028000 - c0028388)
iptable_filter init_addr (00000000 - 2200-й ядро) - ядро ​​10000 (10000-й ядро), ядро ​​(1000000) - ядро ​​(10000), ядро ​​(10000) - ядро ​​(10000), ядро ​​(10000) - ядро ​​(10000), ядро ​​(10000), ядро ​​(10000) - ядро, 10000 (фбайт), ядро, код:00000000 - 00000000), core_addr (c0024000 - c0025d40)
x_tables init_addr (00000000 - 00000000), core_addr (c0008000 - c0009794)
wl (P) init_addr (00000000 - 00000000), ядро_216-й соты (cd_dar)* bcm_enet (Р) init_addr (00000000 - 00000000), core_addr (c003c000 - c00440e8) * 1 091 * adsldd (Р) init_addr (00000000 - 00000000), core_addr (c007c000 - c009b9c8) * тысяча девяносто две * bcmxtmcfg (Р) init_addr (00000000 - 00000000), core_addr (c0031000 - c00393bc)
pktflow (P) init_addr (00000000 - 00000000), core_addr (c0015000 - c00182c0)

Процесс sirq-net-rx / 0 (pid: 5, информация о нити = 80f8e000, задача = 80f8dbf8)
Стек: 80f8fec8 80f8fec8 802a3af0 80000000 80164130 00000000 00000000 80131d2c
00000068 80dd8808 880 8 800 880 800c 800fc000080164130 00000000 80000000 c001f530 c00221c8 807d7740 80ccb800 fffffff4
80f8fe58 80ddcfa0 00000000 8015dd1c 80ccb800 8014adcc 807d77a8 80ddcfa0
80164130 fffc5923 80f8fec8 00000000 802a3af0 80ddcfa0 80164130 00000000
... Вызов трассировки: [<80164130>] [<80131d2c>] [<80164130>] [] [<8015dd1c>] [<8014adcc>] [<80164130>] [<80164130>] [<8015df5c>] [<801698a0>] [<80164130>] [<80164a44>] [<80164130>] [<80148930>] [<8014a794>] [<8014a950>] [<80029778>] [<80033238>] [<80033100>] [<80043f28>] [<80013898>] [<80013888>]

Код: 1440013e 26630068 afa30020 <9062000c> 30420008 1440003b 3c028027 8e430058 10600038
Паника ядра - не синхронизируется: фатальное исключение при прерывании

1 Ответ

1 голос
/ 28 февраля 2011

page allocation failure. order:0

В вашей системе недостаточно памяти;ядро не может даже найти одну страницу (order:0, 2 ^ порядковый номер смежных страниц) для выделения.

Добавление дополнительного свопа может или не может помочь;адресное пространство ядра не может быть заменено, поэтому в зависимости от , где используется памяти, у вас может не быть выбора, кроме как (а) выяснить, как попросить компьютер сделать меньше, уменьшить нагрузку на память ядра или(б) добавить больше памяти.

...