Re: Fwd: Control page reclaim granularity

From: Kautuk Consul
Date: Tue Mar 13 2012 - 03:43:13 EST


Hi,

I noticed this discussion and decided to pitch in one small idea from my side.

It would be nice to range lock an inode's pages by storing those
ranges which would be locked.
This could also add some good routines for the kernel in terms of
range locking for a single inode.
However, wouldn't this add some overhead to shrink_page_list() since
that code would need to go through
all these ranges while trying to reclaim a single page ?

One small suggestion from my side is:
Why don't we implement something like : "Complete page-cache reclaim
control from usermode"?
In this, we can set/unset the mapping to AS_UNEVICTABLE (as Konstantin
mentioned) for a file's
inode from usermode by using ioctl or fcntl or maybe even go as far as
implementing an O_NORECL
option to the open system call.

After setting the AS_UNEVICTABLE, the usermode application can choose
to keep and remove pages by
using the fadvise(WILLNEED) and fadvise(DONTNEED).

( I think maybe the presence of any VMA is might not really be
required for this idea. )

Thanks,
Kautuk.
--
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/