Messages in this thread | | | From | Ian Rogers <> | Date | Fri, 26 Aug 2022 13:52:07 -0700 | Subject | Re: [PATCH v3 09/18] perf ui: Update use of pthread mutex |
| |
On Fri, Aug 26, 2022 at 1:40 PM Namhyung Kim <namhyung@kernel.org> wrote: > > On Fri, Aug 26, 2022 at 12:21 PM Adrian Hunter <adrian.hunter@intel.com> wrote: > > > > On 26/08/22 22:00, Namhyung Kim wrote: > > > On Fri, Aug 26, 2022 at 11:53 AM Adrian Hunter <adrian.hunter@intel.com> wrote: > > >> Below seems adequate for now, at least logically, but maybe it > > >> would confuse clang thread-safety analysis? > > > > > > I think it's not just about locks, the exit_browser should bail out early > > > if the setup code was not called. > > > > In those cases, use_browser is 0 or -1 unless someone has inserted > > an invalid perf config like "tui.script=on" or "gtk.script=on". > > So currently, in cases where exit_browser() is called without > > setup_browser(), it does nothing. Which means it is only the > > unconditional mutex_destroy() that needs to be conditional. > > Yeah there's a possibility that it can be called with > 0 use_browser > on some broken config or something. So I think it's safer and better > for future changes.
I'd thought about a: static bool ui__lock_initialized; but the issue is shouldn't it be atomic? Maybe we should guard it with a lock? Then we are back where we started. Having a clean init/exit invariant would be best but such a change has the potential to be large and out of scope here.
Thanks, Ian
> Thanks, > Namhyung
| |