Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Jun 2004 02:46:26 -0500 (CDT)
From:      Mike Silbersack <silby@silby.com>
To:        Ken Smith <kensmith@cse.Buffalo.EDU>
Cc:        Max Khon <fjoe@samodelkin.net>
Subject:   Re: cvs commit: src/sys/sys mbuf.h src/sys/kern uipc_mbuf.c uipc_syscalls.c src/usr.bin/netstat mbuf.c src/lib/libc/sys sendfile.2
Message-ID:  <20040618014912.O72823@odysseus.silby.com>
In-Reply-To: <20040618063319.GB17749@electra.cse.Buffalo.EDU>
References:  <200406170008.i5H08NDt085108@repoman.freebsd.org> <20040617182031.GA8170@samodelkin.net> <20040617204813.GA10670@samodelkin.net> <20040617214827.GB6029@electra.cse.Buffalo.EDU> <7071.208.178.23.220.1087509793.squirrel@208.178.23.220> <20040618063319.GB17749@electra.cse.Buffalo.EDU>

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

On Fri, 18 Jun 2004, Ken Smith wrote:

> This is where we disagree and I don't think either of us will change
> our minds.  My take on it is that this breaks an API in a -stable
> branch and is adding new functionality so it *should* be added as
> a new flag.  Using a slight variant on your ls example, your approach
> is like adding the ability to find out what the inode number is by
> adding a new column to the output of "ls -l".  But they didn't do
> that, they added the -i flag.  If they had added it to the output
> of the -l flag anyone parsing the "ls -l" output in a script would
> need to accomodate the extra field.  IMHO that's acceptable in
> -current, not -stable and IMHO the new information should go in
> as a new flag.

You're right, my ls example was too inflamatory; netstat -m is clearly 
different than ls.

> Your opinion is obviously different, doesn't look like that will
> change.
>
> --
> 						Ken Smith

My opinion is based on the fact that software in contrib/ and in ports/ 
can change greatly from version to version, yet I'm getting attacked 
because I added a few lines of extra information to a utility.

Look at the release notes from the last few releases in the 4.x branch; 
we've imported new versions of bind, sendmail, openssh, binutils, gcc, 
some utilities have been converted from perl to C, tar, tcpdump, and the 
list goes on.  Especially in the case of converted utilities, it's 
possible that subtle bugs were added, bugs that could silently cause 
problems.

In the case of adding output to netstat -m, what could possibly happen? 
Maybe someone's mbuf monitoring script sets a false alarm - the user logs 
in to check the situation, finds out that sfbuf output was added, fixes
the script, and life goes on.

This isn't a terrible ABI breakage, it's just a few extra lines of 
information in the middle of some information that was never meant to be 
machine parsed.

FWIW, netstat -m is variable depending on usage anyway - a different 
number of lines of output will be printed depending on the types of mbufs 
that are allocated in the system; take a look at the mbtypenames structure 
in src/usr.bin/netstat/mbuf.c.

Mike "Silby" Silbersack



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