On Tue, 7 Oct 2025 16:25:41 -0700 Runping Lai <[email protected]> wrote:
> On Tue, Oct 7, 2025 at 2:40 PM Steven Rostedt <[email protected]> wrote: > > > > On Tue, 7 Oct 2025 16:31:41 -0400 > > Steven Rostedt <[email protected]> wrote: > > > > > +static void trace_user_fault_buffer_free(struct trace_user_buf_info > > > *tinfo) > > > +{ > > > + char *buf; > > > + int cpu; > > > + > > > + for_each_possible_cpu(cpu) { > > > + buf = per_cpu_ptr(tinfo->tbuf, cpu)->buf; > > > + kfree(buf); > > > + } > > > > Oops, missed: > > > > free_percpu(tinfo->tbuf); > > > > here. > > Hey Steve, > > Thanks for providing the buffer-based solution. I tried it and it > fixes the problem! > However, the first experiment, adding pagefault_disable/enable() > around copy_nofault() > doesn't help. Still having the same problem. I suppose the issue is > more than pagefault? > > Can you please suggest the next move? I can also do more tests if needed. > I may need to make this patch the official solution. -- Steve
