Re: [PATCH 02/10] staging: erofs: fix race when the managed cache is enabled

From: Greg Kroah-Hartman
Date: Thu Nov 22 2018 - 08:20:46 EST


On Thu, Nov 22, 2018 at 08:41:15PM +0800, Gao Xiang wrote:
> Hi Greg,
>
> On 2018/11/22 20:26, Greg Kroah-Hartman wrote:
> > Ugh, every page? Ok, nevermind, I take back my objections. You all are
> > crazy and need to do crazy things like this :)
>
> ...Do you have some idea about this? ... I think it is fairly normal... :(
>
> We have a large number of managed workgroups, the current use case is the 4k compressed size,
> each compressed page has a workgroup, but erofs also has reclaim paths to free them for low memory cases.
>
> But since the structure (z_erofs_vle_workgroup, erofs_workgroup) is critical,
> I need to make it as small as possible.

I do not know "real" filesystems (i.e. ones that put stuff on disks),
only virtual ones (like sysfs/kernfs), so I do not know what to suggest
here, sorry. I thought this was a much higner-level structure, if this
is per-compressed-page, then you are more than welcome to optimize for
this. Good luck with your "fake" spinlocks though :)

thanks,

greg k-h