MFC r257679: Use suword32 and suword64 instead of copyout(9) in fasttrap

This commit is contained in:
avg 2014-02-17 13:08:20 +00:00
parent 0c979fc23f
commit 3321f13499
2 changed files with 8 additions and 8 deletions

View File

@ -158,15 +158,15 @@ typedef struct fasttrap_hash {
*/
#define fasttrap_copyout copyout
#define fasttrap_fuword32 fuword32
#define fasttrap_suword32(_k, _u) copyout((_k), (_u), sizeof(uint32_t))
#define fasttrap_suword64(_k, _u) copyout((_k), (_u), sizeof(uint64_t))
#define fasttrap_suword32 suword32
#define fasttrap_suword64 suword64
#ifdef __amd64__
#define fasttrap_fulword fuword64
#define fasttrap_sulword fasttrap_suword64
#define fasttrap_sulword suword64
#else
#define fasttrap_fulword fuword32
#define fasttrap_sulword fasttrap_suword32
#define fasttrap_sulword suword32
#endif
extern void fasttrap_sigtrap(proc_t *, kthread_t *, uintptr_t);

View File

@ -1386,12 +1386,12 @@ fasttrap_pid_probe(struct reg *rp)
#ifdef __amd64
if (p->p_model == DATAMODEL_NATIVE) {
rp->r_rsp -= sizeof (uintptr_t);
ret = fasttrap_sulword(&rp->r_rbp, (void *)rp->r_rsp);
ret = fasttrap_sulword((void *)rp->r_rsp, rp->r_rbp);
} else {
#endif
#ifdef __i386__
rp->r_rsp -= sizeof (uint32_t);
ret = fasttrap_suword32(&rp->r_rbp, (void *)rp->r_rsp);
ret = fasttrap_suword32((void *)rp->r_rsp, rp->r_rbp);
#endif
#ifdef __amd64
}
@ -1486,13 +1486,13 @@ fasttrap_pid_probe(struct reg *rp)
if (p->p_model == DATAMODEL_NATIVE) {
addr = rp->r_rsp - sizeof (uintptr_t);
pcps = pc + tp->ftt_size;
ret = fasttrap_sulword((void *)addr, &pcps);
ret = fasttrap_sulword((void *)addr, pcps);
} else {
#endif
#ifdef __i386__
addr = rp->r_rsp - sizeof (uint32_t);
pcps = (uint32_t)(pc + tp->ftt_size);
ret = fasttrap_suword32((void *)addr, &pcps);
ret = fasttrap_suword32((void *)addr, pcps);
#endif
#ifdef __amd64
}