- User Since
- Sep 8 2016, 3:21 PM (165 w, 5 d)
Aug 27 2018
Why "additional"? The problem exists regardless since fbt_invop() returns after the first matching tracepoint. The problem was invisible before ifuncs since before that all tracepoints had distinct addresses. This patch just hides the problem in the common case.
I'm a little worried that this may cause additional confusion if someone expects multiple probes to fire at that point. I wonder if a better workaround would be to just add a warning message whenever DTrace is called, or perhaps when someone calls dtrace -l, in the man page or something along the lines until we fix? Is there a reason we can't fix this in 13 and MFC the changes?
May 8 2018
Preemptively remove a redundant check for INKERNEL(fp).
Apr 30 2018
Had a quick skim, but LGTM.
Apr 21 2018
Apr 12 2018
Is this good to land? Thanks!
Apr 6 2018
Address the other comments by @markj and fix a misleading word in the dtrace_probe_exit() comment.
Address comments by @markj.
Apr 4 2018
Apr 3 2018
Is there anything else I can do for this to land?
Mar 28 2018
Should I make any more changes for this to land? As an aside note: I've tried to make the interface as simple as possible to use with the args[0-2] being consistent.
Mar 27 2018
Update the diff based on comments from @markj.
Mar 26 2018
Mar 11 2018
Jan 12 2018
Address the comments by markj@ and add tests in safety/ for jailname and jid.
Update the diff to add more context. No actual code was changed.
Jan 11 2018
Jun 18 2017
Update the diff to reflect changes in HEAD with bhyve identification. This diff no longer requires it.
Jun 10 2017
Mar 3 2017
Update the diff to address the compilation errors due to the way clang 4.0 handles -Wstrict-prototypes.
Feb 2 2017
Dec 19 2016
This diff changes the following:
- Remove DTrace stuff as much as possible, create a prototype instead
- Remove the unnecessary static NULL assignments in the hc_dispatcher
- Reiterate the instructions on some parts of the code
Dec 3 2016
Point out an issue regarding mi_startup.
Address some style(9) issues, fix a comment.
Nov 27 2016
License bhyve_hypercall.S under the FreeBSD preferred license.
Remove the unused include in bhyve_hypercall.h
Address the points discussed at MeetBSD.
Oct 13 2016
Addresses a late noticed typo in the macro HC_CPUID_ID which in fact should be HV_CPUID_ID.
This patch addresses a couple of issues:
- Allow global enabling and disabling of hypercalls. The hypercall exists are by default disabled
- Add the necessary dispatchers and handlers for a hypervisor emulation layer
- Clean up the bhyve_hypercall.h using macros and revert to the calling convention that uses the stack
- Add a tunable which allows setting of the hypervisor mode
- Unimplemented hypercalls now cause an #UD fault
- CPUID_4000_0001 gives information in EAX whether hypercalls are enabled or not
Oct 3 2016
This patch should address some of the concerns brought on by Peter.
Oct 1 2016
Sep 30 2016
Thanks for the review Peter. I'll address these issues as soon as possible.
Added some explanations.