linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* x32 suspend failuer in Re: linux-next: Tree for Apr 4
       [not found] <20180404165559.4cd0c12c@canb.auug.org.au>
@ 2018-04-04  7:50 ` Pavel Machek
  2018-04-04  7:58   ` Rafael J. Wysocki
  2018-04-06 22:41   ` x32 suspend failuer in Re: linux-next: Tree for Apr 4 Pavel Machek
  0 siblings, 2 replies; 9+ messages in thread
From: Pavel Machek @ 2018-04-04  7:50 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List,
	Linux-pm mailing list, Rafael J. Wysocki

[-- Attachment #1: Type: text/plain, Size: 488 bytes --]

Hi!

> Please do not add any v4.18 destined stuff to your linux-next included
> trees until after v4.17-rc1 has been released.

On thinkpad x60, suspend does not suspend at all with this -next
version. Previous versions suspended/resumed fine but broke networking.

Any ideas? I guess bisecting on next would not be easy?

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: x32 suspend failuer in Re: linux-next: Tree for Apr 4
  2018-04-04  7:50 ` x32 suspend failuer in Re: linux-next: Tree for Apr 4 Pavel Machek
@ 2018-04-04  7:58   ` Rafael J. Wysocki
  2018-04-04  8:49     ` Pavel Machek
  2018-04-06 22:41   ` x32 suspend failuer in Re: linux-next: Tree for Apr 4 Pavel Machek
  1 sibling, 1 reply; 9+ messages in thread
From: Rafael J. Wysocki @ 2018-04-04  7:58 UTC (permalink / raw)
  To: Pavel Machek
  Cc: Stephen Rothwell, Linux-Next Mailing List,
	Linux Kernel Mailing List, Linux-pm mailing list,
	Rafael J. Wysocki

On Wed, Apr 4, 2018 at 9:50 AM, Pavel Machek <pavel@ucw.cz> wrote:
> Hi!
>
>> Please do not add any v4.18 destined stuff to your linux-next included
>> trees until after v4.17-rc1 has been released.
>
> On thinkpad x60, suspend does not suspend at all with this -next
> version. Previous versions suspended/resumed fine but broke networking.
>
> Any ideas? I guess bisecting on next would not be easy?

Well, why would it be different from a bisect on any other git repo?

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

* Re: x32 suspend failuer in Re: linux-next: Tree for Apr 4
  2018-04-04  7:58   ` Rafael J. Wysocki
@ 2018-04-04  8:49     ` Pavel Machek
  2018-04-05 12:25       ` update-binfmts breaking suspend was " Pavel Machek
  0 siblings, 1 reply; 9+ messages in thread
From: Pavel Machek @ 2018-04-04  8:49 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: Stephen Rothwell, Linux-Next Mailing List,
	Linux Kernel Mailing List, Linux-pm mailing list,
	Rafael J. Wysocki

