1. 24 Aug, 2017 2 commits
  2. 23 Aug, 2017 1 commit
  3. 22 Aug, 2017 2 commits
  4. 21 Aug, 2017 3 commits
  5. 19 Aug, 2017 6 commits
  6. 18 Aug, 2017 10 commits
  7. 17 Aug, 2017 3 commits
  8. 16 Aug, 2017 1 commit
    • Pål Hermunn Johansen's avatar
      Fix problem with purging and the n_obj_purged counter · c21fae9a
      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
  9. 15 Aug, 2017 2 commits
  10. 14 Aug, 2017 10 commits
    • Poul-Henning Kamp's avatar
      Minor FlexeLintery · 8b9770ee
      Poul-Henning Kamp authored
      8b9770ee
    • Poul-Henning Kamp's avatar
      TlDupTok() is no longer used. · 4beea862
      Poul-Henning Kamp authored
      4beea862
    • Dridi Boukelmoune's avatar
      Add vmod-vtc to the sphinx docs · e235adf9
      Dridi Boukelmoune authored
      Spotted by @fgsch
      e235adf9
    • Dridi Boukelmoune's avatar
      Warn about vmod-debug functions moved to vmod-vtc · 5a131787
      Dridi Boukelmoune authored
      Refs #2362
      5a131787
    • Dridi Boukelmoune's avatar
      Introduce the vmod vtc for varnishtest · ac5e880a
      Dridi Boukelmoune authored
      This is moving some of the generally useful functions of vmod debug to a
      new one that is installed for use out of the Varnish source tree. Things
      weren't just moved from one source file to another, some functions were
      sligthly renamed, and the behavior of `barrier_sync` was changed to
      adhere to the "universal fail" and no longer returns a boolean.
      
      While at it, I added missing __match_proto__ macros to vmod debug.
      
      Refs #2276
      Closes #2362
      ac5e880a
    • Dridi Boukelmoune's avatar
      Introduce `$ABI [strict|vrt]` for VMOD descriptors · 3199e694
      Dridi Boukelmoune authored
      When versioning appeared in the VRT API, the goal was to allow loose
      ABI compliance on loaded VMODs based on the major/minor revision against
      which it was built. Strict checking was performed if Varnish was built
      from the master branch in the VCC code, but omitted by the child.
      
      This however has two flaws:
      
      1) Release management might go wrong like it happened in 5.1.2 that got
         released from the master branch.
      
      2) This doesn't solve the original problem that some VMODs might rely
         on supported symbols encompassed by the VRT major/minor while others
         may choose to integrate deeper with Varnish and lose guarantees.
      
      This patch retires the `VCS_Branch` macro that is no longer needed and
      provides a new `$ABI` stanza that defaults to strict when omitted. To
      help discovery, in-tree modules advertise a strict match.
      
      To indicate that a VMOD needs the exact Varnish build to be loaded,
      the VMOD's metadata contains 0.0 for the VRT major/minor revision.
      
      In addition, both the VCC and child now perform the full ABI compliance
      check, picking the strict or vrt option depending on the VMOD's metadata.
      
      Closes #2330
      3199e694
    • Poul-Henning Kamp's avatar
      Staticize · 95cc31e0
      Poul-Henning Kamp authored
      95cc31e0
    • Poul-Henning Kamp's avatar
      Staticize · cce139aa
      Poul-Henning Kamp authored
      cce139aa
    • Poul-Henning Kamp's avatar
      Cleaner scoping of waiter descriptions · ed35f9f3
      Poul-Henning Kamp authored
      ed35f9f3
    • Dridi Boukelmoune's avatar
      Switch VCL symbols from C to Varnish identifiers · 31e03bf3
      Dridi Boukelmoune authored
      This does not include VMOD space, but that is pretty much everything
      else.
      
      Refs #2325
      31e03bf3