X-Git-Url: http://xvm.mit.edu/gitweb/invirt/third/libt4.git/blobdiff_plain/4e881433f37417ccbda89c09ffdf936855d462d4..f0dcb6b97d6d40f67698d1f71ac26970f1776f82:/lock_server.h?ds=inline diff --git a/lock_server.h b/lock_server.h index d3ec580..1f30f87 100644 --- a/lock_server.h +++ b/lock_server.h @@ -11,13 +11,13 @@ typedef pair holder_t; class lock_state { public: lock_state(); - lock_state(const lock_state &other); + lock_state(const lock_state & other); bool held; holder_t held_by; list wanted_by; map old_requests; mutex m; - lock_state& operator=(const lock_state&); + lock_state & operator=(const lock_state &); MEMBERS(held, held_by, wanted_by) }; @@ -26,21 +26,21 @@ MARSHALLABLE_STRUCT(lock_state) typedef map lock_map; -class lock_server : public rsm_state_transfer { +class lock_server : private rsm_state_transfer { private: int nacquire; mutex lock_table_lock; lock_map lock_table; - lock_state &get_lock_state(lock_protocol::lockid_t lid); + lock_state & get_lock_state(lock_protocol::lockid_t lid); fifo retry_fifo; fifo revoke_fifo; rsm *rsm_; - public: - lock_server(rsm *r = 0); - void revoker NORETURN (); - void retryer NORETURN (); string marshal_state(); void unmarshal_state(const string & state); + void revoker NORETURN (); + void retryer NORETURN (); + public: + lock_server(rsm & r); lock_protocol::status acquire(int &, lock_protocol::lockid_t, const callback_t & id, lock_protocol::xid_t); lock_protocol::status release(int &, lock_protocol::lockid_t, const callback_t & id, lock_protocol::xid_t); lock_protocol::status stat(int &, lock_protocol::lockid_t, const callback_t & id);