Thread (14 messages) 14 messages, 3 authors, 2005-08-09

Re: Regression: radeonfb: No synchronisation on CRT with linux-2.6.13-rc5

From: Kyle Moffett <hidden>
Date: 2005-08-07 13:45:36
Also in: lkml

On Aug 7, 2005, at 03:51:07, Benjamin Herrenschmidt wrote:
On Fri, 2005-08-05 at 19:38 +0200, Bodo Eggert wrote:
quoted
On Fri, 5 Aug 2005, Benjamin Herrenschmidt wrote:
quoted
On Fri, 2005-08-05 at 00:03 +0200, Bodo Eggert wrote:
quoted
My CRT is out of sync after radeonfb from 2.6.13-rc5 is  
initialized.
2.6.12 does not show this behaviour.
I'm out of town at the moment, could you maybe diff radeonfb between
working & non-working and CC me the diff ? I don't have my work  
stuff at
hand not my kernel images so...
There were no changes in radeonfb.c, but I could trace to to
CONFIG_PREEMPT. With _NONE, it works as expected.
Ah ! Interesting... I don't see why PREEMPT would affect radeonfb
though ... Can you try something like wrapper radeon_write_mode() with
preempt_disable()/preempt_enable() and tell me if it makes a
difference ?
I'm having a similar issue with my shiny new 17" Powerbook G4.  The
radeon chip works fine with framebuffer in 2.6.12.4 _with_ PREEMPT,
but not in 2.6.13-rc5 _with_ PREEMPT (configs are virtually identical).
I'll try your idea this afternoon when I get the chance.

I wonder if perhaps some code in radeonfb is used under the BKL, which
is now preemptable (Or maybe an ordinary spinlock changed or went
away?), because I also set PREEMPT_BKL.  I've got an LCD, and on mine
it looks like every third pixel-line gets shifted about 32-64 pixels to
the left, and they move with display refresh.  My guess is that
something is interrupting radeonfb during a critical time in display
syncing and forcing the video card to wait too far into the next line
before sending pixels.

One other data point, I've seen something like this, except not nearly
as bad, is stock debian 2.6.8 vs. stock debian 2.6.11 on powerpc.  The
former exhibits some similar (but not nearly as bad) symptoms.  (Same
Powerbook), whereas 2.6.11 doesn't.  In that case, neither has PREEMPT.
I'll run more tests this afternoon/evening, to try to track it down.

Cheers,
Kyle Moffett

--
There are two ways of constructing a software design. One way is to  
make it so
simple that there are obviously no deficiencies. And the other way is  
to make
it so complicated that there are no obvious deficiencies.  The first  
method is
far more difficult.
   -- C.A.R. Hoare




-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help