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

Reply via email to