[PATCH v3 2/2] tracing: make tracer_init_tracefs initcall asynchronous

Mark-PK Tsai mark-pk.tsai at mediatek.com
Tue Apr 26 01:05:54 PDT 2022


> > +static __init int tracer_init_tracefs(void)
> > +{
> > +	int ret;
> > +
> > +	trace_access_lock_init();
> > +
> > +	ret = tracing_init_dentry();
> > +	if (ret)
> > +		return 0;
> > +
> > +	INIT_WORK(&tracerfs_init_work, tracer_init_tracefs_work_func);
> > +	if (!eval_map_wq)
> > +		tracer_init_tracefs_work_func(&tracerfs_init_work);
> 
> Why go through the bother of doing the INIT_WORK if eval_map_wq is not
> created? Just do:
> 
> 	if (eval_map_wq) {
> 		INIT_WORK(&tracerfs_init_work, tracer_init_tracefs_work_func);
> 		queue_work(eval_map_wq, &tracerfs_init_work);
> 	} else {
> 		tracer_init_tracefs_work_func(NULL);
> 	}

Got it, I will update it in v4.
Thanks!

> 
> But that's just a nit anyway.
> 
> -- Steve
> 
> 
> 
> > +	else
> > +		queue_work(eval_map_wq, &tracerfs_init_work);
> >  
> >  	return 0;
> >  }



More information about the Linux-mediatek mailing list