1. 03 Jun, 2024 13 commits
  2. 29 May, 2024 1 commit
  3. 28 May, 2024 4 commits
  4. 27 May, 2024 6 commits
    • Nils Goroll's avatar
      Fix worker_tmpdir when the unix jail is active · fec25970
      Nils Goroll authored
      I misread the code and did not try running varnishtest as root :|
      fec25970
    • Nils Goroll's avatar
      Return a consistent boc state from ObjWaitExtend() · 77110d7b
      Nils Goroll authored
      Clients to the Object API need to know not only the current extension
      (new length) of streaming objects, but also the streaming state - in
      particular BOS_FINISHED and BOS_FAILED. The latter for obvious
      reasons, and the former to call the delivery function with
      OBJ_ITER_END, which then likely results in VDP_END sent down the
      delivery pipeline.
      
      Background:
      
      It is important for efficient delivery to not receive an additional
      VDP_END with a null buffer, but rather combined with the last chunk of
      data, so, consequently, it is important to reliably send OBJ_INTER_END
      also with the last chunk of data.
      
      Consequent to all of this, ObjWaitExtend() callers need to know when
      BOS_FINISHED has been reached for some extension.
      
      The current API, however, does not provide a consistent view of the
      streaming state, which is only available from within the critical region
      of ObjWaitExtend().
      
      Thus, we add the streaming state as an optional return value.
      
      With this commit, we also remove a superfluous line to set rv again:
      Because boc->fetched_so_far must only be updated while holding the boc
      mutex, reading the value again provides no benefit.
      77110d7b
    • Nils Goroll's avatar
      Copy timeouts from a via backend if undefined for the destination · 6d1ea035
      Nils Goroll authored
      note: use of isnan() is for forward compatibility, at the moment, we use
      -1 to denone NAN for backends.
      6d1ea035
    • Nils Goroll's avatar
      Create a directory owned by the worker process for use as a TMPDIR · 97537cb1
      Nils Goroll authored
      Processes created by the worker might require a TMPDIR for temporary
      files (think: filters). Create a dedicated directory for this purpose,
      which is otherwise hard to achieve in a universal manner.
      97537cb1
    • Dridi Boukelmoune's avatar
      vsm: Do not store MAP_FAILED in a VSM segment · ba7bf7ff
      Dridi Boukelmoune authored
      The problem is that a MAP_FAILED segment ends up in its vsm_set::segs
      list, at which point NULL checks will determine what to do with the
      segment, and MAP_FAILED != NULL.
      
      This can happen when winning (or losing?) the race with a VSC segment
      that goes away after being found in the index, but before being mapped.
      
      One surefire result is a crash in vsm_unmapseg() tripping on assertions
      that other fields are also not NULL. There may be other unidentified ill
      effects.
      ba7bf7ff
    • Dridi Boukelmoune's avatar
      ef400bba
  5. 25 May, 2024 1 commit
  6. 24 May, 2024 8 commits
  7. 21 May, 2024 1 commit
  8. 20 May, 2024 2 commits
  9. 17 May, 2024 4 commits