From: Alexander Usyskin <[email protected]>

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 <[email protected]>
Signed-off-by: Tomas Winkler <[email protected]>
---
 drivers/misc/mei/interrupt.c | 2 ++
 1 file changed, 2 insertions(+)

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 @@ 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();
                }
-- 
1.8.5.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to