diff --git a/CHANGES b/CHANGES
index 80def09e0627a9146e1adf4218606652b6864e4c..e2adaf25b3dc2725f79f812d48981dd8d5096c8b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,9 +1,10 @@
 OpenLDAP 2.4 Change Log
 
 OpenLDAP 2.4.17 Engineering
-	Fixed slapd normalization of updated schema attributes (ITS#5540)
 	Fixed slapd errno handling (ITS#6037)
+	Fixed slapd global alloc handling (ITS#6054)
 	Fixed slapd moduleload with static backends and modules (ITS#6016)
+	Fixed slapd normalization of updated schema attributes (ITS#5540)
 	Build Environment
 		Added test056-monitor (ITS#5540)
 		Added test057-memberof-refint (ITS#5395)
diff --git a/servers/slapd/sl_malloc.c b/servers/slapd/sl_malloc.c
index a5d8760b64d77f7eda5dd3735fc37be0bc7d736d..998d50bd8a9378a6af8b35eaf6db38bb5bc4282f 100644
--- a/servers/slapd/sl_malloc.c
+++ b/servers/slapd/sl_malloc.c
@@ -267,11 +267,19 @@ slap_sl_malloc(
 	int i, j;
 
 #ifdef SLAP_NO_SL_MALLOC
-	return ber_memalloc_x( size, NULL );
+	newptr = ber_memalloc_x( size, NULL );
+	if ( newptr ) return newptr;
+	assert( 0 );
+	exit( EXIT_FAILURE );
 #endif
 
 	/* ber_set_option calls us like this */
-	if (!ctx) return ber_memalloc_x(size, NULL);
+	if (!ctx) {
+		newptr = ber_memalloc_x( size, NULL );
+		if ( newptr ) return newptr;
+		assert( 0 );
+		exit( EXIT_FAILURE );
+	}
 
 	/* round up to doubleword boundary */
 	size += sizeof(ber_len_t) + pad;
@@ -375,7 +383,10 @@ slap_sl_realloc(void *ptr, ber_len_t size, void *ctx)
 		return slap_sl_malloc(size, ctx);
 
 #ifdef SLAP_NO_SL_MALLOC
-	return ber_memrealloc_x( ptr, size, NULL );
+	newptr = ber_memrealloc_x( ptr, size, NULL );
+	if ( newptr ) return newptr;
+	assert( 0 );
+	exit( EXIT_FAILURE );
 #endif
 
 	/* Not our memory? */
diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c
index 1c838d6a65f4cc87c53694f0578c7bb87e5e35ff..11ad325d7603cb381a4415355545a036a1d5614a 100644
--- a/servers/slapd/syncrepl.c
+++ b/servers/slapd/syncrepl.c
@@ -1302,10 +1302,6 @@ do_syncrepl(
 	connection_fake_init( &conn, &opbuf, ctx );
 	op = &opbuf.ob_op;
 
-	/* use global malloc for now */
-	op->o_tmpmemctx = NULL;
-	op->o_tmpmfuncs = &ch_mfuncs;
-
 	op->o_managedsait = SLAP_CONTROL_NONCRITICAL;
 	be = si->si_be;