|
|
@@ -4141,6 +4141,7 @@ EXPORT_SYMBOL_GPL(ring_buffer_consume);
|
|
|
* ring_buffer_read_prepare - Prepare for a non consuming read of the buffer
|
|
|
* @buffer: The ring buffer to read from
|
|
|
* @cpu: The cpu buffer to iterate over
|
|
|
+ * @flags: gfp flags to use for memory allocation
|
|
|
*
|
|
|
* This performs the initial preparations necessary to iterate
|
|
|
* through the buffer. Memory is allocated, buffer recording
|
|
|
@@ -4158,7 +4159,7 @@ EXPORT_SYMBOL_GPL(ring_buffer_consume);
|
|
|
* This overall must be paired with ring_buffer_read_finish.
|
|
|
*/
|
|
|
struct ring_buffer_iter *
|
|
|
-ring_buffer_read_prepare(struct ring_buffer *buffer, int cpu)
|
|
|
+ring_buffer_read_prepare(struct ring_buffer *buffer, int cpu, gfp_t flags)
|
|
|
{
|
|
|
struct ring_buffer_per_cpu *cpu_buffer;
|
|
|
struct ring_buffer_iter *iter;
|
|
|
@@ -4166,7 +4167,7 @@ ring_buffer_read_prepare(struct ring_buffer *buffer, int cpu)
|
|
|
if (!cpumask_test_cpu(cpu, buffer->cpumask))
|
|
|
return NULL;
|
|
|
|
|
|
- iter = kmalloc(sizeof(*iter), GFP_KERNEL);
|
|
|
+ iter = kmalloc(sizeof(*iter), flags);
|
|
|
if (!iter)
|
|
|
return NULL;
|
|
|
|