On 25.06.24 20:37, Andrew Morton wrote:
On Tue, 25 Jun 2024 19:06:42 +1000 Gavin Shan <gshan@xxxxxxxxxx> wrote:
Currently, xarray can't support arbitrary page cache size. More details
can be found from the WARN_ON() statement in xas_split_alloc(). In our
test whose code is attached below, we hit the WARN_ON() on ARM64 system
where the base page size is 64KB and huge page size is 512MB. The issue
was reported long time ago and some discussions on it can be found here
[1].
[1] https://www.spinics.net/lists/linux-xfs/msg75404.html
In order to fix the issue, we need to adjust MAX_PAGECACHE_ORDER to one
supported by xarray and avoid PMD-sized page cache if needed. The code
changes are suggested by David Hildenbrand.
PATCH[1] adjusts MAX_PAGECACHE_ORDER to that supported by xarray
PATCH[2-3] avoids PMD-sized page cache in the synchronous readahead path
PATCH[4] avoids PMD-sized page cache for shmem files if needed
Questions on the timing of these.
1&2 are cc:stable whereas 3&4 are not.
I could split them and feed 1&2 into 6.10-rcX and 3&4 into 6.11-rc1. A
problem with this approach is that we're putting a basically untested
combination into -stable: 1&2 might have bugs which were accidentally
fixed in 3&4. A way to avoid this is to add cc:stable to all four
patches.
What are your thoughts on this matter?
Especially 4 should also be CC stable, so likely we should just do it
for all of them.
--
Cheers,
David / dhildenb