On 4-Jan-14, at 2:55 PM, Mikulas Patocka wrote:
On Sat, 4 Jan 2014, John David Anglin wrote:
On 4-Jan-14, at 12:45 PM, Mikulas Patocka wrote:
* flush_dcache_page asks for the list of userspace mappings,
however that
page->mapping field is reused by the slab subsystem for a different
purpose. This causes the crash.
I'd noticed the other day that the parisc implementation of
flush_dcache_page()
should return if "!mapping || mapping != page->mapping" is true.
This would
have avoided crash.
Dave
I think no.
page_mapping returns NULL if the page has only anonymous mapping and
it is
not placed in the swap cache. In this case, you need to flush the
kernel
cache.
The suggestion is to add the "mapping != page->mapping" to the current
NULL check.
It occurs after the kernel cache flush.
It doesn't seem right to flush the vma mappings associated with swap
address space
and that appears to be happening with current code.
Dave
--
John David Anglin dave.anglin@xxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html