NetBSD Problem Report #41201

From www@NetBSD.org  Mon Apr 13 20:15:29 2009
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id 790CD63B8DF
	for <gnats-bugs@gnats.netbsd.org>; Mon, 13 Apr 2009 20:15:29 +0000 (UTC)
Message-Id: <20090413201529.4BF6963B8A5@www.NetBSD.org>
Date: Mon, 13 Apr 2009 20:15:29 +0000 (UTC)
From: ad@netbsd.org
Reply-To: ad@netbsd.org
To: gnats-bugs@NetBSD.org
Subject: bind9 should not use home grown rwlock on NetBSD
X-Send-Pr-Version: www-1.0

>Number:         41201
>Category:       bin
>Synopsis:       bind9 should not use home grown rwlock on NetBSD
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    bin-bug-people
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 13 20:20:00 +0000 2009
>Originator:     Andrew Doran
>Release:        5.0
>Organization:
The NetBSD Project
>Environment:
n/a
>Description:
libisc includes a home-grown rwlock implementation.

It uses this because pthread_rwlock sucks bigtime on most platforms,
and bind9 (apparently) makes heavy use of rwlocks.

However, on NetBSD, pthread_rwlock is even more lightweight than the
libisc implementation and has the significant advantage that it's a
true adaptive rwlock (avoids context switch storms, pointless spinning).

So we have something that would give us a real advantage on bind9 
benchmarks and we are not using it, which is suboptimal.

>How-To-Repeat:
Read that bind9 on 4.0 was embarrassingly slow when tested by ISC.
Test and notice that 5.0 is way, way better.
Read about bind9 performance issues, notice erratic performance from
bind9, characteristic of heavy use of of non-truly-adaptive locks.

>Fix:
Above.

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.