Re: CPA patchset

From: Ingo Molnar
Date: Thu Jan 10 2008 - 05:03:43 EST



* Dave Airlie <airlied@xxxxxxxxx> wrote:

> > - firstly, there's no rationale given. So we'll change ioremap()/etc.
> > from doing a cflush-range instruction instead of a WBINVD. But why?
> > WBINVD isnt particular fast (takes a few msecs), but why is that a
> > problem? Drivers dont do high-frequency ioremap-ing. It's typically
> > only done at driver/device startup and that's it. Whether module load
> > time takes 1254 msecs instead of 1250 msecs is no big deal.
>
> read graphics drivers, even though I think we may avoid the whole path
> if we can and end up doing some of this in the drivers when they know
> more about the situation so can avoid safeties..

by 'read graphics drivers' do you mean direct framebuffer access? In any
case, a driver (or even userspace) can use cflush just fine, it's an
unprivileged instruction. But this is about the ioremap() implementation
using cflush instead of WBINVD, and that is a slowpath and is up to the
kernel anyway - i'm not aware of many high-frequency ioremap() users, so
robustness concerns control the policy here. So could you please explain
your point in more detail?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/