[pkg-uWSGI-devel] Bug#901774: Crash on SIGQUIT with plugin-python3

wavexx wavexx at thregr.org
Mon Jun 18 10:01:40 BST 2018


Package: uwsgi-plugin-python3
Version: 2.0.15-11+b2
Severity: normal

I'm using uwsgi to drive radicale using the python3 plugin.
My configuration is minimal, with a single master instance only running
radicale:

  /usr/bin/uwsgi --master --ini /etc/uwsgi/radicale.ini

the ini contains:

  [uwsgi]
  threads = 2
  manage-script-name = true
  plugin = python3
  mount = /url=/usr/share/radicale/radicale.wsgi
  logto = /var/log/radicale/uwsgi.log

In my .service file I'm using:

  [Service]
  KillSignal=SIGQUIT

Everything works. However, on SIGSTOP, uwsgi reliably crashes:

  #0  0x00007f5718229fe7 epoll_wait (libc.so.6)
  #0  0x00007f571a21c78c __lll_lock_wait (libpthread.so.0)
  #0  0x00007f77f4cf9a3d _PyType_Lookup (libpython3.6m.so.1.0)
  #1  0x0000564311427bc4 event_queue_wait (uwsgi-core)
  #1  0x00007f571a215cd5 __pthread_mutex_lock (libpthread.so.0)
  #1  0x00007f77f4cf9bae n/a (libpython3.6m.so.1.0)
  #10 0x00007f77f4ecb4fe PyEval_EvalCodeEx (libpython3.6m.so.1.0)
  #11 0x00007f77f4d6906b PyEval_EvalCode (libpython3.6m.so.1.0)
  #12 0x00007f77f4d742ad n/a (libpython3.6m.so.1.0)
  #13 0x00007f77f4dcdf01 PyCFunction_Call (libpython3.6m.so.1.0)
  #14 0x00007f77f4d705e0 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #15 0x00007f77f4ecaa3f n/a (libpython3.6m.so.1.0)
  #16 0x00007f77f4ecb11e n/a (libpython3.6m.so.1.0)
  #17 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #18 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #19 0x00007f77f4ecb2eb n/a (libpython3.6m.so.1.0)
  #2  0x00005643113e504e wsgi_req_accept (uwsgi-core)
  #2  0x00005643113e53a1 wsgi_req_accept (uwsgi-core)
  #2  0x00007f77f4d00a2b n/a (libpython3.6m.so.1.0)
  #20 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #21 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #22 0x00007f77f4ecb2eb n/a (libpython3.6m.so.1.0)
  #23 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #24 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #25 0x00007f77f4ecb2eb n/a (libpython3.6m.so.1.0)
  #26 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #27 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #28 0x00007f77f4ecae43 _PyFunction_FastCallDict (libpython3.6m.so.1.0)
  #29 0x00007f77f4e76551 _PyObject_FastCallDict (libpython3.6m.so.1.0)
  #3  0x0000564311430336 simple_loop_run (uwsgi-core)
  #3  0x0000564311430336 simple_loop_run (uwsgi-core)
  #3  0x00007f77f4cfd455 n/a (libpython3.6m.so.1.0)
  #30 0x00007f77f4e76d46 _PyObject_CallMethodIdObjArgs (libpython3.6m.so.1.0)
  #31 0x00007f77f4ebda0c PyImport_ImportModuleLevelObject (libpython3.6m.so.1.0)
  #32 0x00007f77f4d70391 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #33 0x00007f77f4ecaa3f n/a (libpython3.6m.so.1.0)
  #34 0x00007f77f4ecb4fe PyEval_EvalCodeEx (libpython3.6m.so.1.0)
  #35 0x00007f77f4d6906b PyEval_EvalCode (libpython3.6m.so.1.0)
  #36 0x00007f77f4d742ad n/a (libpython3.6m.so.1.0)
  #37 0x00007f77f4dcdf01 PyCFunction_Call (libpython3.6m.so.1.0)
  #38 0x00007f77f4d705e0 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #39 0x00007f77f4ecaa3f n/a (libpython3.6m.so.1.0)
  #4  0x0000564311434d2c uwsgi_ignition (uwsgi-core)
  #4  0x00007f571a2135aa start_thread (libpthread.so.0)
  #4  0x00007f77f4e764a9 _PyObject_FastCallDict (libpython3.6m.so.1.0)
  #40 0x00007f77f4ecb11e n/a (libpython3.6m.so.1.0)
  #41 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #42 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #43 0x00007f77f4ecb2eb n/a (libpython3.6m.so.1.0)
  #44 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #45 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #46 0x00007f77f4ecb2eb n/a (libpython3.6m.so.1.0)
  #47 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #48 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #49 0x00007f77f4ecb2eb n/a (libpython3.6m.so.1.0)
  #5  0x0000564311438304 uwsgi_worker_run (uwsgi-core)
  #5  0x00007f5718229cbf __clone (libc.so.6)
  #5  0x00007f77f4d731ea n/a (libpython3.6m.so.1.0)
  #50 0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #51 0x00007f77f4ec98a3 n/a (libpython3.6m.so.1.0)
  #52 0x00007f77f4ecae43 _PyFunction_FastCallDict (libpython3.6m.so.1.0)
  #53 0x00007f77f4e76551 _PyObject_FastCallDict (libpython3.6m.so.1.0)
  #54 0x00007f77f4e76d46 _PyObject_CallMethodIdObjArgs (libpython3.6m.so.1.0)
  #55 0x00007f77f4ebda0c PyImport_ImportModuleLevelObject (libpython3.6m.so.1.0)
  #56 0x00007f77f4d72578 n/a (libpython3.6m.so.1.0)
  #57 0x00007f77f4dcded6 PyCFunction_Call (libpython3.6m.so.1.0)
  #58 0x00007f77f4e77178 PyObject_Call (libpython3.6m.so.1.0)
  #59 0x00007f77f4e77a68 PyObject_CallFunction (libpython3.6m.so.1.0)
  #6  0x00005643114388f2 uwsgi_run (uwsgi-core)
  #6  0x00007f77f4dcdd2a _PyCFunction_FastCallDict (libpython3.6m.so.1.0)
  #60 0x00007f77f4daef9b PyImport_Import (libpython3.6m.so.1.0)
  #61 0x00007f77f4daf19a PyImport_ImportModule (libpython3.6m.so.1.0)
  #62 0x00007f77f4e90acc _Py_InitializeEx_Private (libpython3.6m.so.1.0)
  #63 0x00007f77f551d8c9 uwsgi_python_init (python3_plugin.so)
  #7  0x00005643113e43ae main (uwsgi-core)
  #7  0x00007f77f4ecb20c n/a (libpython3.6m.so.1.0)
  #8  0x00007f5718154a87 __libc_start_main (libc.so.6)
  #8  0x00007f77f4d6a4f4 _PyEval_EvalFrameDefault (libpython3.6m.so.1.0)
  #9  0x00005643113e43da _start (uwsgi-core)
  #9  0x00007f77f4ecaa3f n/a (libpython3.6m.so.1.0)

I also tried to use --die-on-term instead of sending SIGQUIT, but the
behavior is the same.

-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (900, 'unstable'), (800, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.16.0-2-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages uwsgi-plugin-python3 depends on:
ii  libc6         2.27-3
ii  libpython3.6  3.6.6~rc1-1
ii  uwsgi-core    2.0.15-11+b2

uwsgi-plugin-python3 recommends no packages.

Versions of packages uwsgi-plugin-python3 suggests:
pn  python3-uwsgidecorators  <none>



More information about the pkg-uWSGI-devel mailing list