X-Git-Url: http://xvm.mit.edu/gitweb/invirt/third/libt4.git/blobdiff_plain/a5f10a497bebfc680bf418193f1fd9f1ad7cc417..4e881433f37417ccbda89c09ffdf936855d462d4:/lock_server.cc diff --git a/lock_server.cc b/lock_server.cc index d7367bd..0c3a6e9 100644 --- a/lock_server.cc +++ b/lock_server.cc @@ -1,6 +1,5 @@ // the caching lock server implementation -#include "types.h" #include "lock_server.h" #include #include @@ -35,7 +34,7 @@ lock_server::lock_server(rsm *r) : rsm_ (r) { rsm_->set_state_transfer(this); } -void lock_server::revoker() [[noreturn]] { +void lock_server::revoker () { while (1) { lock_protocol::lockid_t lid; revoke_fifo.deq(&lid); @@ -63,7 +62,7 @@ void lock_server::revoker() [[noreturn]] { } } -void lock_server::retryer() [[noreturn]] { +void lock_server::retryer() { while (1) { lock_protocol::lockid_t lid; retry_fifo.deq(&lid); @@ -93,7 +92,7 @@ void lock_server::retryer() [[noreturn]] { } } -int lock_server::acquire(int &, lock_protocol::lockid_t lid, const callback_t & id, lock_protocol::xid_t xid) { +lock_protocol::status lock_server::acquire(int &, lock_protocol::lockid_t lid, const callback_t & id, lock_protocol::xid_t xid) { LOG("lid=" << lid << " client=" << id << "," << xid); holder_t h = holder_t(id, xid); lock_state &st = get_lock_state(lid); @@ -151,7 +150,7 @@ int lock_server::acquire(int &, lock_protocol::lockid_t lid, const callback_t & return lock_protocol::RETRY; } -int lock_server::release(int &, lock_protocol::lockid_t lid, const callback_t & id, lock_protocol::xid_t xid) { +lock_protocol::status lock_server::release(int &, lock_protocol::lockid_t lid, const callback_t & id, lock_protocol::xid_t xid) { LOG("lid=" << lid << " client=" << id << "," << xid); lock_state &st = get_lock_state(lid); lock sl(st.m); @@ -177,7 +176,7 @@ void lock_server::unmarshal_state(const string & state) { rep >> nacquire >> lock_table; } -lock_protocol::status lock_server::stat(int &r, lock_protocol::lockid_t lid) { +lock_protocol::status lock_server::stat(int &r, lock_protocol::lockid_t lid, const callback_t &) { LOG("stat request for " << lid); VERIFY(0); r = nacquire;