diff --git a/lustre/mdt/mdt_handler.c b/lustre/mdt/mdt_handler.c
index 833de462ccb918ce375ce6cf13a10017e7eb27aa..3640dc98fdb468047c581b29b90f80af03687f16 100644
--- a/lustre/mdt/mdt_handler.c
+++ b/lustre/mdt/mdt_handler.c
@@ -4588,6 +4588,7 @@ static int mdt_destroy_export(struct obd_export *export)
         spin_unlock(&med->med_open_lock);
 
         list_for_each_entry_safe(mfd, n, &closing_list, mfd_list) {
+                list_del_init(&mfd->mfd_list);
                 mdt_mfd_close(info, mfd);
                 /* TODO: if we close the unlinked file,
                  * we need to remove it's objects from OST */