summaryrefslogtreecommitdiff
path: root/drivers/s390/char/tape_34xx.c
diff options
context:
space:
mode:
authorLi Zefan <lizefan@huawei.com>2013-02-18 18:56:14 +0800
committerTejun Heo <tj@kernel.org>2013-02-18 09:17:24 -0800
commit810cbee4fad570ff167132d4ecf247d99c48f71d (patch)
tree2806f56a033f43b17ad2c547b2153941c0e77f40 /drivers/s390/char/tape_34xx.c
parent63f43f55c9bbc14f76b582644019b8a07dc8219a (diff)
cgroup: fix cgroup_rmdir() vs close(eventfd) race
commit 205a872bd6f9a9a09ef035ef1e90185a8245cc58 ("cgroup: fix lockdep warning for event_control") solved a deadlock by introducing a new bug. Move cgrp->event_list to a temporary list doesn't mean you can traverse this list locklessly, because at the same time cgroup_event_wake() can be called and remove the event from the list. The result of this race is disastrous. We adopt the way how kvm irqfd code implements race-free event removal, which is now described in the comments in cgroup_event_wake(). v3: - call eventfd_signal() no matter it's eventfd close or cgroup removal that removes the cgroup event. Acked-by: Kirill A. Shutemov <kirill@shutemov.name> Signed-off-by: Li Zefan <lizefan@huawei.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/s390/char/tape_34xx.c')
0 files changed, 0 insertions, 0 deletions