Я не слышал об этом - звучит как БАГ.
Может быть лучше выбрать более прагматичный подход, разделив операцию перемещения на FO_COPY, за которой следует FO_DELETE (при условии, что операция FO_COPY завершилась успешно).
Кроме того, вы могли бы получить некоторую эффективность, если бы ваша реализация могла обнаружить, когда исходный и целевой тома совпадают.В этом случае вы сможете вернуться к FO_MOVE.Операция перемещения на том же томе обычно переходит к перемещению переименования + метаданных.