]>
git.ipfire.org Git - thirdparty/knot-dns.git/log
David Vašek [Sun, 5 May 2024 09:12:39 +0000 (11:12 +0200)]
tests/atomic: workaround for a GCC optimization bug on i386
With -O1 and higher, the test of atomic_exchange_explicit() doesn't work right for 64-bit variables
on i386 (and possibly other 32-bit architectures). It seems that atomic_exchange_explicit() doesn't
exchange 64-bit values properly when it's used in a loop and GCC compiler optimization is turned
on. As a workaround, we are testing ATOMIC_XCHG on a pointer size of the given architecture.
It isn't sure yet, if atomic_exchange_explicit() is safe for 64-bit variables with GCC on i386 when
not used in a loop. Therefore, ATOMIC_XCHG should not be used on general 64-bit variables until
this GCC bug is solved.
Clang and gcc -O0 don't seem to be affected by this issue.
David Vašek [Sat, 4 May 2024 23:42:25 +0000 (01:42 +0200)]
tests/atomic: finish the thread early once an invalid value occurs
Daniel Salzman [Mon, 6 May 2024 11:28:26 +0000 (13:28 +0200)]
server/xdp: add a check for non-null TCP table (Clang analyzer)
Daniel Salzman [Mon, 6 May 2024 11:14:58 +0000 (13:14 +0200)]
Merge branch 'doc_fixes'
Daniel Salzman [Mon, 6 May 2024 11:10:09 +0000 (13:10 +0200)]
doc: store doctrees in a separate directory per target
Daniel Salzman [Mon, 6 May 2024 09:58:50 +0000 (11:58 +0200)]
configure: fix HAVE_PDFLATEX setting if pdflatex not available
Daniel Salzman [Sun, 5 May 2024 19:23:35 +0000 (21:23 +0200)]
Merge branch 'remove_man'
Daniel Salzman [Sat, 4 May 2024 18:21:10 +0000 (20:21 +0200)]
man: use grouped targets in the Makefile to avoid potential parallel building
fixes #928
Daniel Salzman [Tue, 30 Apr 2024 14:27:58 +0000 (16:27 +0200)]
doc: remove man templates from the repository, keep them in a tarball
Daniel Salzman [Fri, 3 May 2024 16:08:26 +0000 (18:08 +0200)]
Merge branch 'kxdpgun_usr1_div0_bug' into 'master'
kxdpgun: USR1 handler bugs
Closes #927
See merge request knot/knot-dns!1661
Jan Doskočil [Fri, 3 May 2024 00:00:00 +0000 (00:00 +0000)]
kxdpgun: fix race in sigusr1 handling
Jan Doskočil [Fri, 3 May 2024 00:00:00 +0000 (00:00 +0000)]
kxdpgun: div by 0 on frequent USR1 bugfix
fixes #927
Daniel Salzman [Tue, 30 Apr 2024 14:10:25 +0000 (16:10 +0200)]
tests-extra: adjust NSID data item name
Daniel Salzman [Tue, 30 Apr 2024 14:03:02 +0000 (16:03 +0200)]
tests-extra: fix float to int exceptions
Daniel Salzman [Tue, 30 Apr 2024 13:59:49 +0000 (15:59 +0200)]
tests-extra: don't copy keys of generated zone files
- The keys aren't used anyway
- distutils.dir_util.copy_tree is deprecated
- It emits many informational logs
Daniel Salzman [Tue, 30 Apr 2024 13:27:49 +0000 (15:27 +0200)]
Merge branch 'atomic_pointers' into 'master'
portable atomic pointer and portable atomic exchange operation
See merge request knot/knot-dns!1660
David Vašek [Mon, 29 Apr 2024 13:23:44 +0000 (15:23 +0200)]
contrib/atomic: add an atomic exchange macro
David Vašek [Mon, 29 Apr 2024 13:24:02 +0000 (15:24 +0200)]
contrib/atomic: add an atomic pointer type
David Vašek [Wed, 24 Apr 2024 09:27:40 +0000 (11:27 +0200)]
doc/reference: where suitable, specify time units explicitly
Also, fix some additional errors and typos in reference.rst.
Daniel Salzman [Mon, 29 Apr 2024 11:53:48 +0000 (13:53 +0200)]
scripts: add libxdp-dev to Ubuntu's Dockerfile
Daniel Salzman [Thu, 25 Apr 2024 11:28:52 +0000 (13:28 +0200)]
CI: publish documentation only for master branch
David Vašek [Thu, 25 Apr 2024 09:46:17 +0000 (11:46 +0200)]
readthedocs: remove remaining readthedocs hooks
The webhook for readthedocs.org in the project's Gitlab was:
URL: https://readthedocs.org/api/v2/webhook/knot/120585/
with tags: Push events / Wildcard Pattern
Tag push events
SSL Verification: enabled
Removing it.
Daniel Salzman [Wed, 24 Apr 2024 12:24:05 +0000 (14:24 +0200)]
CI: build master documentation and store it at:
https://knot.pages.nic.cz/knot-dns/master/html/
https://knot.pages.nic.cz/knot-dns/master/singlehtml/
Daniel Salzman [Thu, 25 Apr 2024 06:04:46 +0000 (08:04 +0200)]
CI: don't continue when error (remove make '-k' option)
Daniel Salzman [Mon, 22 Apr 2024 11:13:34 +0000 (13:13 +0200)]
Merge branch 'kxdpgun_domain_host' into 'master'
kxdpgun: Add support for target domain name
See merge request knot/knot-dns!1659
Daniel Salzman [Mon, 22 Apr 2024 06:42:56 +0000 (08:42 +0200)]
Merge branch 'xdp_tcp_rst' into 'master'
Xdp tcp rst
See merge request knot/knot-dns!1658
Libor Peltan [Fri, 19 Apr 2024 14:20:37 +0000 (16:20 +0200)]
xdp-tcp: send RSTs on all open conns when shutdown
Libor Peltan [Fri, 19 Apr 2024 14:19:59 +0000 (16:19 +0200)]
conn pool: dont reuse conn if RST received
Jan Doskočil [Fri, 19 Apr 2024 00:00:00 +0000 (00:00 +0000)]
kxdpgun: Add support for target domain name
Daniel Salzman [Mon, 15 Apr 2024 06:46:23 +0000 (08:46 +0200)]
conf: add control.backlog configuration option
David Vašek [Thu, 11 Apr 2024 13:13:17 +0000 (15:13 +0200)]
doc/operation: add the Logging section, describe log rotation methods
Daniel Salzman [Thu, 11 Apr 2024 13:50:28 +0000 (15:50 +0200)]
Merge branch 'xdp_tcp_siplify' into 'master'
xdp-tcp: simplify knot_tcp_recv()
See merge request knot/knot-dns!1657
Libor Peltan [Thu, 11 Apr 2024 09:09:37 +0000 (11:09 +0200)]
xdp-tcp: simplify knot_tcp_recv()
Daniel Salzman [Wed, 10 Apr 2024 07:41:54 +0000 (09:41 +0200)]
module: add missing parameter description
Daniel Salzman [Wed, 10 Apr 2024 07:37:42 +0000 (09:37 +0200)]
Doxyfile: upgrade to version 1.9.1
Daniel Salzman [Tue, 9 Apr 2024 15:51:35 +0000 (17:51 +0200)]
Merge branch 'json_schema'
closes #912
Jan Hák [Thu, 7 Mar 2024 14:11:14 +0000 (15:11 +0100)]
tests-extra: serialized configuration JSON schema validation
Jan Hák [Mon, 26 Feb 2024 11:48:38 +0000 (12:48 +0100)]
knotc: add support for configuration JSON-schema export
The schema can be used for configuration file validation or autocompletion.
Daniel Salzman [Tue, 9 Apr 2024 14:37:14 +0000 (16:37 +0200)]
configure: add missing setting of ENABLE_SYSTEMD
David Vašek [Fri, 5 Apr 2024 14:17:26 +0000 (16:17 +0200)]
backup: '+keysonly' silently uses all defaults as 'off'
If '+keysonly' is set, all defaults are set to '+no...'.
Any flag can still be turned on manually.
Flag '+kaspdb' still takes priority over '+keysonly' if both flags are used together.
Daniel Salzman [Fri, 5 Apr 2024 17:24:34 +0000 (19:24 +0200)]
distro/deb: add new symbol knot_xdp_socket_stats
Daniel Salzman [Fri, 5 Apr 2024 12:56:59 +0000 (14:56 +0200)]
server: fix compilation without XDP
Daniel Salzman [Thu, 4 Apr 2024 15:37:12 +0000 (17:37 +0200)]
stats: fix dangling reference (Clang analyzer)
Daniel Salzman [Thu, 4 Apr 2024 12:48:06 +0000 (14:48 +0200)]
Merge branch 'xdp_impr'
Daniel Salzman [Mon, 19 Feb 2024 11:14:59 +0000 (12:14 +0100)]
conf: add options for XDP preferred busy polling
Daniel Salzman [Mon, 19 Feb 2024 11:05:26 +0000 (12:05 +0100)]
xdp: add support for preferred busy polling
Daniel Salzman [Sun, 18 Feb 2024 18:50:17 +0000 (19:50 +0100)]
xdp: always use XDP_USE_NEED_WAKEUP
Daniel Salzman [Sat, 23 Dec 2023 19:52:43 +0000 (20:52 +0100)]
conf: add xdp.ring-size configuration option
Daniel Salzman [Sun, 18 Feb 2024 18:12:14 +0000 (19:12 +0100)]
xdp: make the ring size configurable
Daniel Salzman [Fri, 29 Sep 2023 18:20:01 +0000 (20:20 +0200)]
xdp: allocate and fill up buffers for all fill ring descriptors
Daniel Salzman [Sat, 24 Feb 2024 18:56:33 +0000 (19:56 +0100)]
stats: rework stats_xdp() to return cumulative or average values per all queues
Daniel Salzman [Sat, 3 Feb 2024 19:55:04 +0000 (20:55 +0100)]
stats: add XDP statistics
Daniel Salzman [Fri, 26 Jan 2024 13:15:21 +0000 (14:15 +0100)]
stats: rework and unify common parts of automatic and control statistics
The dumping functions are now common to both uses, but they differ in the
provided callbacks.
Daniel Salzman [Thu, 25 Jan 2024 08:56:11 +0000 (09:56 +0100)]
xdp: add knot_xdp_socket_stats()
Daniel Salzman [Sat, 3 Feb 2024 19:22:00 +0000 (20:22 +0100)]
xdp: unify waiting loops without count limit
This ensures that no buffers are lost. If an operation gets stuck in a loop,
it's a more serious problem at another level of the networking.
Daniel Salzman [Sat, 20 Jan 2024 19:20:41 +0000 (20:20 +0100)]
xdp: replace duplicate loops with an equivalent function call
Jan Hák [Wed, 3 Apr 2024 08:52:53 +0000 (10:52 +0200)]
utils: fix untreated error value (Clang analyzer)
Daniel Salzman [Tue, 2 Apr 2024 12:36:07 +0000 (14:36 +0200)]
Merge branch 'quic_fix_tokens' into 'master'
libknot/QUIC: fix handling tokens in incomming Initials...
See merge request knot/knot-dns!1656
Daniel Salzman [Sat, 30 Mar 2024 16:36:33 +0000 (17:36 +0100)]
kxdpgun: mute assigned value is garbage or undefined (Clang analyzer)
Jan Hák [Thu, 28 Mar 2024 12:31:52 +0000 (13:31 +0100)]
knsupdate: mute argument with 'nonnull' attribute passed null (Clang analyzer)
Libor Peltan [Thu, 28 Mar 2024 12:44:15 +0000 (13:44 +0100)]
libknot/QUIC: fix handling tokens in incomming Initials...
...especialy normal tokens in contrast to retry tokens
also note increased timeout for them, as they might live long
Lukáš Ondráček [Wed, 27 Mar 2024 15:38:51 +0000 (16:38 +0100)]
rrl: fix allowed values for rate-limit and instant-limit
Libor Peltan [Wed, 27 Mar 2024 14:42:27 +0000 (15:42 +0100)]
Merge branch 'soa_checks' into 'master'
Extend SOA presence checks
See merge request knot/knot-dns!1655
Daniel Salzman [Wed, 27 Mar 2024 07:40:33 +0000 (08:40 +0100)]
semchecks: extend SOA presence checks
Daniel Salzman [Tue, 26 Mar 2024 15:10:28 +0000 (16:10 +0100)]
utils: preserve letter case if IDN enabled but no conversion applied
Lukáš Ondráček [Mon, 25 Mar 2024 10:59:01 +0000 (11:59 +0100)]
rrl: minor fixes
Daniel Salzman [Mon, 25 Mar 2024 07:08:01 +0000 (08:08 +0100)]
tests/rrl: mute missing snprintf() check (Coverity)
Daniel Salzman [Fri, 22 Mar 2024 12:54:48 +0000 (13:54 +0100)]
Merge branch 'rrl-ng'
Vladimír Čunát [Fri, 22 Mar 2024 09:54:35 +0000 (10:54 +0100)]
rrl: hack to avoid linker dropping the AVX2 variant
Daniel Salzman [Tue, 19 Mar 2024 14:29:59 +0000 (15:29 +0100)]
rrl: remove development tests
Lukáš Ondráček [Thu, 21 Mar 2024 16:13:19 +0000 (17:13 +0100)]
rrl: fix race condition blocking on shorter prefix
Daniel Salzman [Thu, 21 Mar 2024 11:46:56 +0000 (12:46 +0100)]
mod-rrl: add dry-run configuration option
Daniel Salzman [Thu, 21 Mar 2024 06:07:05 +0000 (07:07 +0100)]
tests/rrl: make the test run faster
Daniel Salzman [Tue, 19 Mar 2024 13:04:29 +0000 (14:04 +0100)]
mod-rrl: code cleanup
Vladimír Čunát [Tue, 27 Feb 2024 09:26:16 +0000 (10:26 +0100)]
rrl: switch #include to relative paths
It's for easier portability into knot-resolver codebase.
Lukáš Ondráček [Mon, 18 Mar 2024 12:51:55 +0000 (13:51 +0100)]
rrl: clean mostly comments
Lukáš Ondráček [Mon, 18 Mar 2024 11:38:58 +0000 (12:38 +0100)]
rrl: modify limits of prefixes, fix extended tests
Lukáš Ondráček [Thu, 14 Mar 2024 14:28:32 +0000 (15:28 +0100)]
rrl: update documentation
Lukáš Ondráček [Mon, 11 Mar 2024 18:55:30 +0000 (19:55 +0100)]
rrl: logging sampled limited queries
Same content as
6ed6834d8 , after some squashing.
Lukáš Ondráček [Thu, 15 Feb 2024 12:59:31 +0000 (13:59 +0100)]
rrl: randomized rounding of counters, configurable instant-limit
WIP: script for decay analysis
WIP: unoptimized 32-bit version
WIP: 16-bit, rand. fractional incr. 32-bit prices
WIP: configurable decay
WIP: user-configurable instant-limit, coefficients of prefixes
WIP: update user documentation
Lukáš Ondráček [Thu, 1 Feb 2024 16:42:19 +0000 (17:42 +0100)]
rrl: configurable rate-limit and table-size, update documentation
WIP: add configurable rate-limit and table-size
WIP: split KRU.create into get_size and initialize
Lukáš Ondráček [Wed, 17 Jan 2024 13:29:11 +0000 (14:29 +0100)]
rrl: multi-prefix queries
WIP: batch queries
WIP: multi-prefix queries with unit tests, unoptimized
WIP: optimize multi-prefix queries
WIP: nits
- avoid -Warray-bounds for array[-1]
I thought it was more readable that way, but warnings would be annoying.
- use `hash_t` more
- drop old FIXME: I believe it was just confused symbols, not code
WIP: deduplicate the choice of SipHash parameters
Lukáš Ondráček [Tue, 2 Jan 2024 13:43:43 +0000 (14:43 +0100)]
rrl: unit tests, benchmarks, minor fixes
WIP: update tests for RRL module
WIP: testing both generic, avx2 impl. if possible
WIP: improving atomicity inside RRL module
WIP: parallel time benchmark
WIP tests: revive test_decay32()
The includes are getting a bit hacky, but I guess it's OK for tests.
WIP: use memory_order_relaxed
Vladimír Čunát [Mon, 18 Dec 2023 12:45:48 +0000 (13:45 +0100)]
rrl: single chosen KRU implementation
fixup! WIP: RRL module rewrite
- drop other implementations than ss16bit
- consequently various simplification
- code to detect and use AVX2 (only) if available
- drop RRL module's usage of QNAME
WIP: improve comments about the behavior of KRU
Some of them were wrong leftovers from different algorithm variants.
Vladimír Čunát [Mon, 18 Dec 2023 12:37:35 +0000 (13:37 +0100)]
rrl: multiple alternative KRU implementations (sketches, etc.)
Squashed history ending with commit
231ed0c29 .
Same content as
837a7722b .
Daniel Salzman [Fri, 22 Mar 2024 08:20:15 +0000 (09:20 +0100)]
Merge branch 'store_lastsigned' into 'master'
dnssec: store last-signed-serial to KASP even if not slave...
See merge request knot/knot-dns!1654
Libor Peltan [Fri, 22 Mar 2024 08:08:02 +0000 (09:08 +0100)]
dnssec: store last-signed-serial to KASP even if not slave...
...currently, since after reconfiguration to slave this would be missing...
...and otherwise it is no harm
Libor Peltan [Wed, 20 Mar 2024 09:38:15 +0000 (10:38 +0100)]
Merge branch 'cat_interpret_generate' into 'master'
conf: allow catalog role member in a catalog template
See merge request knot/knot-dns!1653
Daniel Salzman [Mon, 18 Mar 2024 10:29:16 +0000 (11:29 +0100)]
contrib: upgrade embedded library ngtcp2 to v1.4.0
Daniel Salzman [Mon, 11 Mar 2024 13:50:12 +0000 (14:50 +0100)]
Merge branch 'wire-nonnull' into 'master'
wire: add compiler warnings by nonnull attribute
See merge request knot/knot-dns!1651
Vladimír Čunát [Tue, 5 Mar 2024 12:15:44 +0000 (13:15 +0100)]
wire: add compiler warnings by nonnull attribute
These functions were often used with explicitly passed NULL for wire,
which is not allowed now and this attribute will trigger a warning.
Daniel Salzman [Fri, 8 Mar 2024 20:15:49 +0000 (21:15 +0100)]
conf: allow catalog role member in a catalog template
Daniel Salzman [Wed, 6 Mar 2024 13:46:17 +0000 (14:46 +0100)]
Merge branch 'master' into 'master'
Fix code block rendering in authsignal.rst
See merge request knot/knot-dns!1652
Peter Thomassen [Wed, 6 Mar 2024 13:40:30 +0000 (14:40 +0100)]
Fix code block rendering in authsignal.rst
Daniel Salzman [Tue, 5 Mar 2024 14:16:58 +0000 (15:16 +0100)]
doc: extend signing initiation occasions
Daniel Salzman [Tue, 5 Mar 2024 13:21:36 +0000 (14:21 +0100)]
Merge branch 'svcb_backslash'
fixes #923
Daniel Salzman [Mon, 4 Mar 2024 20:16:00 +0000 (21:16 +0100)]
tests-extra/records/load: extend test zone with SVCB alpn values
Daniel Salzman [Mon, 4 Mar 2024 19:38:42 +0000 (20:38 +0100)]
rrset-dump: always quote SVCB alpn value
Daniel Salzman [Mon, 4 Mar 2024 08:35:57 +0000 (09:35 +0100)]
zscanner: fix parsing of backslashes in SVCB alpn values
David Vašek [Mon, 26 Feb 2024 16:22:53 +0000 (17:22 +0100)]
doc: fixup source formatting