NetBSD Problem Report #42176

From kre@munnari.OZ.AU  Tue Oct 13 10:01:52 2009
Return-Path: <kre@munnari.OZ.AU>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id A33B663B877
	for <gnats-bugs@gnats.NetBSD.org>; Tue, 13 Oct 2009 10:01:52 +0000 (UTC)
Message-Id: <200910131001.n9DA1AsY011543@jade.coe.psu.ac.th>
Date: Tue, 13 Oct 2009 17:01:10 +0700 (ICT)
From: kre@munnari.OZ.AU
To: gnats-bugs@gnats.NetBSD.org
Subject: emulators/qemu fails to compile on NetBSD 4.0 (i386 .. or probably any)
X-Send-Pr-Version: 3.95

>Number:         42176
>Category:       pkg
>Synopsis:       emulators/qemu fails to compile on NetBSD 4.0 (i386 .. or probably any)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Oct 13 10:05:00 +0000 2009
>Closed-Date:    Fri Apr 09 08:01:48 +0000 2010
>Last-Modified:  Sat Mar 05 14:55:04 +0000 2011
>Originator:     Robert Elz
>Release:        NetBSD 4.0 / i386   (pkgsrc -current 2009-10-13)
>Organization:
	Prince of Songkla University
>Environment:
System: NetBSD jade.coe.psu.ac.th 4.0_STABLE NetBSD 4.0_STABLE (JADE-1.696-20080517) #9: Fri May 23 18:55:13 ICT 2008 kre@jade.coe.psu.ac.th:/usr/obj/4/kernels/JADE i386
Architecture: i386
Machine: i386
>Description:
	The latest version of qemu (qemu-0.11.0) doesn't compile on
	NetBSD 4.0 as it expects to use TAILQ_FOREACH_SAFE() which
	doesn't exist in NetBSD 4

>How-To-Repeat:
	I use pkg_comp with NetBSD 4.0 release sets installed, amd
	libkver to similate a fairly pure NetBSD 4.0 release environment.
	(I use pkgsrc modular xorg instead of the x* sets, but that's
	not relevant here).

	In that environment expect to see ...

===> Building for qemu-0.11.0
  GEN   qemu-img-cmds.h
  [....]
  CC    net.o
net.c: In function 'qemu_purge_queued_packets':
net.c:470: warning: implicit declaration of function 'TAILQ_FOREACH_SAFE'
net.c:470: error: 'entry' undeclared (first use in this function)
net.c:470: error: (Each undeclared identifier is reported only once
net.c:470: error: for each function it appears in.)
net.c:470: error: expected ';' before '{' token
gmake: *** [net.o] Error 1
*** Error code 2

Stop.
make: stopped in /usr/pkgsrc/emulators/qemu
*** Error code 1

Stop.

>Fix:
	Either just use TAILQ_FOREACH() (and a bunch of hackery),
	or provide a version of TAILQ_FOREACH_SAFE() just for NetBSD-4
	(and other systems that might not have it) or relpace the use
	of the TAILQ macro with hand rolled code, or ....

>Release-Note:

>Audit-Trail:
From: Robert Elz <kre@munnari.OZ.AU>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/42176: emulators/qemu fails to compile on NetBSD 4.0 (i386 .. or probably any)
Date: Fri, 09 Apr 2010 10:49:57 +0700

 I believe this problem might have been fixed upstream - it appears as if
 they have replaced all uses of the XXXQ_WHATEVER() macros (from sys/queue.h)
 with their own (well, taken from NetBSD it says) versions QXXXQ_WHATEVER().

 That means that the _SAFE() versions of the XXXQ_FOREACH() macros are present
 now, and the problem that generated this PR should be gone.

 I say "should be" as I discovered this entirely from reading a diff of
 the relevant distfiles - the same pkgsrc upgrade that seems to have
 corrected this problem introduced PR 42899. so qemu remains uncompilable on
 NetBSD 4, so there's no good way to verify that this problem is in
 fact gone.

 Until we know for sure, I'd suggest changing this PR to be "suspended"
 (rather than closed) - once qemu compiles again, or when NetBSD 4 support
 is no longer relevant to pkgsrc, this PR can be reopened in the unlikely
 event that it hasn't been fixed, or finally closed.

 kre

State-Changed-From-To: open->suspended
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Fri, 09 Apr 2010 06:26:33 +0000
State-Changed-Why:
Believed fixed, can't be tested just yet owing to other lossage


From: Robert Elz <kre@munnari.OZ.AU>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/42176 (emulators/qemu fails to compile on NetBSD 4.0 (i386 .. or probably any))
Date: Fri, 09 Apr 2010 14:34:59 +0700

     Date:        Fri,  9 Apr 2010 06:26:34 +0000 (UTC)
     From:        dholland@NetBSD.org
     Message-ID:  <20100409062634.36A5463BA59@www.NetBSD.org>

   | State-Changed-From-To: open->suspended

 Thanks for that, now you can close it, I have now been able to
 verify that this problem is indeed fixed upstream in the latest
 qemu distfile, and no pkgsrc changes are needed to handle it.

 kre

State-Changed-From-To: suspended->closed
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Fri, 09 Apr 2010 08:01:48 +0000
State-Changed-Why:
Confirmed fixed, thanks for the feedback!


From: "Matt Thomas" <matt@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/42176 CVS commit: src/sys/arch/algor/algor
Date: Sat, 5 Mar 2011 14:04:03 +0000

 Module Name:	src
 Committed By:	matt
 Date:		Sat Mar  5 14:04:03 UTC 2011

 Modified Files:
 	src/sys/arch/algor/algor: algor_p6032_intr.c algor_p6032var.h

 Log Message:
 Fix prototype of algor_p6032_iointr.
 Fix buffer overrun ( PR algor/42176 ).
 Constify a few things.


 To generate a diff of this commit:
 cvs rdiff -u -r1.17 -r1.18 src/sys/arch/algor/algor/algor_p6032_intr.c
 cvs rdiff -u -r1.2 -r1.3 src/sys/arch/algor/algor/algor_p6032var.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: Robert Elz <kre@munnari.OZ.AU>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: PR/42176 CVS commit: src/sys/arch/algor/algor
Date: Sat, 05 Mar 2011 21:50:44 +0700

     Date:        Sat,  5 Mar 2011 14:05:03 +0000 (UTC)
     From:        "Matt Thomas" <matt@NetBSD.org>
     Message-ID:  <20110305140503.E013263B92A@www.NetBSD.org>

   |  Fix buffer overrun ( PR algor/42176 ).

 That should have been 42716

 kre

>Unformatted:

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.