[PATCH] http_request: fix a segmentation fault

Kirill A. Korinskiy catap+nginx at catap.ru
Thu May 28 16:41:44 MSD 2009


At Thu, 28 May 2009 14:39:23 +0400,
Igor Sysoev <is at rambler-co.ru> wrote:
> 
> > собственно на этом месте оно у меня и бабахнуло.
> 
> То есть, в конфигурации было описано 250 переменных ?
> 

В своих модулях. Но да, их там достаточно много. Плюс мало памяти
(очень) было свободной в тот момент, когда запускал приложение. Да,
overcommit_memory был специально выкручен, и забыл вернуть его в
исходное положение.

Т.е. я не смогу воспроизвести этот сегфол без постановки системы в
странную позу.

> > Т.е. это граничная ситуация, ага, до которой мало кто доберется. Но
> > все-таки иметь даже ??косметические?? проверки которые дают сегфол ??? это
> > не хорошо.
> > 
> > Т.е. если сюда попасть нельзя, даже теоретически, то зачем там
> > условие? А если можно ??? то все-таки нужно иметь корректную обработку.
> 
> Я согласен, что проверка там нужна и должно быть правильное завершение,
> но на практике я такой ситуации просто не видел.
> 

Просто может быть что такого кода, который может «бабахнуть» в
граничной ситуации существует еще несколько моментов. Способы найти
его — мне пока не известны. Т.е. можно встроить в важные архитектурные
вещи, типо palloc, очень иногда возвращение ошибки - но это не метод.

-- 
wbr, Kirill





More information about the nginx-ru mailing list