linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage"
@ 2015-12-23 11:50 Sylvain Munaut
  2015-12-23 12:36 ` Sylvain Munaut
  0 siblings, 1 reply; 5+ messages in thread
From: Sylvain Munaut @ 2015-12-23 11:50 UTC (permalink / raw)
  To: LKML, Ben Widawsky, intel-gfx

Hi,


When trying to upgrade my kernel yesterday to the latest 4.3.3 I
noticed that the suspend to ram was not working. Basically it goes to
sleep but never wakes up. It seems to power up but no screen, not
available through ssh either and afaict nothing runs afterwards.

I first tried a couple official release to see where it broke and I
found that 4.0.9 was working fine, but 4.1.15 was not.

I then ran a git bissect between v4.0 and v4.1 from Linus's tree and
found the "guilty" commit was

commit 317b4e903636305cfe702ab3e5b3d68547a69e72
Author: Ben Widawsky <benjamin.widawsky@intel.com>
Date:   Mon Mar 16 16:00:55 2015 +0000

    drm/i915: Extract context switch skip and add pd load logic


Here's the full log :

git bisect start
# bad: [b953c0d234bc72e8489d3bf51a276c5c4ec85345] Linux 4.1
git bisect bad b953c0d234bc72e8489d3bf51a276c5c4ec85345
# good: [39a8804455fb23f09157341d3ba7db6d7ae6ee76] Linux 4.0
git bisect good 39a8804455fb23f09157341d3ba7db6d7ae6ee76
# good: [d0a3997c0c3f9351e24029349dee65dd1d9e8d84] Merge tag
'sound-4.1-rc1' of
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
git bisect good d0a3997c0c3f9351e24029349dee65dd1d9e8d84
# bad: [cf82f52d3619d2e15c83ec9a03c6ce8cdf6c6b58] watchdog:
stmp3xxx_rtc_wdt: fix broken email address
git bisect bad cf82f52d3619d2e15c83ec9a03c6ce8cdf6c6b58
# good: [79319a052cb0ae862954fe9f6e606417f1698ddb] Merge tag
'iommu-updates-v4.1' of
git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu
git bisect good 79319a052cb0ae862954fe9f6e606417f1698ddb
# bad: [8f443e2372ba23d51ee365974f54507acd6f69d1] Revert "ocfs2:
incorrect check for debugfs returns"
git bisect bad 8f443e2372ba23d51ee365974f54507acd6f69d1
# bad: [3165c074175cddab1dcfd553042ea4f363bc76e7] drm/i915: Use atomic
state in intel_ddi_crtc_get_new_encoder()
git bisect bad 3165c074175cddab1dcfd553042ea4f363bc76e7
# good: [8dd0eb3566711d81bfbe2b4421b33f0dd723cec4] Merge tag
'drm-intel-next-2015-02-27' of git://anongit.freedesktop.org/drm-intel
into drm-next
git bisect good 8dd0eb3566711d81bfbe2b4421b33f0dd723cec4
# good: [5704195c3f3c04a00c16334a033b180f16db1f94] drm/i915/skl:
Updated the gen6_set_rps function
git bisect good 5704195c3f3c04a00c16334a033b180f16db1f94
# good: [07749ef32c4fd60334c2451739460dd1cf600281] drm/i915: page
table generalizations
git bisect good 07749ef32c4fd60334c2451739460dd1cf600281
# bad: [58072ccbb81c6f2d67c5b4cc7597707c4fb86a5e] drm/i915: fix race
when clearing RPS IIR bits
git bisect bad 58072ccbb81c6f2d67c5b4cc7597707c4fb86a5e
# bad: [48fe4691ae639e60fda37faf06dccdff60245149] drm/i915: Eliminate
plane control register RMW from sprite code
git bisect bad 48fe4691ae639e60fda37faf06dccdff60245149
# bad: [bdd7554d568fa165b0e86fc32b1cde3c895ff774] drm/i915: Kill
intel_plane->obj
git bisect bad bdd7554d568fa165b0e86fc32b1cde3c895ff774
# bad: [678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968] drm/i915: Track GEN6
page table usage
git bisect bad 678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968
# good: [317b4e903636305cfe702ab3e5b3d68547a69e72] drm/i915: Extract
context switch skip and add pd load logic
git bisect good 317b4e903636305cfe702ab3e5b3d68547a69e72
# first bad commit: [678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968]
drm/i915: Track GEN6 page table usage


The machine is a Lenovo T440s laptop :


00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT
Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:16.3 Serial controller: Intel Corporation 8 Series HECI KT (rev 04)
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection
I218-LM (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 6 (rev e4)
00:1c.1 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1c.4 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 5 (rev e4)
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1
[AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd.
RTS5227 PCI Express Card Reader (rev 01)
03:00.0 Network controller: Intel Corporation Wireless 7260 (rev 83)
04:00.0 VGA compatible controller: NVIDIA Corporation GK208M [GeForce
GT 730M] (rev a1)


Cheers,

    Sylvain Munaut

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

* Re: Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage"
  2015-12-23 11:50 Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage" Sylvain Munaut
@ 2015-12-23 12:36 ` Sylvain Munaut
  2016-01-04 20:12   ` Pavel Machek
  0 siblings, 1 reply; 5+ messages in thread
From: Sylvain Munaut @ 2015-12-23 12:36 UTC (permalink / raw)
  To: LKML, Ben Widawsky, intel-gfx

Hi,

> I then ran a git bissect between v4.0 and v4.1 from Linus's tree and
> found the "guilty" commit was
>
> commit 317b4e903636305cfe702ab3e5b3d68547a69e72
> Author: Ben Widawsky <benjamin.widawsky@intel.com>
> Date:   Mon Mar 16 16:00:55 2015 +0000
>
>     drm/i915: Extract context switch skip and add pd load logic

Damnit, paste fail.

I meant to paste :

commit 678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968
Author: Ben Widawsky <benjamin.widawsky@intel.com>
Date:   Mon Mar 16 16:00:56 2015 +0000

    drm/i915: Track GEN6 page table usage

(as indicated in the title and in the git bisect log)


Cheers,

   Sylvain

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

* Re: Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage"
  2015-12-23 12:36 ` Sylvain Munaut
