From: "Antonino A. Daplas" <adaplas@gmail.com>
To: linux-fbdev-devel@lists.sourceforge.net
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Andrew Morton <akpm@osdl.org>,
Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: Re: [Linux-fbdev-devel] Re: Console rotation problems
Date: Thu, 24 Nov 2005 18:13:51 +0800 [thread overview]
Message-ID: <4385925F.8010108@gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.62.0511241042360.6400@numbat.sonytel.be>
Geert Uytterhoeven wrote:
> On Thu, 24 Nov 2005, Antonino A. Daplas wrote:
>> Benjamin Herrenschmidt wrote:
>>> Remove bogus usage of test/set_bit() from fbcon rotation code and just
>>> manipulate the bits directly. This fixes an oops on powerpc among others
>>> and should be faster. Seems to work fine on the G5 here.
>> Thanks, I reached a point when my head became muddled with bit
>> manipulations, so I used arch-specific bitops but complete forgot
>> that they were atomic :-)
>
> I haven't really looked at the rotation code, but I guess it can be optimized a
> lot by using similar techniques like c2p (chunky-to-planar) conversions.
>
Actually, BenH's patch touched code that is in the slow path. The font
rotation is done on the entire fontdata, then stored, on a console switch.
Thus the rest of the drawing functions need not do repetitive and expensive
bitmap rotation.
Scrolling performance of a normally oriented and upside-down rotation is
practically the same (1024x768 8x16 redraw).
con_rotate = 0
real 0m2.550s
user 0m0.000s
sys 0m2.543s
con_rotate = 2
real 0m2.559s
user 0m0.001s
sys 0m2.545s
CCW and CW rotation, is of course slower, because the blit direction
tends to be top->down, rather than left->right.
con_rotate = 1
real 0m4.675s
user 0m0.000s
sys 0m4.663s
con_rotate = 3
real 0m4.701s
user 0m0.001s
sys 0m4.684s
Tony
prev parent reply other threads:[~2005-11-24 10:13 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-24 0:45 Console rotation problems Benjamin Herrenschmidt
2005-11-24 0:52 ` Benjamin Herrenschmidt
2005-11-24 1:47 ` Benjamin Herrenschmidt
2005-11-24 1:47 ` Benjamin Herrenschmidt
2005-11-24 3:05 ` Benjamin Herrenschmidt
2005-11-24 6:29 ` Antonino A. Daplas
2005-11-24 9:43 ` [Linux-fbdev-devel] " Geert Uytterhoeven
2005-11-24 10:13 ` Antonino A. Daplas [this message]
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=4385925F.8010108@gmail.com \
--to=adaplas@gmail.com \
--cc=akpm@osdl.org \
--cc=benh@kernel.crashing.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.