Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/fs/udf Since UDF volumes are always mounted async, the s...



details:   https://anonhg.NetBSD.org/src/rev/fdb35999c5f9
branches:  trunk
changeset: 787633:fdb35999c5f9
user:      reinoud <reinoud%NetBSD.org@localhost>
date:      Thu Jun 27 09:38:08 2013 +0000

description:
Since UDF volumes are always mounted async, the simple UBC purging with
VOP_PUTPAGES() was never triggered resulting in far too much data in the UBC
that needed to be written out. This could result in instability on small
memory machines.

diffstat:

 sys/fs/udf/udf_vnops.c |  7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diffs (35 lines):

diff -r 2d91275420fa -r fdb35999c5f9 sys/fs/udf/udf_vnops.c
--- a/sys/fs/udf/udf_vnops.c    Thu Jun 27 03:37:21 2013 +0000
+++ b/sys/fs/udf/udf_vnops.c    Thu Jun 27 09:38:08 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: udf_vnops.c,v 1.75 2013/03/18 19:35:41 plunky Exp $ */
+/* $NetBSD: udf_vnops.c,v 1.76 2013/06/27 09:38:08 reinoud Exp $ */
 
 /*
  * Copyright (c) 2006, 2008 Reinoud Zandijk
@@ -32,7 +32,7 @@
 
 #include <sys/cdefs.h>
 #ifndef lint
-__KERNEL_RCSID(0, "$NetBSD: udf_vnops.c,v 1.75 2013/03/18 19:35:41 plunky Exp $");
+__KERNEL_RCSID(0, "$NetBSD: udf_vnops.c,v 1.76 2013/06/27 09:38:08 reinoud Exp $");
 #endif /* not lint */
 
 
@@ -276,7 +276,6 @@
        struct extfile_entry *efe;
        uint64_t file_size, old_size, old_offset;
        vsize_t len;
-       int async = vp->v_mount->mnt_flag & MNT_ASYNC;
        int aflag = ioflag & IO_SYNC ? B_SYNC : 0;
        int error;
        int resid, extended;
@@ -364,7 +363,7 @@
                 * Directories are excluded since its file data that we want
                 * to purge.
                 */
-               if (!async && (vp->v_type != VDIR) &&
+               if ((vp->v_type != VDIR) &&
                  (old_offset >> 16 != uio->uio_offset >> 16)) {
                        mutex_enter(vp->v_interlock);
                        error = VOP_PUTPAGES(vp, (old_offset >> 16) << 16,



Home | Main Index | Thread Index | Old Index