Index: kernel/genarch/src/drivers/ega/ega.c
===================================================================
--- kernel/genarch/src/drivers/ega/ega.c	(revision 712c4bac34d2d8ac8d7e35e7e48ff1c293c0ffb8)
+++ kernel/genarch/src/drivers/ega/ega.c	(revision e06e27166f1b30422fc5f34049108ea34cdd2cfb)
@@ -40,5 +40,4 @@
 #include <mm/as.h>
 #include <mm/slab.h>
-#include <synch/mutex.h>
 #include <arch/mm/page.h>
 #include <typedefs.h>
@@ -63,5 +62,5 @@
 
 typedef struct {
-	mutex_t mtx;
+	IRQ_SPINLOCK_DECLARE(lock);
 	
 	uint32_t cursor;
@@ -540,5 +539,5 @@
 	ega_instance_t *instance = (ega_instance_t *) dev->data;
 	
-	mutex_lock(&instance->mtx);
+	irq_spinlock_lock(&instance->lock, true);
 	
 	switch (ch) {
@@ -563,5 +562,5 @@
 	ega_move_cursor(instance, silent);
 	
-	mutex_unlock(&instance->mtx);
+	irq_spinlock_unlock(&instance->lock, true);
 }
 
@@ -570,5 +569,5 @@
 	ega_instance_t *instance = (ega_instance_t *) dev->data;
 	
-	mutex_lock(&instance->mtx);
+	irq_spinlock_lock(&instance->lock, true);
 	
 	memcpy(instance->addr, instance->backbuf, EGA_VRAM_SIZE);
@@ -576,5 +575,5 @@
 	ega_show_cursor(instance, silent);
 	
-	mutex_unlock(&instance->mtx);
+	irq_spinlock_unlock(&instance->lock, true);
 }
 
@@ -594,5 +593,5 @@
 	egadev->data = instance;
 	
-	mutex_initialize(&instance->mtx, MUTEX_PASSIVE);
+	irq_spinlock_initialize(&instance->lock, "*ega.instance.lock");
 	
 	instance->base = base;
Index: kernel/genarch/src/fb/fb.c
===================================================================
--- kernel/genarch/src/fb/fb.c	(revision 712c4bac34d2d8ac8d7e35e7e48ff1c293c0ffb8)
+++ kernel/genarch/src/fb/fb.c	(revision e06e27166f1b30422fc5f34049108ea34cdd2cfb)
@@ -80,5 +80,5 @@
 
 typedef struct {
-	mutex_t mtx;
+	SPINLOCK_DECLARE(lock);
 	
 	uint8_t *addr;
@@ -365,5 +365,5 @@
 {
 	fb_instance_t *instance = (fb_instance_t *) dev->data;
-	mutex_lock(&instance->mtx);
+	spinlock_lock(&instance->lock);
 	
 	switch (ch) {
@@ -406,5 +406,5 @@
 	cursor_put(instance, silent);
 	
-	mutex_unlock(&instance->mtx);
+	spinlock_unlock(&instance->lock);
 }
 
@@ -473,7 +473,7 @@
 	fb_instance_t *instance = (fb_instance_t *) dev->data;
 	
-	mutex_lock(&instance->mtx);
+	spinlock_lock(&instance->lock);
 	fb_redraw_internal(instance);
-	mutex_unlock(&instance->mtx);
+	spinlock_unlock(&instance->lock);
 }
 
@@ -554,5 +554,5 @@
 	fbdev->data = instance;
 	
-	mutex_initialize(&instance->mtx, MUTEX_PASSIVE);
+	spinlock_initialize(&instance->lock, "*fb.instance.lock");
 	instance->rgb_conv = rgb_conv;
 	instance->pixelbytes = pixelbytes;
