On Thu, Nov 05, 2015 at 12:12:24AM -0500, Tejun Heo wrote: > 6f60eade2433 ("cgroup: generalize obtaining the handles of and > notifying cgroup files") introduced cftype->file_offset so that the > handles for per-css file instances can be recorded. These handles > then can be used, for example, to generate file modified > notifications. > > Unfortunately, it made the wrong assumption that files are created > once for a given css and removed on its destruction. Due to the > dependencies among subsystems, a css may be hidden from userland and > then later shown again. This is implemented by removing and > re-creating the affected files, so the associated kernfs_node for a > given cgroup file may change over time. This incorrect assumption led > to the corruption of css->files lists. > > Reimplement cftype->file_offset handling so that cgroup_file->kn is > protected by a lock and updated as files are created and destroyed. > This also makes keeping them on per-cgroup list unnecessary. > > Signed-off-by: Tejun Heo <tj@xxxxxxxxxx> > Reported-by: James Sedgwick <jsedgwick@xxxxxx> > Fixes: 6f60eade2433 ("cgroup: generalize obtaining the handles of and notifying cgroup files") Kudos to whoever debugged this. Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx> -- 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