Merge tag 'v3.10.88' into update
This is the 3.10.88 stable release
This commit is contained in:
+10
-2
@@ -4000,12 +4000,20 @@ static const struct file_operations perf_fops = {
|
||||
* to user-space before waking everybody up.
|
||||
*/
|
||||
|
||||
static inline struct fasync_struct **perf_event_fasync(struct perf_event *event)
|
||||
{
|
||||
/* only the parent has fasync state */
|
||||
if (event->parent)
|
||||
event = event->parent;
|
||||
return &event->fasync;
|
||||
}
|
||||
|
||||
void perf_event_wakeup(struct perf_event *event)
|
||||
{
|
||||
ring_buffer_wakeup(event);
|
||||
|
||||
if (event->pending_kill) {
|
||||
kill_fasync(&event->fasync, SIGIO, event->pending_kill);
|
||||
kill_fasync(perf_event_fasync(event), SIGIO, event->pending_kill);
|
||||
event->pending_kill = 0;
|
||||
}
|
||||
}
|
||||
@@ -5160,7 +5168,7 @@ static int __perf_event_overflow(struct perf_event *event,
|
||||
else
|
||||
perf_event_output(event, data, regs);
|
||||
|
||||
if (event->fasync && event->pending_kill) {
|
||||
if (*perf_event_fasync(event) && event->pending_kill) {
|
||||
event->pending_wakeup = 1;
|
||||
irq_work_queue(&event->pending);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user