On Mon, Nov 30, 2015 at 05:44:31PM -0500, Tejun Heo wrote: > From 0d7d444e260493252e30c70813c7657e9ede2f12 Mon Sep 17 00:00:00 2001 > From: Tejun Heo <tj@xxxxxxxxxx> > Date: Mon, 30 Nov 2015 17:24:34 -0500 > > Consider the following v2 hierarchy. > > P0 (+memory) --- P1 (-memory) --- A > \- B > > P0 has memory enabled in its subtree_control while P1 doesn't. If > both A and B contain processes, they would belong to the memory css of > P1. Now if memory is enabled on P1's subtree_control, memory csses > should be created on both A and B and A's processes should be moved to > the former and B's processes the latter. IOW, enabling controllers > can cause atomic migrations into different csses. > > The core cgroup migration logic has been updated accordingly but the > controller migration methods haven't and still assume that all tasks > migrate to a single target css; furthermore, the methods were fed the > css in which subtree_control was updated which is the parent of the > target csses. pids controller depends on the migration methods to > move charges and this made the controller attribute charges to the > wrong csses often triggering the following warning by driving a > counter negative. Applying 1-2 to libata/for-4.4-fixes. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html