ugenk Опубликовано 18 января, 2010 · Жалоба собрал 2.6.32.2, тестирую pppoe. выдает вот такое в dmesg, и не получается поднять больше 1488 клиентов.. [ 1279.222685] PERCPU: allocation failed, size=2048 align=8, failed to allocate new chunk [ 1279.222762] Pid: 30248, comm: pppd Not tainted 2.6.32.2 #1 [ 1279.222818] Call Trace: [ 1279.222873] [<c10b69e8>] ? pcpu_alloc+0x735/0x7c5 [ 1279.222931] [<c1037b2a>] ? irq_exit+0x36/0x58 [ 1279.222987] [<c1014a48>] ? smp_apic_timer_interrupt+0x6c/0x76 [ 1279.223046] [<c120a221>] ? snmp_mib_init+0x1a/0x51 [ 1279.223108] [<f94e8dbf>] ? ipv6_add_dev+0x147/0x2c6 [ipv6] [ 1279.223169] [<f94e9488>] ? addrconf_notify+0x4f/0x74f [ipv6] [ 1279.223227] [<c12277ca>] ? register_net_sysctl_table+0x37/0x41 [ 1279.223285] [<c1208846>] ? __devinet_sysctl_register+0xb6/0xe1 [ 1279.223343] [<c12088a7>] ? devinet_sysctl_register+0x36/0x3b [ 1279.223401] [<c120d8a1>] ? ip_mc_init_dev+0x6a/0x7e [ 1279.223457] [<c120898b>] ? inetdev_init+0xdf/0x10f [ 1279.223533] [<c1208a07>] ? inetdev_event+0x4c/0x38b [ 1279.223590] [<c11a455a>] ? get_device+0x10/0x14 [ 1279.223645] [<c1227a4e>] ? klist_node_init+0x3b/0x3e [ 1279.223702] [<c1227ad4>] ? klist_add_tail+0x16/0x2f [ 1279.223758] [<c1049c8e>] ? notifier_call_chain+0x2a/0x47 [ 1279.223815] [<c1049d17>] ? raw_notifier_call_chain+0x9/0xc [ 1279.223873] [<c11cda9e>] ? register_netdevice+0x2f4/0x33d [ 1279.223930] [<c11cdb16>] ? register_netdev+0x2f/0x3b [ 1279.223990] [<f89c6641>] ? ppp_ioctl+0x28e/0xb97 [ppp_generic] [ 1279.224048] [<c10b6ee7>] ? __dentry_open+0x176/0x246 [ 1279.224104] [<c10ba9e3>] ? chrdev_open+0x0/0x16b [ 1279.224160] [<c10c221f>] ? do_filp_open+0x457/0x85d [ 1279.224217] [<c11c00ac>] ? sys_connect+0x76/0xa2 [ 1279.224273] [<f89d3185>] ? pppox_ioctl+0x84/0x8d [pppox] [ 1279.224330] [<f89c63b3>] ? ppp_ioctl+0x0/0xb97 [ppp_generic] [ 1279.224388] [<c10c31bf>] ? vfs_ioctl+0x1c/0x5f [ 1279.224443] [<c10c3704>] ? do_vfs_ioctl+0x45b/0x496 [ 1279.224499] [<c10b6b05>] ? fd_install+0x1e/0x3c [ 1279.224554] [<c10c2d15>] ? do_fcntl+0x216/0x387 [ 1279.224613] [<c10b6d07>] ? do_sys_open+0xd4/0xdf [ 1279.224668] [<c10c3780>] ? sys_ioctl+0x41/0x58 [ 1279.224724] [<c10031d4>] ? sysenter_do_call+0x12/0x28 [ 1279.258360] PPP: couldn't register device ppp1488 (-12) ... [ 1282.073824] PERCPU: limit reached, disable warning [ 1282.139753] PPP: couldn't register device ppp1488 (-12) [ 1282.223481] PPP: couldn't register device ppp1488 (-12) [ 1282.303684] PPP: couldn't register device ppp1488 (-12) [ 1282.431658] PPP: couldn't register device ppp1488 (-12) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
2c2i Опубликовано 29 января, 2010 · Жалоба а памяти хватает? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nuclearcat Опубликовано 29 января, 2010 · Жалоба 32bit ядро или 64bit? Хотя у меня 3к+ интерфейсов на 32бит без проблем Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 17 июня, 2010 (изменено) · Жалоба Почти аналогичная проблема, но с pptp. 32-х битная Федора 12, kernel-PAE-2.6.32.11-99.fc12.i686. Jun 17 21:56:44 helium3 pptpd[5262]: CTRL: Client 192.168.22.171 control connection started Jun 17 21:56:44 helium3 pptpd[5262]: CTRL: Starting call (launching pppd, opening GRE) Jun 17 21:56:44 helium3 pppd[5263]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded. Jun 17 21:56:44 helium3 pptp[5263]: Plugin pptp.so loaded. Jun 17 21:56:44 helium3 pptp[5263]: PPTP plugin version 0.8.4 compiled for pppd-2.4.3, linux-2.6.32.11-99.fc12.i686.PAE Jun 17 21:56:44 helium3 pptp[5263]: pppd 2.4.3 started by root, uid 0 Jun 17 21:56:44 helium3 pptp[5263]: Couldn't create new ppp unit: Cannot allocate memory Jun 17 21:56:44 helium3 pptp[5263]: Exit. Jun 17 21:56:44 helium3 kernel: PPP: couldn't register device ppp751 (-12) Jun 17 21:56:44 helium3 pptpd[5262]: CTRL: Client pppd TERM sending Jun 17 21:56:44 helium3 pptpd[5262]: CTRL: Client pppd finish wait Jun 17 21:56:44 helium3 pptpd[5262]: CTRL: Client 192.168.22.171 control connection finished pptp не может выделить память, а ядро не может зарегистрировать интерфейс. Сталкивался ли кто? Изменено 17 июня, 2010 пользователем Justas Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 20 августа, 2010 · Жалоба Всё еще актуально :( Сменил ядро на 2.6.33 - проблема не ушла. Уже все глаза просмотрел - не знаю, че ему надо. Памяти хватает - 2ГБ оперативной и 2ГБ своп, занято 40%. Поднимает не более 751 интерфейса. Гугл молчит. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ThreeDHead Опубликовано 20 августа, 2010 (изменено) · Жалоба Памяти точно хватает? Что за память? Тестировали её? Ядро проца в полку или еще большой запас есть? ОС паникует при этом или только pppd ругается? пысы: вот у меня на малом сервере, поднято 300 pppoe интерфейсов, занято 9% от 12 гиг, это к вопросу о том что её вам хватает. Изменено 20 августа, 2010 пользователем ThreeDHead Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 20 августа, 2010 · Жалоба Памяти точно хватает. Сервер INPRO, всё оттестировано по 5 раз. Процессоры загружены на 30% максимум. Ядро не паникует, ругается только pptp. Использую accel-pptp, возможно проблема в нем, потому как на второй подобной машине (однако там ядро 2.6.20) с родным pptp проблемы не возникает. Ща попробую отписать в ветку форума accel-pptp еще... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ThreeDHead Опубликовано 20 августа, 2010 · Жалоба А чего бы не попробовать наисвежайшее ядро собрать? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nuclearcat Опубликовано 20 августа, 2010 · Жалоба Памяти точно хватает? Что за память? Тестировали её?Ядро проца в полку или еще большой запас есть? ОС паникует при этом или только pppd ругается? пысы: вот у меня на малом сервере, поднято 300 pppoe интерфейсов, занято 9% от 12 гиг, это к вопросу о том что её вам хватает. MASTER_PPPOE_WORLDNET ~ # pppctrl |wc -l2617 clients connected MASTER_PPPOE_WORLDNET ~ # cat /proc/meminfo MemTotal: 8213996 kB MemFree: 7099976 kB Причем мег 200 - система в ramfs Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan Rostovikov Опубликовано 21 августа, 2010 · Жалоба Ядрокот, если не секрет какие у Вас тарифы ? и какие интерфейсы на "MASTER_PPPOE_WORLDNET" ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nuclearcat Опубликовано 21 августа, 2010 · Жалоба Тарифы до 2х мегабит гигабитные интерфейсы, один e1000e, другой r8169, и скоро могут быть проблемы именно из-за realtek Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan Rostovikov Опубликовано 22 августа, 2010 · Жалоба Тогда понятно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 22 августа, 2010 · Жалоба Добавил Swap: 5193712k total Наблюдаю. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 30 августа, 2010 · Жалоба Не-а. Aug 30 21:42:06 helium3 pptp[22359]: Couldn't create new ppp unit: Cannot allocate memory Aug 30 21:42:06 helium3 kernel: PPP: couldn't register device ppp752 (-12) :( Вроде из ядер давно уже убрали ограничения на количество ppp-интерфейсов. Или я ошибаюсь? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 30 августа, 2010 · Жалоба Причем мег 200 - система в ramfs [offtopic] Да, Денис, торжественно заявляю что я вам должен денег и вы не отвертитесь. Люди! Nuclearcat сильно помог мне и отказывается называть свой WM ID для моей благодарности! Ну и как это назвать? [/offtopic] Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 14 октября, 2010 · Жалоба Все еще актуально. Уже всё перевернул по поиску "cannot allocate memory", как правило, такая ошибка возникает при багах в системе/приложении. Еще по ulimit -a значение max user processes (-u) было 1024, поставил ulimit -u 32764, но проблему это не решает. При этом максимальное значение количества ppp-интерфейсов немного может меняться: Oct 13 21:03:46 helium3 kernel: PPP: couldn't register device ppp767 (-12) что действительно говорит о неких ограничениях ресурсов системы... Фиг знает. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 13 ноября, 2010 · Жалоба Обновил ядро до 2.6.35.6. Проблема не ушла. Кол-во поднятых интерфейсов увеличилось до 771 - Nov 13 18:20:32 helium3 kernel: [58076.883644] PPP: couldn't register device ppp772 (-12) В dmesg [58076.869971] PERCPU: allocation failed, size=2048 align=4, failed to allocate new chunk [58076.869978] Pid: 21428, comm: pppd Not tainted 2.6.35.6-48.fc12.i686.PAE #1 [58076.869980] Call Trace: [58076.869991] [<c07b8b0d>] ? printk+0x25/0x30 [58076.869997] [<c04dcd61>] pcpu_alloc+0x697/0x6ff [58076.870004] [<c04da339>] ? __kmalloc_track_caller+0x101/0x110 [58076.870012] [<c0730966>] ? neigh_parms_alloc+0x55/0xcb [58076.870488] [<c0445172>] ? local_bh_enable_ip+0xd/0xf [58076.870492] [<c04dcdec>] __alloc_percpu+0xf/0x13 [58076.870497] [<c0775cf7>] snmp_mib_init+0x22/0x5a [58076.870516] [<f7c34fd7>] ipv6_add_dev+0x177/0x31b [ipv6] [58076.870571] [<f7c356bd>] addrconf_notify+0x55/0x6c5 [ipv6] [58076.870583] [<c07795e7>] ? ip_mc_init_dev+0x72/0x89 [58076.870586] [<c0774a19>] ? inetdev_init+0xfe/0x136 [58076.870592] [<c073a2c3>] ? dropmon_net_event+0x32/0x117 [58076.870596] [<c073a31d>] ? dropmon_net_event+0x8c/0x117 [58076.871598] [<c07bd6b2>] notifier_call_chain+0x2b/0x4d [58076.871605] [<c0458639>] raw_notifier_call_chain+0x11/0x13 [58076.871615] [<c072a6b2>] call_netdevice_notifiers+0x41/0x48 [58076.871632] [<c072c378>] register_netdevice+0x256/0x2b3 [58076.871635] [<c072c40c>] register_netdev+0x37/0x46 [58076.871642] [<c05be271>] ? sprintf+0x17/0x19 [58076.871647] [<f7d6773f>] ppp_ioctl+0x289/0xb8c [ppp_generic] [58076.871653] [<c04ea9a0>] ? path_put+0x1a/0x1d [58076.871657] [<c04ed7c9>] ? do_filp_open+0x3d6/0x43a [58076.871661] [<c04ee44d>] vfs_ioctl+0x2c/0x96 [58076.871665] [<f7d674b6>] ? ppp_ioctl+0x0/0xb8c [ppp_generic] [58076.871668] [<c04ee9c3>] do_vfs_ioctl+0x468/0x49c [58076.871677] [<c04e1e8d>] ? fd_install+0x23/0x41 [58076.871683] [<c047ec07>] ? audit_putname+0x2f/0x31 [58076.871686] [<c04ea9a0>] ? path_put+0x1a/0x1d [58076.871690] [<c04eea3d>] sys_ioctl+0x46/0x66 [58076.871695] [<c0408c9f>] sysenter_do_call+0x12/0x28 [58076.871701] [<c07b0000>] ? pci_ni8420_exit+0x72/0xa0 [58076.883644] PPP: couldn't register device ppp772 (-12) [58127.216708] PERCPU: allocation failed, size=2048 align=4, failed to allocate new chunk [58127.216713] Pid: 21632, comm: pppd Not tainted 2.6.35.6-48.fc12.i686.PAE #1 [58127.216716] Call Trace: [58127.216738] [<c07b8b0d>] ? printk+0x25/0x30 [58127.216744] [<c04dcd61>] pcpu_alloc+0x697/0x6ff [58127.216751] [<c04da339>] ? __kmalloc_track_caller+0x101/0x110 [58127.216759] [<c0730966>] ? neigh_parms_alloc+0x55/0xcb [58127.216765] [<c0445172>] ? local_bh_enable_ip+0xd/0xf [58127.216768] [<c04dcdec>] __alloc_percpu+0xf/0x13 [58127.216774] [<c0775cf7>] snmp_mib_init+0x22/0x5a [58127.216793] [<f7c34fd7>] ipv6_add_dev+0x177/0x31b [ipv6] [58127.216806] [<f7c356bd>] addrconf_notify+0x55/0x6c5 [ipv6] [58127.216810] [<c07795e7>] ? ip_mc_init_dev+0x72/0x89 [58127.216813] [<c0774a19>] ? inetdev_init+0xfe/0x136 [58127.216820] [<c073a2c3>] ? dropmon_net_event+0x32/0x117 [58127.216824] [<c073a31d>] ? dropmon_net_event+0x8c/0x117 [58127.216829] [<c07bd6b2>] notifier_call_chain+0x2b/0x4d [58127.216833] [<c0458639>] raw_notifier_call_chain+0x11/0x13 [58127.216837] [<c072a6b2>] call_netdevice_notifiers+0x41/0x48 [58127.216841] [<c072c378>] register_netdevice+0x256/0x2b3 [58127.216844] [<c072c40c>] register_netdev+0x37/0x46 [58127.216850] [<c05be271>] ? sprintf+0x17/0x19 [58127.216855] [<f7d6773f>] ppp_ioctl+0x289/0xb8c [ppp_generic] [58127.216861] [<c04ea9a0>] ? path_put+0x1a/0x1d [58127.216864] [<c04ed7c9>] ? do_filp_open+0x3d6/0x43a [58127.216870] [<c071c271>] ? sock_ioctl+0x1c7/0x1e9 [58127.216874] [<c04ee44d>] vfs_ioctl+0x2c/0x96 [58127.216878] [<f7d674b6>] ? ppp_ioctl+0x0/0xb8c [ppp_generic] [58127.216881] [<c04ee9c3>] do_vfs_ioctl+0x468/0x49c [58127.216886] [<c04e1e8d>] ? fd_install+0x23/0x41 [58127.216892] [<c047ec07>] ? audit_putname+0x2f/0x31 [58127.216898] [<c04ea9a0>] ? path_put+0x1a/0x1d [58127.216902] [<c04eea3d>] sys_ioctl+0x46/0x66 [58127.216907] [<c0408c9f>] sysenter_do_call+0x12/0x28 [58127.216909] PERCPU: limit reached, disable warning [58127.235951] PPP: couldn't register device ppp772 (-12) [58132.169797] PPP: couldn't register device ppp772 (-12) [58132.514361] PPP: couldn't register device ppp772 (-12) [58133.275402] PPP: couldn't register device ppp772 (-12) Проблема не ядерная. На следующей неделе увеличу оперативной памяти с 2 до 8 гб. Отпишусь. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nuclearcat Опубликовано 13 ноября, 2010 · Жалоба Justas - если хотите отпишемся вместе в netdev Единственное НО - надо для этого применять ванильное ядро, с kernel.org Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 14 ноября, 2010 (изменено) · Жалоба nuclearcat А можно на ваш sysctl взглянуть? У меня похожая проблема, больше ~1000 pppoe тоннелей не поднимается.. Изменено 14 ноября, 2010 пользователем kayot Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 14 ноября, 2010 · Жалоба Вчера меня осенило посмотреть на память ядра. На стойке у меня несколько серверов. У всех в среднем используемая vmalloc [root@test3 tmp]# grep Vmalloc /proc/meminfo VmallocTotal: 122880 kB VmallocUsed: 4172 kB VmallocChunk: 113748 kB То есть в районе от 2 до 5 мегабайт. На сервере с pppd: VmallocTotal: 122880 kB VmallocUsed: 109900 kB VmallocChunk: 2040 kB То есть что-то забирает память ядра под свои нужды. xebподсказал, что да, pppd при поднятии интерфейса использует память ядра. У меня стоял ppp-2.4.3, сегодня обновил до 2.4.5, но и с ним в данный момент при 83 соединениях уже VmallocTotal: 122880 kB VmallocUsed: 15424 kB VmallocChunk: 90100 kB Дождусь очередного переполнения памяти и увеличу до 256 мбайт памяти ядру. А там уже посмотрим. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 14 ноября, 2010 · Жалоба Сейчас 134 соединения. VmallocTotal: 122880 kB VmallocUsed: 23884 kB VmallocChunk: 81908 kB Да, нужно увеличить памяти ядру. Сегодня ночью отправлю машину в ребут. nuclearcat, думаете, Редхатовцы действительно поломали ядро? Ну, если вы поможете поставить ванильное ядро... :-) А еще лучше забить и перейти на Центос 5.5 с его вылизанным до блеска 2.6.18. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 14 ноября, 2010 · Жалоба У меня как-то так, сейчас 521 сессия VmallocTotal: 34359738367 kB VmallocUsed: 77296 kB VmallocChunk: 34359578715 kB Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Justas Опубликовано 14 ноября, 2010 · Жалоба У меня как-то так, сейчас 521 сессия VmallocTotal: 34359738367 kB VmallocUsed: 77296 kB VmallocChunk: 34359578715 kB Эээ. Вы уверены, что у вас в системе есть 32 терабайта памяти, даже для ядра? Что-то какие-то нереальные цифры. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 14 ноября, 2010 · Жалоба Посмотрел на нескольких серверах с федорой/ceontOS и ядром 2.6.3х - везде такая картина :) Мои грабли похоже из-за нетюненого ulimit - pppd не может открыть больше 1024 сокетов, посмотрим после планового ребута. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Jugernault Опубликовано 14 ноября, 2010 · Жалоба Посмотрел на нескольких серверах с федорой/ceontOS и ядром 2.6.3х - везде такая картина :) Аналогично... [sva@d10 ~]$ grep Vmalloc /proc/meminfo VmallocTotal: 34359738367 kB VmallocUsed: 289444 kB VmallocChunk: 34357355820 kB Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...