-
Pål Hermunn Johansen authored
When the do..while loop in HSH_Purge executes on a oh with many popular variants, there is a potential problem with the "array" of oc pointers, allocated in the thread workspace. If many of the oc's have positive refcounts, they will fill up the array and EXP_Rearm(oc, now, ttl, grace, keep); (void)HSH_DerefObjCore(wrk, &oc, 0); will be called several on the same oc's. At the same time, the counter n_obj_purged will be updated with a too low number. The test case demonstrates how we get a too low value for this counter, but it is not able to force varnishd to use a siginificant amount of CPU.
c21fae9a
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
cache | ||
common | ||
hash | ||
hpack | ||
http1 | ||
http2 | ||
mgt | ||
proxy | ||
storage | ||
waiter | ||
Makefile.am | ||
Makefile.phk | ||
builtin.vcl | ||
flint.lnt | ||
flint.sh | ||
lck.vsc | ||
main.vsc | ||
mempool.vsc | ||
mgt.vsc | ||
sma.vsc | ||
smf.vsc | ||
vbe.vsc | ||
vclflint.lnt | ||
vclflint.sh |