diff --git a/Golden_Repo/m/MPCFramework/MPCFramework-4.2.0-GCC-11.3.0.eb b/Golden_Repo/m/MPCFramework/MPCFramework-4.2.0-GCC-11.3.0.eb
index fe5a74bf458d43a34dea7ff2c8dcaa4aa17dd682..c3dad29f097393f7c2cf7b9cc1de69be925af955 100644
--- a/Golden_Repo/m/MPCFramework/MPCFramework-4.2.0-GCC-11.3.0.eb
+++ b/Golden_Repo/m/MPCFramework/MPCFramework-4.2.0-GCC-11.3.0.eb
@@ -19,6 +19,7 @@ checksums = [
 patches = [
     'nvdimm.patch',
     'pmix.patch',
+    'rma-get-attr.patch',
 ]
 
 builddependencies = [
diff --git a/Golden_Repo/m/MPCFramework/rma-get-attr.patch b/Golden_Repo/m/MPCFramework/rma-get-attr.patch
new file mode 100644
index 0000000000000000000000000000000000000000..dc20f77ac82b36500b894d613dd2459cc85cf992
--- /dev/null
+++ b/Golden_Repo/m/MPCFramework/rma-get-attr.patch
@@ -0,0 +1,58 @@
+From 831247ca5ab5589e42be0864bc3d1965b7cec914 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?R=C3=A9mi=20Dehenne?= <remi.dehenne@cea.fr>
+Date: Fri, 27 Oct 2023 18:44:31 +0200
+Subject: [PATCH] RMA: Fix invalid arg type in MPI_Win_get_attr
+
+The attribute_val argument of MPI_Win_get_attr was improperly set regarding
+to the MPI Standard.
+Prior to casting, the attribute_val argument must be an int** or void**.
+MPC assumed attribute_val to be an int* or void*, thus leading to
+unexpected behaviors in user applications.
+---
+ src/MPC_MPI/src/mpi_rma_win.c | 11 ++++-------
+ 1 file changed, 4 insertions(+), 7 deletions(-)
+
+diff --git a/src/MPC_MPI/src/mpi_rma_win.c b/src/MPC_MPI/src/mpi_rma_win.c
+index de22d11db..c02ba4d9c 100644
+--- a/src/MPC_MPI/src/mpi_rma_win.c
++++ b/src/MPC_MPI/src/mpi_rma_win.c
+@@ -1163,7 +1163,6 @@ int mpc_MPI_Win_get_attr(MPI_Win win, int keyval, void *attr_val, int *flag)
+ 	}
+ 
+ 	struct mpc_lowcomm_rdma_window *low_win = sctk_win_translate(win);
+-	uintptr_t val;
+ 
+ 	/* First handle special values */
+ 	switch(keyval)
+@@ -1175,24 +1174,22 @@ int mpc_MPI_Win_get_attr(MPI_Win win, int keyval, void *attr_val, int *flag)
+ 
+ 		case MPI_WIN_SIZE:
+ 			*flag = 1;
+-			*( (void **)attr_val) = (void *)low_win->size;
++			*( (void **)attr_val) = (void *)&low_win->size;
+ 			return MPI_SUCCESS;
+ 
+ 		case MPI_WIN_DISP_UNIT:
+ 			*flag = 1;
+-			*( (void **)attr_val) = (void *)low_win->disp_unit;
++			*( (void **)attr_val) = (void *)&low_win->disp_unit;
+ 			return MPI_SUCCESS;
+ 
+ 		case MPI_WIN_CREATE_FLAVOR:
+ 			*flag = 1;
+-			val   = desc->flavor;
+-			*( (void **)attr_val) = (void *)val;
++			*( (void **)attr_val) = (void *)&desc->flavor;
+ 			return MPI_SUCCESS;
+ 
+ 		case MPI_WIN_MODEL:
+ 			*flag = 1;
+-			val   = desc->model;
+-			*( (void **)attr_val) = (void *)val;
++			*( (void **)attr_val) = (void *)&desc->model;
+ 			return MPI_SUCCESS;
+ 	}
+ 
+-- 
+2.34.1
+