From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Linus Torvalds <torvalds@osdl.org>
Cc: linux-kernel@vger.kernel.org, Andrew Morton <akpm@osdl.org>,
Dave Airlie <airlied@linux.ie>,
Jules Villard <jvillard@ens-lyon.fr>
Subject: Re: Suspend to {mem,disk} broken in 2.6.15-rc6/rc7 on my T42
Date: Thu, 29 Dec 2005 10:14:55 +1100 [thread overview]
Message-ID: <1135811695.4635.30.camel@localhost.localdomain> (raw)
In-Reply-To: <Pine.LNX.4.64.0512281348220.14098@g5.osdl.org>
On Wed, 2005-12-28 at 13:49 -0800, Linus Torvalds wrote:
>
> On Wed, 28 Dec 2005, Benjamin Herrenschmidt wrote:
> >
> > Linus, please back out those 2 DRM patches of me for 2.6.15. It seems
> > that they cause more problems than they solve due to bugs in the X
> > server. I need to rethink the solution.
>
> Hmm.. How many other problem reports do we have? Jules reported that your
> patch to use the max() of the aperture size and memsize fixed the problem
> for him (and I merged it). Does it have other downsides?
It doesn't, but I've got one confirmed report of failure that isn't
fixed by the latest patch and 2 other ones still dubious.
I'm not entirely sure what's going on yet. On console switch (EnterVT()
in the X driver), it will restore the mode and set back the wrong value
in MC_AGP_LOCATION. It will then re-enable AGP and call the "resume"
ioctl to the DRM which should then "fix" MC_AGP_LOCATION to the
"correct" value we calculated. However, it's possible that the chip
dislikes those constant changes of these memory controller settings
especially while it's currently pumping pixels out.
Also, if using dual head, it's possible that the X server radeon driver
goes back writing the wrong value _again_ after the first head has been
re-initialized, and while the engine is actively pumping command from
AGP, which would be deadly. The radeon driver in X is one of the worst
mess I've ever dealt with so far...
So I think at this point, the best is that we keep the old bogus code
that at least is consistent with the bug in the server. I'm working on a
big patch to X that reworks the memory map stuff completely and fixes
those issues on the server side, I'll do a DRM patch matching this X fix
as well so that the memory map is only ever set in one place and with
what I hope is a correct algorithm...
Ben.
next prev parent reply other threads:[~2005-12-28 23:14 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-26 19:45 Suspend to {mem,disk} broken in 2.6.15-rc6/rc7 on my T42 Jules Villard
[not found] ` <Pine.LNX.4.64.0512261201360.14098@g5.osdl.org>
2005-12-26 21:23 ` Jules Villard
2005-12-27 2:58 ` Marc Koschewski
2005-12-27 3:02 ` Marc Koschewski
2005-12-26 23:55 ` Linus Torvalds
2005-12-27 0:00 ` Benjamin Herrenschmidt
2005-12-27 1:20 ` Jules Villard
2005-12-27 1:27 ` Benjamin Herrenschmidt
2005-12-27 12:55 ` Jules Villard
2005-12-27 23:26 ` Benjamin Herrenschmidt
2005-12-28 6:16 ` Benjamin Herrenschmidt
2005-12-28 21:49 ` Linus Torvalds
2005-12-28 23:14 ` Benjamin Herrenschmidt [this message]
2005-12-27 1:19 ` Jules Villard
2005-12-27 1:27 ` Benjamin Herrenschmidt
2005-12-27 1:49 ` Benjamin Herrenschmidt
2005-12-27 12:14 ` Jules Villard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1135811695.4635.30.camel@localhost.localdomain \
--to=benh@kernel.crashing.org \
--cc=airlied@linux.ie \
--cc=akpm@osdl.org \
--cc=jvillard@ens-lyon.fr \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox