On Sun, Mar 17, 2024 at 09:34:36PM -0700, Darrick J. Wong wrote: > > select few file systems doesn't seem very efficient. Given that we > > very rarely update it and thus concurrency on the write side doesn't > > matter much, is there any way we could get a away with a fs-wide > > lookup data structure and avoid this? > > Only if you can hand a 128-bit key to an xarray. ;) That's why I said lookup data structure and not xarray. It would probably work with an rthashtable. > But in all seriousness, we could have a per-AG xarray that maps > xfs_agino_t to this xarray of merkle blocks. That would be nice in that > we don't have to touch xfs_icache.c for the shrinker at all. I have to admit I haven't read the code enough to even know from what to what it maps. I'll try to get a bit deeper into the code, time permitting.