svn commit: r287234 - head/cddl/contrib/opensolaris/tools/ctf/cvt
Mark Johnston
markj at FreeBSD.org
Fri Aug 28 00:38:19 UTC 2015
Author: markj
Date: Fri Aug 28 00:38:18 2015
New Revision: 287234
URL: https://svnweb.freebsd.org/changeset/base/287234
Log:
Re-apply r274569. It was reverted in r276848 since that appeared to fix
some ctfmerge crashes that started to occur on i386 weeks after r274569 was
committed. Some later investigation indicated that the crashes were caused
by malformed CTF info that led to a stack overflow. The issue with CTF
info in i386 kernels seems to have been resolved by r261246, which updated
libdwarf and libelf.
r274569 fixes a bug which caused duplicate types to appear in the kernel's
CTF info. This duplication generally does not cause problems when using
DTrace, but makes it easier to hit the limit of 2^15 - 1 distinct type
definitions in a CTF container.
MFC after: 2 weeks
Modified:
head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c
Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c
==============================================================================
--- head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c Fri Aug 28 00:17:21 2015 (r287233)
+++ head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c Fri Aug 28 00:38:18 2015 (r287234)
@@ -349,7 +349,7 @@ equiv_node(tdesc_t *ctdp, tdesc_t *mtdp,
int (*equiv)(tdesc_t *, tdesc_t *, equiv_data_t *);
int mapping;
- if (ctdp->t_emark > ed->ed_clear_mark ||
+ if (ctdp->t_emark > ed->ed_clear_mark &&
mtdp->t_emark > ed->ed_clear_mark)
return (ctdp->t_emark == mtdp->t_emark);
More information about the svn-src-head
mailing list