]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
libctf: Handle CTFv3 containers
authorMark Johnston <markj@FreeBSD.org>
Mon, 7 Mar 2022 13:53:27 +0000 (08:53 -0500)
committerMark Johnston <markj@FreeBSD.org>
Mon, 7 Mar 2022 15:43:19 +0000 (10:43 -0500)
commita6fb86917362e3f6d24e95e940e80845c2cfde8a
treefbfe6221d83ac500fa627b8a38b7f345c3532d96
parent8dbae4ce32bde42daee050ccfceee5eb2d306786
libctf: Handle CTFv3 containers

In general, the patch adds indirection to minimize the amount of code
that needs to know about differences between v2 and v3.  Specifically,
some new ctf_get_ctt_* functions are added, and new LCTF_* macros are
added to use the underlying container's version to do the right thing.

CTF containers can have parent/child relationships, wherein a type ID in
one container refers to a type in the parent.  It is permitted for the
parent and child to have different versions.

MFC after: 1 month
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D34363
cddl/contrib/opensolaris/common/ctf/ctf_create.c
cddl/contrib/opensolaris/common/ctf/ctf_decl.c
cddl/contrib/opensolaris/common/ctf/ctf_hash.c
cddl/contrib/opensolaris/common/ctf/ctf_impl.h
cddl/contrib/opensolaris/common/ctf/ctf_lookup.c
cddl/contrib/opensolaris/common/ctf/ctf_open.c
cddl/contrib/opensolaris/common/ctf/ctf_types.c
cddl/contrib/opensolaris/lib/libctf/common/ctf_lib.c