svn commit: r247962 - head/cddl/contrib/opensolaris/tools/ctf/cvt

Andriy Gapon avg at FreeBSD.org
Mon Apr 1 06:07:24 UTC 2013


on 08/03/2013 00:43 Dimitry Andric said the following:
> Author: dim
> Date: Thu Mar  7 22:43:50 2013
> New Revision: 247962
> URL: http://svnweb.freebsd.org/changeset/base/247962
> 
> Log:
>   Fix error in r247960: actually assign the basename to match.iim_file.

I've got some bad news.

First of all, sorry for not being thorough enough when this change was
originally proposed.  I rebuilt only ctfconvert with the patch, but ctfmerge was
left alone.

It seems that r247960 + r247962 (this commit) broke ctfmerge in my environment
(head + clang).  While .o files have expected ctf information, combined files
miss ctf data for functions.

I haven't dug yet into this problem, but I suspect that there is some mismatch
at another place (or even multiple places) where STT_FILE is used.


>   Pointed out by:	avg
>   Pointy hat to:	dim
>   MFC after:	1 week
>   X-MFC-With:	r247960
> 
> Modified:
>   head/cddl/contrib/opensolaris/tools/ctf/cvt/output.c
> 
> Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/output.c
> ==============================================================================
> --- head/cddl/contrib/opensolaris/tools/ctf/cvt/output.c	Thu Mar  7 22:32:41 2013	(r247961)
> +++ head/cddl/contrib/opensolaris/tools/ctf/cvt/output.c	Thu Mar  7 22:43:50 2013	(r247962)
> @@ -379,8 +379,7 @@ sort_iidescs(Elf *elf, const char *file,
>  		switch (GELF_ST_TYPE(sym.st_info)) {
>  		case STT_FILE:
>  			bname = strrchr(match.iim_name, '/');
> -			bname = bname == NULL ? match.iim_name : bname + 1;
> -			match.iim_file = match.iim_name;
> +			match.iim_file = bname == NULL ? match.iim_name : bname + 1;
>  			continue;
>  		case STT_OBJECT:
>  			tolist = iiburst->iib_objts;
> 


-- 
Andriy Gapon


More information about the svn-src-all mailing list