No subject


Fri Oct 22 17:57:35 EDT 2010


Reviewed-by: Catalin Marinas <catalin.marinas at arm.com>

We could even go a step further and avoid any find_vma() call in
do_cache_op() (I actually tried this in the past but the optimisation
wasn't significant, at least for a small app with few VMAs and we may
need some other limitations). The reason I tried that was that some
app was trying to flush some memory range that ended up across two
VMAs (I don't recall the details).

> -#define flush_cache_user_range(vma,start,end) \
> +#define flush_cache_user_range(start,end) \
> =C2=A0 =C2=A0 =C2=A0 =C2=A0__cpuc_coherent_user_range((start) & PAGE_MASK=
, PAGE_ALIGN(end))

BTW (for a different patch), why do we still need the page alignment
here? I've heard JIT people complaining that performance is affected
when they only need to flush a small range and the kernel does a full
page. I recall something to do with COW in the past but we handle the
flushing in a different place already for this (at least starting with
ARMv6).

--=20
Catalin



More information about the linux-arm-kernel mailing list