History log of /freebsd-current/cddl/contrib/opensolaris/tools/ctf/cvt/ctf.c
Revision Date Author Comments
# 3fe1f21f 07-Mar-2022 Mark Johnston <markj@FreeBSD.org>

ctf: Avoid passing a caddr_t to roundup2()

For some reason I can't reproduce this locally, but Jenkins complains.

Reported by: Jenkins
Fixes: bdf290cd3e1a ("ctf: Add v3 support to CTF tools, ctf{convert,dump,merge}")


# bdf290cd 07-Mar-2022 Mark Johnston <markj@FreeBSD.org>

ctf: Add v3 support to CTF tools, ctf{convert,dump,merge}

ctfdump handles v2 and v3. ctfconvert now emits only CTFv3, whereas
ctfmerge can merge v2 and v3 containers into v3 containers.

MFC after: 1 month
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D34364


# d0ba1bae 19-May-2018 Matt Macy <mmacy@FreeBSD.org>

ctfconvert: silence useless enum has too many values warning


# 69718b78 03-Dec-2016 Pedro F. Giffuni <pfg@FreeBSD.org>

Revert r253678, r253661:
Fix a segfault in ctfmerge(1) due to a bug in GCC.

The change was correct and the bug real, but upstream didn't adopt it
and we want to remain in sync. When/if upstream does something about it
we can bring their version.

The bug in question was fixed in GCC 4.9 which is now the default in
FreeBSD's ports. Our native gcc-4.2, which is still in use in some Tier-2
platforms also has a workaround so no end-user should be harmed by the
revert.


# ad6fc754 15-Mar-2015 Mark Johnston <markj@FreeBSD.org>

Add a missing format string argument.

PR: 197391
MFC after: 3 days


# fcb56067 10-Feb-2015 George V. Neville-Neil <gnn@FreeBSD.org>

Initial version of DTrace on ARM32.

Submitted by: Howard Su based on work by Oleksandr Tymoshenko
Reviewed by: ian, andrew, rpaulo, markj


# e75a1c78 26-Jul-2013 Pedro F. Giffuni <pfg@FreeBSD.org>

Style issue in r253661.

Pointed out by: avg
MFC after: 1 month


# c7cdfecc 25-Jul-2013 Pedro F. Giffuni <pfg@FreeBSD.org>

Fix a segfault in ctfmerge due to a bug in gcc.

GCC can generate bogus dwarf attributes with DW_AT_byte_size
set to 0xFFFFFFFF.
The issue was originaly detected in NetBSD but it has been
adapted for portability and to avoid compiler warnings.

Reference:
https://www.illumos.org/issues/3776

Obtained from: NetBSD
MFC after: 1 month


# c0794a84 19-Apr-2013 Ed Schouten <ed@FreeBSD.org>

Fix -Wmissing-variable-declarations compiler warnings.

References:
https://www.illumos.org/issues/3700


# a6425ab5 23-Mar-2012 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Maintain target's byte order for multi-byte fields in CTF structures.

CTF format is not cross-platform by design, e.g. it is not guaranteed
that data generated by ctfconvert/ctfmerge on one architecture will
be successfuly read on another. CTF structures are saved/restored
using naive approach. Roughly it looks like:
write(fd, &ctf_struct, sizeof(ctf_struct))
read(fd, &ctf_struct, sizeof(ctf_struct))

By sheer luck memory layout of all type-related CTF structures is the same
on amd64/i386/mips32/mips64. It's different on ARM though. sparc, ia64,
powerpc, and powerpc64 were not tested. So in order to get file compatible
with dtrace on ARM it should be compiled on ARM. Alternative solution would
be to have "signatures" for every platform and ctfmerge should convert host's
reperesentation of CTF structure to target's one using "signature" as template.

This patch checks byte order of ELF files used for generating CTF record
and makes sure that byte order of data written to resulting files is the same
as target's byte order.


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# 59879e52 03-May-2010 Alexander Kabaev <kan@FreeBSD.org>

Do not encode more than CTF_MAX_VLEN(1023) enum members.

CTF can not represent enums with more than CTF_MAX_VLEN members, but
ctfconvert will happily ignore that limitation and create CTF section no
other tool can interpret.

This change is different from similar change from upstream, which just
returns an error if big enum is encountered. Doing that means that
every FreeBSD kernel with compiled in hwpmc will have no useable CTF
information due to pmc_event enum having 1236+ members.


# fe0506d7 09-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Create the altix project branch. The altix project will add support
for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting
is a two-module system, consisting of a base compute module and a
CPU expansion module. SGI's NUMAFlex architecture can be an excellent
platform to test CPU affinity and NUMA-aware features in FreeBSD.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# 4cc75139 25-Apr-2008 John Birrell <jb@FreeBSD.org>

A lot of changes to make this code compile cleanly on FreeBSD.