[-- Attachment #1: Type: text/plain, Size: 980 bytes --]

On Wed 2018-04-04 09:58:17, Rafael J. Wysocki wrote:
> On Wed, Apr 4, 2018 at 9:50 AM, Pavel Machek <pavel@ucw.cz> wrote:
> > Hi!
> >
> >> Please do not add any v4.18 destined stuff to your linux-next included
> >> trees until after v4.17-rc1 has been released.
> >
> > On thinkpad x60, suspend does not suspend at all with this -next
> > version. Previous versions suspended/resumed fine but broke networking.
> >
> > Any ideas? I guess bisecting on next would not be easy?
> 
> Well, why would it be different from a bisect on any other git repo?

Well, v4.16-rc4 is parent of v4.16-rc6, but next-20180304 is not
parent of next-20180307.

But you are right that if I do bisect between -linus and -next, it
should work.

Anyway, does s2ram work for you in -next? Are you testing 32bit?

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* update-binfmts breaking suspend was Re: x32 suspend failuer in Re: linux-next: Tree for Apr 4
  2018-04-04  8:49     ` Pavel Machek
@ 2018-04-05 12:25       ` Pavel Machek
  2018-04-05 20:30         ` Pavel Machek
  0 siblings, 1 reply; 9+ messages in thread
From: Pavel Machek @ 2018-04-05 12:25 UTC (permalink / raw)
  To: Rafael J. Wysocki, jikos
  Cc: Stephen Rothwell, Linux-Next Mailing List,
	Linux Kernel Mailing List, Linux-pm mailing list,
	Rafael J. Wysocki

[-- Attachment #1: Type: text/plain, Size: 2017 bytes --]

On Wed 2018-04-04 10:49:05, Pavel Machek wrote:
> On Wed 2018-04-04 09:58:17, Rafael J. Wysocki wrote:
> > On Wed, Apr 4, 2018 at 9:50 AM, Pavel Machek <pavel@ucw.cz> wrote:
> > > Hi!
> > >
> > >> Please do not add any v4.18 destined stuff to your linux-next included
> > >> trees until after v4.17-rc1 has been released.
> > >
> > > On thinkpad x60, suspend does not suspend at all with this -next
> > > version. Previous versions suspended/resumed fine but broke networking.
> > >
> > > Any ideas? I guess bisecting on next would not be easy?
> > 
> > Well, why would it be different from a bisect on any other git repo?
> 
> Well, v4.16-rc4 is parent of v4.16-rc6, but next-20180304 is not
> parent of next-20180307.
> 
> But you are right that if I do bisect between -linus and -next, it
> should work.
> 
> Anyway, does s2ram work for you in -next? Are you testing 32bit?

Hmm. I tested on T40p. That works ok, so at least some 32bit machines
do work.

Hmm, and my test scripts were wrong.

Failure is not a hang, as they expect, but... machine locks up, but
does not suspend, and then continues running after a delay..

[   35.038766] PM: Syncing filesystems ... done.
[   35.051246] Freezing user space processes ...
[   55.060528] Freezing of tasks failed after 20.009 seconds (1 tasks
refusing to freeze, wq_busy
=0):
[   55.060552] update-binfmts  D    0  2727      1 0x80000004
[   55.060576] Call Trace:
[   55.060600]  __schedule+0x37a/0x7e0
[   55.060618]  schedule+0x29/0x70
[   55.060635]  autofs4_wait+0x359/0x7a0
[   55.060653]  ? wait_woken+0x70/0x70
[   55.060668]  autofs4_mount_wait+0x4a/0xe0
[   55.060684]  ? autofs4_mount_wait+0x4a/0xe0
[   55.060699]  autofs4_d_automount+0xe0/0x200
[   55.060715]  ? autofs4_d_automount+0xe0/0x200

Did the rework of freezing start already in -next?


									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: update-binfmts breaking suspend was Re: x32 suspend failuer in Re: linux-next: Tree for Apr 4
  2018-04-05 12:25       ` update-binfmts breaking suspend was " Pavel Machek
@ 2018-04-05 20:30         ` Pavel Machek
  2018-04-05 22:27           ` Rafael J. Wysocki
       [not found]           ` <SN4PR2101MB073673B12998428D48DA62E5CBBA0@SN4PR2101MB0736.namprd21.prod.outlook.com>
  0 siblings, 2 replies; 9+ messages in thread
From: Pavel Machek @ 2018-04-05 20:30 UTC (permalink / raw)
  To: Rafael J. Wysocki, jikos, mawilcox, raven, akpm
  Cc: Stephen Rothwell, Linux-Next Mailing List,
	Linux Kernel Mailing List, Linux-pm mailing list,
	Rafael J. Wysocki

[-- Attachment #1: Type: text/plain, Size: 2226 bytes --]

Hi!

> > Well, v4.16-rc4 is parent of v4.16-rc6, but next-20180304 is not
> > parent of next-20180307.
> > 
> > But you are right that if I do bisect between -linus and -next, it
> > should work.
> > 
> > Anyway, does s2ram work for you in -next? Are you testing 32bit?
> 
> Hmm. I tested on T40p. That works ok, so at least some 32bit machines
> do work.
> 
> Hmm, and my test scripts were wrong.
> 
> Failure is not a hang, as they expect, but... machine locks up, but
> does not suspend, and then continues running after a delay..
> 
> [   35.038766] PM: Syncing filesystems ... done.
> [   35.051246] Freezing user space processes ...
> [   55.060528] Freezing of tasks failed after 20.009 seconds (1 tasks
> refusing to freeze, wq_busy
> =0):
> [   55.060552] update-binfmts  D    0  2727      1 0x80000004
> [   55.060576] Call Trace:
> [   55.060600]  __schedule+0x37a/0x7e0
> [   55.060618]  schedule+0x29/0x70
> [   55.060635]  autofs4_wait+0x359/0x7a0
> [   55.060653]  ? wait_woken+0x70/0x70
> [   55.060668]  autofs4_mount_wait+0x4a/0xe0
> [   55.060684]  ? autofs4_mount_wait+0x4a/0xe0
> [   55.060699]  autofs4_d_automount+0xe0/0x200
> [   55.060715]  ? autofs4_d_automount+0xe0/0x200
> 
> Did the rework of freezing start already in -next?

Hmm, so I did git bisect, and it pointed to:

commit 7cb03edf112fea6ead2fcd3c5fd639756d6d114b
Author: Matthew Wilcox <mawilcox@microsoft.com>
Date:   Thu Mar 29 10:15:17 2018 +1100

    autofs4: use wait_event_killable

    This playing with signals to allow only fatal signals appears to
    predate
        the introduction of wait_event_killable(), and I'm fairly sure
    that
        wait_event_killable is what was meant to happen here.

    Link:
    http://lkml.kernel.org/r/20180319191609.23880-1-willy@infradead.org
        Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
	    Acked-by: Ian Kent <raven@themaw.net>
	        Signed-off-by: Andrew Morton
    <akpm@linux-foundation.org>
        Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
	



-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: update-binfmts breaking suspend was Re: x32 suspend failuer in Re: linux-next: Tree for Apr 4
  2018-04-05 20:30         ` Pavel Machek
@ 2018-04-05 22:27           ` Rafael J. Wysocki
       [not found]           ` <SN4PR2101MB073673B12998428D48DA62E5CBBA0@SN4PR2101MB0736.namprd21.prod.outlook.com>
  1 sibling, 0 replies; 9+ messages in thread
From: Rafael J. Wysocki @ 2018-04-05 22:27 UTC (permalink / raw)
  To: Pavel Machek
  Cc: jikos, mawilcox, raven, akpm, sfr, Linux-Next Mailing List,
	Linux Kernel Mailing List, Linux-pm mailing list,
	Thorsten Leemhuis

On Thursday, April 5, 2018 10:30:45 PM CEST Pavel Machek wrote:
> Hi!
> 
> > > Well, v4.16-rc4 is parent of v4.16-rc6, but next-20180304 is not
> > > parent of next-20180307.
> > > 
> > > But you are right that if I do bisect between -linus and -next, it
> > > should work.
> > > 
> > > Anyway, does s2ram work for you in -next? Are you testing 32bit?
> > 
> > Hmm. I tested on T40p. That works ok, so at least some 32bit machines
> > do work.
> > 
> > Hmm, and my test scripts were wrong.
> > 
> > Failure is not a hang, as they expect, but... machine locks up, but
> > does not suspend, and then continues running after a delay..
> > 
> > [   35.038766] PM: Syncing filesystems ... done.
> > [   35.051246] Freezing user space processes ...
> > [   55.060528] Freezing of tasks failed after 20.009 seconds (1 tasks
> > refusing to freeze, wq_busy
> > =0):
> > [   55.060552] update-binfmts  D    0  2727      1 0x80000004
> > [   55.060576] Call Trace:
> > [   55.060600]  __schedule+0x37a/0x7e0
> > [   55.060618]  schedule+0x29/0x70
> > [   55.060635]  autofs4_wait+0x359/0x7a0
> > [   55.060653]  ? wait_woken+0x70/0x70
> > [   55.060668]  autofs4_mount_wait+0x4a/0xe0
> > [   55.060684]  ? autofs4_mount_wait+0x4a/0xe0
> > [   55.060699]  autofs4_d_automount+0xe0/0x200
> > [   55.060715]  ? autofs4_d_automount+0xe0/0x200
> > 
> > Did the rework of freezing start already in -next?
> 
> Hmm, so I did git bisect, and it pointed to:
> 
> commit 7cb03edf112fea6ead2fcd3c5fd639756d6d114b
> Author: Matthew Wilcox <mawilcox@microsoft.com>
> Date:   Thu Mar 29 10:15:17 2018 +1100
> 
>     autofs4: use wait_event_killable
> 
>     This playing with signals to allow only fatal signals appears to
>     predate
>         the introduction of wait_event_killable(), and I'm fairly sure
>     that
>         wait_event_killable is what was meant to happen here.
> 
>     Link:
>     http://lkml.kernel.org/r/20180319191609.23880-1-willy@infradead.org
>         Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
> 	    Acked-by: Ian Kent <raven@themaw.net>
> 	        Signed-off-by: Andrew Morton
>     <akpm@linux-foundation.org>
>         Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>

Well, let's tell Thorsten about this (CCed).

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

* Re: x32 suspend failuer in Re: linux-next: Tree for Apr 4
  2018-04-04  7:50 ` x32 suspend failuer in Re: linux-next: Tree for Apr 4 Pavel Machek
  2018-04-04  7:58   ` Rafael J. Wysocki
@ 2018-04-06 22:41   ` Pavel Machek
  1 sibling, 0 replies; 9+ messages in thread
From: Pavel Machek @ 2018-04-06 22:41 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List,
	Linux-pm mailing list, Rafael J. Wysocki

[-- Attachment #1: Type: text/plain, Size: 714 bytes --]

On Wed 2018-04-04 09:50:47, Pavel Machek wrote:
> Hi!
> 
> > Please do not add any v4.18 destined stuff to your linux-next included
> > trees until after v4.17-rc1 has been released.
> 
> On thinkpad x60, suspend does not suspend at all with this -next
> version. Previous versions suspended/resumed fine but broke networking.

I bisected networking breakage to

c16add24522547bf52c189b3c0d1ab6f5c2b4375

which is slightly weird. But it modifies ACPI in strange way, so maybe
not that weird.

Networking breakage is still in next-20180406.

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: update-binfmts breaking suspend
       [not found]             ` <20180406144355.GA20605@bombadil.infradead.org>
@ 2018-04-11  4:30               ` Matthew Wilcox
  2018-04-11  6:09                 ` Pavel Machek
  0 siblings, 1 reply; 9+ messages in thread
From: Matthew Wilcox @ 2018-04-11  4:30 UTC (permalink / raw)
  To: Pavel Machek, Rafael J. Wysocki, jikos, raven, akpm, sfr,
	linux-next, linux-kernel, linux-pm, Rafael J. Wysocki


Ping?

On Fri, Apr 06, 2018 at 07:43:55AM -0700, Matthew Wilcox wrote:
> Pavel Machek <pavel@ucw.cz> wrote:
> > > Failure is not a hang, as they expect, but... machine locks up, but
> > > does not suspend, and then continues running after a delay..
> > > 
> > > [   35.038766] PM: Syncing filesystems ... done.
> > > [   35.051246] Freezing user space processes ...
> > > [   55.060528] Freezing of tasks failed after 20.009 seconds (1 tasks
> > > refusing to freeze, wq_busy
> > > =0):
> > > [   55.060552] update-binfmts  D    0  2727      1 0x80000004
> > > [   55.060576] Call Trace:
> > > [   55.060600]  __schedule+0x37a/0x7e0
> > > [   55.060618]  schedule+0x29/0x70
> > > [   55.060635]  autofs4_wait+0x359/0x7a0
> > > [   55.060653]  ? wait_woken+0x70/0x70
> > > [   55.060668]  autofs4_mount_wait+0x4a/0xe0
> > > [   55.060684]  ? autofs4_mount_wait+0x4a/0xe0
> > > [   55.060699]  autofs4_d_automount+0xe0/0x200
> > > [   55.060715]  ? autofs4_d_automount+0xe0/0x200
> > > 
> > > Did the rework of freezing start already in -next?
> > 
> > Hmm, so I did git bisect, and it pointed to:
> > 
> > commit 7cb03edf112fea6ead2fcd3c5fd639756d6d114b
> > Author: Matthew Wilcox <mawilcox@microsoft.com>
> > Date:   Thu Mar 29 10:15:17 2018 +1100
> > 
> >     autofs4: use wait_event_killable
> > 
> >     This playing with signals to allow only fatal signals appears to
> >     predate
> >         the introduction of wait_event_killable(), and I'm fairly sure
> >     that
> >         wait_event_killable is what was meant to happen here.
> 
> Umm.  I'm not familiar with the freezer.  Help me out here ...
> 
> I see the message coming from here:
> 
>                 pr_err("Freezing of tasks %s after %d.%03d seconds "
>                        "(%d tasks refusing to freeze, wq_busy=%d):\n",
>                        wakeup ? "aborted" : "failed",
>                        elapsed_msecs / 1000, elapsed_msecs % 1000,
>                        todo - wq_busy, wq_busy);
> 
> and then backtracking in that function, I see this:
> 
>                 for_each_process_thread(g, p) {
>                         if (p == current || !freeze_task(p))
>                                 continue;
> 
> in freeze_task(), I see this:
> 
>         if (!(p->flags & PF_KTHREAD))
>                 fake_signal_wake_up(p);
>         else
>                 wake_up_state(p, TASK_INTERRUPTIBLE);
> 
> which does this:
> 
>         if (lock_task_sighand(p, &flags)) {
>                 signal_wake_up(p, 0);
>                 unlock_task_sighand(p, &flags);
>         }
> 
> which does this:
> 
> static inline void signal_wake_up(struct task_struct *t, bool resume)
> {
>         signal_wake_up_state(t, resume ? TASK_WAKEKILL : 0);
> }
> 
> which does this:
> 
> void signal_wake_up_state(struct task_struct *t, unsigned int state)
> {
>         set_tsk_thread_flag(t, TIF_SIGPENDING);
>         /*
>          * TASK_WAKEKILL also means wake it up in the stopped/traced/killable
>          * case. We don't check t->state here because there is a race with it
>          * executing another processor and just now entering stopped state.
>          * By using wake_up_state, we ensure the process will wake up and
>          * handle its death signal.
>          */
>         if (!wake_up_state(t, state | TASK_INTERRUPTIBLE))
>                 kick_process(t);
> }
> 
> Now I don't know why we only wake interruptible tasks here and not killable
> tasks.  I've trawled git history all the way back to 2.6.12-rc2, and the
> reasoning behind signal_wake_up() (as it originally was) is lost to pre-git
> history.
> 
> So ... why do we only wake interruptible tasks on suspend?  Why not wake
> uninterruptible tasks too?
> 
>         if (lock_task_sighand(p, &flags)) {
> -               signal_wake_up(p, 0);
> +               signal_wake_up_state(p, TASK_WAKEKILL);
>                 unlock_task_sighand(p, &flags);
>         }
> 
> or why do we consider tasks waiting uninterruptibly to block freezing?
> Is it because they're (probably) waiting for I/O and we want the I/O
> to complete?

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

* Re: update-binfmts breaking suspend
  2018-04-11  4:30               ` update-binfmts breaking suspend Matthew Wilcox
@ 2018-04-11  6:09                 ` Pavel Machek
  0 siblings, 0 replies; 9+ messages in thread
From: Pavel Machek @ 2018-04-11  6:09 UTC (permalink / raw)
  To: Matthew Wilcox
  Cc: Rafael J. Wysocki, jikos, raven, akpm, sfr, linux-next,
	linux-kernel, linux-pm, Rafael J. Wysocki

[-- Attachment #1: Type: text/plain, Size: 321 bytes --]

Hi!

> Ping?

See the thread... akpm pointed out fix for autofs, and the problem is
gone with newer -next kernels, so I assume the fix fixes it :-).

								Pavel
								
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

end of thread, other threads:[~2018-04-11  6:09 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20180404165559.4cd0c12c@canb.auug.org.au>
2018-04-04  7:50 ` x32 suspend failuer in Re: linux-next: Tree for Apr 4 Pavel Machek
2018-04-04  7:58   ` Rafael J. Wysocki
2018-04-04  8:49     ` Pavel Machek
2018-04-05 12:25       ` update-binfmts breaking suspend was " Pavel Machek
2018-04-05 20:30         ` Pavel Machek
2018-04-05 22:27           ` Rafael J. Wysocki
     [not found]           ` <SN4PR2101MB073673B12998428D48DA62E5CBBA0@SN4PR2101MB0736.namprd21.prod.outlook.com>
     [not found]             ` <20180406144355.GA20605@bombadil.infradead.org>
2018-04-11  4:30               ` update-binfmts breaking suspend Matthew Wilcox
2018-04-11  6:09                 ` Pavel Machek
2018-04-06 22:41   ` x32 suspend failuer in Re: linux-next: Tree for Apr 4 Pavel Machek

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).