pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/54171: net/bind914 rndc hangs
The following reply was made to PR pkg/54171; it has been noted by GNATS.
From: Christos Zoulas <christos%zoulas.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: pkg-manager%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, pkgsrc-bugs%netbsd.org@localhost,
john%ziaspace.com@localhost
Subject: Re: pkg/54171: net/bind914 rndc hangs
Date: Thu, 9 May 2019 20:42:53 -0400
I think perhaps there are changes in config.h too.
christos
> On May 9, 2019, at 7:10 PM, Thomas Klausner <wiz%netbsd.org@localhost> wrote:
>=20
> The following reply was made to PR pkg/54171; it has been noted by GNATS.
>=20
> From: Thomas Klausner <wiz%NetBSD.org@localhost>
> To: NetBSD bugtracking <gnats-bugs%NetBSD.org@localhost>
> Cc:=20
> Subject: Re: pkg/54171: net/bind914 rndc hangs
> Date: Fri, 10 May 2019 01:06:10 +0200
>=20
>> On Thu, May 09, 2019 at 10:35:01PM +0000, John Klos wrote:
>> bind from base works fine on all architectures. I've had to revert to bin=
d=20
>> from base on my ARM machines because no pkgsrc bind works there. I'm usin=
g=20
>> bind from base on a few amd64 systems, too.
>=20
> I looked at
>=20
> cd /usr/src/external/mpl/bind/dist
> cvs di -rbind-9-14-1 -kk | less
>=20
> for a bit. Most of the changes are linting/casting changes, or
> fdwatch/blacklistd support.
>=20
> I found two that looked like they might have something todo with your
> issue.
>=20
> Index: lib/isc/rwlock.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> RCS file: /cvsroot/src/external/mpl/bind/dist/lib/isc/rwlock.c,v
> retrieving revision 1.1.1.3
> retrieving revision 1.6
> diff -u -r1.1.1.3 -r1.6
> --- lib/isc/rwlock.c 24 Feb 2019 18:56:47 -0000 1.1.1.3
> +++ lib/isc/rwlock.c 24 Feb 2019 20:01:31 -0000 1.6
> @@ -46,6 +46,9 @@
> #define RWLOCK_MAX_ADAPTIVE_COUNT 100
> #endif
>=20
> +#ifdef __lint__
> +# define isc_rwlock_pause()
> +#else
> #if defined(_MSC_VER)
> # include <intrin.h>
> # define isc_rwlock_pause() YieldProcessor()
> @@ -56,11 +59,12 @@
> # define isc_rwlock_pause() __asm__ __volatile__ ("rep; nop")
> #elif defined(__ia64__)
> # define isc_rwlock_pause() __asm__ __volatile__ ("hint @pause")
> -#elif defined(__arm__)
> +#elif defined(__arm__) && defined(_ARM_ARCH_6)
> # define isc_rwlock_pause() __asm__ __volatile__ ("yield")
> #elif defined(sun) && (defined(__sparc) || defined(__sparc__))
> # define isc_rwlock_pause() smt_pause()
> -#elif defined(__sparc) || defined(__sparc__)
> +// Disable pause, only works on v9
> +#elif (defined(__sparc) || defined(__sparc__)) && defined(notdef)
> # define isc_rwlock_pause() __asm__ __volatile__ ("pause")
> #elif defined(__ppc__) || defined(_ARCH_PPC) || \
> defined(_ARCH_PWR) || defined(_ARCH_PWR2) || defined(_POWER)
> @@ -68,6 +72,7 @@
> #else
> # define isc_rwlock_pause()
> #endif
> +#endif
>=20
> static isc_result_t
> isc__rwlock_lock(isc_rwlock_t *rwl, isc_rwlocktype_t type);
> Index: lib/isc/stats.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> RCS file: /cvsroot/src/external/mpl/bind/dist/lib/isc/stats.c,v
> retrieving revision 1.1.1.2
> retrieving revision 1.4
> diff -u -r1.1.1.2 -r1.4
> --- lib/isc/stats.c 9 Jan 2019 16:48:19 -0000 1.1.1.2
> +++ lib/isc/stats.c 9 Jan 2019 20:39:28 -0000 1.4
> @@ -32,7 +32,11 @@
> #define ISC_STATS_MAGIC ISC_MAGIC('S', 't', 'a', '=
t')
> #define ISC_STATS_VALID(x) ISC_MAGIC_VALID(x, ISC_STATS_MAGIC=
)
>=20
> +#ifndef _LP64
> +typedef atomic_int_fast32_t isc_stat_t;
> +#else
> typedef atomic_int_fast64_t isc_stat_t;
> +#endif
>=20
> struct isc_stats {
> /*% Unlocked */
>=20
> Could you please try patches like those above in the pkgsrc version
> and see if they improve the situation?
>=20
> If not, please read the cvs diff yourself, perhaps you find more stuff.
>=20
> Thanks,
> Thomas
>=20
Home |
Main Index |
Thread Index |
Old Index