httpd with mod_wsgi crash in new_threadstate after graceful reload
Issue
- httpd with mod_wsgi crash in new_threadstate after graceful reload
(gdb) info threads
Id Target Id Frame
5 Thread 0x7fbdfce8f700 (LWP 6567) 0x00007fbe0998ebd3 in select () at ../sysdeps/unix/syscall-template.S:81
4 Thread 0x7fbde577a700 (LWP 107376) 0x00007fbe0995e66d in nanosleep () at ../sysdeps/unix/syscall-template.S:81
3 Thread 0x7fbe0b38c880 (LWP 6448) 0x00007fbe031dc0f0 in __do_global_dtors_aux () from /lib64/liblzma.so.5
2 Thread 0x7fbdfbe8d700 (LWP 6571) 0x00007fbe09e7369d in do_fcntl (arg=<optimized out>, cmd=7, fd=18) at ../sysdeps/unix/sysv/linux/fcntl.c:39
* 1 Thread 0x7fbdfc68e700 (LWP 6569) new_threadstate (interp=0x0, init=init@entry=1) at /usr/src/debug/Python-2.7.5/Python/pystate.c:202
(gdb) thread apply all bt
Thread 5 (Thread 0x7fbdfce8f700 (LWP 6567)):
#0 0x00007fbe0998ebd3 in select () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007fbe0a0a5585 in apr_sleep (t=<optimized out>) at time/unix/time.c:246
#2 0x00007fbe0259e1c7 in wsgi_monitor_thread (thd=<optimized out>, data=0x7fbe0c23b5e0) at mod_wsgi.c:11211
#3 0x00007fbe09e6cdc5 in start_thread (arg=0x7fbdfce8f700) at pthread_create.c:308
#4 0x00007fbe0999776d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
Thread 4 (Thread 0x7fbde577a700 (LWP 107376)):
#0 0x00007fbe0995e66d in nanosleep () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007fbe0995e504 in __sleep (seconds=0) at ../sysdeps/unix/sysv/linux/sleep.c:137
#2 0x00007fbe025a0a99 in wsgi_reaper_thread (thd=<optimized out>, data=0x7fbe0c23b5e0) at mod_wsgi.c:11085
#3 0x00007fbe09e6cdc5 in start_thread (arg=0x7fbde577a700) at pthread_create.c:308
#4 0x00007fbe0999776d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
Thread 3 (Thread 0x7fbe0b38c880 (LWP 6448)):
#0 0x00007fbe031dc0f0 in __do_global_dtors_aux () from /lib64/liblzma.so.5
#1 0x00007fbe0b18fbca in _dl_fini () at dl-fini.c:253
#2 0x00007fbe098d8a49 in __run_exit_handlers (status=status@entry=-1, listp=0x7fbe09c5a6c8 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:77
#3 0x00007fbe098d8a95 in __GI_exit (status=status@entry=-1) at exit.c:99
#4 0x00007fbe025aae5a in wsgi_start_process (p=p@entry=0x7fbe0c1e9138, daemon=<optimized out>) at mod_wsgi.c:11975
#5 0x00007fbe025ac3a5 in wsgi_start_daemons (p=0x7fbe0c1e9138) at mod_wsgi.c:12172
#6 wsgi_hook_init (pconf=0x7fbe0c1e9138, ptemp=<optimized out>, plog=<optimized out>, s=<optimized out>) at mod_wsgi.c:13741
#7 0x00007fbe0b3e42b9 in ap_run_post_config (pconf=pconf@entry=0x7fbe0c1e9138, plog=0x7fbe0c216358, ptemp=0x7fbe0c214348, s=0x7fbe0c210310) at config.c:103
#8 0x00007fbe0b3c1d47 in main (argc=2, argv=0x7ffcf4c1ec38) at main.c:765
Thread 2 (Thread 0x7fbdfbe8d700 (LWP 6571)):
#0 0x00007fbe09e7369d in do_fcntl (arg=<optimized out>, cmd=7, fd=18) at ../sysdeps/unix/sysv/linux/fcntl.c:39
#1 __libc_fcntl (fd=18, cmd=cmd@entry=7) at ../sysdeps/unix/sysv/linux/fcntl.c:92
#2 0x00007fbe0a098a56 in proc_mutex_fcntl_acquire (mutex=0x7fbe0c23b038) at locks/unix/proc_mutex.c:579
#3 0x00007fbe025acd54 in wsgi_daemon_worker (thread=<optimized out>, p=<optimized out>) at mod_wsgi.c:10891
#4 wsgi_daemon_thread (thd=<optimized out>, data=<optimized out>) at mod_wsgi.c:11074
#5 0x00007fbe09e6cdc5 in start_thread (arg=0x7fbdfbe8d700) at pthread_create.c:308
#6 0x00007fbe0999776d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
Thread 1 (Thread 0x7fbdfc68e700 (LWP 6569)):
#0 new_threadstate (interp=0x0, init=init@entry=1) at /usr/src/debug/Python-2.7.5/Python/pystate.c:202
#1 0x00007fbe022c4a1a in PyThreadState_New (interp=<optimized out>) at /usr/src/debug/Python-2.7.5/Python/pystate.c:213
#2 0x00007fbe022c527c in PyGILState_Ensure () at /usr/src/debug/Python-2.7.5/Python/pystate.c:600
#3 0x00007fbe0259def8 in wsgi_deadlock_thread (thd=<optimized out>, data=<optimized out>) at mod_wsgi.c:11116
#4 0x00007fbe09e6cdc5 in start_thread (arg=0x7fbdfc68e700) at pthread_create.c:308
#5 0x00007fbe0999776d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
(gdb) thread 1
[Switching to thread 1 (Thread 0x7f6fb432a700 (LWP 38589))]
#0 new_threadstate (interp=0x0, init=init@entry=1) at /usr/src/debug/Python-2.7.5/Python/pystate.c:202
202 tstate->next = interp->tstate_head;
(gdb)
--- "Python-2.7.5/Python/pystate.c"
156 static PyThreadState *
157 new_threadstate(PyInterpreterState *interp, int init)
... skip
202 tstate->next = interp->tstate_head; <==
---
(gdb) f 2
#2 0x00007fbe022c527c in PyGILState_Ensure () at /usr/src/debug/Python-2.7.5/Python/pystate.c:600
600 tcur = PyThreadState_New(autoInterpreterState);
(gdb) p autoInterpreterState
$1 = (PyInterpreterState *) 0x0
(gdb)
Environment
- Red Hat Enterprise Linux 7
- mod_wsgi
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.