Index: uspace/srv/fs/exfat/exfat_fat.c
===================================================================
--- uspace/srv/fs/exfat/exfat_fat.c	(revision d9aeab31399f37485a1039202728b23f84e758aa)
+++ uspace/srv/fs/exfat/exfat_fat.c	(revision 8a06c1b5757e4bf62f5f56691f407750e9389c43)
@@ -194,5 +194,5 @@
 	int rc;
 
-	if (fcl < EXFAT_CLST_FIRST)
+	if (fcl < EXFAT_CLST_FIRST || fcl > DATA_CNT(bs)+2)
 		return ELIMIT;
 
@@ -476,4 +476,26 @@
 }
 
+int
+exfat_zero_cluster(exfat_bs_t *bs, devmap_handle_t devmap_handle, exfat_cluster_t c)
+{
+	size_t i;
+	block_t *b;
+	int rc;
+
+	for (i = 0; i < SPC(bs); i++) {
+		rc = exfat_block_get_by_clst(&b, bs, devmap_handle, false, c, NULL, i,
+		    BLOCK_FLAGS_NOREAD);
+		if (rc != EOK)
+			return rc;
+		memset(b->data, 0, BPS(bs));
+		b->dirty = true;
+		rc = block_put(b);
+		if (rc != EOK)
+			return rc;
+	}
+
+	return EOK;
+}
+
 /** Perform basic sanity checks on the file system.
  *
Index: uspace/srv/fs/exfat/exfat_fat.h
===================================================================
--- uspace/srv/fs/exfat/exfat_fat.h	(revision d9aeab31399f37485a1039202728b23f84e758aa)
+++ uspace/srv/fs/exfat/exfat_fat.h	(revision 8a06c1b5757e4bf62f5f56691f407750e9389c43)
@@ -83,5 +83,6 @@
     exfat_cluster_t *, exfat_cluster_t *);
 extern int exfat_free_clusters(struct exfat_bs *, devmap_handle_t, exfat_cluster_t);
-
+extern int exfat_zero_cluster(struct exfat_bs * bs, devmap_handle_t devmap_handle, 
+    exfat_cluster_t mcl);
 
 #endif
