aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJohn Dias <joaodias@google.com>2016-10-10 14:44:30 -0700
committerSimon Shields <keepcalm444@gmail.com>2016-12-13 00:14:53 +1100
commit12bf2ab391d33a49d74b123b66ef87c4ffa14e2e (patch)
treeab62e0d4607a667e2901ef7ba35b9f55b14675b9 /net
parent89634e6f964064a223fb81ddbce9a053a4f16686 (diff)
downloadkernel_samsung_smdk4412-12bf2ab391d33a49d74b123b66ef87c4ffa14e2e.zip
kernel_samsung_smdk4412-12bf2ab391d33a49d74b123b66ef87c4ffa14e2e.tar.gz
kernel_samsung_smdk4412-12bf2ab391d33a49d74b123b66ef87c4ffa14e2e.tar.bz2
perf: protect group_leader from races that cause ctx double-free
When moving a group_leader perf event from a software-context to a hardware-context, there's a race in checking and updating that context. The existing locking solution doesn't work; note that it tries to grab a lock inside the group_leader's context object, which you can only get at by going through a pointer that should be protected from these races. To avoid that problem, and to produce a simple solution, we can just use a lock per group_leader to protect all checks on the group_leader's context. The new lock is grabbed and released when no context locks are held. RM-290 Bug: 30955111 Bug: 31095224 Change-Id: If37124c100ca6f4aa962559fba3bd5dbbec8e052
Diffstat (limited to 'net')
0 files changed, 0 insertions, 0 deletions