get_user_pages() cache issues on ARM



Hi Russell,

The get_user_pages() vs dcache coherency issue still seems to be
unresolved on ARM.

See flush_anon_page() and flush_kernel_dcache_page() in
Documentation/cachetlb.txt and their implementation on PARISC.

Can you please take a look at this?

Thanks,
Miklos

------- Start of forwarded message -------
Date: Sun, 24 Sep 2006 20:20:15 -0700
From: "Dave Hylands" <dhylands@xxxxxxxxx>
To: "Miklos Szeredi" <miklos@xxxxxxxxxx>
Subject: Re: [fuse-devel] ARM cross build issues
Cc: guinan@xxxxxxxxxxxxxx, fuse-devel@xxxxxxxxxxxxxxxxxxxxx
In-Reply-To: <E1GR461-0003WJ-00@xxxxxxxxxxxxxxxxxxxxxx>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hi Miklos,

Sending this to the list...

2.6.18 still calls get_user_pages will the NULL vma. I verified that
the flush_cache_all patch made things work for me under 2.6.11
(big-endian ARM) and 2.6.17 (little-endian ARM).

get_user_pages() should do the right thing on it's own. So passing
NULL vma is the normal thing to do, and the workaround should not be
needed.

So if 2.6.18 works without the patch, then it's fixed, otherwise not.

So 2.6.18 does NOT work on the ARM using the fuse.ko that gets built from the
kernel sources.

If I add the flush_cache_all() patch or the DCAHCE_BUG patch, then
everything works fine.

This was tested on my gumstix, which is an ARM XScale PXA255 running
in little-endian mode, using 2.6.18. I was using the hello filesystem
for the tests.

- --
Dave Hylands
Vancouver, BC, Canada
http://www.DaveHylands.com/
------- End of forwarded message -------
-
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/



Relevant Pages