Core was generated by `nginx: worker process '.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 ngx_stream_lua_req_socket_rev_handler (r=0x56165c2dad00)
at ../ngx_stream_lua-0.0.7/src/ngx_stream_lua_socket_tcp.c:4629
4629 u->read_event_handler(r, u);
(gdb) bt
#0 ngx_stream_lua_req_socket_rev_handler (r=0x56165c2dad00)
at ../ngx_stream_lua-0.0.7/src/ngx_stream_lua_socket_tcp.c:4629
#1 0x000056165b997cd4 in ngx_epoll_process_events (cycle=<optimized out>, timer=<optimized out>,
flags=<optimized out>) at src/event/modules/ngx_epoll_module.c:902
#2 0x000056165b98ed2c in ngx_process_events_and_timers (cycle=cycle@entry=0x56165c2c8af0)
at src/event/ngx_event.c:252
#3 0x000056165b995ca8 in ngx_worker_process_cycle (cycle=cycle@entry=0x56165c2c8af0, data=""> at src/os/unix/ngx_process_cycle.c:816
#4 0x000056165b994588 in ngx_spawn_process (cycle=cycle@entry=0x56165c2c8af0,
proc=0x56165b995c30 <ngx_worker_process_cycle>, data="" name=0x56165ba8b9cd "worker process",
respawn=respawn@entry=2) at src/os/unix/ngx_process.c:199
#5 0x000056165b9970a4 in ngx_reap_children (cycle=0x56165c2c8af0) at src/os/unix/ngx_process_cycle.c:688
#6 ngx_master_process_cycle (cycle=0x56165c2c8af0) at src/os/unix/ngx_process_cycle.c:181
#7 0x000056165b96ee9a in main (argc=<optimized out>, argv=<optimized out>) at src/core/nginx.c:382
(gdb) p *ctx
$1 = {vm_state = 0x0, request = 0x56165c2dad00, resume_handler = 0x56165ba68820 <ngx_stream_lua_wev_handler>,
cur_co_ctx = 0x0, user_co_ctx = 0x0, entry_co_ctx = {data = "" co = 0x7fa19376e4b8,
parent_co_ctx = 0x0, zombie_child_threads = 0x0, cleanup = 0x56165ba7af50 <ngx_stream_lua_coctx_cleanup>,
sleep = {data = "" write = 0, accept = 0, instance = 0, active = 0, disabled = 0, ready = 0, _oneshot_ = 0,
complete = 0, eof = 0, error = 0, timedout = 0, timer_set = 0, delayed = 0, deferred_accept = 0,
pending_eof = 0, posted = 0, closed = 0, channel = 0, resolver = 0, skip_socket_leak_check = 0, cancelable = 0,
available = 0, handler = 0x0, index = 0, log = 0x0, timer = {key = 0, left = 0x0, right = 0x0, parent = 0x0,
color = 0 '\000', data = 0 '\000'}, queue = {prev = 0x0, next = 0x0}}, sem_wait_queue = {prev = 0x0,
next = 0x0}, co_ref = 11, waited_by_parent = 0, co_status = 0, flushing = 0, is_uthread = 0,
thread_spawn_yielded = 0, sem_resume_status = 0}, _on_abort_co_ctx_ = 0x0, ctx_ref = -2, flushing_coros = 0,
out = 0x0, free_bufs = 0x56165c2dc948, busy_bufs = 0x0, free_recv_bufs = 0x56165c2dc928, cleanup = 0x56165c2dc830,
free_cleanup = 0x56165c2dc910, exit_code = 0, downstream = 0x7fa19376e7a0, posted_threads = 0x0, uthreads = 0,
context = 1, waiting_more_body = 0, co_op = 0, exited = 0, eof = 0, capture = 0, read_body_done = 0,
headers_set = 0, entered_preread_phase = 0, entered_content_phase = 1, buffering = 0, no_abort = 0,
header_sent = 0, seen_last_in_filter = 0, seen_last_for_subreq = 0, writing_raw_req_socket = 0,
acquired_raw_req_socket = 1, seen_body_data = 0, peek_needs_more_data = 0}
(gdb) p *u
$2 = {read_prepare_retvals = 0x2b, write_prepare_retvals = 0x7fa1b4d836e8, read_event_handler = 0xb6dd575300000402,
write_event_handler = 0x7fa100000001, socket_pool = 0x7fa1991900c0, conf = 0x2b, cleanup = 0x7fa1b4db1840,
request = 0x241d256c00000402, peer = {connection = 0x2, sockaddr = 0x4537434344003043, socklen = 43, name = 0x0,
tries = 1651265616159441922, start_time = 3546374910286757889, get = 0xfe, free = 0x2b, notify = 0x0,
data = "" set_session = 0x7fa100000002, save_session = 0x7fa199004546, local = 0x6b, type = 0,
rcvbuf = 0, log = 0x6149a1b100000402, cached = 0, transparent = 0, so_keepalive = 0, log_error = 0},
read_timeout = 3833181510001837380, send_timeout = 3689651197922455620, connect_timeout = 3622079615552665154,
resolved = 0x3731353242373443, bufs_in = 0x4530384342363041, buf_in = 0x4542334545433243, buffer = {
pos = 0x4442443838443146 <error: Cannot access memory at address 0x4442443838443146>,
last = 0x3131454637323043 <error: Cannot access memory at address 0x3131454637323043>, file_pos = 0,
file_last = 107, start = 0x0,
end = 0x4843f437b4000402 <error: Cannot access memory at address 0x4843f437b4000402>, tag = 0xffffffff00000044,
file = 0x3741454420206967, shadow = 0x4543304435323246, temporary = 1, memory = 1, mmap = 1, recycled = 0,
in_file = 1, flush = 1, sync = 0, last_buf = 0, last_in_chain = 0, last_shadow = 1, temp_file = 1,
num = 1093875266}, length = 4771339793433114168, rest = 4771053911902598450, socket_errno = 1160788035,
input_filter = 0x3844314645423345, input_filter_ctx = 0x3732304344424438, request_len = 18446180025069815110,
request_bufs = 0x3b, read_co_ctx = 0x0, write_co_ctx = 0x6bdca018b4000402, reused = 140329466462228, ssl_name = {
len = 8386094071427261811,
data = "" <error: Cannot access memory at address 0x6220353339312061>}, ft_type = 29817,
no_close = 1, conn_waiting = 0, read_waiting = 1, write_waiting = 0, eof = 0, body_downstream = 1,
raw_downstream = 1, read_closed = 0, write_closed = 1, read_consumed = 1, ssl_verify = 0, ssl_session_reuse = 0}
(gdb) disass
Dump of assembler code for function ngx_stream_lua_req_socket_rev_handler:
0x000056165ba79a40 <+0>: mov 0x8(%rdi),%rax
0x000056165ba79a44 <+4>: mov 0x2777d5(%rip),%rdx # 0x56165bcf1220 <ngx_stream_lua_module>
0x000056165ba79a4b <+11>: mov 0x30(%rax),%rax
0x000056165ba79a4f <+15>: mov (%rax,%rdx,8),%rax
0x000056165ba79a53 <+19>: test %rax,%rax
0x000056165ba79a56 <+22>: je 0x56165ba79a70 <ngx_stream_lua_req_socket_rev_handler+48>
0x000056165ba79a58 <+24>: mov 0x110(%rax),%rsi
0x000056165ba79a5f <+31>: test %rsi,%rsi
0x000056165ba79a62 <+34>: je 0x56165ba79a70 <ngx_stream_lua_req_socket_rev_handler+48>
0x000056165ba79a64 <+36>: cmpq $0x0,0x40(%rsi)
0x000056165ba79a69 <+41>: je 0x56165ba79a70 <ngx_stream_lua_req_socket_rev_handler+48>
=> 0x000056165ba79a6b <+43>: jmpq *0x10(%rsi)
0x000056165ba79a6e <+46>: xchg %ax,%ax
0x000056165ba79a70 <+48>: lea -0x1a717(%rip),%rax # 0x56165ba5f360 <ngx_stream_lua_block_reading>
0x000056165ba79a77 <+55>: mov %rax,0x20(%rdi)
0x000056165ba79a7b <+59>: retq
End of assembler dump.