[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1183118671.4405.12.camel@imap.mvista.com>
Date: Fri, 29 Jun 2007 08:04:30 -0400
From: Daniel Walker <dwalker@...sta.com>
To: Michel Dänzer <michel@...gstengraphics.com>
Cc: linux-kernel@...r.kernel.org, dri-devel@...ts.sf.net,
Steven Rostedt <rostedt@...dmis.org>
Subject: Re: Tasklet usage in the DRM
On Fri, 2007-06-29 at 09:09 +0200, Michel Dänzer wrote:
> I just read an article on LWN's kernel page about plans to remove
> tasklets, and I thought I'd explain what the DRM is using tasklets for.
> Maybe there's other ways to satisfy the requirements equally well or
> even better.
>
>
> The i915 driver uses a tasklet to make sure a GL buffer swap blit or
> flip takes effect (or at least starts in the case of a blit) during the
> vertical blank period, to avoid tearing. I chose a tasklet for this
> purpose because:
>
> * The traditional method of the vertical blank interrupt waking up
> the user process, which would then emit the buffer swap
> commands, didn't even come close to avoiding tearing. So I
> suspect a workqueue wouldn't cut it either.
> * The processing of scheduled buffer swaps could potentially take
> a long time, so doing it in hardirq context could cause high IRQ
> latency.
> * It requires holding the DRM lock, so the 'each tasklet can only
> run once at a time' restriction is fine.
>
>
> I'm looking forward to any suggestions what to do with this in case
> tasklets disappear, and I'll gladly provide further clarification on the
> requirements.
If it hasn't been done someone with this hardware could test Steven's
patches to see if they do satisfy the requirements..
I think the most recent version was posted in this message,
http://lkml.org/lkml/2007/6/27/289
Subject was "[RFC PATCH 0/8] Convert all tasklets to workqueues V3" if
people are subscribed to LKML ..
(Added Steven to the CC list)
Daniel
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists