From: Sage Weil Date: Sat, 28 Feb 2009 23:48:09 +0000 (-0800) Subject: config: use daemon() call; rename use_abspath to chdir_root X-Git-Tag: v0.7~98 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=19c0c1a70633b4505dfcc41ce9aabb3bb1438fad;p=ceph.git config: use daemon() call; rename use_abspath to chdir_root --- diff --git a/src/cfuse.cc b/src/cfuse.cc index 600f050537c..d510f906943 100644 --- a/src/cfuse.cc +++ b/src/cfuse.cc @@ -50,7 +50,7 @@ int main(int argc, const char **argv, const char *envp[]) { vec_to_argv(args, argc, argv); // FUSE will chdir("/"); be ready. - g_conf.use_abspaths = true; + g_conf.chdir_root = true; if (g_conf.clock_tare) g_clock.tare(); diff --git a/src/common/Logger.cc b/src/common/Logger.cc index 9b091d22dbb..488573d7887 100644 --- a/src/common/Logger.cc +++ b/src/common/Logger.cc @@ -115,7 +115,7 @@ void Logger::_open_log() return; filename = ""; - if (g_conf.use_abspaths && g_conf.logger_dir[0] != '/') { + if (g_conf.chdir_root && g_conf.logger_dir[0] != '/') { char cwd[200]; getcwd(cwd, 200); filename = cwd; diff --git a/src/config.cc b/src/config.cc index 8006ade1a60..0faf8681e33 100644 --- a/src/config.cc +++ b/src/config.cc @@ -255,7 +255,7 @@ md_config_t g_conf = { debug_after: 0, // -- misc -- - use_abspaths: false, // make monitorstore et al use absolute path (to workaround FUSE chdir("/")) + chdir_root: false, // --- clock --- clock_lock: false, @@ -658,7 +658,7 @@ void parse_config_file(ConfFile *cf, bool auto_update) CF_READ("debug", "ms", debug_ms); CF_READ("debug", "mon", debug_mon); CF_READ("debug", "tp", debug_tp); - CF_READ("debug", "use abspaths", use_abspaths); + CF_READ("debug", "chdir root", chdir_root); CF_READ("clock", "lock", clock_lock); CF_READ("clock", "tare", clock_tare); diff --git a/src/config.h b/src/config.h index afa2b7f02da..64cb1a47e56 100644 --- a/src/config.h +++ b/src/config.h @@ -107,7 +107,7 @@ struct md_config_t { int debug_after; // misc - bool use_abspaths; + bool chdir_root; // clock bool clock_lock; diff --git a/src/mon/MonitorStore.cc b/src/mon/MonitorStore.cc index c3a0d256468..d1155e17274 100644 --- a/src/mon/MonitorStore.cc +++ b/src/mon/MonitorStore.cc @@ -63,7 +63,7 @@ int MonitorStore::mount() return -errno; } - if (g_conf.use_abspaths && dir[0] != '/') { + if (g_conf.chdir_root && dir[0] != '/') { // combine it with the cwd, in case fuse screws things up (i.e. fakefuse) string old = dir; char cwd[200]; diff --git a/src/msg/SimpleMessenger.cc b/src/msg/SimpleMessenger.cc index 741ce79d101..35674ec2a1d 100644 --- a/src/msg/SimpleMessenger.cc +++ b/src/msg/SimpleMessenger.cc @@ -394,15 +394,8 @@ int Rank::start(bool nodaemon) } dout(1) << "rank.start daemonizing" << dendl; - // be polite - if (g_conf.use_abspaths) - ::chdir("/"); - - pid_t child = fork(); - if (child) { - write_pid_file(child); - _exit(0); - } + ::daemon(!g_conf.chdir_root, 0); + write_pid_file(getpid()); _dout_rename_output_file(); } else {