diff --git a/runtime/starpu/control/runtime_descriptor.c b/runtime/starpu/control/runtime_descriptor.c
index eb7e90a0a373542a5b80a1103b2f9c3c2a0065b8..625c397de498960af596ef764d90df6bc7b37bb4 100644
--- a/runtime/starpu/control/runtime_descriptor.c
+++ b/runtime/starpu/control/runtime_descriptor.c
@@ -123,7 +123,7 @@ void RUNTIME_desc_create( MORSE_desc_t *desc )
                 morse_error("RUNTIME_desc_create", "MPI_TAG_UB not known by MPI");
             }
 
-            while ( ((uintptr_t)(1UL<<tag_width) >= (uint)(*tag_ub) )
+            while ( ((uintptr_t)(1UL<<tag_width) > (uint)(*tag_ub) )
                     && (tag_width >= TAG_WIDTH_MIN) ) {
                 tag_width--;
                 tag_sep--;