Source-Changes-HG archive

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

[src/trunk]: src/lib/librumpuser unschedule around blocking i/o



details:   https://anonhg.NetBSD.org/src/rev/f0143c8c7610
branches:  trunk
changeset: 786472:f0143c8c7610
user:      pooka <pooka%NetBSD.org@localhost>
date:      Mon Apr 29 13:53:46 2013 +0000

description:
unschedule around blocking i/o

diffstat:

 lib/librumpuser/rumpuser_bio.c |  7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diffs (26 lines):

diff -r 4dcd492b4aa5 -r f0143c8c7610 lib/librumpuser/rumpuser_bio.c
--- a/lib/librumpuser/rumpuser_bio.c    Mon Apr 29 13:39:47 2013 +0000
+++ b/lib/librumpuser/rumpuser_bio.c    Mon Apr 29 13:53:46 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: rumpuser_bio.c,v 1.1 2013/04/29 12:56:04 pooka Exp $   */
+/*     $NetBSD: rumpuser_bio.c,v 1.2 2013/04/29 13:53:46 pooka Exp $   */
 
 /*-
  * Copyright (c) 2013 Antti Kantee.  All Rights Reserved.
@@ -127,6 +127,9 @@
        struct rumpuser_bio bio;
        static int inited = 0;
        static int usethread = 0;
+       int nlocks;
+
+       rumpuser__unschedule(0, &nlocks, NULL);
 
        if (!inited) {
                pthread_mutex_lock(&biomtx);
@@ -170,4 +173,6 @@
                pthread_cond_signal(&biocv);
                pthread_mutex_unlock(&biomtx);
        }
+
+       rumpuser__reschedule(nlocks, NULL);
 }



Home | Main Index | Thread Index | Old Index