diff --git a/monitor/control.c b/monitor/control.c
index f6b2291..9bbdc37 100644
--- a/monitor/control.c
+++ b/monitor/control.c
@@ -57,7 +57,7 @@
 
 static struct btsnoop *btsnoop_file = NULL;
 static bool hcidump_fallback = false;
-static int mgmt_control_fd = -1;
+static bool decode_control = true;
 
 struct control_data {
 	uint16_t channel;
@@ -798,6 +798,9 @@
 
 void control_message(uint16_t opcode, const void *data, uint16_t size)
 {
+	if (!decode_control)
+		return;
+
 	switch (opcode) {
 	case MGMT_EV_INDEX_ADDED:
 		mgmt_index_added(size, data);
@@ -1044,7 +1047,7 @@
 
 	mainloop_add_fd(data->fd, EPOLLIN, data_callback, data, free_data);
 
-	return data->fd;
+	return 0;
 }
 
 static void client_callback(int fd, uint32_t events, void *user_data)
@@ -1447,16 +1450,12 @@
 		return 0;
 	}
 
-	mgmt_control_fd = open_channel(HCI_CHANNEL_CONTROL);
+	open_channel(HCI_CHANNEL_CONTROL);
 
 	return 0;
 }
 
-void control_disable_legacy(void)
+void control_disable_decoding(void)
 {
-	if (mgmt_control_fd < 0)
-		return;
-
-	close(mgmt_control_fd);
-	mgmt_control_fd = -1;
+	decode_control = false;
 }
diff --git a/monitor/control.h b/monitor/control.h
index 05db635..630a852 100644
--- a/monitor/control.h
+++ b/monitor/control.h
@@ -29,6 +29,6 @@
 void control_server(const char *path);
 int control_tty(const char *path, unsigned int speed);
 int control_tracing(void);
-void control_disable_legacy(void);
+void control_disable_decoding(void);
 
 void control_message(uint16_t opcode, const void *data, uint16_t size);
diff --git a/monitor/packet.c b/monitor/packet.c
index 7ef0157..9dc709e 100644
--- a/monitor/packet.c
+++ b/monitor/packet.c
@@ -3898,7 +3898,7 @@
 					data + sizeof(*ul) + ul->ident_len);
 		break;
 	case BTSNOOP_OPCODE_CTRL_OPEN:
-		control_disable_legacy();
+		control_disable_decoding();
 		packet_ctrl_open(tv, cred, index, data, size);
 		break;
 	case BTSNOOP_OPCODE_CTRL_CLOSE:
