Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 9 Mar 2006 09:24:02 +0100 (CET)
From:      Harti Brandt <hartmut.brandt@dlr.de>
To:        Giorgos Keramidas <keramida@ceid.upatras.gr>
Cc:        deischen@FreeBSD.org, des@des.no, Ruslan Ermilov <ru@FreeBSD.org>, current@FreeBSD.org, "M. Warner Losh" <imp@bsdimp.com>
Subject:   Re: When will bsnmp stop breaking -current builds
Message-ID:  <20060309092303.W10582@beagle.kn.op.dlr.de>
In-Reply-To: <20060308200214.GA63755@flame.pc>
References:  <20060308085714.L10582@beagle.kn.op.dlr.de> <86bqwh59gn.fsf@xps.des.no> <20060308152413.GA43764@flame.pc> <20060308.115539.98861830.imp@bsdimp.com> <20060308192657.GA54826@ip.net.ua> <20060308200214.GA63755@flame.pc>

next in thread | previous in thread | raw e-mail | index | archive | help

Looks fine to me, if it fixes the problem.

harti

On Wed, 8 Mar 2006, Giorgos Keramidas wrote:

GK>On 2006-03-08 21:26, Ruslan Ermilov <ru@FreeBSD.org> wrote:
GK>> On Wed, Mar 08, 2006 at 11:55:39AM -0700, M. Warner Losh wrote:
GK>> > In message: <20060308152413.GA43764@flame.pc>
GK>> >             Giorgos Keramidas <keramida@ceid.upatras.gr> writes:
GK>> > : On 2006-03-08 14:53, Dag-Erling Sm?rgrav <des@des.no> wrote:
GK>> > : > Harti Brandt <hartmut.brandt@dlr.de> writes:
GK>> > : > > You seem to be the only one having this problem, so this looks like
GK>> > : > > a problem on your side.
GK>> > : >
GK>> > : > Far from it.  I had the same problem, and solved it by adding a
GK>> > : > NO_BSNMP knob (see attached patch).
GK>> > : >
GK>> > : > The deeper problem is that gensnmptree is a build tool, but isn't
GK>> > : > treated as such by the build system, so cross-builds and source
GK>> > : > updates from older versions are broken.
GK>> > :
GK>> > : I solved the original gensnmptree problems I had when I moved back and
GK>> > : forth around January 25-26th builds, with:
GK>> > :
GK>> > : %%%
GK>> > : Index: Makefile.inc1
GK>> > : ===================================================================
GK>> > : --- Makefile.inc1       (revision 19)
GK>> > : +++ Makefile.inc1       (working copy)
GK>> > : @@ -839,6 +839,7 @@
GK>> > :      usr.bin/rpcgen \
GK>> > :      usr.bin/xinstall \
GK>> > :      usr.sbin/config \
GK>> > : +    usr.sbin/bsnmpd/gensnmptree \
GK>> > :      ${_crunchgen} \
GK>> > :      ${_pwd_mkdb}
GK>> > :         ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
GK>> > : %%%
GK>> > :
GK>> > : Things worked fine after this :)
GK>> >
GK>> > This seems like a reasonable thing to do for now, since it is clear
GK>> > that regardless of theory, gensnmptree in practice is a buildtool.
GK>>
GK>> Please make it a ${_gensnmptree} and define it only for vulnerable
GK>> versions.  If __FreeBSD_version wasn't bumped after it's been fixed,
GK>> put the next __FreeBSD_version value so that it stops rebuilding it
GK>> when the version gets bumped.
GK>
GK>I'm not sure what the full list of __FreeBSD_version's would include
GK>though :(
GK>
GK>There was definitely a problem upgrading from a Jan 25th build to
GK>mid-February, but it may take a while.  I think that all FreeBSD
GK>versions after the following change to the `Makefile' of bsnmpd depend
GK>at "make depend" time on gensnmptree:
GK>
GK>    root@flame:/w/bsd/src/usr.sbin/bsnmpd/bsnmpd# cvs log -N -r1.4 Makefile
GK>
GK>    RCS file: /home/ncvs/src/usr.sbin/bsnmpd/bsnmpd/Makefile,v
GK>    Working file: Makefile
GK>    head: 1.12
GK>    branch:
GK>    locks: strict
GK>    access list:
GK>    keyword substitution: kv
GK>    total revisions: 15;    selected revisions: 1
GK>    description:
GK>    ----------------------------
GK>    revision 1.4
GK>    date: 2004/01/23 16:22:49;  author: harti;  state: Exp;  lines: +20 -13
GK>    Create the OID and tree files while building the modules and the daemon
GK>    instead of creating them by hand and storing them in the CVS tree. Add
GK>    gensnmptree to the bootstrap tools (it is used to generated these files).
GK>    This simplifies the update procedure.
GK>
GK>    Submitted by:   ru
GK>    =============================================================================
GK>    root@flame:/w/bsd/src/usr.sbin/bsnmpd/bsnmpd#
GK>
GK>This is the change that introduced:
GK>
GK>1.4          (harti    23-Jan-04): oid.h: tree.def
GK>1.4          (harti    23-Jan-04):      gensnmptree -e ${XSYM} < ${.ALLSRC} > ${.TARGET}
GK>1.4          (harti    23-Jan-04):
GK>
GK>This import of bsnmpd falls somewhere between these commits to param.h:
GK>
GK>    ----------------------------
GK>    revision 1.263
GK>    date: 2006/02/17 14:14:15;  author: andre;  state: Exp;  lines: +1 -1
GK>    Replace the 4k fixed sized jumbo mbuf clusters with PAGE_SIZE sized
GK>    jumbo mbuf clusters.  To make the variable size clear they are named
GK>    MJUMPAGESIZE.
GK>
GK>    Having jumbo clusters with the native PAGE_SIZE is more useful than
GK>    a fixed 4k size according the device driver writers using this API.
GK>
GK>    The 9k and 16k jumbo mbuf clusters remain unchanged.
GK>
GK>    Requested by:   glebius, gallatin
GK>    Sponsored by:   TCP/IP Optimization Fundraise 2005
GK>    MFC after:      3 days
GK>    ----------------------------
GK>    revision 1.262
GK>    date: 2006/01/26 18:23:16;  author: cognet;  state: Exp;  lines: +1 -1
GK>    Version bump for pts import.
GK>    ----------------------------
GK>    revision 1.261
GK>    date: 2006/01/12 20:27:35;  author: brooks;  state: Exp;  lines: +1 -1
GK>    Belated __FreeBSD_version bump for improvements to the Linux ldconfig
GK>    support in etc/rc.d/abi.
GK>    ----------------------------
GK>
GK>So I guess, if I understood what you said correctly Ruslan, the proper
GK>fix would be something like (700014 is the version after the 1.263 bump):
GK>
GK>%%%
GK>Index: Makefile.inc1
GK>===================================================================
GK>--- Makefile.inc1	(.../branches/ncvs/src/Makefile.inc1)	(revision 42)
GK>+++ Makefile.inc1	(.../trunk/src/Makefile.inc1)	(revision 42)
GK>@@ -824,6 +824,10 @@
GK> _pwd_mkdb=	usr.sbin/pwd_mkdb
GK> .endif
GK> 
GK>+.if ${BOOTSTRAPPING} < 700014
GK>+_gensnmptree=	usr.sbin/bsnmpd/gensnmptree
GK>+.endif
GK>+
GK> bootstrap-tools:
GK> .for _tool in \
GK>     ${_strfile} \
GK>@@ -839,6 +843,7 @@
GK>     usr.bin/rpcgen \
GK>     usr.bin/xinstall \
GK>     usr.sbin/config \
GK>+    ${_gensnmptree} \
GK>     ${_crunchgen} \
GK>     ${_pwd_mkdb}
GK> 	${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \
GK>%%%
GK>
GK>
GK>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060309092303.W10582>