Lines Matching refs:spd
4817 static void tracing_spd_release_pipe(struct splice_pipe_desc *spd, in tracing_spd_release_pipe() argument
4820 __free_page(spd->pages[idx]); in tracing_spd_release_pipe()
4887 struct splice_pipe_desc spd = { in tracing_splice_read_pipe() local
4900 if (splice_grow_spd(pipe, &spd)) in tracing_splice_read_pipe()
4925 for (i = 0, rem = len; i < spd.nr_pages_max && rem; i++) { in tracing_splice_read_pipe()
4926 spd.pages[i] = alloc_page(GFP_KERNEL); in tracing_splice_read_pipe()
4927 if (!spd.pages[i]) in tracing_splice_read_pipe()
4934 page_address(spd.pages[i]), in tracing_splice_read_pipe()
4937 __free_page(spd.pages[i]); in tracing_splice_read_pipe()
4940 spd.partial[i].offset = 0; in tracing_splice_read_pipe()
4941 spd.partial[i].len = trace_seq_used(&iter->seq); in tracing_splice_read_pipe()
4950 spd.nr_pages = i; in tracing_splice_read_pipe()
4953 ret = splice_to_pipe(pipe, &spd); in tracing_splice_read_pipe()
4957 splice_shrink_spd(&spd); in tracing_splice_read_pipe()
5730 static void buffer_spd_release(struct splice_pipe_desc *spd, unsigned int i) in buffer_spd_release() argument
5733 (struct buffer_ref *)spd->partial[i].private; in buffer_spd_release()
5740 spd->partial[i].private = 0; in buffer_spd_release()
5752 struct splice_pipe_desc spd = { in tracing_buffers_splice_read() local
5769 if (splice_grow_spd(pipe, &spd)) in tracing_buffers_splice_read()
5785 for (i = 0; i < spd.nr_pages_max && len && entries; i++, len -= PAGE_SIZE) { in tracing_buffers_splice_read()
5822 spd.pages[i] = page; in tracing_buffers_splice_read()
5823 spd.partial[i].len = PAGE_SIZE; in tracing_buffers_splice_read()
5824 spd.partial[i].offset = 0; in tracing_buffers_splice_read()
5825 spd.partial[i].private = (unsigned long)ref; in tracing_buffers_splice_read()
5826 spd.nr_pages++; in tracing_buffers_splice_read()
5833 spd.nr_pages = i; in tracing_buffers_splice_read()
5836 if (!spd.nr_pages) { in tracing_buffers_splice_read()
5850 ret = splice_to_pipe(pipe, &spd); in tracing_buffers_splice_read()
5851 splice_shrink_spd(&spd); in tracing_buffers_splice_read()