Index: uspace/srv/audio/hound/audio_device.c
===================================================================
--- uspace/srv/audio/hound/audio_device.c	(revision c6bf6becd39d1328058788bc83cba7c025f22d48)
+++ uspace/srv/audio/hound/audio_device.c	(revision 04ecc6df166749e3133297733e30b460612c119f)
@@ -162,5 +162,5 @@
 		}
 		audio_pcm_register_event_callback(dev->sess,
-		    device_event_callback, dev);\
+		    device_event_callback, dev);
 
 		/* Fill the buffer first. Fill the first two fragments,
Index: uspace/srv/fs/ext4fs/ext4fs_ops.c
===================================================================
--- uspace/srv/fs/ext4fs/ext4fs_ops.c	(revision c6bf6becd39d1328058788bc83cba7c025f22d48)
+++ uspace/srv/fs/ext4fs/ext4fs_ops.c	(revision 04ecc6df166749e3133297733e30b460612c119f)
@@ -876,6 +876,4 @@
 	if (rc != EOK)
 		return rc;
-	if (NULL == inst)
-		return ENOENT;
 
 	ext4_superblock_t *sb = inst->filesystem->superblock;
Index: uspace/srv/fs/mfs/mfs.h
===================================================================
--- uspace/srv/fs/mfs/mfs.h	(revision c6bf6becd39d1328058788bc83cba7c025f22d48)
+++ uspace/srv/fs/mfs/mfs.h	(revision 04ecc6df166749e3133297733e30b460612c119f)
@@ -44,4 +44,5 @@
 #include <errno.h>
 #include <assert.h>
+#include <stdbool.h>
 #include "../../vfs/vfs.h"
 
@@ -105,4 +106,14 @@
 	unsigned isearch;
 	unsigned zsearch;
+
+	/* Indicates wether if the cached number of free zones
+	 * is to be considered valid or not.
+	 */
+	bool nfree_zones_valid;
+	/* Cached number of free zones, used to avoid to scan
+	 * the whole bitmap every time the mfs_free_block_count()
+	 * is invoked.
+	 */
+	unsigned nfree_zones;
 };
 
Index: uspace/srv/fs/mfs/mfs_balloc.c
===================================================================
--- uspace/srv/fs/mfs/mfs_balloc.c	(revision c6bf6becd39d1328058788bc83cba7c025f22d48)
+++ uspace/srv/fs/mfs/mfs_balloc.c	(revision 04ecc6df166749e3133297733e30b460612c119f)
@@ -88,4 +88,11 @@
 {
 	int r = mfs_alloc_bit(inst, zone, BMAP_ZONE);
+	if (r != EOK)
+		return r;
+
+	/* Update the cached number of free zones */
+	struct mfs_sb_info *sbi = inst->sbi;
+	if (sbi->nfree_zones_valid)
+		sbi->nfree_zones--;
 
 	*zone += inst->sbi->firstdatazone - 1;
@@ -103,7 +110,18 @@
 mfs_free_zone(struct mfs_instance *inst, uint32_t zone)
 {
+	int r;
+
 	zone -= inst->sbi->firstdatazone - 1;
 
-	return mfs_free_bit(inst, zone, BMAP_ZONE);
+	r = mfs_free_bit(inst, zone, BMAP_ZONE);
+	if (r != EOK)
+		return r;
+
+	/* Update the cached number of free zones */
+	struct mfs_sb_info *sbi = inst->sbi;
+	if (sbi->nfree_zones_valid)
+		sbi->nfree_zones++;
+
+	return r;
 }
 
Index: uspace/srv/fs/mfs/mfs_ops.c
===================================================================
--- uspace/srv/fs/mfs/mfs_ops.c	(revision c6bf6becd39d1328058788bc83cba7c025f22d48)
+++ uspace/srv/fs/mfs/mfs_ops.c	(revision 04ecc6df166749e3133297733e30b460612c119f)
@@ -216,4 +216,6 @@
 	sbi->isearch = 0;
 	sbi->zsearch = 0;
+	sbi->nfree_zones_valid = false;
+	sbi->nfree_zones = 0;
 
 	if (version == MFS_VERSION_V3) {
@@ -1181,11 +1183,23 @@
 		return rc;
 
-	if (NULL == inst)
-		return ENOENT;
-
-	mfs_count_free_zones(inst, &block_free);
-	*count = block_free;
-
-	return EOK;
+	struct mfs_sb_info *sbi = inst->sbi;
+
+	if (!sbi->nfree_zones_valid) {
+		/* The cached number of free zones is not valid,
+		 * we need to scan the bitmap to retrieve the
+		 * current value.
+		 */
+
+		rc = mfs_count_free_zones(inst, &block_free);
+		if (rc != EOK)
+			return rc;
+
+		sbi->nfree_zones = block_free;
+		sbi->nfree_zones_valid = true;
+	}
+
+	*count = sbi->nfree_zones;
+
+	return rc;
 }
 
Index: uspace/srv/hid/compositor/compositor.c
===================================================================
--- uspace/srv/hid/compositor/compositor.c	(revision c6bf6becd39d1328058788bc83cba7c025f22d48)
+++ uspace/srv/hid/compositor/compositor.c	(revision 04ecc6df166749e3133297733e30b460612c119f)
@@ -2176,5 +2176,5 @@
 	
 	/* Color of the viewport background. Must be opaque. */
-	bg_color = PIXEL(255, 75, 70, 75);
+	bg_color = PIXEL(255, 69, 51, 103);
 	
 	/* Register compositor server. */
