freebsd-src/sys/powerpc/include
Peter Grehan 6e4f008cbb Fix gdb issue where the i-cache was not being updated when a breakpoint
was written into a user's address space. The fix is to modify uiomove_fromphys
to sync the icache when an executable user-space page is written into.

Alan Cox suggested that there should probably be a higher-level interface
to this in the ptrace code, but agreed that this is an OK short-term solution.

Files changed:

pmap.h - declaration of pmap_page_executable()
pmap_dispatch.c - pass through the page_executable call to the mmu object
mmu_oea.c - implement the page_executable method by examining the PTE_EXEC
 field in the vm_page_t
uio_machdep.c - in uiomove_fromphys(), if the op was a UIO_WRITE to user-space,
 and if the page is executable, sync the icache since this is at the least
 a breakpoint-write from gdb.

Reported by:	marcel
Tested by:	marcel, grehan on g3+g4
Discussed with:	alc
MFC after:	2 weeks
2006-12-05 04:01:52 +00:00
..
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h
asm.h
atomic.h
bat.h
bootinfo.h
bus.h Add a dummy implementation of bus_space_map(). 2006-03-31 01:39:50 +00:00
bus_dma.h
clock.h First part of a little cleanup in the calendar/timezone/RTC handling. 2006-10-02 12:59:59 +00:00
cpu.h Clean out sysctl machdep.* related defines. 2006-05-11 17:29:25 +00:00
cpufunc.h
db_machdep.h
elf.h PR: 2006-10-04 21:37:10 +00:00
endian.h
exec.h
float.h
floatingpoint.h
fpu.h
frame.h Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
gdb_machdep.h Add skeletal support for GDB. In particular gdb_cpu_getreg() needs 2006-08-24 21:52:11 +00:00
hid.h
ieee.h
ieeefp.h
in_cksum.h
interruptvar.h
intr.h
intr_machdep.h Reorganize the interrupt handling code a bit to make a few things cleaner 2005-10-25 19:48:48 +00:00
ipl.h
kdb.h
limits.h
md_var.h o Move the prototype of mem_valid() from ofw_machdep.h to md_var.h. 2006-07-26 17:12:54 +00:00
memdev.h
metadata.h
mmuvar.h Insert a layer of indirection to the pmap code, using a kobj for 2005-11-08 06:48:08 +00:00
mutex.h
nexusvar.h
ofw_machdep.h o Move the prototype of mem_valid() from ofw_machdep.h to md_var.h. 2006-07-26 17:12:54 +00:00
openpicreg.h
openpicvar.h
param.h Drop _MACHINE_ARCH and _MACHINE defines (not to be confused with 2005-12-06 13:27:21 +00:00
pcb.h Forward declare struct trapframe. 2006-07-26 17:05:11 +00:00
pcpu.h
pio.h
pmap.h Fix gdb issue where the i-cache was not being updated when a breakpoint 2006-12-05 04:01:52 +00:00
pmc_mdep.h
powerpc.h
proc.h
profile.h Add user-space profiling support. Kernel profiling still todo. 2005-12-29 04:07:36 +00:00
psl.h
pte.h Add definitions for 64-bit PTEs 2005-11-11 12:03:28 +00:00
ptrace.h
reg.h
reloc.h
resource.h
runq.h
sc_machdep.h
setjmp.h
sf_buf.h
sigframe.h
signal.h
smp.h
spr.h
sr.h
stdarg.h Use __builtin_va_start instead of __builtin_stdarg_start. GCC4 obsoletes 2006-09-21 01:37:02 +00:00
trap.h
ucontext.h
varargs.h
vmparam.h Eliminate unused definitions. (They came from NetBSD.) 2006-08-25 23:51:11 +00:00