]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: add --mds_early_reply option
authorSage Weil <sage@newdream.net>
Wed, 24 Dec 2008 00:36:27 +0000 (16:36 -0800)
committerSage Weil <sage@newdream.net>
Wed, 24 Dec 2008 00:36:27 +0000 (16:36 -0800)
src/config.cc
src/config.h
src/mds/Server.cc

index b537464f071ae217c44a4a95f5e47551b2b04cc4..c3d9437ca53fc9c5ed8b70ac394888876e497f41 100644 (file)
@@ -341,6 +341,7 @@ md_config_t g_conf = {
   mds_scatter_nudge_interval: 5,  // how quickly dirstat changes propagate up the hierarchy
 
   mds_client_prealloc_inos: 20,
+  mds_early_reply: true,
 
   mds_log: true,
   mds_log_max_events: -1,
@@ -871,6 +872,11 @@ void parse_config_options(std::vector<const char*>& args, bool open)
     else if (strcmp(args[i], "--mds_decay_halflife") == 0) 
       g_conf.mds_decay_halflife = atoi(args[++i]);
 
+    else if (strcmp(args[i], "--mds_early_reply") == 0) 
+      g_conf.mds_early_reply = atoi(args[++i]);
+    else if (strcmp(args[i], "--mds_client_prealloc_inos") == 0) 
+      g_conf.mds_client_prealloc_inos = atoi(args[++i]);
+
     else if (strcmp(args[i], "--mds_bal_interval") == 0) 
       g_conf.mds_bal_interval = atoi(args[++i]);
     else if (strcmp(args[i], "--mds_bal_rep") == 0) 
index 3459adb3a5d5a91cf387b8689fa8264c5a4ad677..a3dce298368d288e66f8830312ec5dd1880e150c 100644 (file)
@@ -210,6 +210,7 @@ struct md_config_t {
   float mds_scatter_nudge_interval;
 
   int mds_client_prealloc_inos;
+  bool mds_early_reply;
 
   bool mds_log;
   int mds_log_max_events;
index f60b6ec378e9d00314c5006eef0a0d73bd0fe1fd..e17c8efde42ed2733b0bf465b6eb6f808212e51d 100644 (file)
@@ -535,6 +535,9 @@ void Server::include_cap_in_reply(MDRequest *mdr, MClientReply *reply)
 
 void Server::early_reply(MDRequest *mdr, CInode *tracei, CDentry *tracedn)
 {
+  if (!g_conf.mds_early_reply)
+    return;
+
   if (mdr->alloc_ino) {
     dout(10) << "early_reply - allocated ino, not allowed" << dendl;
     return;