|
@@ -620,6 +620,9 @@ int ring_buffer_poll_wait(struct ring_buffer *buffer, int cpu,
|
|
|
if (cpu == RING_BUFFER_ALL_CPUS)
|
|
if (cpu == RING_BUFFER_ALL_CPUS)
|
|
|
work = &buffer->irq_work;
|
|
work = &buffer->irq_work;
|
|
|
else {
|
|
else {
|
|
|
|
|
+ if (!cpumask_test_cpu(cpu, buffer->cpumask))
|
|
|
|
|
+ return -EINVAL;
|
|
|
|
|
+
|
|
|
cpu_buffer = buffer->buffers[cpu];
|
|
cpu_buffer = buffer->buffers[cpu];
|
|
|
work = &cpu_buffer->irq_work;
|
|
work = &cpu_buffer->irq_work;
|
|
|
}
|
|
}
|