]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: use client_t
authorSage Weil <sage@newdream.net>
Thu, 3 Sep 2009 23:08:52 +0000 (16:08 -0700)
committerSage Weil <sage@newdream.net>
Fri, 4 Sep 2009 17:06:42 +0000 (10:06 -0700)
src/messages/MClientMountAck.h
src/mon/ClientMap.h
src/mon/ClientMonitor.cc
src/mon/ClientMonitor.h
src/mon/MonClient.cc

index a526f0e331732a98013d082a0488eb2e43eda154..eeca95351be271dd916575e7ec8ea90eccc7c63d 100644 (file)
 #include "msg/Message.h"
 
 struct MClientMountAck : public Message {
-  __s64 client;
+  client_t client;
   __s32 result;
   cstring result_msg;
   bufferlist monmap_bl;
 
-  MClientMountAck(__s64 c = -1, int r = 0, const char *msg = 0) :
+  MClientMountAck(client_t c = -1, int r = 0, const char *msg = 0) :
     Message(CEPH_MSG_CLIENT_MOUNT_ACK),
     client(c), result(r),
     result_msg(msg) { }
index ddb8b87f56c87365164242782235b7cd69d13f15..1307fd4cb468c14d51efab4ed5c83ca650e67148 100644 (file)
@@ -29,7 +29,7 @@ using namespace std;
 class ClientMap {
 public:
   version_t version;
-  __u64 next_client;
+  client_t next_client;
 
   ClientMap() : version(0), next_client(0) {}
 
index d60b9e9741e8a5a9f692a93be4820418b515a19c..49c514491d711210bc3353b41de528208a6c6d2f 100644 (file)
@@ -144,7 +144,9 @@ bool ClientMonitor::prepare_update(PaxosServiceMessage *m)
   case CEPH_MSG_CLIENT_MOUNT:
     {
       entity_addr_t addr = m->get_orig_source_addr();
-      __s64 client = ++pending_map.next_client;
+      client_t client = pending_map.next_client;
+      pending_map.next_client.v++;
+
       dout(10) << "mount: assigned client" << client << " to " << addr << dendl;
 
       paxos->wait_for_commit(new C_Mounted(this, client, (MClientMount*)m));
@@ -225,11 +227,11 @@ bool ClientMonitor::prepare_command(MMonCommand *m)
 // MOUNT
 
 
-void ClientMonitor::_mounted(__s64 client, MClientMount *m)
+void ClientMonitor::_mounted(client_t client, MClientMount *m)
 {
   entity_inst_t to;
   to.addr = m->get_orig_source_addr();
-  to.name = entity_name_t::CLIENT(client);
+  to.name = entity_name_t::CLIENT(client.v);
 
   dout(10) << "_mounted client" << client << " at " << to << dendl;
   
index e4e40e94f108a26ff619936b07d685bca628ffcc..270d812311d69336fb7046daf7e13fe529e1c532 100644 (file)
@@ -43,10 +43,10 @@ public:
 
   class C_Mounted : public Context {
     ClientMonitor *cmon;
-    __s64 client;
+    client_t client;
     MClientMount *m;
   public:
-    C_Mounted(ClientMonitor *cm, __s64 c, MClientMount *m_) : 
+    C_Mounted(ClientMonitor *cm, client_t c, MClientMount *m_) : 
       cmon(cm), client(c), m(m_) {}
     void finish(int r) {
       if (r >= 0)
@@ -69,7 +69,7 @@ private:
   void committed();
 
   bool check_mount(MClientMount *m);
-  void _mounted(__s64 c, MClientMount *m);
+  void _mounted(client_t c, MClientMount *m);
  
   bool preprocess_query(PaxosServiceMessage *m);  // true if processed.
   bool prepare_update(PaxosServiceMessage *m);
index e1d6d5e59bb55cb1180690cfecb1e7abdfb9c3af..67dbd6d61b6dd92e1737d1353da28dd3289bfb4b 100644 (file)
@@ -246,7 +246,7 @@ void MonClient::handle_mount_ack(MClientMountAck* m)
   bufferlist::iterator p = m->monmap_bl.begin();
   ::decode(monmap, p);
 
-  messenger->set_myname(entity_name_t::CLIENT(m->client));
+  messenger->set_myname(entity_name_t::CLIENT(m->client.v));
 
   // finish.
   timer.cancel_event(mount_timeout_event);