bin/124353: cvsup(1): CVSup coredumps with Bus Error since installworld of 6.3-STABLE on 28/5/08 [regression]

Pav Lucistnik pav at FreeBSD.org
Mon Aug 18 13:30:05 UTC 2008


The following reply was made to PR bin/124353; it has been noted by GNATS.

From: Pav Lucistnik <pav at FreeBSD.org>
To: Joseph Koshy <jkoshy at FreeBSD.org>
Cc: bug-followup at FreeBSD.org, srp at zzap.org
Subject: Re: bin/124353: cvsup(1): CVSup coredumps with Bus Error since
	installworld of 6.3-STABLE on 28/5/08 [regression]
Date: Mon, 18 Aug 2008 15:21:31 +0200

 > On 24-Apr-08 changes needed to support kernel mode NFS locking were
 > MFC'ed to RELENG_6.  As part of this change, the semantics of fcntl()
 > were extended.  In order to deal with older binaries, the
 > implementation of fcntl() in "lib/libc" was changed from a direct
 > system call to a varargs wrapper: __fcntl_compat().
 > 
 > Binary calling conventions for varargs and ordinary functions differ
 > on the AMD64.  In particular callers of varargs functions use the %al
 > register to pass in a 'hidden' value to the callee.
 > 
 > So the changes needed to unbreak Modula-3/CVSup are:
 > 
 > 1) Augment the M3 definition of 'struct flock' with a new l_sysid
 >    field; this should be harmless on older, pre-NFS-kernel-locking
 >    systems.
 > 
 > 2) Despatch M3's "fcntl" to a C function "ufcntl" that translates
 >    between the two calling conventions.
 > 
 > The following patch implements the fix.  Since it stacks over pav@'s
 > amd64 patch set, it needs to be applied after first running 'make
 > patch' and before a subsequent 'make install'.
 > 
 > pav@, maintainer of the CVSup/AMD64 patch set is CC'ed.
 
 Thanks, this fixes the crashes for me. I will update the port today.
 
 -- 
 Pav Lucistnik <pav at oook.cz>
               <pav at FreeBSD.org>
 
 The Novice rogue. A rather shifty individual


More information about the freebsd-bugs mailing list