Source-Changes-HG archive

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

[src/trunk]: src/lib/librumpclient update locking proto, use unputwait



details:   https://anonhg.NetBSD.org/src/rev/720890c15c06
branches:  trunk
changeset: 759017:720890c15c06
user:      pooka <pooka%NetBSD.org@localhost>
date:      Wed Nov 24 17:03:39 2010 +0000

description:
update locking proto, use unputwait

diffstat:

 lib/librumpclient/rumpclient.c |  12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diffs (35 lines):

diff -r 19325e5da33b -r 720890c15c06 lib/librumpclient/rumpclient.c
--- a/lib/librumpclient/rumpclient.c    Wed Nov 24 17:00:10 2010 +0000
+++ b/lib/librumpclient/rumpclient.c    Wed Nov 24 17:03:39 2010 +0000
@@ -1,4 +1,4 @@
-/*      $NetBSD: rumpclient.c,v 1.3 2010/11/19 15:25:49 pooka Exp $    */
+/*      $NetBSD: rumpclient.c,v 1.4 2010/11/24 17:03:39 pooka Exp $    */
 
 /*
  * Copyright (c) 2010 Antti Kantee.  All Rights Reserved.
@@ -71,13 +71,12 @@
        rhdr.rsp_sysnum = sysnum;
 
        putwait(spc, &rw, &rhdr);
-
-       sendlock(spc);
        rv = dosend(spc, &rhdr, sizeof(rhdr));
        rv = dosend(spc, data, dlen);
-       sendunlock(spc);
-       if (rv)
-               return rv; /* XXX: unputwait */
+       if (rv) {
+               unputwait(spc, &rw);
+               return rv;
+       }
 
        rv = waitresp(spc, &rw);
        *resp = rw.rw_data;
@@ -224,6 +223,7 @@
                errno = error;
                return -1;
        }
+
        if ((error = parsetab[idx].connhook(s)) != 0) {
                error = errno;
                fprintf(stderr, "rump_sp: connect hook failed\n");



Home | Main Index | Thread Index | Old Index