diff --git a/drivers/misc/mei/interrupt.c b/drivers/misc/mei/interrupt.c index 5aab335f585baba6984d43ce4f626e5866e5aaa6..2fbf0c0625edbe7e839a9dcc7c44193625d8294c 100644 --- a/drivers/misc/mei/interrupt.c +++ b/drivers/misc/mei/interrupt.c @@ -187,6 +187,7 @@ static int mei_cl_irq_disconnect_rsp(struct mei_cl *cl, struct mei_cl_cb *cb, cl->state = MEI_FILE_DISCONNECTED; cl->status = 0; + list_del(&cb->list); mei_io_cb_free(cb); return ret; @@ -522,6 +523,7 @@ int mei_irq_write_handler(struct mei_device *dev, struct mei_cl_cb *cmpl_list) ret = mei_cl_irq_disconnect_rsp(cl, cb, cmpl_list); if (ret) return ret; + break; default: BUG(); }