Patches to fix isc_atomic_xadd problem (Solaris, HP-UX and other rare CPU architectures)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Patches to fix isc_atomic_xadd problem (Solaris, HP-UX and other rare CPU architectures)

Ondřej Surý
Hi,

when backporting the patch to fix TCP Client Issue a design decision was made to not use stdatomic.h (as used in 9.14+), but rather use the old ISC atomic API that we believed was more compatible with existing user base. Unfortunately, it has slipped our attention that said API lack support for less common CPU architectures. So far, we’ve been made aware about HP-UX, Solaris sparc and various fringe Linux architectures.

As immediate remedy to the problem, we are encouraging users to use following patches:

# BIND 9.11.6-P1

Patch replacing isc_atomic_xadd with isc_refcount API in BIND 9.11:
https://gitlab.isc.org/isc-projects/bind9/merge_requests/1864.patch
The patch will be part of next regular BIND 9.11.7 release.

If by any chance your compiler doesn’t support GNU extensions, you might also want to apply:
https://gitlab.isc.org/isc-projects/bind9/merge_requests/1826
We introduced this as a fix for alignment problem on Solaris, but it broke HP-UX.

# BIND 9.12.4-P1

Patch replacing isc_atomic_xadd with isc_refcount API in BIND 9.12.4-P1:
https://gitlab.isc.org/isc-projects/bind9/merge_requests/1879.patch
Please note that BIND 9.12 has reached EOL and there will be only new release if there’s serious security issue.  We hope not.

# BIND 9.14.1

For BIND 9.14.1, a patch would be needed only if you are using GCC with only the old atomic intrinsic, but here it is anyway:
- https://gitlab.isc.org/isc-projects/bind9/merge_requests/1880.patch

I apologise for the inconvenience this has caused for platforms we don’t have support for old atomics.

Ondrej
--
Ondřej Surý
[hidden email]

_______________________________________________
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe from this list

bind-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/bind-users
Reply | Threaded
Open this post in threaded view
|

Re: Patches to fix isc_atomic_xadd problem (Solaris, HP-UX and other rare CPU architectures)

Jeff Wieland
Ondřej Surý wrote:

> Hi,
>
> when backporting the patch to fix TCP Client Issue a design decision was made to not use stdatomic.h (as used in 9.14+), but rather use the old ISC atomic API that we believed was more compatible with existing user base. Unfortunately, it has slipped our attention that said API lack support for less common CPU architectures. So far, we’ve been made aware about HP-UX, Solaris sparc and various fringe Linux architectures.
>
> As immediate remedy to the problem, we are encouraging users to use following patches:
>
> # BIND 9.11.6-P1
>
> Patch replacing isc_atomic_xadd with isc_refcount API in BIND 9.11:
> https://gitlab.isc.org/isc-projects/bind9/merge_requests/1864.patch
> The patch will be part of next regular BIND 9.11.7 release.
>
> If by any chance your compiler doesn’t support GNU extensions, you might also want to apply:
> https://gitlab.isc.org/isc-projects/bind9/merge_requests/1826
> We introduced this as a fix for alignment problem on Solaris, but it broke HP-UX.
>
> # BIND 9.12.4-P1
>
> Patch replacing isc_atomic_xadd with isc_refcount API in BIND 9.12.4-P1:
> https://gitlab.isc.org/isc-projects/bind9/merge_requests/1879.patch
> Please note that BIND 9.12 has reached EOL and there will be only new release if there’s serious security issue.  We hope not.
>
> # BIND 9.14.1
>
> For BIND 9.14.1, a patch would be needed only if you are using GCC with only the old atomic intrinsic, but here it is anyway:
> - https://gitlab.isc.org/isc-projects/bind9/merge_requests/1880.patch
>
> I apologise for the inconvenience this has caused for platforms we don’t have support for old atomics.
>
> Ondrej
> --
> Ondřej Surý
> [hidden email]
>
> _______________________________________________
> Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe from this list
>
> bind-users mailing list
> [hidden email]
> https://lists.isc.org/mailman/listinfo/bind-users

Thanks!

The 1864.patch seems to work fine with Solaris 10 and Solaris Studio 12.2.
It doesn't appear to need 1826.patch.

--
Jeff Wieland, UNIX/Network Systems Administrator
Purdue University IT Infrastructure Services UNIX Platforms

_______________________________________________
Please visit https://lists.isc.org/mailman/listinfo/bind-users to unsubscribe from this list

bind-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/bind-users