From owner-freebsd-ports-bugs@FreeBSD.ORG Thu May 25 06:40:17 2006 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6A82C16A421 for ; Thu, 25 May 2006 06:40:17 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 916AD43D45 for ; Thu, 25 May 2006 06:40:16 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k4P6eGmb023562 for ; Thu, 25 May 2006 06:40:16 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k4P6eGEl023559; Thu, 25 May 2006 06:40:16 GMT (envelope-from gnats) Resent-Date: Thu, 25 May 2006 06:40:16 GMT Resent-Message-Id: <200605250640.k4P6eGEl023559@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Jeremy Chadwick Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B003A16A421 for ; Thu, 25 May 2006 06:33:22 +0000 (UTC) (envelope-from jdc@parodius.com) Received: from mx1.parodius.com (mx1.parodius.com [64.62.145.229]) by mx1.FreeBSD.org (Postfix) with ESMTP id 85D1743D45 for ; Thu, 25 May 2006 06:33:22 +0000 (GMT) (envelope-from jdc@parodius.com) Received: by mx1.parodius.com (Postfix, from userid 500) id 7B0865E36; Wed, 24 May 2006 23:33:22 -0700 (PDT) Message-Id: <20060525063322.7B0865E36@mx1.parodius.com> Date: Wed, 24 May 2006 23:33:22 -0700 (PDT) From: Jeremy Chadwick To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/97883: www/mod_bw 0.7 doesn't work on 4.x due to patch in files/ X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Jeremy Chadwick List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 May 2006 06:40:17 -0000 >Number: 97883 >Category: ports >Synopsis: www/mod_bw 0.7 doesn't work on 4.x due to patch in files/ >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Thu May 25 06:40:15 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Jeremy Chadwick >Release: FreeBSD 4.11-STABLE i386 >Organization: Parodius Networking >Environment: System: FreeBSD pentarou.parodius.com 4.11-STABLE FreeBSD 4.11-STABLE #0: Thu Jan 12 01:50:11 PST 2006 root@pentarou.parodius.com:/usr/obj/usr/src/sys/PENTAROU i386 >Description: The mod_bw port contains a single patch in files/, which includes some very strange code: +#if APR_MAJOR_VERSION == 0 +#define apr_atomic_set32(mem,val) (atomic_set_32(mem,val),mem) +#define apr_atomic_inc32(mem) (atomic_add_32(mem,1),mem) +#define apr_atomic_dec32(mem) (atomic_subtract_32(mem,1),mem) +#define apr_atomic_add32(mem,val) (atomic_add_32(mem,val),mem) +#define apr_atomic_cas32 apr_atomic_cas +#endif This was introduced when the port was upgraded to 0.7. This code, simply put, does not work with Apache 2.2.2 on FreeBSD 4.x. The end result is that mod_bw finds missing symbol references to the atomic_*_32() functions, because they aren't available on 4.x. The native apr_atomic_*32() functions come with Apache 2.2.2, and these work fine on 4.x. What I'm saying is, on 4.x, all I have to do is remove the patch in files/ and mod_bw works. We need to have this fixed, and it's quite important. I'd recommend that the patch only be applied on 5.x and 6.x systems, since it's not necessary on 4.x boxes. >How-To-Repeat: On a 4.x box, build mod_bw, then try to run Apache with the module loaded. You'll receive missing symbol definitions for atomic_*_32() functions. >Fix: See description. >Release-Note: >Audit-Trail: >Unformatted: