From: Xuehan Xu <xxhdx1985126@xxxxxxx> Hi, ilya I've changed the code to add a new io controller policy that provide the functionality to restrain cephfs generated io in terms of iops and throughput. This inflexible appoarch is a little crude indeed, like tejun said. But we think, this should be able to provide some basic io throttling for cephfs kernel client, and can protect the cephfs cluster from being buggy or even client applications be the cephfs cluster has the ability to do QoS or not. So we are submitting these patches, in case they can really provide some help:-) Xuehan Xu (2): ceph: add a new blkcg policy for cephfs ceph: use the ceph-specific blkcg policy to limit ceph client ops fs/ceph/Kconfig | 8 + fs/ceph/Makefile | 1 + fs/ceph/addr.c | 156 ++++++++++ fs/ceph/ceph_io_policy.c | 445 ++++++++++++++++++++++++++++ fs/ceph/file.c | 110 +++++++ fs/ceph/mds_client.c | 26 ++ fs/ceph/mds_client.h | 7 + fs/ceph/super.c | 12 + include/linux/ceph/ceph_io_policy.h | 74 +++++ include/linux/ceph/osd_client.h | 7 + 10 files changed, 846 insertions(+) create mode 100644 fs/ceph/ceph_io_policy.c create mode 100644 include/linux/ceph/ceph_io_policy.h -- 2.21.0