On 2020-05-14 19:17, Jeffrey Hugo wrote:
The intvec handler stores the caches ee in a local variable for use inHi Jeff,
processing the intvec. It should instead use the current ee which is
read at the beginning of the intvec incase that the intvec is related to
an ee change. Otherwise, the handler might make the wrong decision
based on an incorrect ee.
Fixes: 3000f85b8f47 (bus: mhi: core: Add support for basic PM operations)
Signed-off-by: Jeffrey Hugo <jhugo@xxxxxxxxxxxxxx>
---
Âdrivers/bus/mhi/core/main.c | 2 +-
Â1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/bus/mhi/core/main.c b/drivers/bus/mhi/core/main.c
index 7272a5a..0a41fe5 100644
--- a/drivers/bus/mhi/core/main.c
+++ b/drivers/bus/mhi/core/main.c
@@ -386,8 +386,8 @@ irqreturn_t mhi_intvec_threaded_handler(int
irq_number, void *dev)
ÂÂÂÂ write_lock_irq(&mhi_cntrl->pm_lock);
ÂÂÂÂ if (MHI_REG_ACCESS_VALID(mhi_cntrl->pm_state)) {
ÂÂÂÂÂÂÂÂ state = mhi_get_mhi_state(mhi_cntrl);
-ÂÂÂÂÂÂÂ ee = mhi_cntrl->ee;
ÂÂÂÂÂÂÂÂ mhi_cntrl->ee = mhi_get_exec_env(mhi_cntrl);
+ÂÂÂÂÂÂÂ ee = mhi_cntrl->ee;
ÂÂÂÂ }
ÂÂÂÂ if (state == MHI_STATE_SYS_ERR) {
Let's hold off on this change for now please as we have some good set of
bug fixes and improvements coming in very soon. They're only pending post
to LKML.