Index: uspace/srv/hid/adb_mouse/adb_dev.c
===================================================================
--- uspace/srv/hid/adb_mouse/adb_dev.c	(revision 124c0612c8daeba21701095e42877933875fb33a)
+++ uspace/srv/hid/adb_mouse/adb_dev.c	(revision 3c22f7021df532f9625f32db5da18694b800e183)
@@ -68,11 +68,12 @@
 
 	/* NB: The callback connection is slotted for removal */
+	sysarg_t taskhash;
 	sysarg_t phonehash;
-	if (ipc_connect_to_me(dev_phone, 0, 0, 0, NULL, &phonehash) != 0) {
+	if (ipc_connect_to_me(dev_phone, 0, 0, 0, &taskhash, &phonehash) != 0) {
 		printf(NAME ": Failed to create callback from device\n");
 		return false;
 	}
 
-	async_new_connection(phonehash, 0, NULL, adb_dev_events);
+	async_new_connection(taskhash, phonehash, 0, NULL, adb_dev_events);
 
 	return 0;
Index: uspace/srv/hid/char_mouse/chardev.c
===================================================================
--- uspace/srv/hid/char_mouse/chardev.c	(revision 124c0612c8daeba21701095e42877933875fb33a)
+++ uspace/srv/hid/char_mouse/chardev.c	(revision 3c22f7021df532f9625f32db5da18694b800e183)
@@ -70,11 +70,12 @@
 
 	/* NB: The callback connection is slotted for removal */
+	sysarg_t taskhash;
 	sysarg_t phonehash;
-	if (ipc_connect_to_me(dev_phone, 0, 0, 0, NULL, &phonehash) != 0) {
+	if (ipc_connect_to_me(dev_phone, 0, 0, 0, &taskhash, &phonehash) != 0) {
 		printf(NAME ": Failed to create callback from device\n");
 		return false;
 	}
 
-	async_new_connection(phonehash, 0, NULL, chardev_events);
+	async_new_connection(taskhash, phonehash, 0, NULL, chardev_events);
 
 	return 0;
Index: uspace/srv/hid/console/console.c
===================================================================
--- uspace/srv/hid/console/console.c	(revision 124c0612c8daeba21701095e42877933875fb33a)
+++ uspace/srv/hid/console/console.c	(revision 3c22f7021df532f9625f32db5da18694b800e183)
@@ -726,6 +726,7 @@
 	
 	/* NB: The callback connection is slotted for removal */
+	sysarg_t taskhash;
 	sysarg_t phonehash;
-	if (ipc_connect_to_me(kbd_phone, SERVICE_CONSOLE, 0, 0, NULL,
+	if (ipc_connect_to_me(kbd_phone, SERVICE_CONSOLE, 0, 0, &taskhash,
 	    &phonehash) != 0) {
 		printf(NAME ": Failed to create callback from input device\n");
@@ -733,5 +734,5 @@
 	}
 	
-	async_new_connection(phonehash, 0, NULL, keyboard_events);
+	async_new_connection(taskhash, phonehash, 0, NULL, keyboard_events);
 	
 	/* Connect to mouse device */
@@ -750,5 +751,5 @@
 	}
 	
-	if (ipc_connect_to_me(mouse_phone, SERVICE_CONSOLE, 0, 0, NULL,
+	if (ipc_connect_to_me(mouse_phone, SERVICE_CONSOLE, 0, 0, &taskhash,
 	    &phonehash) != 0) {
 		printf(NAME ": Failed to create callback from mouse device\n");
@@ -757,5 +758,5 @@
 	}
 	
-	async_new_connection(phonehash, 0, NULL, mouse_events);
+	async_new_connection(taskhash, phonehash, 0, NULL, mouse_events);
 skip_mouse:
 	
Index: uspace/srv/hid/kbd/port/adb.c
===================================================================
--- uspace/srv/hid/kbd/port/adb.c	(revision 124c0612c8daeba21701095e42877933875fb33a)
+++ uspace/srv/hid/kbd/port/adb.c	(revision 3c22f7021df532f9625f32db5da18694b800e183)
@@ -71,11 +71,12 @@
 
 	/* NB: The callback connection is slotted for removal */
+	sysarg_t taskhash;
 	sysarg_t phonehash;
-	if (ipc_connect_to_me(dev_phone, 0, 0, 0, NULL, &phonehash) != 0) {
+	if (ipc_connect_to_me(dev_phone, 0, 0, 0, &taskhash, &phonehash) != 0) {
 		printf(NAME ": Failed to create callback from device\n");
 		return false;
 	}
 
-	async_new_connection(phonehash, 0, NULL, kbd_port_events);
+	async_new_connection(taskhash, phonehash, 0, NULL, kbd_port_events);
 
 	return 0;
Index: uspace/srv/hid/kbd/port/chardev.c
===================================================================
--- uspace/srv/hid/kbd/port/chardev.c	(revision 124c0612c8daeba21701095e42877933875fb33a)
+++ uspace/srv/hid/kbd/port/chardev.c	(revision 3c22f7021df532f9625f32db5da18694b800e183)
@@ -91,11 +91,12 @@
 
 	/* NB: The callback connection is slotted for removal */
+	sysarg_t taskhash;
 	sysarg_t phonehash;
-	if (ipc_connect_to_me(dev_phone, 0, 0, 0, NULL, &phonehash) != 0) {
+	if (ipc_connect_to_me(dev_phone, 0, 0, 0, &taskhash, &phonehash) != 0) {
 		printf(NAME ": Failed to create callback from device\n");
 		return -1;
 	}
 
-	async_new_connection(phonehash, 0, NULL, kbd_port_events);
+	async_new_connection(taskhash, phonehash, 0, NULL, kbd_port_events);
 
 	return 0;
