Re: [RFC PATCH V3] zram:calculate available memory when zram is used

From: Greg KH
Date: Tue Jun 08 2021 - 05:29:23 EST


On Mon, Jun 07, 2021 at 08:39:14AM -0700, yongw.pur@xxxxxxxxx wrote:
> From: wangyong <wang.yong12@xxxxxxxxxx>
>
> When zram is used, available+Swap free memory is obviously bigger than we
> actually can use, because zram can compress memory by compression
> algorithm and zram compressed data will occupy memory too.
>
> So, we can count the compression ratio of zram in the kernel. The space
> will be saved by zram and other swap device are calculated as follows:
> zram[swapfree - swapfree * compress ratio] + swapdev[swapfree]
> We can evaluate the available memory of the whole system as:
> MemAvailable+zram[swapfree - swapfree * compress ratio]+swapdev[swapfree]

Why is this needed to be exported by userspace? Who is going to use
this information and why can't they just calculate it from the exported
information already?

What tool requires this new information and what is it going to be used
for?

And why add a block driver's information to a core proc file? Shouldn't
the information only be in the block driver's sysfs directory only?

thanks,

greg k-h