#
4196f227 |
| 31-Dec-2024 |
Mark Johnston <markj@FreeBSD.org> |
libdtrace: Be less strict when comparing pointer types
If one of two pointers refers to a forward declaration, let the pointers be compatible so long as the referred types have the same name. Otherw
libdtrace: Be less strict when comparing pointer types
If one of two pointers refers to a forward declaration, let the pointers be compatible so long as the referred types have the same name. Otherwise we can get spurious errors.
To give a specific example, this can happen when ipfw_nat.ko is loaded before ipfw.ko and /usr/lib/dtrace/ipfw.d is processed. Currently, ipfw_nat.ko does not have a definition for struct inpcb (i.e., none of its files include in_pcb.h), so in the CTF type graph, struct ip_fw_args' "inp" member refers to a forward declaration, represented in CTF with CTF_K_FORWARD.
Then, when libdtrace processes the ipfw_match_info_t translator in ipfw.d, it decides that the "inp" field assignment is incorrect because the two pointers are incompatible. However, there's no harm in allowing this assignment. Add some logic to dt_node_is_ptrcompat() to detect this case and declare the pointers as compatible so long as the name of the thing they refer to is the same, similar to how any pointer is compatible with a void *.
Reported by: marck Reviewed by: Domagoj Stolfa <domagoj.stolfa@gmail.com> MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D48254
show more ...
|
#
3afba490 |
| 20-Mar-2023 |
Christos Margiolis <christos@FreeBSD.org> |
libdtrace: fix indendation in dt_printd()
No functional change.
Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39145
|
#
1ad2da03 |
| 16-Mar-2018 |
Conrad Meyer <cem@FreeBSD.org> |
libdtrace: Eliminate a minor UB by fully initializing parameter struct
The dtt_flags value is dereferenced by dt_type_pointer() and must be initialized first.
Reported by: Coverity Sponsored by: De
libdtrace: Eliminate a minor UB by fully initializing parameter struct
The dtt_flags value is dereferenced by dt_type_pointer() and must be initialized first.
Reported by: Coverity Sponsored by: Dell EMC Isilon
show more ...
|
#
650f66ac |
| 16-Aug-2016 |
Mark Johnston <markj@FreeBSD.org> |
MFV r304057: 7085 add support for "if" and "else" statements in dtrace
illumos/illumos-gate@c3bd3abd8856e8e75d820f65c58031cd6cbac818
Add syntactic sugar to dtrace: "if" and "else" statements. The s
MFV r304057: 7085 add support for "if" and "else" statements in dtrace
illumos/illumos-gate@c3bd3abd8856e8e75d820f65c58031cd6cbac818
Add syntactic sugar to dtrace: "if" and "else" statements. The sugar is baked down to standard dtrace features by adding additional clauses with the appropriate predicates.
Reviewed by: Adam Leventhal <ahl@delphix.com> Reviewed by: Sebastien Roy <sebastien.roy@delphix.com> Reviewed by: Paul Dagnelie <pcd@delphix.com> Reviewed by: Bryan Cantrill <bryan@joyent.com> Approved by: Richard Lowe <richlowe@richlowe.net> Author: Matthew Ahrens <mahrens@delphix.com>
MFC after: 2 weeks Relnotes: yes
show more ...
|
#
bc96366c |
| 17-Jan-2015 |
Steven Hartland <smh@FreeBSD.org> |
Mechanically convert cddl sun #ifdef's to illumos
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
Mechanically convert cddl sun #ifdef's to illumos
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
show more ...
|
#
8e648814 |
| 26-Jun-2014 |
Rui Paulo <rpaulo@FreeBSD.org> |
MFV illumos
4474 DTrace Userland CTF Support 4475 DTrace userland Keyword 4476 DTrace tests should be better citizens 4479 pid provider types 4480 dof emulation is missing checks
MFC after: 2 weeks
|
#
a98ff317 |
| 28-Jul-2013 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
DTrace: re-merge remainder of r249367 (original from Illumos).
Bring back some important fixes from Illumos:
3022 DTrace: keys should not affect the sort order when sorting by value 3023 it should
DTrace: re-merge remainder of r249367 (original from Illumos).
Bring back some important fixes from Illumos:
3022 DTrace: keys should not affect the sort order when sorting by value 3023 it should be possible to dereference dynamic variables 3024 D integer narrowing needs some work
We particularly avoid the LD_NOLAZYLOAD changes that Illumos made as those don't apply to FreeBSD and were causing problems in interactive mode.
Illumos Revision: 13758:23432da34147
Reference:
https://www.illumos.org/issues/3022 https://www.illumos.org/issues/3023 https://www.illumos.org/issues/3024
MFC after: 1 month Tested by: markj
show more ...
|
#
03836978 |
| 17-Apr-2013 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
DTrace: Revert r249367
The following change from illumos brought caused DTrace to pause in an interactive environment:
3026 libdtrace should set LD_NOLAZYLOAD=1 to help the pid provider
This was n
DTrace: Revert r249367
The following change from illumos brought caused DTrace to pause in an interactive environment:
3026 libdtrace should set LD_NOLAZYLOAD=1 to help the pid provider
This was not detected during testing because it doesn't affect scripts.
We shouldn't be changing the environment, especially since the LD_NOLAZYLOAD option doesn't apply to our (GNU) ld. Unfortunately the change from upstream was made in such a way that it is very difficult to separate this change from the others so, at least for now, it's better to just revert everything.
Reference: https://www.illumos.org/issues/3026
Reported by: Navdeep Parhar and Mark Johnston
show more ...
|
#
ddd5b8e9 |
| 11-Apr-2013 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
DTrace: option for time-ordered output
Merge changes from illumos:
3021 option for time-ordered output from dtrace(1M) 3022 DTrace: keys should not affect the sort order when sorting by value 3023
DTrace: option for time-ordered output
Merge changes from illumos:
3021 option for time-ordered output from dtrace(1M) 3022 DTrace: keys should not affect the sort order when sorting by value 3023 it should be possible to dereference dynamic variables 3024 D integer narrowing needs some work 3025 register leak in D code generation 3026 libdtrace should set LD_NOLAZYLOAD=1 to help the pid provider
This brings yet another feature implemented in upstream DTrace. A complete description is available here: http://dtrace.org/blogs/ahl/2012/07/28/my-new-dtrace-favorite/
This change bumps the DT_VERS_* number to 1.9.1 in accordance to what is done in illumos.
This change was somewhat complicated because upstream is mixed many changes in an individual commit and some of the tests don't really apply to us.
There are also appear to be differences in timestamping with Solaris so we had to workaround some assertions making sure no regression happened.
Special thanks to Fabian Keil for changes and testing.
Illumos Revisions: 13758:23432da34147
Reference: https://www.illumos.org/issues/3021 https://www.illumos.org/issues/3022 https://www.illumos.org/issues/3023 https://www.illumos.org/issues/3024 https://www.illumos.org/issues/3025 https://www.illumos.org/issues/1694
Tested by: Fabian Keil Obtained from: Illumos MFC after: 1 months
show more ...
|
#
b99795d6 |
| 14-Jul-2012 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
Merge illumos commit 13455:7205f7794835
1458 D compiler fails to generate error on sizeof() an undefined struct
Reference: https://www.illumos.org/issues/1458
Tested by: Fabian Keil MFC after: 3 w
Merge illumos commit 13455:7205f7794835
1458 D compiler fails to generate error on sizeof() an undefined struct
Reference: https://www.illumos.org/issues/1458
Tested by: Fabian Keil MFC after: 3 weeks
show more ...
|
#
84098f48 |
| 26-Apr-2008 |
John Birrell <jb@FreeBSD.org> |
Leave out a header file.
|
#
20594ebf |
| 26-Apr-2008 |
John Birrell <jb@FreeBSD.org> |
This commit was generated by cvs2svn to compensate for changes in r178528, which included commits to RCS files with non-trunk default branches.
|
#
6ff6d951 |
| 25-Apr-2008 |
John Birrell <jb@FreeBSD.org> |
This commit was generated by cvs2svn to compensate for changes in r178479, which included commits to RCS files with non-trunk default branches.
|