@ 2016-01-04 20:12   ` Pavel Machek
  2016-01-04 20:35     ` Ben Widawsky
  0 siblings, 1 reply; 5+ messages in thread
From: Pavel Machek @ 2016-01-04 20:12 UTC (permalink / raw)
  To: Sylvain Munaut; +Cc: LKML, Ben Widawsky, intel-gfx

Hi!

> > I then ran a git bissect between v4.0 and v4.1 from Linus's tree and
> > found the "guilty" commit was
> >
> > commit 317b4e903636305cfe702ab3e5b3d68547a69e72
> > Author: Ben Widawsky <benjamin.widawsky@intel.com>
> > Date:   Mon Mar 16 16:00:55 2015 +0000
> >
> >     drm/i915: Extract context switch skip and add pd load logic
> 
> Damnit, paste fail.
> 
> I meant to paste :
> 
> commit 678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968
> Author: Ben Widawsky <benjamin.widawsky@intel.com>
> Date:   Mon Mar 16 16:00:56 2015 +0000
> 
>     drm/i915: Track GEN6 page table usage
> 
> (as indicated in the title and in the git bisect log)

Can you verify that reverting this patch (on top of 4.4?) fixes it?

If so, is it time to revert it?

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

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

* Re: Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage"
  2016-01-04 20:12   ` Pavel Machek
@ 2016-01-04 20:35     ` Ben Widawsky
  2016-01-05  7:01       ` [Intel-gfx] " Sylvain Munaut
  0 siblings, 1 reply; 5+ messages in thread
From: Ben Widawsky @ 2016-01-04 20:35 UTC (permalink / raw)
  To: Pavel Machek; +Cc: Sylvain Munaut, LKML, intel-gfx

On Mon, Jan 04, 2016 at 09:12:11PM +0100, Pavel Machek wrote:
> Hi!
> 
> > > I then ran a git bissect between v4.0 and v4.1 from Linus's tree and
> > > found the "guilty" commit was
> > >
> > > commit 317b4e903636305cfe702ab3e5b3d68547a69e72
> > > Author: Ben Widawsky <benjamin.widawsky@intel.com>
> > > Date:   Mon Mar 16 16:00:55 2015 +0000
> > >
> > >     drm/i915: Extract context switch skip and add pd load logic
> > 
> > Damnit, paste fail.
> > 
> > I meant to paste :
> > 
> > commit 678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968
> > Author: Ben Widawsky <benjamin.widawsky@intel.com>
> > Date:   Mon Mar 16 16:00:56 2015 +0000
> > 
> >     drm/i915: Track GEN6 page table usage
> > 
> > (as indicated in the title and in the git bisect log)
> 
> Can you verify that reverting this patch (on top of 4.4?) fixes it?
> 
> If so, is it time to revert it?
> 
> Thanks,
> 									Pavel

It's highly unlikely you'll be able to revert this on top of 4.4. Unfortunately,
this is the cornerstone of a whole lot of infrastructure needed to support the
per process page tables.

I'm just the measly original author of the patch. Lots of others tried to right
my wrongs, and they're better suited to debug this. If there hasn't been much
traction, it's probably because of the holidays.

I assume suspend to disk is also failing?

-- 
Ben Widawsky, Intel Open Source Technology Center

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

* Re: [Intel-gfx] Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage"
  2016-01-04 20:35     ` Ben Widawsky
@ 2016-01-05  7:01       ` Sylvain Munaut
  0 siblings, 0 replies; 5+ messages in thread
From: Sylvain Munaut @ 2016-01-05  7:01 UTC (permalink / raw)
  To: Ben Widawsky; +Cc: Pavel Machek, intel-gfx, Sylvain Munaut, LKML

Hi,

>> Can you verify that reverting this patch (on top of 4.4?) fixes it?
>>
>> If so, is it time to revert it?
>>
>> Thanks,
>>                                                                       Pavel
>
> It's highly unlikely you'll be able to revert this on top of 4.4. Unfortunately,
> this is the cornerstone of a whole lot of infrastructure needed to support the
> per process page tables.

Yes, that's what it looked like to me too.

When bisecting I was hoping to find an isolated change I could just
revert but this definitely looked like a change other commits depended
on in a series of commit.


> I assume suspend to disk is also failing?

I have no idea. I never used suspend-to-disk and this laptop isn't
setup for it (no swap and no non-encrypted partitions). I could try to
set it up on an external USB drive if you think that can help debug
the issue.


Cheers,

    Sylvain

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

end of thread, other threads:[~2016-01-05  7:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-23 11:50 Suspend To RAM failure in >= 4.1 - bissected to "drm/i915: Track GEN6 page table usage" Sylvain Munaut
2015-12-23 12:36 ` Sylvain Munaut
2016-01-04 20:12   ` Pavel Machek
2016-01-04 20:35     ` Ben Widawsky
2016-01-05  7:01       ` [Intel-gfx] " Sylvain Munaut

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