linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [char-misc 0/2] mei; updates for 4.18-rc2
@ 2018-06-06 21:31 Tomas Winkler
  2018-06-06 21:31 ` [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define Tomas Winkler
  2018-06-06 21:31 ` [char-misc 2/2] mei: discard messages from not connected client during power down Tomas Winkler
  0 siblings, 2 replies; 6+ messages in thread
From: Tomas Winkler @ 2018-06-06 21:31 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Alexander Usyskin, linux-kernel, Tomas Winkler

A bug for long lasting regression and trivial cleanup.
Hope this can make its way to 4.18.

Alexander Usyskin (2):
  mei: remove unused MEI_IAMTHIF_STALL_TIMER define
  mei: discard messages from not connected client during power down.

 drivers/misc/mei/hw.h        | 2 --
 drivers/misc/mei/interrupt.c | 5 ++++-
 2 files changed, 4 insertions(+), 3 deletions(-)

-- 
2.14.4

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define
  2018-06-06 21:31 [char-misc 0/2] mei; updates for 4.18-rc2 Tomas Winkler
@ 2018-06-06 21:31 ` Tomas Winkler
  2018-07-03 11:11   ` Greg Kroah-Hartman
  2018-06-06 21:31 ` [char-misc 2/2] mei: discard messages from not connected client during power down Tomas Winkler
  1 sibling, 1 reply; 6+ messages in thread
From: Tomas Winkler @ 2018-06-06 21:31 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Alexander Usyskin, linux-kernel, Tomas Winkler

From: Alexander Usyskin <alexander.usyskin@intel.com>

MEI_IAMTHIF_STALL_TIMER is unused now and can be safely removed.

Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
---
 drivers/misc/mei/hw.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/misc/mei/hw.h b/drivers/misc/mei/hw.h
index 5c8286b40b62..3b325d955fbe 100644
--- a/drivers/misc/mei/hw.h
+++ b/drivers/misc/mei/hw.h
@@ -28,8 +28,6 @@
 #define MEI_CL_CONNECT_TIMEOUT     15  /* HPS: Client Connect Timeout */
 #define MEI_CLIENTS_INIT_TIMEOUT   15  /* HPS: Clients Enumeration Timeout */
 
-#define MEI_IAMTHIF_STALL_TIMER    12  /* HPS */
-
 #define MEI_PGI_TIMEOUT             1  /* PG Isolation time response 1 sec */
 #define MEI_D0I3_TIMEOUT            5  /* D0i3 set/unset max response time */
 #define MEI_HBM_TIMEOUT             1  /* 1 second */
-- 
2.14.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [char-misc 2/2] mei: discard messages from not connected client during power down.
  2018-06-06 21:31 [char-misc 0/2] mei; updates for 4.18-rc2 Tomas Winkler
  2018-06-06 21:31 ` [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define Tomas Winkler
@ 2018-06-06 21:31 ` Tomas Winkler
  1 sibling, 0 replies; 6+ messages in thread
From: Tomas Winkler @ 2018-06-06 21:31 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Alexander Usyskin, linux-kernel, stable, Tomas Winkler

From: Alexander Usyskin <alexander.usyskin@intel.com>

This fixes regression introduced by
commit 8d52af6795c0 ("mei: speed up the power down flow")

In power down or suspend flow a message can still be received
from the FW because the clients fake disconnection.
In normal case we interpret messages w/o destination as corrupted
and link reset is performed in order to clean the channel,
but during power down link reset is already in progress resulting
in endless loop. To resolve the issue under power down flow we
discard messages silently.

Cc: <stable@vger.kernel.org> 4.16+
Fixes: 8d52af6795c0 ("mei: speed up the power down flow")
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199541
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
---
 drivers/misc/mei/interrupt.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/misc/mei/interrupt.c b/drivers/misc/mei/interrupt.c
index b0b8f18a85e3..6649f0d56d2f 100644
--- a/drivers/misc/mei/interrupt.c
+++ b/drivers/misc/mei/interrupt.c
@@ -310,8 +310,11 @@ int mei_irq_read_handler(struct mei_device *dev,
 	if (&cl->link == &dev->file_list) {
 		/* A message for not connected fixed address clients
 		 * should be silently discarded
+		 * On power down client may be force cleaned,
+		 * silently discard such messages
 		 */
-		if (hdr_is_fixed(mei_hdr)) {
+		if (hdr_is_fixed(mei_hdr) ||
+		    dev->dev_state == MEI_DEV_POWER_DOWN) {
 			mei_irq_discard_msg(dev, mei_hdr);
 			ret = 0;
 			goto reset_slots;
-- 
2.14.4

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define
  2018-06-06 21:31 ` [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define Tomas Winkler
@ 2018-07-03 11:11   ` Greg Kroah-Hartman
  2018-07-03 11:28     ` Winkler, Tomas
  0 siblings, 1 reply; 6+ messages in thread
From: Greg Kroah-Hartman @ 2018-07-03 11:11 UTC (permalink / raw)
  To: Tomas Winkler; +Cc: Alexander Usyskin, linux-kernel

On Thu, Jun 07, 2018 at 12:31:47AM +0300, Tomas Winkler wrote:
> From: Alexander Usyskin <alexander.usyskin@intel.com>
> 
> MEI_IAMTHIF_STALL_TIMER is unused now and can be safely removed.
> 
> Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
> ---
>  drivers/misc/mei/hw.h | 2 --
>  1 file changed, 2 deletions(-)

Not a regression fix :(

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define
  2018-07-03 11:11   ` Greg Kroah-Hartman
@ 2018-07-03 11:28     ` Winkler, Tomas
  2018-07-03 11:38       ` Greg Kroah-Hartman
  0 siblings, 1 reply; 6+ messages in thread
From: Winkler, Tomas @ 2018-07-03 11:28 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Usyskin, Alexander, linux-kernel


> 
> On Thu, Jun 07, 2018 at 12:31:47AM +0300, Tomas Winkler wrote:
> > From: Alexander Usyskin <alexander.usyskin@intel.com>
> >
> > MEI_IAMTHIF_STALL_TIMER is unused now and can be safely removed.
> >
> > Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
> > Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
> > ---
> >  drivers/misc/mei/hw.h | 2 --
> >  1 file changed, 2 deletions(-)
> 
> Not a regression fix :(

No problem, please merge to next.
Thanks
Tomas


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define
  2018-07-03 11:28     ` Winkler, Tomas
@ 2018-07-03 11:38       ` Greg Kroah-Hartman
  0 siblings, 0 replies; 6+ messages in thread
From: Greg Kroah-Hartman @ 2018-07-03 11:38 UTC (permalink / raw)
  To: Winkler, Tomas; +Cc: Usyskin, Alexander, linux-kernel

On Tue, Jul 03, 2018 at 11:28:12AM +0000, Winkler, Tomas wrote:
> 
> > 
> > On Thu, Jun 07, 2018 at 12:31:47AM +0300, Tomas Winkler wrote:
> > > From: Alexander Usyskin <alexander.usyskin@intel.com>
> > >
> > > MEI_IAMTHIF_STALL_TIMER is unused now and can be safely removed.
> > >
> > > Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
> > > Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
> > > ---
> > >  drivers/misc/mei/hw.h | 2 --
> > >  1 file changed, 2 deletions(-)
> > 
> > Not a regression fix :(
> 
> No problem, please merge to next.

Already done! :)

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-07-03 11:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-06 21:31 [char-misc 0/2] mei; updates for 4.18-rc2 Tomas Winkler
2018-06-06 21:31 ` [char-misc 1/2] mei: remove unused MEI_IAMTHIF_STALL_TIMER define Tomas Winkler
2018-07-03 11:11   ` Greg Kroah-Hartman
2018-07-03 11:28     ` Winkler, Tomas
2018-07-03 11:38       ` Greg Kroah-Hartman
2018-06-06 21:31 ` [char-misc 2/2] mei: discard messages from not connected client during power down Tomas Winkler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).