[Varnish] #1576: default pcre_match_limit_recursion and thread_pool_stack dont match - varnishd child process crashes with segfault error 6 in libpcre.so.3.13.1

Varnish varnish-bugs at varnish-cache.org
Mon Sep 22 16:53:54 CEST 2014


#1576: default pcre_match_limit_recursion and thread_pool_stack dont match -
varnishd child process crashes with segfault error 6 in libpcre.so.3.13.1
----------------------+--------------------
 Reporter:  abdi      |       Owner:  phk
     Type:  defect    |      Status:  new
 Priority:  normal    |   Milestone:
Component:  varnishd  |     Version:  4.0.1
 Severity:  normal    |  Resolution:
 Keywords:            |
----------------------+--------------------

Comment (by phk):

 So this seems to be slightly more complicated than we thought when we
 talked about it at VDD

 I played a bit around with the canonical "palindrome-checker" RE
 "(\w)(?:(?R)|\w?)\1"

 If I don't JIT compile it, it eats up 3456 bytes of stack per recursion
 (FreeBSD-current/amd64/CLANG)

 If I do JIT compile it, it eats up approx 32kB for all recursion levels up
 to at least 25

 Neither number looks like anything actionable...

-- 
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1576#comment:14>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator



More information about the varnish-bugs mailing list