Index: kernel/generic/include/ddi/ddi.h
===================================================================
--- kernel/generic/include/ddi/ddi.h	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ kernel/generic/include/ddi/ddi.h	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -54,5 +54,4 @@
 extern unative_t sys_physmem_map(unative_t, unative_t, unative_t, unative_t);
 extern unative_t sys_iospace_enable(ddi_ioarg_t *);
-extern unative_t sys_preempt_control(int);
 
 /*
Index: kernel/generic/include/security/cap.h
===================================================================
--- kernel/generic/include/security/cap.h	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ kernel/generic/include/security/cap.h	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -70,12 +70,7 @@
 
 /**
- * CAP_PREEMPT_CONTROL allows its holder to disable/enable preemption.
- */
-#define CAP_PREEMPT_CONTROL	(1<<3)
-
-/**
  * CAP_IRQ_REG entitles its holder to register IRQ handlers.
  */
-#define CAP_IRQ_REG		(1<<4) 
+#define CAP_IRQ_REG		(1<<3) 
 
 typedef uint32_t cap_t;
Index: kernel/generic/include/syscall/syscall.h
===================================================================
--- kernel/generic/include/syscall/syscall.h	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ kernel/generic/include/syscall/syscall.h	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -80,5 +80,4 @@
 	SYS_PHYSMEM_MAP,
 	SYS_IOSPACE_ENABLE,
-	SYS_PREEMPT_CONTROL,
 	
 	SYS_SYSINFO_GET_TAG,
Index: kernel/generic/src/ddi/ddi.c
===================================================================
--- kernel/generic/src/ddi/ddi.c	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ kernel/generic/src/ddi/ddi.c	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -258,27 +258,4 @@
 }
 
-/** Disable or enable preemption.
- *
- * @param enable If non-zero, the preemption counter will be decremented,
- *               leading to potential enabling of preemption. Otherwise
- *               the preemption counter will be incremented, preventing
- *               preemption from occurring.
- *
- * @return Zero on success or EPERM if callers capabilities are not sufficient.
- *
- */
-unative_t sys_preempt_control(int enable)
-{
-	if (!(cap_get(TASK) & CAP_PREEMPT_CONTROL))
-		return EPERM;
-	
-	if (enable)
-		preemption_enable();
-	else
-		preemption_disable();
-	
-	return 0;
-}
-
 /** @}
  */
Index: kernel/generic/src/main/kinit.c
===================================================================
--- kernel/generic/src/main/kinit.c	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ kernel/generic/src/main/kinit.c	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -208,5 +208,5 @@
 			 */
 			cap_set(programs[i].task, CAP_CAP | CAP_MEM_MANAGER |
-			    CAP_IO_MANAGER | CAP_PREEMPT_CONTROL | CAP_IRQ_REG);
+			    CAP_IO_MANAGER | CAP_IRQ_REG);
 			
 			if (!ipc_phone_0)
Index: kernel/generic/src/syscall/syscall.c
===================================================================
--- kernel/generic/src/syscall/syscall.c	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ kernel/generic/src/syscall/syscall.c	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -159,5 +159,4 @@
 	(syshandler_t) sys_physmem_map,
 	(syshandler_t) sys_iospace_enable,
-	(syshandler_t) sys_preempt_control,
 	
 	/* Sysinfo syscalls */
Index: uspace/app/trace/syscalls.c
===================================================================
--- uspace/app/trace/syscalls.c	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ uspace/app/trace/syscalls.c	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -73,5 +73,4 @@
     [SYS_PHYSMEM_MAP] = { "physmem_map",		4,	V_ERRNO },
     [SYS_IOSPACE_ENABLE] = { "iospace_enable",		1,	V_ERRNO },
-    [SYS_PREEMPT_CONTROL] = { "preempt_control",	1,	V_ERRNO },
 
     [SYS_SYSINFO_GET_TAG] = { "sysinfo_get_tag",		2,	V_INTEGER },
Index: uspace/lib/c/generic/ddi.c
===================================================================
--- uspace/lib/c/generic/ddi.c	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ uspace/lib/c/generic/ddi.c	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -96,13 +96,4 @@
 }
 
-/** Interrupt control
- *
- * @param enable	1 - enable interrupts, 0 - disable interrupts
- */
-int preemption_control(int enable)
-{
-	return __SYSCALL1(SYS_PREEMPT_CONTROL, (sysarg_t) enable);
-}
-
 /** Enable PIO for specified I/O range.
  *
Index: uspace/lib/c/include/ddi.h
===================================================================
--- uspace/lib/c/include/ddi.h	(revision 7431b66531a16a53dda757d3e07d0ac028368f72)
+++ uspace/lib/c/include/ddi.h	(revision 2fa10f640409c06070df4329491173719b3e824c)
@@ -41,5 +41,4 @@
 extern int physmem_map(void *, void *, unsigned long, int);
 extern int iospace_enable(task_id_t, void *, unsigned long);
-extern int preemption_control(int);
 extern int pio_enable(void *, size_t, void **);
 
