aboutsummaryrefslogtreecommitdiff
path: root/sys/cddl/contrib/opensolaris/uts/powerpc
Commit message (Collapse)AuthorAgeFilesLines
* Correct initialization of pc on powerpc.Mark Johnston2017-12-121-1/+2
| | | | | | | | | | PR: 224293 Submitted by: Breno Leitao <breno.leitao@gmail.com> X-MFC with: r326774 Pointy hat: markj Notes: svn path=/head/; revision=326811
* Pass the trap frame to fasttrap hooks.Mark Johnston2017-12-111-6/+11
| | | | | | | | | | | | | The DTrace fasttrap entry points expect a struct reg containing the register values of the calling thread. Perform the conversion in fasttrap rather than in the trap handler: this reduces the number of ifdefs and avoids wasting stack space for traps that don't involve DTrace. MFC after: 2 weeks Notes: svn path=/head/; revision=326774
* Move implementations of uread() and uwrite() to the illumos compat layer.Mark Johnston2016-09-241-26/+0
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=306304
* Fix fasttrap tracepoint locking.Mark Johnston2016-03-081-4/+9
| | | | | | | | | | | | | | | | Upstream, tracepoints are protected by per-CPU mutexes. An unlinked tracepoint may be freed once all the tracepoint mutexes have been acquired and released - this is done in fasttrap_mod_barrier(). This mechanism was not properly ported: in some places, the proc lock is used in place of a tracepoint lock, and in others the locking is omitted entirely. This change implements tracepoint locking with an rmlock, where the read lock is used in fasttrap probe context. As a side effect, this fixes a recursion on the proc lock when the raise action is used from a userland probe. MFC after: 1 month Notes: svn path=/head/; revision=296479
* Add helper functions proc_readmem() and proc_writemem().Mark Johnston2015-12-071-27/+13
| | | | | | | | | | | | | | | | These helper functions can be used to read in or write a buffer from or to an arbitrary process' address space. Without them, this can only be done using proc_rwmem(), which requires the caller to fill out a uio. This is onerous and results in code duplication; the new functions provide a simpler interface which is sufficient for most existing callers of proc_rwmem(). This change also adds a manual page for proc_rwmem() and the new functions. Reviewed by: jhb, kib Differential Revision: https://reviews.freebsd.org/D4245 Notes: svn path=/head/; revision=291961
* Fix a couple bugs in 64-bit powerpc fasttrap argument retrieval.Justin Hibbits2015-05-101-3/+3
| | | | | | | Found by code inspection. Notes: svn path=/head/; revision=282703
* Correct the check for errors from proc_rwmem().Mark Johnston2013-12-111-1/+1
| | | | | | | MFC after: 2 weeks Notes: svn path=/head/; revision=259211
* Add fasttrap for PowerPC. This is the last piece of the dtrace/ppc puzzle.Justin Hibbits2013-10-152-9/+583
| | | | | | | | | | It's incomplete, it doesn't contain full instruction emulation, but it should be sufficient for most cases. MFC after: 1 month Notes: svn path=/head/; revision=256543
* Implement DTrace for PowerPC. This includes both 32-bit and 64-bit.Justin Hibbits2012-11-072-0/+79
There is one known issue: Some probes will display an error message along the lines of: "Invalid address (0)" I tested this with both a simple dtrace probe and dtruss on a few different binaries on 32-bit. I only compiled 64-bit, did not run it, but I don't expect problems without the modules loaded. Volunteers are welcome. MFC after: 1 month Notes: svn path=/head/; revision=242723