freebsd-nq/sys/mips/include
John Baldwin f07562ebb4 Fix PT_STEP single-stepping for mips.
Note that GDB at least implements single stepping for MIPS using software
breakpoints explicitly rather than using PT_STEP, so this has only been
tested via tests in ptrace_test which now pass rather than fail.

- Fix several places to use uintptr_t instead of int for virtual addresses.
- Check for errors from ptrace_read_int() when setting a breakpoint for a
  step.
- Properly check for errors from ptrace_write_int() as it returns non-zero,
  not negative values on failure.
- Change the error returns for ptrace_read_int() and ptrace_write_int() from
  ENOMEM to EFAULT.
- Clear a single step breakpoint when it traps rather than waiting for it
  to be cleared from ptrace().  This matches the behavior of the arm port
  and in general seems a bit more reliable than waiting for ptrace() to
  clear it via FIX_SSTEP.
- Drop the PROC_LOCK around ptrace_write_int() in ptrace_clear_single_step()
  since it can sleep.
- Reorder the breakpoint handler in trap() to only read the instruction if
  the address matches the current thread's breakpoint address.
- Replace various #if 0'd debugging printfs with KTR_PTRACE traces.

Tested on:	mips64
2018-04-24 17:53:16 +00:00
..
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
abi.h
asm.h
atomic.h
bootinfo.h
bus_dma.h
bus.h
cache_mipsNN.h
cache_r4k.h
cache.h
cdefs.h
clock.h
counter.h
cpu.h
cpufunc.h Expose breakpoint() to userland from <machine/cpufunc.h> on MIPS. 2018-04-24 05:26:28 +00:00
cpuinfo.h
cpuregs.h
db_machdep.h No need to force md code to define a macro that's the same as 2018-04-16 13:52:23 +00:00
dump.h
efi.h
elf.h Move remaining EF_MIPS_* flags to <sys/elf_common.h>. 2018-03-23 19:31:52 +00:00
endian.h
exec.h
fdt.h
float.h
floatingpoint.h
fls64.h
fpu.h
frame.h
gdb_machdep.h amd64: Protect the kernel text, data, and BSS by setting the RW/NX bits 2018-03-06 14:28:37 +00:00
hwfunc.h Add SMP support for BERI CPU. 2018-04-12 17:43:19 +00:00
ieee.h
ieeefp.h
in_cksum.h
intr_machdep.h
intr.h
kdb.h
limits.h
locore.h
md_var.h
memdev.h
metadata.h
minidump.h
mips_opcode.h
octeon_cop2.h
ofw_machdep.h
param.h MIPS: Implement fue*word* and casueword* in assembly. 2018-03-12 22:10:06 +00:00
pcb.h
pcpu.h
pmap.h
pmc_mdep.h
proc.h Fix PT_STEP single-stepping for mips. 2018-04-24 17:53:16 +00:00
profile.h
pte.h
ptrace.h
reg.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
regdef.h
regnum.h
reloc.h
resource.h
runq.h
sc_machdep.h
setjmp.h
sf_buf.h
sigframe.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
signal.h
smp.h
stdarg.h Use standard pattern for stdargs.h 2018-02-12 14:48:05 +00:00
sysarch.h
tlb.h
tls.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
trap.h
ucontext.h Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
vdso.h
vm.h
vmparam.h