mei: fix regressions caused by removing ext_msg

1. Delete cb from list before freeing it
2. Fix missed break that leads to
switch case fall-through and BUG invocation.

Regression from:
commit 6bb948c9e500d24321c36c67c81daf8d1a7e561e
mei: get rid of ext_msg

Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/drivers/misc/mei/interrupt.c b/drivers/misc/mei/interrupt.c
index 5aab335..2fbf0c0 100644
--- a/drivers/misc/mei/interrupt.c
+++ b/drivers/misc/mei/interrupt.c
@@ -187,6 +187,7 @@
 
 	cl->state = MEI_FILE_DISCONNECTED;
 	cl->status = 0;
+	list_del(&cb->list);
 	mei_io_cb_free(cb);
 
 	return ret;
@@ -522,6 +523,7 @@
 			ret = mei_cl_irq_disconnect_rsp(cl, cb, cmpl_list);
 			if (ret)
 				return ret;
+			break;
 		default:
 			BUG();
 		}