Index: uspace/srv/fs/ext4fs/ext4fs_ops.c
===================================================================
--- uspace/srv/fs/ext4fs/ext4fs_ops.c	(revision 5f6cb144cd99beb2ee04425c1e008bcdf7cd70b8)
+++ uspace/srv/fs/ext4fs/ext4fs_ops.c	(revision e5f8762f9e1ae7002a61bcf86c0a75283fd2ab38)
@@ -469,9 +469,4 @@
 	// If directory - handle links from parent
 	if (lnk_count <= 1 && ext4fs_is_directory(cfn)) {
-
-		if (lnk_count) {
-			lnk_count--;
-		}
-
 		ext4_inode_ref_t *parent_inode_ref = EXT4FS_NODE(pfn)->inode_ref;
 
@@ -567,4 +562,15 @@
 unsigned ext4fs_lnkcnt_get(fs_node_t *fn)
 {
+	if (ext4fs_is_directory(fn)) {
+		if (lnkcnt > 1) {
+			EXT4FS_DBG("dir: returning \%u", 1);
+			return 1;
+		} else {
+			EXT4FS_DBG("dir: returning \%u", 0);
+			return 0;
+		}
+	}
+
+	// For regular files return real links count
 	ext4fs_node_t *enode = EXT4FS_NODE(fn);
 	return ext4_inode_get_links_count(enode->inode_ref->inode);
@@ -685,5 +691,4 @@
 		return rc;
 	}
-	ext4fs_node_t *enode = EXT4FS_NODE(root_node);
 
 	/* Add instance to the list */
@@ -694,5 +699,5 @@
 	*index = EXT4_INODE_ROOT_INDEX;
 	*size = 0;
-	*lnkcnt = ext4_inode_get_links_count(enode->inode_ref->inode);
+	*lnkcnt = 1;
 
 	ext4fs_node_put(root_node);
