Re: [RFC PATCH 0/3] cgroup: fsio throttle controller

From: Vivek Goyal
Date: Mon Jan 21 2019 - 16:47:19 EST


On Sat, Jan 19, 2019 at 11:08:27AM +0100, Andrea Righi wrote:

[..]
> Alright, let's skip the root cgroup for now. I think the point here is
> if we want to provide sync() isolation among cgroups or not.
>
> According to the manpage:
>
> sync() causes all pending modifications to filesystem metadata and cached file data to be
> written to the underlying filesystems.
>
> And:
> According to the standard specification (e.g., POSIX.1-2001), sync() schedules the writes, but
> may return before the actual writing is done. However Linux waits for I/O completions, and
> thus sync() or syncfs() provide the same guarantees as fsync called on every file in the sysâ
> tem or filesystem respectively.
>
> Excluding the root cgroup, do you think a sync() issued inside a
> specific cgroup should wait for I/O completions only for the writes that
> have been generated by that cgroup?

Can we account I/O towards the cgroup which issued "sync" only if write
rate of sync cgroup is higher than cgroup to which page belongs to. Will
that solve problem, assuming its doable?

Vivek