Index: uspace/app/klog/klog.c
===================================================================
--- uspace/app/klog/klog.c	(revision e0f52bf734d3ec774636ecbab7cd664786001b5c)
+++ uspace/app/klog/klog.c	(revision f9061b499e4439544d82ae29d075f8782dde1065)
@@ -74,4 +74,6 @@
 		fsync(fileno(log));
 	}
+	
+	event_unmask(EVENT_KLOG);
 }
 
@@ -111,11 +113,4 @@
 	}
 	
-	rc = event_subscribe(EVENT_KLOG, 0);
-	if (rc != EOK) {
-		fprintf(stderr, "%s: Unable to register klog notifications\n",
-		    NAME);
-		return rc;
-	}
-	
 	log = fopen(LOG_FNAME, "a");
 	if (log == NULL)
@@ -124,4 +119,14 @@
 	
 	async_set_interrupt_received(interrupt_received);
+	rc = event_subscribe(EVENT_KLOG, 0);
+	if (rc != EOK) {
+		fclose(log);
+		fprintf(stderr, "%s: Unable to register klog notifications\n",
+		    NAME);
+		return rc;
+	}
+	
+	event_unmask(EVENT_KLOG);
+	
 	klog_update();
 	async_manager();
Index: uspace/lib/c/generic/event.c
===================================================================
--- uspace/lib/c/generic/event.c	(revision e0f52bf734d3ec774636ecbab7cd664786001b5c)
+++ uspace/lib/c/generic/event.c	(revision f9061b499e4439544d82ae29d075f8782dde1065)
@@ -41,14 +41,28 @@
 #include <kernel/ipc/event_types.h>
 
-/** Subscribe for event notifications.
+/** Subscribe event notifications.
  *
- * @param evno   Event number.
- * @param method Use this method for notifying me.
+ * @param evno    Event type to subscribe.
+ * @param imethod Use this interface and method for notifying me.
  *
  * @return Value returned by the kernel.
+ *
  */
-int event_subscribe(event_type_t e, sysarg_t method)
+int event_subscribe(event_type_t evno, sysarg_t imethod)
 {
-	return __SYSCALL2(SYS_EVENT_SUBSCRIBE, (sysarg_t) e, (sysarg_t) method);
+	return __SYSCALL2(SYS_EVENT_SUBSCRIBE, (sysarg_t) evno,
+	    (sysarg_t) imethod);
+}
+
+/** Unmask event notifications.
+ *
+ * @param evno Event type to unmask.
+ *
+ * @return Value returned by the kernel.
+ *
+ */
+int event_unmask(event_type_t evno)
+{
+	return __SYSCALL1(SYS_EVENT_UNMASK, (sysarg_t) evno);
 }
 
Index: uspace/lib/c/include/event.h
===================================================================
--- uspace/lib/c/include/event.h	(revision e0f52bf734d3ec774636ecbab7cd664786001b5c)
+++ uspace/lib/c/include/event.h	(revision f9061b499e4439544d82ae29d075f8782dde1065)
@@ -39,4 +39,5 @@
 
 extern int event_subscribe(event_type_t, sysarg_t);
+extern int event_unmask(event_type_t);
 
 #endif
