diff --git a/include/runtime.h b/include/runtime.h
index 1d381d0eb900334e71f4eda33f6b89d4326b6771..9db4db46920a7ed45836643a2acde92ff56e2833 100644
--- a/include/runtime.h
+++ b/include/runtime.h
@@ -66,7 +66,7 @@ void  RUNTIME_desc_init        (MORSE_desc_t*);
 void  RUNTIME_desc_create      (MORSE_desc_t*);
 void  RUNTIME_desc_destroy     (MORSE_desc_t*);
 void  RUNTIME_desc_submatrix   (MORSE_desc_t*);
-void* RUNTIME_desc_getaddr     (MORSE_desc_t*, int, int);
+void* RUNTIME_desc_getaddr     (const MORSE_desc_t*, int, int);
 /* Acquire in main memory an up-to-date copy of the data described by the descriptor for read-write access. */
 int   RUNTIME_desc_acquire     (MORSE_desc_t*);
 /* Release the data described by the descriptor to be used by the StarPU tasks again. */
diff --git a/runtime/parsec/control/runtime_descriptor.c b/runtime/parsec/control/runtime_descriptor.c
index c9b40556eb95783c2d02d49ef83a73751d45fd86..f0790d0d6b2a2246fc4a993a410439ea5737b901 100644
--- a/runtime/parsec/control/runtime_descriptor.c
+++ b/runtime/parsec/control/runtime_descriptor.c
@@ -269,7 +269,7 @@ int RUNTIME_desc_getoncpu( MORSE_desc_t *desc )
     return MORSE_SUCCESS;
 }
 
-void *RUNTIME_desc_getaddr( MORSE_desc_t *desc, int m, int n )
+void *RUNTIME_desc_getaddr( const MORSE_desc_t *desc, int m, int n )
 {
     assert(0); /* This should not be called because we also need the handle to match the address we need. */
     return desc->get_blkaddr( desc, m, n );
diff --git a/runtime/quark/control/runtime_descriptor.c b/runtime/quark/control/runtime_descriptor.c
index ca5061b62261abe1d0e1ebe4ae49a912cdd68cdc..5ce2b288bef23e67d1aba6eea5d0417a618ab5eb 100644
--- a/runtime/quark/control/runtime_descriptor.c
+++ b/runtime/quark/control/runtime_descriptor.c
@@ -84,7 +84,7 @@ int RUNTIME_desc_getoncpu( MORSE_desc_t *desc )
     return MORSE_SUCCESS;
 }
 
-void *RUNTIME_desc_getaddr( MORSE_desc_t *desc, int m, int n )
+void *RUNTIME_desc_getaddr( const MORSE_desc_t *desc, int m, int n )
 {
     return desc->get_blkaddr( desc, m, n );
 }
diff --git a/runtime/starpu/control/runtime_descriptor.c b/runtime/starpu/control/runtime_descriptor.c
index 5a82d6a638b2a3890f636c018579c46606de0984..93d5ff75e72c85ba29af796cd53c23448ea5399e 100644
--- a/runtime/starpu/control/runtime_descriptor.c
+++ b/runtime/starpu/control/runtime_descriptor.c
@@ -293,7 +293,7 @@ int RUNTIME_desc_getoncpu( MORSE_desc_t *desc )
     return MORSE_SUCCESS;
 }
 
-void *RUNTIME_desc_getaddr( MORSE_desc_t *desc, int m, int n )
+void *RUNTIME_desc_getaddr( const MORSE_desc_t *desc, int m, int n )
 {
     starpu_data_handle_t *ptrtile = (starpu_data_handle_t*)(desc->schedopt);
     ptrtile += ((int64_t)(desc->lmt) * (int64_t)n + (int64_t)m);