X-Git-Url: http://xvm.mit.edu/gitweb/invirt/third/libt4.git/blobdiff_plain/a4175b2e216a20b86cc872dea8a08005c60617a5..5bb7eb131773abd9e642f83629528b4c4e706b2e:/lock_smain.cc diff --git a/lock_smain.cc b/lock_smain.cc index c256cbe..3bd7376 100644 --- a/lock_smain.cc +++ b/lock_smain.cc @@ -1,42 +1,29 @@ -#include "rpc/rpc.h" +#include "lock_server.h" #include -#include -#include #include -#include "lock_server_cache_rsm.h" -#include "paxos.h" -#include "rsm.h" // Main loop of lock_server -char tprintf_thread_prefix = 's'; - -int -main(int argc, char *argv[]) -{ - int count = 0; +char log_thread_prefix = 's'; +int main(int argc, char *argv[]) { setvbuf(stdout, NULL, _IONBF, 0); setvbuf(stderr, NULL, _IONBF, 0); - srandom(getpid()); + srandom((uint32_t)getpid()); if(argc != 3){ - fprintf(stderr, "Usage: %s [master:]port [me:]port\n", argv[0]); + cerr << "Usage: " << argv[0] << " [master:]port [me:]port" << endl; exit(1); } - char *count_env = getenv("RPC_COUNT"); - if(count_env != NULL){ - count = atoi(count_env); - } - rsm rsm(argv[1], argv[2]); - lock_server_cache_rsm ls(&rsm); - rsm.set_state_transfer((rsm_state_transfer *)&ls); - rsm.reg(lock_protocol::acquire, &ls, &lock_server_cache_rsm::acquire); - rsm.reg(lock_protocol::release, &ls, &lock_server_cache_rsm::release); - rsm.reg(lock_protocol::stat, &ls, &lock_server_cache_rsm::stat); + lock_server ls(&rsm); + rsm.set_state_transfer(&ls); + + rsm.reg(lock_protocol::acquire, &lock_server::acquire, &ls); + rsm.reg(lock_protocol::release, &lock_server::release, &ls); + rsm.reg(lock_protocol::stat, &lock_server::stat, &ls); while(1) sleep(1000);