Module Name: src Committed By: ozaki-r Date: Sat Mar 8 11:46:01 UTC 2014
Modified Files: src/external/cddl/osnet/dev/dtrace/arm: dtrace_isa.c Log Message: Prepare dtrace_isa.c for build - Tidy up header file inclusions - Replace curcpu with cpu_number() - Fix argument of dtrace_getreg - Tweak for gcc 4.8 Note that the file is still not buildable. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/external/cddl/osnet/dev/dtrace/arm/dtrace_isa.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/cddl/osnet/dev/dtrace/arm/dtrace_isa.c diff -u src/external/cddl/osnet/dev/dtrace/arm/dtrace_isa.c:1.2 src/external/cddl/osnet/dev/dtrace/arm/dtrace_isa.c:1.3 --- src/external/cddl/osnet/dev/dtrace/arm/dtrace_isa.c:1.2 Wed Mar 5 02:00:24 2014 +++ src/external/cddl/osnet/dev/dtrace/arm/dtrace_isa.c Sat Mar 8 11:46:01 2014 @@ -30,24 +30,14 @@ #include <sys/param.h> #include <sys/systm.h> #include <sys/kernel.h> -#include <sys/stack.h> -#include <sys/pcpu.h> #include <machine/frame.h> -#include <machine/md_var.h> #include <machine/reg.h> -#include <vm/vm.h> -#include <vm/vm_param.h> -#include <vm/pmap.h> - #include <machine/db_machdep.h> -#include <machine/md_var.h> #include <machine/vmparam.h> -#include <machine/stack.h> #include <ddb/db_sym.h> #include <ddb/ddb.h> -#include <sys/kdb.h> #include "regset.h" @@ -69,9 +59,11 @@ dtrace_getpcstack(pc_t *pcstack, int pcs uint32_t *intrpc) { uint32_t *frame, *lastframe; +#if 0 int scp_offset; +#endif int depth = 0; - pc_t caller = (pc_t) solaris_cpu[curcpu].cpu_dtrace_caller; + pc_t caller = (pc_t) solaris_cpu[cpu_number()].cpu_dtrace_caller; if (intrpc != 0) pcstack[depth++] = (pc_t) intrpc; @@ -80,7 +72,9 @@ dtrace_getpcstack(pc_t *pcstack, int pcs frame = (uint32_t *)__builtin_frame_address(0);; lastframe = NULL; +#if 0 scp_offset = -(get_pc_str_offset() >> 2); +#endif while ((frame != NULL) && (depth < pcstack_limit)) { db_addr_t scp; @@ -178,27 +172,18 @@ int dtrace_getstackdepth(int aframes) { uint32_t *frame, *lastframe; - int scp_offset; int depth = 1; frame = (uint32_t *)__builtin_frame_address(0);; lastframe = NULL; - scp_offset = -(get_pc_str_offset() >> 2); while (frame != NULL) { - db_addr_t scp; #if 0 uint32_t savecode; int r; uint32_t *rp; #endif - /* - * In theory, the SCP isn't guaranteed to be in the function - * that generated the stack frame. We hope for the best. - */ - scp = frame[FR_SCP]; - depth++; /* @@ -229,7 +214,7 @@ dtrace_getstackdepth(int aframes) } ulong_t -dtrace_getreg(struct trapframe *rp, uint_t reg) +dtrace_getreg(struct regs *regs, uint_t reg) { return (0); @@ -241,7 +226,7 @@ dtrace_copycheck(uintptr_t uaddr, uintpt if (uaddr + size > VM_MAXUSER_ADDRESS || uaddr + size < uaddr) { DTRACE_CPUFLAG_SET(CPU_DTRACE_BADADDR); - cpu_core[curcpu].cpuc_dtrace_illval = uaddr; + cpu_core[cpu_number()].cpuc_dtrace_illval = uaddr; return (0); } @@ -285,7 +270,7 @@ dtrace_fuword8(void *uaddr) { if ((uintptr_t)uaddr > VM_MAXUSER_ADDRESS) { DTRACE_CPUFLAG_SET(CPU_DTRACE_BADADDR); - cpu_core[curcpu].cpuc_dtrace_illval = (uintptr_t)uaddr; + cpu_core[cpu_number()].cpuc_dtrace_illval = (uintptr_t)uaddr; return (0); } return (dtrace_fuword8_nocheck(uaddr)); @@ -296,7 +281,7 @@ dtrace_fuword16(void *uaddr) { if ((uintptr_t)uaddr > VM_MAXUSER_ADDRESS) { DTRACE_CPUFLAG_SET(CPU_DTRACE_BADADDR); - cpu_core[curcpu].cpuc_dtrace_illval = (uintptr_t)uaddr; + cpu_core[cpu_number()].cpuc_dtrace_illval = (uintptr_t)uaddr; return (0); } return (dtrace_fuword16_nocheck(uaddr)); @@ -307,7 +292,7 @@ dtrace_fuword32(void *uaddr) { if ((uintptr_t)uaddr > VM_MAXUSER_ADDRESS) { DTRACE_CPUFLAG_SET(CPU_DTRACE_BADADDR); - cpu_core[curcpu].cpuc_dtrace_illval = (uintptr_t)uaddr; + cpu_core[cpu_number()].cpuc_dtrace_illval = (uintptr_t)uaddr; return (0); } return (dtrace_fuword32_nocheck(uaddr)); @@ -318,7 +303,7 @@ dtrace_fuword64(void *uaddr) { if ((uintptr_t)uaddr > VM_MAXUSER_ADDRESS) { DTRACE_CPUFLAG_SET(CPU_DTRACE_BADADDR); - cpu_core[curcpu].cpuc_dtrace_illval = (uintptr_t)uaddr; + cpu_core[cpu_number()].cpuc_dtrace_illval = (uintptr_t)uaddr; return (0); } return (dtrace_fuword64_nocheck(uaddr));