]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
6 years agoMore consistent spacing and comments
Matthijs Mekking [Mon, 9 Mar 2020 09:37:35 +0000 (10:37 +0100)] 
More consistent spacing and comments

Some comments started with a lowercased letter. Capitalized them to
be more consistent with the rest of the comments.

Add some newlines between `set_*` calls and check calls, also to be
more consistent with the other test cases.

6 years agoReplace key_states
Matthijs Mekking [Mon, 2 Mar 2020 10:50:55 +0000 (11:50 +0100)] 
Replace key_states

6 years agoReplace key_timings
Matthijs Mekking [Fri, 28 Feb 2020 11:27:41 +0000 (12:27 +0100)] 
Replace key_timings

6 years agoReplace key_properties
Matthijs Mekking [Fri, 28 Feb 2020 11:02:51 +0000 (12:02 +0100)] 
Replace key_properties

6 years agoReplace zone_properties
Matthijs Mekking [Thu, 27 Feb 2020 17:15:07 +0000 (18:15 +0100)] 
Replace zone_properties

6 years agoMerge branch '1413-fix-dnssec-test' into 'master'
Matthijs Mekking [Mon, 9 Mar 2020 11:02:10 +0000 (11:02 +0000)] 
Merge branch '1413-fix-dnssec-test' into 'master'

Fix dnssec test

Closes #1413

See merge request isc-projects/bind9!2956

6 years agoFix dnssec test
Matthijs Mekking [Thu, 23 Jan 2020 15:04:47 +0000 (16:04 +0100)] 
Fix dnssec test

There is a failure mode which gets triggered on heavily loaded
systems. A key change is scheduled in 5 seconds to make ZSK2 inactive
and ZSK3 active, but `named` takes more than 5 seconds to progress
from `rndc loadkeys` to the query check. At this time the SOA RRset
is already signed by the new ZSK which is not expected to be active
at that point yet.

Split up the checks to test the case where RRsets are signed
correctly with the offline KSK (maintained the signature) and
the active ZSK.  First run, RRsets should be signed with the still
active ZSK2, second run RRsets should be signed with the new active
ZSK3.

6 years agoMerge branch 'fix-glob-windows' into 'master'
Diego dos Santos Fronza [Fri, 6 Mar 2020 21:09:58 +0000 (21:09 +0000)] 
Merge branch 'fix-glob-windows' into 'master'

Fixed missing list initialization

See merge request isc-projects/bind9!3184

6 years agoFixed missing list initialization
Diego Fronza [Fri, 6 Mar 2020 19:53:20 +0000 (16:53 -0300)] 
Fixed missing list initialization

This commit fixes isc_glob function on windows environments.

The file_list_t * object pointed to by pglob->reserved was missing
ISC_LIST_INIT intialization macro.

6 years agoMerge branch 'kasp-test-algoroll' into 'master'
Matthijs Mekking [Fri, 6 Mar 2020 15:16:19 +0000 (15:16 +0000)] 
Merge branch 'kasp-test-algoroll' into 'master'

Test dnssec-policy algorithm rollover, fix some bugs

Closes #1626, #1625, and #1624

See merge request isc-projects/bind9!3086

6 years agoAdd additional wait period for algorithm rollover
Matthijs Mekking [Thu, 20 Feb 2020 15:00:50 +0000 (16:00 +0100)] 
Add additional wait period for algorithm rollover

We may be checking the algorithm steps too fast: the reconfig
command may still be in progress. Make sure the zones are signed
and loaded by digging the NSEC records for these zones.

6 years agoMake clang-format happy
Matthijs Mekking [Thu, 20 Feb 2020 10:04:08 +0000 (11:04 +0100)] 
Make clang-format happy

6 years agoupdate CHANGES
Matthijs Mekking [Wed, 19 Feb 2020 11:28:52 +0000 (12:28 +0100)] 
update CHANGES

