arm_syscall cacheflush breakage on VIPT platforms
From: Russell King - ARM Linux <hidden>
Date: 2009-09-28 10:28:15
From: Russell King - ARM Linux <hidden>
Date: 2009-09-28 10:28:15
On Mon, Sep 28, 2009 at 01:10:44PM +0300, Imre Deak wrote:
On Mon, Sep 28, 2009 at 11:59:45AM +0200, ext Russell King - ARM Linux wrote:quoted
The problem has nothing to do with holding of mmap_sem AT ALL. In fact, do_cache_op needs to hold mmap_sem itself, to prevent the VMA going away beneath it. That's not going to stop it generating faults, and it's not going to stop it oopsing. The problem is that we don't have any fixup in place for this situation.Yes, agreed. What I stated is that for _triggerring_ the error message you need mmap_sem.quoted
There is nothing wrong in the page fault handler.Agreed. Only a warning would be nice to make similar cases more apparent even if mmap_sem is not held.
Page faults can happen at other times, and validly be fixed up. vmalloc space as an example. You can't assume that a kernel mode page fault without an exception fixup is invalid.