summaryrefslogtreecommitdiffstats
path: root/sys/nfs
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2009-07-12 03:53:52 +0000
committermarcel <marcel@FreeBSD.org>2009-07-12 03:53:52 +0000
commitadf36bcfeec610af843f3052d2f841608a9e9093 (patch)
tree5744a17f2e68f9b39b81e9ee5affd4e4375841bf /sys/nfs
parent0c0e79f64e206dc5024b6bd64f8fb62ca80668fd (diff)
downloadFreeBSD-src-adf36bcfeec610af843f3052d2f841608a9e9093.zip
FreeBSD-src-adf36bcfeec610af843f3052d2f841608a9e9093.tar.gz
Revert rev 192323 (nfs_common.c only):
The D-cache flushing added here was to deal with I-cache incoherency observed on ia64. However, the problem was in the implementation of pmap_enter_object() for ia64: it was missing I-cache coherency logic for prefaulted pages. After this got added in rev 195625, testing showed that no D-cache flushing was required. The SIGILL that was observed on Book-E (see commit log for rev 192323) ended up not being related to I-cache incoherency, but was found to be caused by bad memory. This discovery further undermined the need for D-cache flushing in the NFS I/O code, triggering the reversal. Approved by: re (kensmith)
Diffstat (limited to 'sys/nfs')
-rw-r--r--sys/nfs/nfs_common.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/nfs/nfs_common.c b/sys/nfs/nfs_common.c
index 0869309..b2c231f 100644
--- a/sys/nfs/nfs_common.c
+++ b/sys/nfs/nfs_common.c
@@ -126,10 +126,9 @@ nfsm_mbuftouio(struct mbuf **mrep, struct uio *uiop, int siz, caddr_t *dpos)
(mbufcp, uiocp, xfer);
else
#endif
- if (uiop->uio_segflg == UIO_SYSSPACE) {
+ if (uiop->uio_segflg == UIO_SYSSPACE)
bcopy(mbufcp, uiocp, xfer);
- cpu_flush_dcache(uiocp, xfer);
- } else
+ else
copyout(mbufcp, uiocp, xfer);
left -= xfer;
len -= xfer;
OpenPOWER on IntegriCloud