]> Pileus Git - ~andy/linux/blobdiff - kernel/trace/ring_buffer.c
ring-buffer: Do not poll non allocated cpu buffers
[~andy/linux] / kernel / trace / ring_buffer.c
index b59aea2c48c287f5de894efcba7d53c02fd6f279..e444ff88f0a425a00a4921291b46678b6a7efe21 100644 (file)
@@ -620,6 +620,9 @@ int ring_buffer_poll_wait(struct ring_buffer *buffer, int cpu,
        if (cpu == RING_BUFFER_ALL_CPUS)
                work = &buffer->irq_work;
        else {
+               if (!cpumask_test_cpu(cpu, buffer->cpumask))
+                       return -EINVAL;
+
                cpu_buffer = buffer->buffers[cpu];
                work = &cpu_buffer->irq_work;
        }