Skip to content
Snippets Groups Projects
  1. May 04, 2022
  2. Nov 19, 2021
  3. Aug 10, 2021
  4. Jul 29, 2021
  5. May 25, 2021
  6. Jan 14, 2021
  7. Dec 31, 2020
  8. Oct 26, 2020
    • Lukas Jezek's avatar
      map: use control sockets instead of pipe from parent process · 4d6bf767
      Lukas Jezek authored and Tomas Krizek's avatar Tomas Krizek committed
      This change allows map() to work with systemd integration.
      
      As a bonus the new client implementation is based on Lua cqueues
      allows caller to wrap map() in worker.corroutine() and get
      asynchronous execution/avoid blocking main loop.
      
      Currently socket communication does not employ timeouts so a hang
      instance will lead to hang map() call. This does not affect query
      processing _if_ map() is being run in worker.corroutine.
      
      Fixes: #554
      Fixes: #620
      Verified
      4d6bf767
  9. Oct 20, 2020
    • Vladimír Čunát's avatar
      treewide: unify ENABLE_* defines · 8e116df6
      Vladimír Čunát authored and Tomas Krizek's avatar Tomas Krizek committed
      Two styles were used: (un)defined and 0/1.  We switch to 0/1.
      Advantage: it can be used also like `if (ENABLE_FOO)`
      (outside preprocessor).
      
      Except for ./meson.build it's sed \
       -e 's/#ifdef ENABLE_CAP_NG/#if ENABLE_CAP_NG/g' \
       -e 's/#ifdef ENABLE_DOH2/#if ENABLE_DOH2/g' \
       -e 's/defined(ENABLE_COOKIES)/ENABLE_COOKIES/g' \
       -e 's/#ifdef ENABLE_COOKIES/#if ENABLE_COOKIES/g' \
       -i $(git grep -l ENABLE_)
      Verified
      8e116df6
  10. Sep 09, 2020
  11. Aug 06, 2020
  12. Aug 05, 2020
    • Vladimír Čunát's avatar
      daemon/lua: get rid of __engine symbol in lua · b7629c55
      Vladimír Čunát authored
      In particular this gets rid of last light user data inside kresd.
      
      It was still causing problems on some systems, for example Debian Sid.
      The error was the same: "bad light userdata pointer" from luajit,
      but note that the problem can still be triggered by lua libraries,
      e.g. cqueues.
      Verified
      b7629c55
  13. Jul 10, 2020
  14. Apr 15, 2020
    • Petr Špaček's avatar
      lua: properly initialize random number generator · 4b7050ba
      Petr Špaček authored
      Formerly multiple instances could use the same seed,
      which prevented the retry logic in Lua modules (e.g. prefill) from
      retrying at different times.
      
      AFAIK security impact is zero aside from potential thundering-herd
      problem with many kresd instances.
      Verified
      4b7050ba
  15. Apr 01, 2020
    • Tomas Krizek's avatar
      daemon: decrease tcp backlog to 128 · 6e0c68be
      Tomas Krizek authored and Vladimír Čunát's avatar Vladimír Čunát committed
      From our TCP benchmarks, values over 128 don't seem to have any
      measurable benefits, even with hundreds of thousands of connections.
      
      On the contrary, during very high TCP and CPU load, smaller backlog
      seems to dramatically improve latency for clients that keep idle TCP
      connections.
      
      During normal/low load, smaller backlog doesn't seem to have any
      benefits.
      
      When measured against "aggressive" clients that immediately close the
      TCP connection once their query is answered, backlog smaller than 128
      was measured to hurt performance.
      
      The application's backlog size is ultimately limited by
      net.core.somaxconn, which has been set to 128 prior to Linux 5.4.
      Therefore, this change only affects newer kernels and those who have
      manually set this value to a higher size.
      
      For more, see
      https://gitlab.labs.nic.cz/knot/knot-resolver/-/merge_requests/968
      Verified
      6e0c68be
  16. Feb 25, 2020