freebsd-dev/sys
Marius Strobl 2611aba180 USIII and beyond CPUs have stricter requirements when it comes
to synchronization needed after stores to internal ASIs in order
to make side-effects visible. This mainly requires the MEMBAR #Sync
after such stores to be replaced with a FLUSH. We use KERNBASE as
the address to FLUSH as it is guaranteed to not trap. Actually,
the USII synchronization rules also already require a FLUSH in
pretty much all of the cases changed.
We're also hitting an additional USIII synchronization rule which
requires stores to AA_IMMU_SFSR to be immediately followed by a DONE,
FLUSH or RETRY. Doing so triggers a RED state exception though so
leave the MEMBAR #Sync. Linux apparently also has gotten away with
doing the same for quite some time now, apart from the fact that
it's not clear to me why we need to clear the valid bit from the
SFSR in the first place.

Reviewed by:	nwhitehorn
2008-09-08 20:38:48 +00:00
..
amd64 The pcb_gs32p should be per-cpu, not per-thread pointer. This is 2008-09-08 09:59:05 +00:00
arm Commit the no-brainer parts of my space saving kernel experiments. We 2008-09-08 00:41:32 +00:00
boot USIII and beyond CPUs have stricter requirements when it comes 2008-09-08 20:38:48 +00:00
bsm When MPSAFE ttys were merged, a new BSM audit event identifier was 2008-08-24 21:20:35 +00:00
cam Fix a locking mistake in daopen(). If the open fails, which can happen 2008-08-29 04:39:46 +00:00
cddl Initialize vp, so we don't call VOP_UNLOCK() with NULL vnode pointer. 2008-09-07 07:55:12 +00:00
compat Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
conf ds133x: Introduce device_identify method; update NOTES. 2008-09-08 10:40:48 +00:00
contrib Merge ath again (addition of wisoc files). 2008-09-05 22:24:31 +00:00
crypto Simplify session selection/allocation. 2008-08-09 20:01:01 +00:00
ddb Add a missing include which was erroneusly left out from the previous 2008-08-18 16:51:44 +00:00
dev o Move the MODULE_DEPEND() for cam(4) from the esp_sbus.c front-end to 2008-09-08 20:20:44 +00:00
fs Reflect license change of NetBSD code. 2008-09-03 18:53:48 +00:00
gdb Commit SYSINIT() ;-adding patch missed in previous pass. 2008-03-16 13:02:04 +00:00
geom - Add a new ioctl for getting the provider name of a geom provider. 2008-09-07 13:54:57 +00:00
gnu Decontextualize vfs_busy(), vfs_unbusy() and vfs_mount_alloc() functions. 2008-08-31 14:26:08 +00:00
i386 Segment registers are stored in the uc_mcontext member of the struct 2008-09-07 16:39:21 +00:00
ia64 Integrate the new MPSAFE TTY layer to the FreeBSD operating system. 2008-08-20 08:31:58 +00:00
isa MFp4 (my newcard tree): 2008-08-24 07:40:14 +00:00
kern Close a race in sleepq_broadcast() where the sleepq could be reused after 2008-09-08 19:44:57 +00:00
libkern Add strcspn to libkern for use by xenbus routines. Will add to build 2008-08-15 04:07:22 +00:00
mips style(9) 2008-09-04 17:10:52 +00:00
modules Per email to arch@ a little while ago (that was greeted with silence), 2008-09-01 23:59:00 +00:00
net Put the bridge mac inheritance behind a sysctl with the default off as this 2008-09-08 03:28:26 +00:00
net80211 make all checks if ni_chw consistent 2008-09-06 17:51:02 +00:00
netatalk Remove NETISR_MPSAFE, which allows specific netisr handlers to be directly 2008-07-04 00:21:38 +00:00
netgraph Add Marko's pipe node. 2008-09-03 18:17:45 +00:00
netinet To my reading there are no real consumers of ip6_plen (IPv6 2008-09-07 20:44:45 +00:00
netinet6 - Fix amd64 local privilege escalation. [08:07] 2008-09-03 19:09:47 +00:00
netipsec Commit step 1 of the vimage project, (network stack) 2008-08-17 23:27:27 +00:00
netipx Begin the sysctl descriptions with a capital letter. 2008-07-25 23:54:07 +00:00
netnatm Remove NETISR_MPSAFE, which allows specific netisr handlers to be directly 2008-07-04 00:21:38 +00:00
netncp lockmgrs need to be released before to be destroyed and draining doesn't 2008-03-30 18:16:33 +00:00
netsmb Really, smb_iod_main() is not totally MPSAFE, so just acquire and drop 2008-03-27 01:23:59 +00:00
nfs Replaced the misleading uses of a historical artefact M_TRYWAIT with M_WAIT. 2008-03-25 09:39:02 +00:00
nfs4client Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
nfsclient Decontextualize vfs_busy(), vfs_unbusy() and vfs_mount_alloc() functions. 2008-08-31 14:26:08 +00:00
nfsserver Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
nlm Rename RPC's 'struct pmap' to 'struct portmap' to avoid confusing it with 2008-08-25 09:36:17 +00:00
opencrypto
pc98 - Add the i386_memio_map_load() function to load I/O address table. 2008-09-07 04:44:24 +00:00
pccard
pci Move wb driver from sys/pci to sys/dev/wb. 2008-08-14 21:26:29 +00:00
powerpc Trace interrupts with KTR_INTR. 2008-08-31 23:54:22 +00:00
rpc Rename RPC's 'struct pmap' to 'struct portmap' to avoid confusing it with 2008-08-25 09:36:17 +00:00
security Unbreak the build. 2008-09-04 13:06:36 +00:00
sparc64 USIII and beyond CPUs have stricter requirements when it comes 2008-09-08 20:38:48 +00:00
sun4v MFsparc64: r177642 2008-09-02 21:35:57 +00:00
sys Bump __FreeBSD_version for per-CPU GDT on amd64. 2008-09-08 10:27:11 +00:00
tools Introduce a standalone shell script for embedding MFS image. 2008-02-05 10:46:30 +00:00
ufs When calling extattr_check_cred, use V{READ,WRITE}, not I{READ,WRITE}. 2008-09-03 12:46:09 +00:00
vm Decontextualize the couplet VOP_GETATTR / VOP_SETATTR as the passed thread 2008-08-28 15:23:18 +00:00
xdr Add the new kernel-mode NFS Lock Manager. To use it instead of the 2008-03-26 15:23:12 +00:00
xen - add more debug cruft to xenbus 2008-08-20 09:20:12 +00:00
Makefile Improve the glimpse target: don't index .svn and compile directories. 2008-08-15 14:11:30 +00:00