diff --git a/src/slurmd/common/Makefile.am b/src/slurmd/common/Makefile.am
index 676529e4cf9637878f5384db8cc314d96464f5ff..860e46aa775e9fb7347cccfaed8828f8f76d07c5 100644
--- a/src/slurmd/common/Makefile.am
+++ b/src/slurmd/common/Makefile.am
@@ -12,6 +12,7 @@ noinst_PROGRAMS = libslurmd_common.o
 
 libslurmd_common_la_SOURCES =    \
 	core_spec_plugin.c core_spec_plugin.h \
+	fname.c fname.h \
 	job_container_plugin.c job_container_plugin.h \
 	log_ctld.c log_ctld.h \
 	proctrack.c proctrack.h \
diff --git a/src/slurmd/common/Makefile.in b/src/slurmd/common/Makefile.in
index f89ba3d1e850d08066a16d05ee8866e5bcfe1ace..849f93d26853ff2099aeef2aa19c5eb43a21d92c 100644
--- a/src/slurmd/common/Makefile.in
+++ b/src/slurmd/common/Makefile.in
@@ -147,7 +147,7 @@ CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 LTLIBRARIES = $(noinst_LTLIBRARIES)
 libslurmd_common_la_LIBADD =
-am_libslurmd_common_la_OBJECTS = core_spec_plugin.lo \
+am_libslurmd_common_la_OBJECTS = core_spec_plugin.lo fname.lo \
 	job_container_plugin.lo log_ctld.lo proctrack.lo \
 	setproctitle.lo slurmd_cgroup.lo slurmstepd_init.lo \
 	run_script.lo task_plugin.lo set_oomadj.lo xcpuinfo.lo \
@@ -496,6 +496,7 @@ AM_CPPFLAGS = -I$(top_srcdir) $(HWLOC_CPPFLAGS)
 noinst_LTLIBRARIES = libslurmd_common.la libslurmd_reverse_tree_math.la
 libslurmd_common_la_SOURCES = \
 	core_spec_plugin.c core_spec_plugin.h \
+	fname.c fname.h \
 	job_container_plugin.c job_container_plugin.h \
 	log_ctld.c log_ctld.h \
 	proctrack.c proctrack.h \
@@ -585,6 +586,7 @@ distclean-compile:
 	-rm -f *.tab.c
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/core_spec_plugin.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fname.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/job_container_plugin.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/log_ctld.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proctrack.Plo@am__quote@
diff --git a/src/slurmd/slurmstepd/fname.c b/src/slurmd/common/fname.c
similarity index 98%
rename from src/slurmd/slurmstepd/fname.c
rename to src/slurmd/common/fname.c
index b99f0d84bd15bc2d6b8038cc6798d3bf2ab419fb..5eb6881fabccc7c709b817c63176b5726c7a52d4 100644
--- a/src/slurmd/slurmstepd/fname.c
+++ b/src/slurmd/common/fname.c
@@ -1,6 +1,5 @@
 /*****************************************************************************\
- * src/slurmd/slurmstepd/fname.c - IO filename creation routine
- *                                 (slurmstepd specific)
+ * src/slurmd/common/fname.c - IO filename creation routine
  *****************************************************************************
  *  Copyright (C) 2002 The Regents of the University of California.
  *  Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
@@ -36,18 +35,18 @@
  *  with SLURM; if not, write to the Free Software Foundation, Inc.,
  *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA.
 \*****************************************************************************/
+#include <ctype.h>
+#include <fcntl.h>
 #include <stdio.h>
 #include <stdarg.h>
 #include <stdlib.h>
 #include <string.h>
-#include <ctype.h>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <fcntl.h>
 #include <unistd.h>
 
+#include "src/slurmd/common/fname.h"
 #include "src/slurmd/slurmd/slurmd.h"
-#include "src/slurmd/slurmstepd/fname.h"
 
 #include "src/common/uid.h"
 #include "src/common/xassert.h"
