freebsd-nq/sys
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
..
amd64 MFP4 (110939): 2006-12-03 21:06:07 +00:00
arm Do not forget to call pmap_free_l2_bucket() in pmap_remove_pages(). 2006-12-04 12:55:00 +00:00
boot Note that not all architectures use sendfile(2) buffers; 2006-11-29 05:53:25 +00:00
bsm Merge OpenBSM 1.0 alpha 12 import changes into src/sys/bsm. New events 2006-09-25 12:22:07 +00:00
cam Initial cut at Basic Domain Validation- just add some states to 2006-12-04 23:04:13 +00:00
coda change vop_lock handling to allowing tracking of callers' file and line for 2006-11-13 05:51:22 +00:00
compat MFP4: 109653 2006-12-04 22:46:09 +00:00
conf fls was missing 2006-11-30 06:17:54 +00:00
contrib Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
crypto Initialize T1 to silent gcc warning. 2006-10-22 02:19:33 +00:00
ddb Fix the output format of MI ddb watches in 'show watch' on 64-bit 2006-11-17 16:41:56 +00:00
dev - Add BGE_FLAG_JUMBO flag which idicates jumbo frame capability. Some day we 2006-12-04 22:12:21 +00:00
fs o Do not leave uninitialized birthtime: in MSDOSFSMNT_LONGNAME 2006-12-03 19:04:26 +00:00
gdb
geom Softc may be NULL in g_journal_orphan(), so don't be surprised. 2006-12-02 09:10:29 +00:00
gnu Previously, the mount_ext2fs binary listed the acceptable mount 2006-11-18 18:22:11 +00:00
i4b Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
i386 Optimized RTC accesses by avoiding null writes to the index register 2006-12-03 03:49:28 +00:00
ia64 Since printf also has at least one critical section, we need to 2006-11-18 23:15:25 +00:00
isa Optimized RTC accesses by avoiding null writes to the index register 2006-12-03 03:49:28 +00:00
isofs/cd9660 Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
kern Bug fix for obscenely large wait times on uncontested locks 2006-12-04 22:15:50 +00:00
libkern
modules Add the linux module to the amd64 build, all symbols can now be resolved. 2006-12-02 13:58:13 +00:00
net Add two new flags to if_bridge(4) indicating whether the edge flag 2006-12-04 14:45:02 +00:00
net80211 Fix packing on the country band descriptor. No real change since this 2006-12-01 18:40:51 +00:00
netatalk Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
netatm Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
netgraph Remove m_megapullup from ng_nat and put it under libalias. 2006-12-01 16:27:11 +00:00
netinet Improve style(9) conformance of igmp.c. 2006-12-04 00:41:48 +00:00
netinet6 - In nd6_rtrequest(), when caching an rtentry, don't forget 2006-11-25 20:38:56 +00:00
netipsec Add priv.h include required to build FAST_IPSEC, which is not present in 2006-11-07 08:58:06 +00:00
netipx Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
netkey
netnatm
netncp Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
netsmb Sweep kernel replacing suser(9) calls with priv(9) calls, assigning 2006-11-06 13:42:10 +00:00
nfs NFSv4 client: 2006-11-28 19:33:28 +00:00
nfs4client NFSv4 client: 2006-11-28 19:33:28 +00:00
nfsclient In nfs_nget(), we must initialize the fh in the nfsnode before inserting the 2006-11-29 02:21:40 +00:00
nfsserver Push Giant a bit further off the NFS server in a number of straight 2006-11-24 11:53:16 +00:00
opencrypto
pc98 MFi386: revisions from 1.641 to 1.643. 2006-11-20 12:32:04 +00:00
pccard
pci if_watchdog -> rl_watchdog 2006-12-01 21:52:07 +00:00
powerpc Fix gdb issue where the i-cache was not being updated when a breakpoint 2006-12-05 04:01:52 +00:00
rpc
security Merge posix4/* into normal kernel hierarchy. 2006-11-11 16:26:58 +00:00
sparc64 Turn console printf buffering into a kernel option and only on 2006-11-30 04:17:05 +00:00
sun4v - separate out rounding memory ranges to 4M boundaries from OFW memory allocation bug workaround 2006-12-04 19:35:40 +00:00
sys if a thread blocked on userland condition variable is 2006-12-04 14:15:12 +00:00
tools
ufs change vop_lock handling to allowing tracking of callers' file and line for 2006-11-13 05:51:22 +00:00
vm The clean_map has been made local to vm_init.c long ago. 2006-11-20 16:23:34 +00:00
Makefile o Add cam to a list of cscope dirs. 2006-11-26 18:27:16 +00:00