---
title: "Operational Notification: liburcu memory leak may impact BIND 9.20 on BSD"
slug: "liburcu-leak"
status: "new"
updated: 2026-07-29T14:18:40Z
published: 2026-07-29T14:18:40Z
canonical: "kb.isc.org/liburcu-leak"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://kb.isc.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Operational Notification: liburcu memory leak may impact BIND 9.20 on BSD

**Title:** Operational Notification: liburcu memory leak may impact BIND 9.20 on BSD

**Document Version:** 1.0

**Posting date:** 29 July 2026

**Canonical URL:** [https://kb.isc.org/docs/liburcu-leak](https://kb.isc.org/docs/liburcu-leak)

**Program impacted:** [BIND](https://www.isc.org/bind/)

**Versions affected:**

BIND

- 9.20.0 and later

**Description:**

ISC is aware of an issue in the `liburcu` library which causes a memory leak on some platforms. BIND 9.20 and later use this library, and experience the leak on affected platforms. Older versions of BIND do not use this library and are not affected.

Linux platforms are ***not*** affected. FreeBSD and OpenBSD ***are*** affected. A preliminary analysis by ISC suggests that NetBSD and Mac OS X *may* be immune; however, as of this writing, that is not confirmed with upstream sources.

**Impact:**

Under load, the BIND `named` process will gradually use more and more memory. The internal statistics and counters for BIND will report relatively flat memory usage, but the process size as reported by the operating system grows indefinitely.

Eventually, process or system limits may result in termination of the `named` process, and/or system memory exhaustion.

The problem appears to be significantly worse on recursive resolvers. On purely authoritative servers, the problem appears much less severe.

**Solution:**

As a workaround, restarting the `named` process periodically will free all leaked memory.

FreeBSD has patched the `liburcu` distributed in their ports tree. Updating to version `0.15.3_1`, or `0.15.6`, or later, will fix the leak. These updates are available as of 28 July 2026, in the source tree, and in the 1.4x and 15.x AMD64 pkg trees.

OpenBSD has patched the `liburcu` in their CVS ports repository, also as of 28 July 2026.

While the `liburcu` project has the fix in their Git repository, it is not included in any official `liburcu` version/release as of this writing.

Advanced users may be able to independently apply patches to `liburcu` and rebuild the library and BIND from source. However, advice on how to do this is beyond the scope of this notification.

**More information:**

`liburcu` provides a read-copy-update (RCU) implementation in userspace. RCU is a technique that allows multiple threads of execution (as with multiple processors and multi-core processors) to efficiently coordinate their activity. The *userspace* aspect means the implementation does not require RCU support from the operating system kernel. BIND 9.20 uses `liburcu` extensively for this multi-threading coordination.

Unfortunately a bug in `liburcu` results in repeatedly allocating a particular resource but never freeing it. On some systems (notably Linux), the resource is completely abstract and allocating it costs nothing but CPU time, so the bug is harmless. On other systems (notably FreeBSD) allocating the resource consumes memory. The amount is small, but over many invocations, it adds up.

**References:**

- liburcu
  - Bug report: [https://bugs.lttng.org/issues/1442](https://bugs.lttng.org/issues/1442)
  - Project home page: [https://liburcu.org/](https://liburcu.org/)
- FreeBSD bug reports
  - liburcu leak: [https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296786](https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296786)
  - Impact on BIND: [https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293737](https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293737)
- OpenBSD ports update
  - [https://cvsweb.openbsd.org/log/ports/devel/liburcu/Makefile,v?sort=File#rev1.40](https://cvsweb.openbsd.org/log/ports/devel/liburcu/Makefile,v?sort=File#rev1.40)
- ISC BIND bug report
  - [https://gitlab.isc.org/isc-projects/bind9/-/work_items/5528](https://gitlab.isc.org/isc-projects/bind9/-/work_items/5528)

**Document revision history:**

- 1.0 Initial publication, 29 July 2026

**Do you still have questions?**

General questions and discussion can be raised on the [bind-users mailing list](https://lists.isc.org/mailman/listinfo/bind-users). Developer contributions can be made on the ISC GitLab issue for the problem (see above).

ISC customers with an active support agreement may open a support request ticket.

**How to Submit a Bug Report to ISC:**

If you have encountered a problem with BIND (or with any other ISC software), details on how to submit a report can be found at [https://www.isc.org/reportbug/](https://www.isc.org/reportbug/).

**Legal Disclaimer:**

Internet Systems Consortium (ISC) is providing this notice on an "AS IS" basis. No warranty or guarantee of any kind is expressed in this notice and none should be implied. ISC expressly excludes and disclaims any warranties regarding this notice or materials referred to in this notice, including, without limitation, any implied warranty of merchantability, fitness for a particular purpose, absence of hidden defects, or of non-infringement. Your use or reliance on this notice or materials referred to in this notice is at your own risk. ISC may change this notice at any time. A stand-alone copy or paraphrase of the text of this document that omits the document URL is an uncontrolled copy. Uncontrolled copies may lack important information, be out of date, or contain factual errors.
