From: Tejun Heo Date: Wed, 18 May 2016 20:51:46 +0000 (-0700) Subject: core: update CGroupBlockIODeviceBandwidth to record both rbps and wbps X-Git-Tag: v231.3~147 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=c70aceb85cc08a984cb89d95b47c558ae721e8b8;hp=27d892d63572af4ddd98401075a7959d5b81f02f core: update CGroupBlockIODeviceBandwidth to record both rbps and wbps CGroupBlockIODeviceBandwith is used to keep track of IO bandwidth limits for legacy cgroup hierarchies. Unlike the unified hierarchy counterpart CGroupIODeviceLimit, a CGroupBlockIODeviceBandwiddth records either a read or write limit and has a couple issues. * There's no way to clear specific config entry. * When configs are cleared for an IO direction of a unit, the kernel settings aren't cleared accordingly creating discrepancies. This patch updates CGroupBlockIODeviceBandwidth so that it behaves similarly to CGroupIODeviceLimit - each entry records both rbps and wbps limits and is cleared if both are at default values after kernel settings are updated. --- diff --git a/src/core/cgroup.h b/src/core/cgroup.h index 2a5a223eb..4d9b52e1d 100644 --- a/src/core/cgroup.h +++ b/src/core/cgroup.h @@ -64,8 +64,8 @@ struct CGroupBlockIODeviceWeight { struct CGroupBlockIODeviceBandwidth { LIST_FIELDS(CGroupBlockIODeviceBandwidth, device_bandwidths); char *path; - uint64_t bandwidth; - bool read; + uint64_t rbps; + uint64_t wbps; }; struct CGroupContext {