6 years agoAdd CSK algorithm rollover test
Matthijs Mekking [Wed, 19 Feb 2020 11:28:36 +0000 (12:28 +0100)] 
Add CSK algorithm rollover test

6 years ago[#1624] dnssec-policy change retire unwanted keys
Matthijs Mekking [Tue, 18 Feb 2020 15:58:56 +0000 (16:58 +0100)] 
[#1624] dnssec-policy change retire unwanted keys

When changing a dnssec-policy, existing keys with properties that no
longer match were not being retired.

6 years ago[#1625] Algorithm rollover waited too long
Matthijs Mekking [Tue, 18 Feb 2020 15:57:37 +0000 (16:57 +0100)] 
[#1625] Algorithm rollover waited too long

Algorithm rollover waited too long before introducing zone
signatures.  It waited to make sure all signatures were resigned,
but when introducing a new algorithm, all signatures are resigned
immediately.  Only add the sign delay if there is a predecessor key.

6 years ago[#1626] Fix stuck algorithm rollover
Matthijs Mekking [Tue, 18 Feb 2020 15:55:36 +0000 (16:55 +0100)] 
[#1626] Fix stuck algorithm rollover

Algorithm rollover was stuck on submitting DS because keymgr thought
it would move to an invalid state.  It did not match the current
key because it checked it against the current key in the next state.
Fixed by when checking the current key, check it against the desired
state, not the existing state.

6 years agoAdd algorithm rollover test case
Matthijs Mekking [Tue, 18 Feb 2020 15:36:31 +0000 (16:36 +0100)] 
Add algorithm rollover test case

Add a test case for algorithm rollover.  This is triggered by
changing the dnssec-policy.  A new nameserver ns6 is introduced
for tests related to dnssec-policy changes.

This requires a slight change in check_next_key_event to only
check the last occurrence.  Also, change the debug log message in
lib/dns/zone.c to deal with checks when no next scheduled key event
exists (and default to loadkeys interval 3600).

6 years agoRemove unneeded step6 zone
Matthijs Mekking [Tue, 18 Feb 2020 15:34:20 +0000 (16:34 +0100)] 
Remove unneeded step6 zone

The zone 'step6.ksk-doubleksk.autosign' is configured but is not
set up nor tested.  Remove the unneeded configured zone.

6 years agoIntroduce enable dnssec test case
Matthijs Mekking [Tue, 18 Feb 2020 15:33:41 +0000 (16:33 +0100)] 
Introduce enable dnssec test case

6 years agoPrepare kasp for algorithm rollover test
Matthijs Mekking [Thu, 13 Feb 2020 10:35:38 +0000 (11:35 +0100)] 
Prepare kasp for algorithm rollover test

Algorithm rollover will require four keys so introduce KEY4.
Also it requires to look at key files for multiple algorithms so
change getting key ids to be algorithm rollover agnostic (adjusting
count checks).  The algorithm will be verified in check_key so
relaxing 'get_keyids' is fine.

Replace '${_alg_num}' with '$(key_get KEY[1-4] ALG_NUM)' in checks
to deal with multiple algorithms.

6 years agoMerge branch 'michal/fix-using-sibling-root-libuv-for-windows-builds' into 'master'
Michał Kępień [Fri, 6 Mar 2020 12:36:55 +0000 (12:36 +0000)] 
Merge branch 'michal/fix-using-sibling-root-libuv-for-windows-builds' into 'master'

Fix using sibling-root libuv for Windows builds

See merge request isc-projects/bind9!3181

6 years agoFix using sibling-root libuv for Windows builds
Michał Kępień [Fri, 6 Mar 2020 12:25:45 +0000 (13:25 +0100)] 
Fix using sibling-root libuv for Windows builds

HAVE_UV_IMPORT and other config.h macros must not be set unconditionally
because no existing libuv release exposes uv_import() and/or uv_export()
yet.  Windows builds not passing an explicit path to libuv to
win32utils/Configure are currently broken because of this, so comment
out the offending lines and describe when the aforementioned config.h
macros should be set.

6 years agoMerge branch '1515-ixfr-size-limit' into 'master'
Evan Hunt [Fri, 6 Mar 2020 02:51:18 +0000 (02:51 +0000)] 
Merge branch '1515-ixfr-size-limit' into 'master'

Send AXFR instead of requested IXFR if the size of the incremental transfer is too large to sensibly IXFR

Closes #1375 and #1515

See merge request isc-projects/bind9!3113

6 years agoCHANGES and release note
Evan Hunt [Mon, 24 Feb 2020 04:54:58 +0000 (20:54 -0800)] 
CHANGES and release note

6 years agoadd serial number to "transfer ended" log messages
Evan Hunt [Thu, 27 Feb 2020 19:43:03 +0000 (11:43 -0800)] 
add serial number to "transfer ended" log messages

6 years agoadd a system test for AXFR fallback when max-ixfr-ratio is exceeded
Evan Hunt [Sat, 22 Feb 2020 06:48:34 +0000 (22:48 -0800)] 
add a system test for AXFR fallback when max-ixfr-ratio is exceeded

also cleaned up the ixfr system test:

- use retry_quiet when applicable
- use scripts to generate test zones
- improve consistency

6 years agocheck size ratio when responding to IXFR requests
Evan Hunt [Sat, 22 Feb 2020 01:22:06 +0000 (17:22 -0800)] 
check size ratio when responding to IXFR requests

6 years agoimprove calculation of database transfer size
Evan Hunt [Sat, 22 Feb 2020 08:37:05 +0000 (00:37 -0800)] 
improve calculation of database transfer size

- change name of 'bytes' to 'xfrsize' in dns_db_getsize() parameter list
  and related variables; this is a more accurate representation of what
  the function is doing
- change the size calculations in dns_db_getsize() to more accurately
  represent the space needed for a *XFR message or journal file to contain
  the data in the database. previously we returned the sizes of all
  rdataslabs, including header overhead and offset tables, which
  resulted in the database size being reported as much larger than the
  equivalent *XFR or journal.
- map files caused a particular problem here: the fullname can't be
  determined from the node while a file is being deserialized, because
  the uppernode pointers aren't set yet. so we store "full name length"
  in the dns_rbtnode structure while serializing, and clear it after
  deserialization is complete.

6 years agodns_journal_iter_init() can now return the size of the delta
Evan Hunt [Sat, 22 Feb 2020 01:05:04 +0000 (17:05 -0800)] 
dns_journal_iter_init() can now return the size of the delta

the call initailizing a journal iterator can now optionally return
to the caller the size in bytes of an IXFR message (not including
DNS header overhead, signatures etc) containing the differences from
the beginning to the ending serial number.

this is calculated by scanning the journal transaction headers to
calculate the transfer size. since journal file records contain a length
field that is not included in IXFR messages, we subtract out the length
of those fields from the overall transaction length.

this necessitated adding an "RR count" field to the journal transaction
header, so we know how many length fields to subract. NOTE: this will
make existing journal files stop working!

6 years agoadd syntax and setter/getter functions to configure max-ixfr-ratio
Evan Hunt [Fri, 21 Feb 2020 18:53:08 +0000 (10:53 -0800)] 
add syntax and setter/getter functions to configure max-ixfr-ratio

6 years agodocument max-ixfr-ratio
Evan Hunt [Fri, 21 Feb 2020 21:08:49 +0000 (13:08 -0800)] 
document max-ixfr-ratio

6 years agoMerge branch '1628-release-process-failed-to-detect-that-header-file-was-not-installe...
Mark Andrews [Fri, 6 Mar 2020 01:04:07 +0000 (01:04 +0000)] 
Merge branch '1628-release-process-failed-to-detect-that-header-file-was-not-installed' into 'master'

Resolve "Release process failed to detect that header file was not installed."

Closes #1628

See merge request isc-projects/bind9!3089

6 years agotest installed header files
Mark Andrews [Wed, 19 Feb 2020 22:31:05 +0000 (09:31 +1100)] 
test installed header files

6 years agoMerge branch 'marka-install-missing-header-files' into 'master'
Mark Andrews [Thu, 5 Mar 2020 23:10:53 +0000 (23:10 +0000)] 
Merge branch 'marka-install-missing-header-files' into 'master'

Fix lists of installed header files

See merge request isc-projects/bind9!3173

6 years agoFix lists of installed header files
Michał Kępień [Thu, 5 Mar 2020 11:52:11 +0000 (12:52 +0100)] 
Fix lists of installed header files

6 years agoMerge branch 'wpk/only-use-timer-if-initialized' into 'master'
Witold Krecicki [Thu, 5 Mar 2020 23:08:02 +0000 (23:08 +0000)] 
Merge branch 'wpk/only-use-timer-if-initialized' into 'master'

Only use tcpdns timer if it's initialized.

See merge request isc-projects/bind9!3171

6 years agoOnly use tcpdns timer if it's initialized.
Witold Kręcicki [Thu, 5 Mar 2020 21:56:31 +0000 (22:56 +0100)] 
Only use tcpdns timer if it's initialized.

6 years agoMerge branch 'marka-sort-AC_CONFIG_FILES' into 'master'
Mark Andrews [Thu, 5 Mar 2020 21:47:02 +0000 (21:47 +0000)] 
Merge branch 'marka-sort-AC_CONFIG_FILES' into 'master'

sort AC_CONFIG_FILES

See merge request isc-projects/bind9!3167

6 years agosort AC_CONFIG_FILES
Mark Andrews [Thu, 5 Mar 2020 21:17:06 +0000 (08:17 +1100)] 
sort AC_CONFIG_FILES

6 years agoMerge branch '1643-tcp-connections-accounting' into 'master'
Witold Krecicki [Thu, 5 Mar 2020 20:31:04 +0000 (20:31 +0000)] 
Merge branch '1643-tcp-connections-accounting' into 'master'

Resolve "Problems reported in BIND 9.16.0 after hitting tcp-clients limit"

Closes #1643

See merge request isc-projects/bind9!3163

6 years agoCHANGES note
Witold Kręcicki [Thu, 5 Mar 2020 13:25:04 +0000 (14:25 +0100)] 
CHANGES note

6 years agoFix TCPDNS socket closing issues
Witold Kręcicki [Mon, 2 Mar 2020 11:10:26 +0000 (12:10 +0100)] 
Fix TCPDNS socket closing issues

6 years agoadd a test of normal TCP query behavior before and after high-water test
Evan Hunt [Fri, 28 Feb 2020 22:47:10 +0000 (14:47 -0800)] 
add a test of normal TCP query behavior before and after high-water test

6 years agoLimit TCP connection quota logging to 1/s
Witold Kręcicki [Fri, 28 Feb 2020 12:58:13 +0000 (13:58 +0100)] 
Limit TCP connection quota logging to 1/s

6 years agoProper accounting of active TCP connections
Witold Kręcicki [Fri, 28 Feb 2020 10:57:51 +0000 (11:57 +0100)] 
Proper accounting of active TCP connections

6 years agoMerge branch 'mnowak/respdiff' into 'master'
Michal Nowak [Thu, 5 Mar 2020 14:45:46 +0000 (14:45 +0000)] 
Merge branch 'mnowak/respdiff' into 'master'

Add respdiff test

See merge request isc-projects/bind9!3078

6 years agoAdd respdiff job
Michal Nowak [Thu, 6 Feb 2020 14:53:36 +0000 (15:53 +0100)] 
Add respdiff job

This job leverages respdiff test from the private bind-qa repo.

6 years agoMerge branch '1650-fix-race-in-killoldestclient' into 'master'
Witold Krecicki [Thu, 5 Mar 2020 09:02:11 +0000 (09:02 +0000)] 
Merge branch '1650-fix-race-in-killoldestclient' into 'master'

Destroy query in killoldestclient under a lock

Closes #1650

See merge request isc-projects/bind9!3146

6 years agoDestroy query in killoldestquery under a lock.
Witold Kręcicki [Tue, 3 Mar 2020 09:09:17 +0000 (10:09 +0100)] 
Destroy query in killoldestquery under a lock.

Fixes a race between ns_client_killoldestquery and ns_client_endrequest -
killoldestquery takes a client from `recursing` list while endrequest
destroys client object, then killoldestquery works on a destroyed client
object. Prevent it by holding reclist lock while cancelling query.

6 years agoMerge branch '1647-addtrustedkey-dnskey' into 'master'
Evan Hunt [Wed, 4 Mar 2020 23:41:11 +0000 (23:41 +0000)] 
Merge branch '1647-addtrustedkey-dnskey' into 'master'

Resolve "delv 9.16.0, failed to add trusted key '.': ran out of space"

Closes #1647

See merge request isc-projects/bind9!3158

6 years agoCHANGES
Evan Hunt [Wed, 4 Mar 2020 16:54:53 +0000 (08:54 -0800)] 
CHANGES

6 years agoadd a system test to check that delv loads trust anchors correctly
Evan Hunt [Wed, 4 Mar 2020 16:54:03 +0000 (08:54 -0800)] 
add a system test to check that delv loads trust anchors correctly

6 years agoFix dns_client_addtrustedkey(dns_rdatatype_dnskey)
Tony Finch [Fri, 28 Feb 2020 20:08:04 +0000 (20:08 +0000)] 
Fix dns_client_addtrustedkey(dns_rdatatype_dnskey)

Use a buffer that is big enough for DNSKEY records as well as DS
records.

6 years agoMerge branch 'mnowak/pkcs11-test-fix' into 'master'
Michal Nowak [Wed, 4 Mar 2020 16:06:31 +0000 (16:06 +0000)] 
Merge branch 'mnowak/pkcs11-test-fix' into 'master'

Fix pkcs11 test

Closes #1496

See merge request isc-projects/bind9!3116

6 years agoFix "pkcs11" system test
Michal Nowak [Wed, 4 Mar 2020 16:06:31 +0000 (16:06 +0000)] 
Fix "pkcs11" system test

  - Define the SLOT environment variable before starting the test.  This
    variable defaults to 0 and that does not work with SoftHSM 2.

  - The system test expects the PIN environment variable to be set to
    "1234" while bin/tests/prepare-softhsm2.sh sets it to "0000".
    Update bin/tests/prepare-softhsm2.sh so that it sets the PIN to
    "1234".

  - Move contents of bin/tests/system/pkcs11/prereq.sh to
    bin/tests/system/pkcs11/setup.sh as the former was creating a file
    called "supported" that was getting removed by the latter before
    bin/tests/system/pkcs11/tests.sh could access it.

  - Fix typo in "have_ecx".

6 years agoMerge branch 'wpk-use-pthread-rwlock-by-default' into 'master'
Witold Krecicki [Wed, 4 Mar 2020 09:50:56 +0000 (09:50 +0000)] 
Merge branch 'wpk-use-pthread-rwlock-by-default' into 'master'

Use pthread rwlocks by default

See merge request isc-projects/bind9!3125

6 years agoAdd release notes for pthread rwlocks change
Witold Kręcicki [Thu, 27 Feb 2020 12:21:31 +0000 (13:21 +0100)] 
Add release notes for pthread rwlocks change

6 years agoUse pthread rwlocks by default
Witold Kręcicki [Thu, 27 Feb 2020 12:21:31 +0000 (13:21 +0100)] 
Use pthread rwlocks by default

6 years agoMerge branch '1532-nta-validate-except' into 'master'
Evan Hunt [Wed, 4 Mar 2020 09:09:53 +0000 (09:09 +0000)] 
Merge branch '1532-nta-validate-except' into 'master'

list "validate-except" entries in "rndc nta -d" and "rndc secroots"

Closes #1532

See merge request isc-projects/bind9!3152

6 years agolist "validate-except" entries in "rndc nta -d" and "rndc secroots"
Evan Hunt [Wed, 4 Mar 2020 06:46:58 +0000 (22:46 -0800)] 
list "validate-except" entries in "rndc nta -d" and "rndc secroots"

- no longer exclude these entries when dumping the NTA table
- indicate "validate-except" entries with the keyword "permanent" in
  place of an expiry date
- add a test for this feature, and update other tests to account for
  the presence of extra lines in some rndc outputs
- incidentally removed the unused function dns_ntatable_dump()
- CHANGES, release note

6 years agoMerge branch '1656-masterformat-system-test-failed-missing-sleep-1' into 'master'
Mark Andrews [Wed, 4 Mar 2020 07:14:48 +0000 (07:14 +0000)] 
Merge branch '1656-masterformat-system-test-failed-missing-sleep-1' into 'master'

Resolve "masterformat system test failed - missing "sleep 1""

Closes #1656

See merge request isc-projects/bind9!3151

6 years agoproperly wait for zone to be loaded
Mark Andrews [Wed, 4 Mar 2020 04:39:08 +0000 (15:39 +1100)] 
properly wait for zone to be loaded

6 years agoMerge branch 'marka-check-touched' into 'master'
Mark Andrews [Tue, 3 Mar 2020 22:06:39 +0000 (22:06 +0000)] 
Merge branch 'marka-check-touched' into 'master'

Check that inline master zones that are only touched are correctly reloaded.

Closes #1627

See merge request isc-projects/bind9!3135

6 years agoAdd CHANGES entry
Mark Andrews [Tue, 3 Mar 2020 01:31:55 +0000 (12:31 +1100)] 
Add CHANGES entry

6 years agoRestart zone maintenance if it had been stalled.
Mark Andrews [Mon, 2 Mar 2020 23:50:06 +0000 (10:50 +1100)] 
Restart zone maintenance if it had been stalled.

6 years agoCheck inline master zones that are touched reload correctly.
Mark Andrews [Mon, 2 Mar 2020 08:38:29 +0000 (19:38 +1100)] 
Check inline master zones that are touched reload correctly.

6 years agoMerge branch 'ondrej/fix-notes-9.17.0-xml' into 'master'
Ondřej Surý [Tue, 3 Mar 2020 14:24:17 +0000 (14:24 +0000)] 
Merge branch 'ondrej/fix-notes-9.17.0-xml' into 'master'

fixup the version number in 9.17.0 release notes

See merge request isc-projects/bind9!3145

6 years agofixup the version number in 9.17.0 release notes
Ondřej Surý [Tue, 3 Mar 2020 08:31:34 +0000 (09:31 +0100)] 
fixup the version number in 9.17.0 release notes

6 years agoMerge branch 'wpk/socket-destroy-race' into 'master'
Witold Krecicki [Tue, 3 Mar 2020 08:20:44 +0000 (08:20 +0000)] 
Merge branch 'wpk/socket-destroy-race' into 'master'

Fix a race in isc_socket destruction.

Closes #1651

See merge request isc-projects/bind9!3004

6 years agoFix a race in isc_socket destruction.
Witold Kręcicki [Wed, 5 Feb 2020 11:35:54 +0000 (12:35 +0100)] 
Fix a race in isc_socket destruction.

There was a very slim chance of a race between isc_socket_detach and
process_fd: isc_socket_detach decrements references to 0, and before it
calls destroy gets preempted. Second thread calls process_fd, increments
socket references temporarily to 1, and then gets preempted, first thread
then hits assertion in destroy() as the reference counter is now 1 and
not 0.

6 years agoMerge branch '1627-call-set_resigntime-and-zone_settimer' into 'master'
Mark Andrews [Tue, 3 Mar 2020 05:07:58 +0000 (05:07 +0000)] 
Merge branch '1627-call-set_resigntime-and-zone_settimer' into 'master'

Call set resigntime and zone settimer

Closes #1627

See merge request isc-projects/bind9!3137

6 years agoadd release note entry
Mark Andrews [Tue, 3 Mar 2020 04:37:42 +0000 (15:37 +1100)] 
add release note entry

6 years agoAdd CHANGES note
Mark Andrews [Tue, 3 Mar 2020 04:30:52 +0000 (15:30 +1100)] 
Add CHANGES note

6 years agoAdjust lock/unlock in zone_rekey()
Ondřej Surý [Thu, 27 Feb 2020 07:45:10 +0000 (08:45 +0100)] 
Adjust lock/unlock in zone_rekey()

6 years agoEnsure that resigintime and the zone timer are set
Mark Andrews [Fri, 28 Feb 2020 03:01:40 +0000 (14:01 +1100)] 
Ensure that resigintime and the zone timer are set

6 years agoAdd more zone locks
Matthijs Mekking [Thu, 27 Feb 2020 10:59:12 +0000 (11:59 +0100)] 
Add more zone locks

Add more zone locks around code that touches zone timer setting
in failure modes.

6 years agoAlways call set_resigntime with the zone lock held
Mark Andrews [Thu, 27 Feb 2020 06:48:05 +0000 (17:48 +1100)] 
Always call set_resigntime with the zone lock held

6 years agoAlways call zone_settimer()
Mark Andrews [Thu, 27 Feb 2020 06:43:26 +0000 (17:43 +1100)] 
Always call zone_settimer()

zone_needdump() could potentially not call zone_settimer() so
explitly call zone_settimer() as zone->resigntime could have
gone backward.

6 years agoCall set_resigntime() in receive_secure_serial()
Mark Andrews [Thu, 27 Feb 2020 06:35:18 +0000 (17:35 +1100)] 
Call set_resigntime() in receive_secure_serial()

With RRSIG records no longer being signed with the full
sig-validity-interval we need to ensure the zone->resigntime
as it may need to be set to a earlier time.

6 years agoMerge branch 'wpk/perfwork-7-multilocked-badcache' into 'master'
Witold Krecicki [Mon, 2 Mar 2020 17:18:35 +0000 (17:18 +0000)] 
Merge branch 'wpk/perfwork-7-multilocked-badcache' into 'master'

Badcache with multiple locks.

See merge request isc-projects/bind9!3076

6 years agoWorkaround for clang static analyzer bug.
Witold Kręcicki [Mon, 2 Mar 2020 13:12:05 +0000 (14:12 +0100)] 
Workaround for clang static analyzer bug.

6 years agoBadcache with multiple locks.
Witold Kręcicki [Mon, 17 Feb 2020 09:37:39 +0000 (10:37 +0100)] 
Badcache with multiple locks.

Previously badcache used one single mutex for everything, which
was causing performance issues. Use one global rwlock for the whole
hashtable and per-bucket mutexes.

6 years agoMerge branch '1640-add-ZLIB_LIBS-to-ISCLIBS' into 'master'
Michał Kępień [Fri, 28 Feb 2020 14:30:04 +0000 (14:30 +0000)] 
Merge branch '1640-add-ZLIB_LIBS-to-ISCLIBS' into 'master'

Add ZLIB_LIBS to ISCLIBS

Closes #1640

See merge request isc-projects/bind9!3117

6 years agoAdd ZLIB_LIBS to ISCLIBS
Michał Kępień [Fri, 28 Feb 2020 14:22:29 +0000 (15:22 +0100)] 
Add ZLIB_LIBS to ISCLIBS

When --with-zlib is passed to ./configure (or when the latter
autodetects zlib's presence), libisc uses certain zlib functions and
thus libisc's users should be linked against zlib in that case.  Adjust
Makefile variables appropriately to prevent shared build failures caused
by underlinking.

6 years agoMerge branch 'wpk/perfwork-3-small-nits' into 'master'
Witold Krecicki [Fri, 28 Feb 2020 08:28:31 +0000 (08:28 +0000)] 
Merge branch 'wpk/perfwork-3-small-nits' into 'master'

Perfwork 3/6 - Various small nits and tunables

See merge request isc-projects/bind9!3067

6 years agocomments
Evan Hunt [Tue, 18 Feb 2020 21:38:41 +0000 (13:38 -0800)] 
comments

6 years agoDon't define NS_CLIENT_TRACE by default
Witold Kręcicki [Fri, 14 Feb 2020 11:28:03 +0000 (12:28 +0100)] 
Don't define NS_CLIENT_TRACE by default

6 years agoIncrease inactivehandles and inactivereqs size for better reuse.
Witold Kręcicki [Wed, 29 Jan 2020 14:16:02 +0000 (15:16 +0100)] 
Increase inactivehandles and inactivereqs size for better reuse.

6 years agoIncrease nodelock count for both cache and regular db.
Witold Kręcicki [Tue, 28 Jan 2020 10:53:24 +0000 (11:53 +0100)] 
Increase nodelock count for both cache and regular db.

6 years agoUse RESOLVER_NTASKS_PERCPU - 32 for regular tuning, 8 for small
Witold Kręcicki [Fri, 14 Feb 2020 08:18:48 +0000 (09:18 +0100)] 
Use RESOLVER_NTASKS_PERCPU - 32 for regular tuning, 8 for small

6 years agouse SO_INCOMING_CPU for UDP sockets
Witold Kręcicki [Tue, 11 Feb 2020 13:41:49 +0000 (14:41 +0100)] 
use SO_INCOMING_CPU for UDP sockets

6 years agoRemove some stale fields from ns_client_t; make sendbuf allocated on heap
Witold Kręcicki [Fri, 31 Jan 2020 21:56:32 +0000 (22:56 +0100)] 
Remove some stale fields from ns_client_t; make sendbuf allocated on heap

6 years agoDon't update LRU if the node was recently used.
Witold Kręcicki [Fri, 31 Jan 2020 12:26:34 +0000 (13:26 +0100)] 
Don't update LRU if the node was recently used.

Updating LRU requires write-locking the node, which causes contention.
Update LRU only if time difference is large enough.

6 years agoWe don't need to fill udp local address every time since we are bound to it.
Witold Kręcicki [Wed, 29 Jan 2020 12:33:58 +0000 (13:33 +0100)] 
We don't need to fill udp local address every time since we are bound to it.

6 years agoDon't check if the client is on recursing list (requires locking) if it's not RECURSING
Witold Kręcicki [Tue, 28 Jan 2020 09:31:35 +0000 (10:31 +0100)] 
Don't check if the client is on recursing list (requires locking) if it's not RECURSING

6 years agoUse the original threadid when sending a UDP packet to decrease probability of contex...
Witold Kręcicki [Wed, 29 Jan 2020 08:29:19 +0000 (09:29 +0100)] 
Use the original threadid when sending a UDP packet to decrease probability of context switching

6 years agoMerge branch '1638-rrsig-soa-and-re-signing' into 'master'
Mark Andrews [Thu, 27 Feb 2020 22:48:48 +0000 (22:48 +0000)] 
Merge branch '1638-rrsig-soa-and-re-signing' into 'master'

Resolve "RRSIG(SOA) and re-signing."

Closes #1638

See merge request isc-projects/bind9!3114

6 years agocapture named-journalprint output
Mark Andrews [Tue, 25 Feb 2020 01:17:11 +0000 (12:17 +1100)] 
capture named-journalprint output

6 years agosort RRSIG(SOA) to be last of RRSIGs with a common re-resign time
Mark Andrews [Tue, 25 Feb 2020 01:11:27 +0000 (12:11 +1100)] 
sort RRSIG(SOA) to be last of RRSIGs with a common re-resign time