Index: kernel/generic/include/console/console.h
===================================================================
--- kernel/generic/include/console/console.h	(revision 2f33fbc9504dfbfbeb2d4827e8753b7428860b26)
+++ kernel/generic/include/console/console.h	(revision ec85df023cbda2e09fb239a04dfe53f2b94df685)
@@ -67,5 +67,5 @@
 extern wchar_t getc(indev_t *indev);
 extern size_t gets(indev_t *indev, char *buf, size_t buflen);
-extern sysarg_t sys_klog(int fd, const void *buf, size_t size);
+extern sysarg_t sys_klog(int cmd, const void *buf, size_t size);
 
 extern void grab_console(void);
Index: kernel/generic/src/console/console.c
===================================================================
--- kernel/generic/src/console/console.c	(revision 2f33fbc9504dfbfbeb2d4827e8753b7428860b26)
+++ kernel/generic/src/console/console.c	(revision ec85df023cbda2e09fb239a04dfe53f2b94df685)
@@ -52,4 +52,5 @@
 #include <errno.h>
 #include <str.h>
+#include <abi/klog.h>
 
 #define KLOG_PAGES    8
@@ -335,9 +336,20 @@
  *
  */
-sysarg_t sys_klog(int fd, const void *buf, size_t size)
+sysarg_t sys_klog(int cmd, const void *buf, size_t size)
 {
 	char *data;
 	int rc;
-	
+
+	switch (cmd) {
+	case KLOG_UPDATE:
+		klog_update(NULL);
+		return EOK;
+	case KLOG_WRITE:
+	case KLOG_COMMAND:
+		break;
+	default:
+		return ENOTSUP;
+	}
+
 	if (size > PAGE_SIZE)
 		return (sysarg_t) ELIMIT;