diff --git a/src/slurmd/slurmstepd/fname.h b/src/slurmd/common/fname.h
similarity index 95%
rename from src/slurmd/slurmstepd/fname.h
rename to src/slurmd/common/fname.h
index c5e21ee020287fbe331ad6466e7bcfaf631345a4..8401898dfa9d7f2b998073b913bc8c3c8c1868b1 100644
--- a/src/slurmd/slurmstepd/fname.h
+++ b/src/slurmd/common/fname.h
@@ -1,6 +1,5 @@
 /*****************************************************************************\
- * src/slurmd/slurmstepd/fname.h - IO filename creation routine
- *                                 (slurmstepd specific)
+ * src/slurmd/common/fname.h - IO filename creation routine
  *****************************************************************************
  *  Copyright (C) 2002 The Regents of the University of California.
  *  Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
diff --git a/src/slurmd/slurmstepd/Makefile.am b/src/slurmd/slurmstepd/Makefile.am
index 33a510f61eb3661d4bfbea7b9b1f21951d797a3e..b1786b03b3f46b5c25be9447d2beba0915590e5d 100644
--- a/src/slurmd/slurmstepd/Makefile.am
+++ b/src/slurmd/slurmstepd/Makefile.am
@@ -19,7 +19,6 @@ slurmstepd_SOURCES = 	        	\
 	task.c task.h			\
 	slurmstepd_job.c slurmstepd_job.h \
 	io.c io.h			\
-	fname.c fname.h			\
 	ulimits.c ulimits.h     	\
 	pdebug.c pdebug.h		\
 	pam_ses.c pam_ses.h		\
diff --git a/src/slurmd/slurmstepd/Makefile.in b/src/slurmd/slurmstepd/Makefile.in
index c468b40bd9c2359f2412714c7c5c3519e9ba106e..76bc3f95971d3ad4fc84325805ad894431e5484c 100644
--- a/src/slurmd/slurmstepd/Makefile.in
+++ b/src/slurmd/slurmstepd/Makefile.in
@@ -149,8 +149,8 @@ am__installdirs = "$(DESTDIR)$(sbindir)"
 PROGRAMS = $(sbin_PROGRAMS)
 am_slurmstepd_OBJECTS = slurmstepd.$(OBJEXT) mgr.$(OBJEXT) \
 	task.$(OBJEXT) slurmstepd_job.$(OBJEXT) io.$(OBJEXT) \
-	fname.$(OBJEXT) ulimits.$(OBJEXT) pdebug.$(OBJEXT) \
-	pam_ses.$(OBJEXT) req.$(OBJEXT) multi_prog.$(OBJEXT) \
+	ulimits.$(OBJEXT) pdebug.$(OBJEXT) pam_ses.$(OBJEXT) \
+	req.$(OBJEXT) multi_prog.$(OBJEXT) \
 	step_terminate_monitor.$(OBJEXT)
 slurmstepd_OBJECTS = $(am_slurmstepd_OBJECTS)
 am__DEPENDENCIES_1 =
@@ -495,7 +495,6 @@ slurmstepd_SOURCES = \
 	task.c task.h			\
 	slurmstepd_job.c slurmstepd_job.h \
 	io.c io.h			\
-	fname.c fname.h			\
 	ulimits.c ulimits.h     	\
 	pdebug.c pdebug.h		\
 	pam_ses.c pam_ses.h		\
@@ -597,7 +596,6 @@ mostlyclean-compile:
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fname.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/io.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mgr.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/multi_prog.Po@am__quote@
diff --git a/src/slurmd/slurmstepd/io.c b/src/slurmd/slurmstepd/io.c
index 1c84c9c513607d6b83ec5b3fa989de46b273b252..16579e8f0cd02899b798af5c1f74b48895ff2b0b 100644
--- a/src/slurmd/slurmstepd/io.c
+++ b/src/slurmd/slurmstepd/io.c
@@ -72,10 +72,9 @@
 #include "src/common/xsignal.h"
 #include "src/common/xstring.h"
 
-
+#include "src/slurmd/common/fname.h"
 #include "src/slurmd/slurmd/slurmd.h"
 #include "src/slurmd/slurmstepd/io.h"
-#include "src/slurmd/slurmstepd/fname.h"
 #include "src/slurmd/slurmstepd/slurmstepd.h"
 
 /**********************************************************************
diff --git a/src/slurmd/slurmstepd/mgr.c b/src/slurmd/slurmstepd/mgr.c
index e6259eec229c9e3b84d7d6a04ed32ab778540fc4..68562141451249d45ce0029e2f4b3a57bb156132 100644
--- a/src/slurmd/slurmstepd/mgr.c
+++ b/src/slurmd/slurmstepd/mgr.c
@@ -94,6 +94,7 @@
 #include "src/slurmd/slurmd/slurmd.h"
 
 #include "src/slurmd/common/core_spec_plugin.h"
+#include "src/slurmd/common/fname.h"
 #include "src/slurmd/common/job_container_plugin.h"
 #include "src/slurmd/common/log_ctld.h"
 #include "src/slurmd/common/proctrack.h"
@@ -114,7 +115,6 @@
 #include "src/slurmd/slurmstepd/pam_ses.h"
 #include "src/slurmd/slurmstepd/ulimits.h"
 #include "src/slurmd/slurmstepd/step_terminate_monitor.h"
-#include "src/slurmd/slurmstepd/fname.h"
 
 #define RETRY_DELAY 15		/* retry every 15 seconds */
 #define MAX_RETRY   240		/* retry 240 times (one hour max) */
diff --git a/src/slurmd/slurmstepd/slurmstepd_job.c b/src/slurmd/slurmstepd/slurmstepd_job.c
index 202772e99faf85fcbece44fba8501e78ce502ce9..24ff6d833bbe4d01413b9dd30dfa7b30a85cce35 100644
--- a/src/slurmd/slurmstepd/slurmstepd_job.c
+++ b/src/slurmd/slurmstepd/slurmstepd_job.c
@@ -60,9 +60,9 @@
 #include "src/common/xmalloc.h"
 #include "src/common/xstring.h"
 
+#include "src/slurmd/common/fname.h"
 #include "src/slurmd/slurmd/slurmd.h"
 #include "src/slurmd/slurmstepd/io.h"
-#include "src/slurmd/slurmstepd/fname.h"
 #include "src/slurmd/slurmstepd/multi_prog.h"
 #include "src/slurmd/slurmstepd/slurmstepd_job.h"