aboutsummaryrefslogtreecommitdiff
path: root/cddl/contrib/opensolaris/lib/libctf/common
Commit message (Collapse)AuthorAgeFilesLines
* libctf: Handle CTFv3 containersMark Johnston2022-03-071-1/+2
| | | | | | | | | | | | | | | 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
* ctf: Add definitions for CTFv3Mark Johnston2022-03-071-94/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | These are based on definitions added to binutils' libctf. Specifically: - Type IDs are now encoded in 32 bits rather than 16, changing the layout of ctf_type_t, ctf_array_t, ctf_member_t and ctf_lmember_t. - Type info is encoded in 32 bits rather than 16. The type "kind" is extended from 5 bits to 6, and the type "vlen" is extended from 10 bits to 25. The main upside is that we remove the current limit, imposed by CTFv2, of 2^{15} distinct types in the main kernel executable. Other limits, such as that on the number of elements in an enum, imposed by the vlen limit, are also raised. This change adds v2 and v3 flavours of macros and type definitions which differ between the two versions. Compatibility is preserved for now by having generic names refer to the v2 definitions, so, e.g., ctf_type_t is still a v2 type. No functional change intended. Reviewed by: Domagoj Stolfa MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D34360
* Fix cddl tools bootstrapping on macOS and LinuxAlex Richardson2020-08-071-0/+1
| | | | | | | | Reviewed By: brooks Differential Revision: https://reviews.freebsd.org/D25979 Notes: svn path=/head/; revision=364022
* Reference stdint.h types in ctf.5.Mark Johnston2019-07-171-39/+39
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=350082
* libctf: Appease Coverity overrun warningsConrad Meyer2018-03-261-2/+2
| | | | | | | | | | | | | Rather than zeroing and reading into the a smaller union member the full union size, just zero and read directly into the union. No functional change intended. Reported by: Coverity Sponsored by: Dell EMC Isilon Notes: svn path=/head/; revision=331594
* Address some miscellaneous issues in the CTF man page.Mark Johnston2017-10-221-30/+39
| | | | | | | | | | | | | - Fix a number of typos. - Replace some illumos-specific references. - Note that a type definition of kind CTF_K_FUNCTION may be followed by a null type identifier in order to provide 4-byte alignment for the next type definition. MFC after: 2 weeks Notes: svn path=/head/; revision=324865
* MFV r323105 (partial): 8300 fix man page issues found by mandoc 1.14.1Mark Johnston2017-10-221-221/+296
| | | | | | | | | | | | | | | | | | | | | | | illumos/illumos-gate@72d3dbb9ab4481606cb93caca98ba3b3a8eb6ce2 https://github.com/illumos/illumos-gate/commit/72d3dbb9ab4481606cb93caca98ba3b3a8eb6ce2 https://www.illumos.org/issues/8300 Prior to integrating the mdocml update to 1.14.1, fix issues found by new version, especially the "new sentence, new line" style rule. FreeBSD note: this revision merges only the changes to the CTF manual page. The changes to the ZFS pages cannot be applied directly. Reviewed by: Robert Mustacchi <rm@joyent.com> Reviewed by: Toomas Soome <tsoome@me.com> Approved by: Gordon Ross <gwr@nexenta.com> Author: Yuri Pankov <yuri.pankov@nexenta.com> Discussed with: avg MFC after: 2 weeks Notes: svn path=/head/; revision=324864
* Fix a memory leak in an error case in libctf.Mark Johnston2017-02-231-0/+1
| | | | | | | | Submitted by: Tom Rix <trix@juniper.net> MFC after: 1 week Notes: svn path=/head/; revision=314153
* Mechanically convert cddl sun #ifdef's to illumosSteven Hartland2015-01-171-5/+5
| | | | | | | | | | | | | | | Since the upstream for cddl code is now illumos not sun, mechanically convert all sun #ifdef's to illumos #ifdef's which have been used in all newer code for some time. Also do a manual pass to correct the use if #ifdef comments as per style(9) as well as few uses of #if defined(__FreeBSD__) vs #ifndef illumos. MFC after: 1 month Sponsored by: Multiplay Notes: svn path=/head/; revision=277300
* MFV r272851:Mark Johnston2014-12-081-0/+1140
| | | | | | | | | 5202 want ctf(4) illumos/illumos-gate@fe2e029eea29fd49d0d9058dbd5b79a252667e6b Notes: svn path=/head/; revision=275592
* Fix some incorrect endianness checks.Mark Johnston2014-09-171-1/+1
| | | | | | | | MFC after: 1 week Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=271695
* MFV r254746:Xin LI2013-08-231-15/+42
| | | | | | | | | | | | | To quote original Illumos ticket: libctf thinks that any ELF file containing more than 65536 sections is corrupt, because it doesn't understand the SHN_XINDEX magic. Illumos DTrace issues: 4005 libctf can't deal with extended sections Notes: svn path=/head/; revision=254752
* Make this compile cleanly.John Birrell2008-04-261-3/+2
| | | | Notes: svn path=/head/; revision=178554
* Solaris has code which makes zlib optional, so they have to jump throughJohn Birrell2008-04-261-7/+28
| | | | | | | | some hoops to get the compression functions. On FreeBSD have libz and can just link against it. Notes: svn path=/head/; revision=178548
* This commit was generated by cvs2svn to compensate for changes in r178528,John Birrell2008-04-262-30/+10
| | | | | | | which included commits to RCS files with non-trunk default branches. Notes: svn path=/head/; revision=178529
* This commit was generated by cvs2svn to compensate for changes in r178479,John Birrell2008-04-253-0/+643
which included commits to RCS files with non-trunk default branches. Notes: svn path=/head/; revision=178480