vfs_catia will show unexpected behaviour if two async function A and B complete in the same order: CATIA_FETCH_FSP_PRE(A) CATIA_FETCH_FSP_PRE(B) CATIA_FETCH_FSP_POST(A) CATIA_FETCH_FSP_POST(B) The completion of A will restore the translated names on the fsp, so if B is still in flight and uses the names, it uses the wrong, untranslated ones. It's unlikely with just two operations in flight, but with more in flight, there's a real risk that the first one completes before all subsequent ones completed their work.