[master] 309e807d3 try to narrow down a umem panic observed in vtest b00035.vtc

Nils Goroll nils.goroll at uplex.de
Tue Jan 14 12:49:06 UTC 2020


commit 309e807d3ff8810017451cb16c667d99125415aa
Author: Nils Goroll <nils.goroll at uplex.de>
Date:   Tue Jan 14 13:46:19 2020 +0100

    try to narrow down a umem panic observed in vtest b00035.vtc
    
    is it a race with _close ?
    
    ***  v1   debug|Child (369) Panic at: Tue, 14 Jan 2020 12:06:12 GMT
    ***  v1   debug|Wrong turn at
    ../../../bin/varnishd/cache/cache_main.c:284:
    ***  v1   debug|Signal 11 (Segmentation Fault) received at b4 si_code 1
    ***  v1   debug|version = varnish-trunk revision
    b8b798a0f59ba99dfe6ba3152ee8ea02182d15cc, vrt api = 10.0
    ***  v1   debug|ident = -jsolaris,-sdefault,-sdefault,-hcritbit,ports
    ***  v1   debug|now = 2786648.903965 (mono), 1579003571.310573 (real)
    ***  v1   debug|Backtrace:
    ***  v1   debug|  80e1bd8: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'pan_backtrace+0x18 [0x80e1bd8]
    ***  v1   debug|  80e2147: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'pan_ic+0x2c7 [0x80e2147]
    ***  v1   debug|  81b9a6f: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'VAS_Fail+0x4f [0x81b9a6f]
    ***  v1   debug|  80d7fba: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'child_signal_handler+0x27a [0x80d7fba]
    ***  v1   debug|  fed92695: /lib/libc.so.1'__sighndlr+0x15 [0xfed92695]
    ***  v1   debug|  fed86c8b: /lib/libc.so.1'call_user_handler+0x298 [0xfed86c8b]
    ***  v1   debug|  fda8a93e: /lib/libumem.so.1'umem_cache_free
    ***  v1   debug|+0x23 [0xfda8a93e]
    ***  v1   debug|  817f3bc: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'smu_free+0x35c [0x817f3bc]
    ***  v1   debug|  817aa21: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'sml_stv_free+0x101 [0x817aa21]
    ***  v1   debug|  817b4eb: /tmp/vtest.o32_su12.4/varnish-cache/varnish-trunk/_build/bin/varnishd/varnishd'sml_slim+0x2cb [0x817b4eb]
    ***  v1   debug|thread = (cache-exp)
    ***  v1   debug|thr.req = 0 {
    ***  v1   debug|},
    ***  v1   debug|thr.busyobj = 0 {
    ***  v1   debug|},
    ***  v1   debug|vmods = {
    ***  v1   debug|},
    ***  v1   debug|
    ***  v1   debug|
    ***  v1   debug|Info: Child (369) said Child dies
    ***  v1   debug|Debug:
    ***  v1   debug| Child cleanup complete
    ***  v1   debug|

diff --git a/bin/varnishd/storage/storage_umem.c b/bin/varnishd/storage/storage_umem.c
index 5ce3ce3d7..0c5c06e1c 100644
--- a/bin/varnishd/storage/storage_umem.c
+++ b/bin/varnishd/storage/storage_umem.c
@@ -223,6 +223,7 @@ smu_free(struct storage *s)
 
 	umem_freef(smu->s.ptr, smu->sz);
 	smu_smu_init(smu, sc);
+	AN(sc->smu_cache);
 	umem_cache_freef(sc->smu_cache, smu);
 }
 


More information about the varnish-commit mailing list