diff --git a/runtime/starpu/codelets/codelet_zgetrf_blocked.c b/runtime/starpu/codelets/codelet_zgetrf_blocked.c
index 6e4662060aa66a18945561352d9ae7fd3e03824e..d30eca131f68ee81f888dc29e0cf91af4877a9ca 100644
--- a/runtime/starpu/codelets/codelet_zgetrf_blocked.c
+++ b/runtime/starpu/codelets/codelet_zgetrf_blocked.c
@@ -111,6 +111,11 @@ void INSERT_TASK_zgetrf_blocked_diag( const RUNTIME_option_t *options,
         accessU = STARPU_W;
     }
 
+    /* Handle cache */
+    CHAMELEON_BEGIN_ACCESS_DECLARATION;
+    CHAMELEON_ACCESS_RW(A, Am, An);
+    CHAMELEON_END_ACCESS_DECLARATION;
+
     rt_starpu_insert_task(
         codelet,
         STARPU_VALUE,             &h,                   sizeof(int),
@@ -184,6 +189,11 @@ void INSERT_TASK_zgetrf_blocked_offdiag( const RUNTIME_option_t *options,
 
     void (*callback)(void*) = options->profiling ? cl_zgetrf_blocked_offdiag_callback : NULL;
 
+    /* Handle cache */
+    CHAMELEON_BEGIN_ACCESS_DECLARATION;
+    CHAMELEON_ACCESS_RW(A, Am, An);
+    CHAMELEON_END_ACCESS_DECLARATION;
+
     rt_starpu_insert_task(
         codelet,
         STARPU_VALUE,    &h,                   sizeof(int),
@@ -252,6 +262,11 @@ void INSERT_TASK_zgetrf_blocked_trsm( const RUNTIME_option_t *options,
 
     void (*callback)(void*) = options->profiling ? cl_zgetrf_blocked_trsm_callback : NULL;
 
+    /* Handle cache */
+    CHAMELEON_BEGIN_ACCESS_DECLARATION;
+    CHAMELEON_ACCESS_RW(U, Um, Un);
+    CHAMELEON_END_ACCESS_DECLARATION;
+
     rt_starpu_insert_task(
         codelet,
         STARPU_VALUE,    &m,                   sizeof(int),
diff --git a/runtime/starpu/codelets/codelet_zgetrf_percol.c b/runtime/starpu/codelets/codelet_zgetrf_percol.c
index 3248ee0ae4df619ed6988de838ccc9c80c473e33..38e22da0fd90848d08b61a7cc4e09d44a67a968f 100644
--- a/runtime/starpu/codelets/codelet_zgetrf_percol.c
+++ b/runtime/starpu/codelets/codelet_zgetrf_percol.c
@@ -89,6 +89,11 @@ void INSERT_TASK_zgetrf_percol_diag( const RUNTIME_option_t *options,
     int access_npiv = ( h == ipiv->n ) ? STARPU_R    : STARPU_REDUX;
     int access_ppiv = ( h == 0 )       ? STARPU_NONE : STARPU_R;
 
+    /* Handle cache */
+    CHAMELEON_BEGIN_ACCESS_DECLARATION;
+    CHAMELEON_ACCESS_RW(A, Am, An);
+    CHAMELEON_END_ACCESS_DECLARATION;
+
     rt_starpu_insert_task(
         codelet,
         STARPU_VALUE,             &h,                   sizeof(int),
@@ -148,6 +153,11 @@ void INSERT_TASK_zgetrf_percol_offdiag( const RUNTIME_option_t *options,
 
     void (*callback)(void*) = options->profiling ? cl_zgetrf_percol_offdiag_callback : NULL;
 
+    /* Handle cache */
+    CHAMELEON_BEGIN_ACCESS_DECLARATION;
+    CHAMELEON_ACCESS_RW(A, Am, An);
+    CHAMELEON_END_ACCESS_DECLARATION;
+
     rt_starpu_insert_task(
         codelet,
         STARPU_VALUE,    &h,                   sizeof(int),