diff --git a/src/common/switch.c b/src/common/switch.c
index a43fe1dacbf851901659ed474ff52087499754ce..122604472de8babe5bb0cd05c5ddd55313e7fc3b 100644
--- a/src/common/switch.c
+++ b/src/common/switch.c
@@ -80,7 +80,7 @@ typedef struct slurm_switch_ops {
 					    char *buf, size_t size);
 	int          (*node_init)         ( void );
 	int          (*node_fini)         ( void );
-	int          (*job_preinit)       ( switch_jobinfo_t *jobinfo );
+	int          (*job_preinit)       ( stepd_step_rec_t *job );
 	int          (*job_init)          ( stepd_step_rec_t *job );
 	int          (*job_suspend_test)  ( switch_jobinfo_t *jobinfo );
 	void         (*job_suspend_info_get)( switch_jobinfo_t *jobinfo,
@@ -556,21 +556,12 @@ extern int switch_g_node_fini(void)
 	return (*(ops[switch_context_default].node_fini)) ();
 }
 
-extern int switch_g_job_preinit(dynamic_plugin_data_t *jobinfo)
+extern int switch_g_job_preinit(stepd_step_rec_t *job)
 {
-	void *data = NULL;
-	uint32_t plugin_id;
-
 	if ( switch_init(0) < 0 )
 		return SLURM_ERROR;
 
-	if (jobinfo) {
-		data      = jobinfo->data;
-		plugin_id = jobinfo->plugin_id;
-	} else
-		plugin_id = switch_context_default;
-
-	return (*(ops[plugin_id].job_preinit)) (data);
+	return (*(ops[switch_context_default].job_preinit))(job);
 }
 
 extern int switch_g_job_init(stepd_step_rec_t *job)
diff --git a/src/common/switch.h b/src/common/switch.h
index 2c76c0be4a03f08f88d30348ae059cd92e00a52e..3f5d4a81957c1a19ff349ce468f155685a5fb1e1 100644
--- a/src/common/switch.h
+++ b/src/common/switch.h
@@ -268,7 +268,7 @@ extern int switch_g_node_fini(void);
  * that needs to be performed in the same process as switch_g_job_fini()
  *
  */
-extern int switch_g_job_preinit(dynamic_plugin_data_t *jobinfo);
+extern int switch_g_job_preinit(stepd_step_rec_t *job);
 
 /*
  * initialize switch_g on node for job. This function is run from the
diff --git a/src/plugins/switch/cray_aries/switch_cray_aries.c b/src/plugins/switch/cray_aries/switch_cray_aries.c
index 6777ceab677cd88d886035379916373aa5fad2cf..e229f0db24692fb0b954a40f6cd255ac21f577ff 100644
--- a/src/plugins/switch/cray_aries/switch_cray_aries.c
+++ b/src/plugins/switch/cray_aries/switch_cray_aries.c
@@ -436,7 +436,7 @@ extern int switch_p_node_fini(void)
 	return SLURM_SUCCESS;
 }
 
-extern int switch_p_job_preinit(switch_jobinfo_t *jobinfo)
+extern int switch_p_job_preinit(stepd_step_rec_t *job)
 {
 	return SLURM_SUCCESS;
 }
diff --git a/src/plugins/switch/none/switch_none.c b/src/plugins/switch/none/switch_none.c
index 779009eb1d44ab321d582f6708be2b1cc0d6fdb3..0d4c48410a6a6a6beb72929259a82060e70dc3e0 100644
--- a/src/plugins/switch/none/switch_none.c
+++ b/src/plugins/switch/none/switch_none.c
@@ -177,7 +177,7 @@ int switch_p_node_fini ( void )
 	return SLURM_SUCCESS;
 }
 
-int switch_p_job_preinit ( switch_jobinfo_t *jobinfo )
+int switch_p_job_preinit(stepd_step_rec_t *job)
 {
 	return SLURM_SUCCESS;
 }
diff --git a/src/slurmd/slurmstepd/mgr.c b/src/slurmd/slurmstepd/mgr.c
index 36e5527354aa50b673e76721125c48a4f294b889..3c16f4d7af42730c4e10a75b23946e6e9f860327 100644
--- a/src/slurmd/slurmstepd/mgr.c
+++ b/src/slurmd/slurmstepd/mgr.c
@@ -1183,7 +1183,7 @@ job_manager(stepd_step_rec_t *job)
 
 	if (!job->batch && (job->step_id.step_id != SLURM_EXTERN_CONT) &&
 	    (job->step_id.step_id != SLURM_INTERACTIVE_STEP) &&
-	    (switch_g_job_preinit(job->switch_job) < 0)) {
+	    (switch_g_job_preinit(job) < 0)) {
 		rc = ESLURM_INTERCONNECT_FAILURE;
 		goto fail1;
 	}