ngnix and Linux on UltrasparcII

Andrey Chernomyrdin andrey.ngnix-ru at sats.spb.ru
Thu Nov 24 11:29:24 MSK 2005


Igor Sysoev wrote:

> On Thu, 24 Nov 2005, Andrey Chernomyrdin wrote:
>
>> Igor Sysoev wrote:
>>
>>> On Wed, 23 Nov 2005, Andrey Chernomyrdin wrote:
>>>
>>>>>> То есть вроде-бы ни чего криминального - самый простой конфиг.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Нужно получить core и прислать вывод команды bt.
>>>>
>>>>
>>>>
>>>> Как получить core не понял, просто протрассировал в gdb:
>>>>
>>>> # /usr/sbin/nginx.debug
>>>> # ps ax | grep nginx
>>>> 14545 ?        Ss     0:00 nginx: master process /usr/sbin/nginx.debug
>>>> 14546 ?        S      0:00 nginx: worker process
>>>
>>>
>>>
>>>> Program received signal SIGSEGV, Segmentation fault.
>>>> [Switching to Thread 16384 (LWP 14546)]
>>>> ngx_epoll_process_events (cycle=<value optimized out>, 
>>>> timer=4294967295, flags=1) at src/event/modules/ngx_epoll_module.c:454
>>>> 454            if (c->fd == -1 || rev->instance != instance) {
>>>> (gdb) bt
>>>> #0  ngx_epoll_process_events (cycle=<value optimized out>, 
>>>> timer=4294967295, flags=1) at src/event/modules/ngx_epoll_module.c:454
>>>> #1  0x0001c59c in ngx_process_events_and_timers (cycle=0x74cb0) at 
>>>> src/event/ngx_event.c:246
>>>> #2  0x00023a24 in ngx_worker_process_cycle (cycle=0x74cb0, 
>>>> data=0x0) at src/os/unix/ngx_process_cycle.c:728
>>>> #3  0x000216a8 in ngx_spawn_process (cycle=0x74cb0, proc=0x2373c 
>>>> <ngx_worker_process_cycle>, data=0x0, name=0x4efa0 "worker 
>>>> process", respawn=-2) at src/os/unix/ngx_process.c:187
>>>> #4  0x00022888 in ngx_start_worker_processes (cycle=0x74cb0, n=1, 
>>>> type=-2) at src/os/unix/ngx_process_cycle.c:327
>>>> #5  0x00022e44 in ngx_master_process_cycle (cycle=0x74cb0) at 
>>>> src/os/unix/ngx_process_cycle.c:119
>>>> #6  0x00012220 in main (argc=<value optimized out>, 
>>>> argv=0xefcc7b84) at src/core/nginx.c:295
>>>> (gdb)
>>>>
>>>> Если что сделал не правильно, то могу переделать - только вопрос 
>>>> как ;-)
>>>
>>>
>>>
>>> p *c
>>> p *rev
>>
>>
>> (gdb) c
>> Continuing.
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 16384 (LWP 26918)]
>> ngx_epoll_process_events (cycle=<value optimized out>, 
>> timer=4294967295, flags=1) at src/event/modules/ngx_epoll_module.c:454
>> 454            if (c->fd == -1 || rev->instance != instance) {
>> (gdb) bt
>> #0  ngx_epoll_process_events (cycle=<value optimized out>, 
>> timer=4294967295, flags=1) at src/event/modules/ngx_epoll_module.c:454
>> #1  0x0001c59c in ngx_process_events_and_timers (cycle=0x74cb0) at 
>> src/event/ngx_event.c:246
>> #2  0x00023a24 in ngx_worker_process_cycle (cycle=0x74cb0, data=0x0) 
>> at src/os/unix/ngx_process_cycle.c:728
>> #3  0x000216a8 in ngx_spawn_process (cycle=0x74cb0, proc=0x2373c 
>> <ngx_worker_process_cycle>, data=0x0, name=0x4efa0 "worker process", 
>> respawn=-2) at src/os/unix/ngx_process.c:187
>> #4  0x00022888 in ngx_start_worker_processes (cycle=0x74cb0, n=1, 
>> type=-2) at src/os/unix/ngx_process_cycle.c:327
>> #5  0x00022e44 in ngx_master_process_cycle (cycle=0x74cb0) at 
>> src/os/unix/ngx_process_cycle.c:119
>> #6  0x00012220 in main (argc=<value optimized out>, argv=0xefab9b84) 
>> at src/core/nginx.c:295
>> (gdb) p *c
>> Cannot access memory at address 0x0
>> (gdb) p *rev
>> Cannot access memory at address 0xffffffff
>
>
> Круто.
>
> p event_list[i]

0x7019982c in epoll_wait () from /lib/libc.so.6
(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 1722)]
ngx_epoll_process_events (cycle=<value optimized out>, timer=4294967295, 
flags=1) at src/event/modules/ngx_epoll_module.c:454
454            if (c->fd == -1 || rev->instance != instance) {
(gdb) p event_list
$1 = (struct epoll_event *) 0x84b50
(gdb) p i         
$2 = 0
(gdb) p event_list[i]
$3 = {events = 1, data = {ptr = 0x0, fd = 0, u32 = 0, u64 = 551768}}
0x7019982c in epoll_wait () from /lib/libc.so.6
= {ptr = 0x0, fd = 0, u32 = 0, u64 = 551768}}


>
>
> Игорь Сысоев
> http://sysoev.ru
>
P.S.
    Может-быть уже лучше в личную переписку ?

-- 
Andrey Chernomyrdin







More information about the nginx-ru mailing list