Messages in this thread | | | From | Suren Baghdasaryan <> | Date | Wed, 3 May 2023 12:45:29 -0700 | Subject | Re: [PATCH 34/40] lib: code tagging context capture support |
| |
On Wed, May 3, 2023 at 8:26 AM Dave Hansen <dave.hansen@intel.com> wrote: > > On 5/3/23 08:18, Suren Baghdasaryan wrote: > >>> +static inline void rem_ctx(struct codetag_ctx *ctx, > >>> + void (*free_ctx)(struct kref *refcount)) > >>> +{ > >>> + struct codetag_with_ctx *ctc = ctx->ctc; > >>> + > >>> + spin_lock(&ctc->ctx_lock); > >> This could deadlock when allocator is called from the IRQ context. > > I see. spin_lock_irqsave() then? > > Yes. But, even better, please turn on lockdep when you are testing. It > will find these for you. If you're on x86, we have a set of handy-dandy > debug options that you can add to an existing config with: > > make x86_debug.config
Nice! I thought I tested with lockdep enabled but I might be wrong. The beauty of working on multiple patchsets in parallel is that I can't remember what I did for each one :)
> > That said, I'm as concerned as everyone else that this is all "new" code > and doesn't lean on existing tracing or things like PAGE_OWNER enough.
Yeah, that's being actively discussed.
>
| |