|
ru.unix.bsd
- RU.UNIX.BSD ------------------------------------------------------------------
From : Timur Khanjanov 2:5020/400 31 Aug 2005 13:00:15
To : All
Subject : mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями
--------------------------------------------------------------------------------
наступил вчера на вот такие грабли
если завести pppoe через mpd на более чем 64х физических интерфейсах
то на 65м получаем sigsegv и зависание mpd с полной загрузкой процессора
и отсутствием реакции на что бы то ни было кроме kill -9
после копания в исходниках с gdb в зубах обнаружил следуещее
Массивы содержащие линки и бандлы - динамические и удлиняются через
функцию LengthenArray
но в файле pppoe.c видим следующее на 154й строке
int PppoeIfCount=0;
struct PppoeIf PppoeIfs[64];
итак - физические интерфейсы для линков хранятся в _статическом_ массиве
на 64 элемента
смотрим дальше
в функции PppoeNodeUpdate производится его заполнение
проверка на переполнение массива _не производися_
в результате на 65м интерфейсе
вот в этой строке (~830)
PppoeIfs[PppoeIfCount++].listen=0;
нолик записывается аккурат в указатель на массив бандлов
и потом при попытке добавить новый бандл получаем 11й сигнал
дальше - больше - при приходе сигнала мпд пытается всё закрыть
опять лезет в массив бандлов опять получает 11й сигнал и так
пока его не снимут через kill -9
пока прописал там размер массива на 256, но пожалуй там надо
сделать как в списках бандлов/линков динамический массив и
увеличение через LenghtenArray
--
Homo Homini domini est
--- ifmail v.2.15dev5.3
* Origin: Gamma NNTP server Moscow Russia (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Тема: |
Автор: |
Дата: |
mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
31 Aug 2005 13:00:15 |
Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Gleb Smirnoff |
31 Aug 2005 13:33:43 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
31 Aug 2005 15:00:28 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Gleb Smirnoff |
31 Aug 2005 16:38:04 |
  Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
31 Aug 2005 19:00:38 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
31 Aug 2005 17:00:28 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Gleb Smirnoff |
31 Aug 2005 18:37:07 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
31 Aug 2005 20:00:38 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Gleb Smirnoff |
01 Sep 2005 04:24:14 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
01 Sep 2005 13:00:14 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Sergey Matveychuk |
08 Sep 2005 12:02:35 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Gleb Smirnoff |
08 Sep 2005 12:20:19 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Sergey Matveychuk |
08 Sep 2005 12:46:29 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
08 Sep 2005 14:00:13 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Gleb Smirnoff |
08 Sep 2005 14:18:56 |
  Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Moderator of RU.UNIX.BSD |
08 Sep 2005 16:07:18 |
  mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Andrey Ostanovsky |
08 Sep 2005 16:08:50 |
  Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
08 Sep 2005 18:00:34 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Sergey Matveychuk |
08 Sep 2005 14:22:59 |
 Re: mpd, pppoe на куче интерфейсов и грабли, присыпанные листьями |
Timur Khanjanov |
08 Sep 2005 18:00:34 |
|
|