cvs commit: src/sys/netinet6 frag6.c icmp6.c in6.c in6_ifattach.c in6_pcb.c in6_proto.c in6_rmx.c in6_src.c ip6_input.c ip6_mroute.c ip6_output.c mld6.c nd6.c nd6_nbr.c nd6_rtr.c raw_ip6.c udp6_usrreq.c

Robert Watson rwatson at FreeBSD.org
Thu Jan 10 01:00:00 PST 2008


On Wed, 9 Jan 2008, Sam Leffler wrote:

> Peter Jeremy wrote:
>> On Wed, Jan 09, 2008 at 09:34:03AM -0800, Sam Leffler wrote:
>> 
>>> I observe that netbsd does these sorts of changes in sweeps over the tree 
>>> and w/ multiple people involved to review each other's work.  I'd be more 
>>> confident if I saw commits like this include a "Reviewed by:" line.
>> 
>> For this sort of commit, it should also be possible to check that you 
>> haven't broken anything by cmp(1)ing the .o files or manually preprocessing 
>> and diffing the preprocessed files.
>
> For this specific case md5 checksums of the resulting .o files should work. 
> However some committers have a history of making changes like this that 
> either break the build (w/o a quick followup to correct the problem) or 
> introduce subtle issues that aren't found until much later.  Hence my 
> request (removed by obrien) that people do changes like this when they are 
> actively working on a section of code.  Drive-by commits like this 
> frequently do more harm than good.

In the past, we've had several subtle bugs crop up as a result of changing to 
ANSI C function prototypes, which no longer automatically promote arguments to 
int from shorter types (I think it's that way around).  This caused some very 
subtle semantic changes in the socket code a few years ago and was a nightmare 
to track down.  Unfortunately, I don't remember the details or I'd dig up the 
commit that fixed it, it was really quite tricky, as what on face value was a 
style change actually changed the semantics significantly.

Robert N M Watson
Computer Laboratory
University of Cambridge


More information about the cvs-src mailing list