[PATCH v2] media: mediatek: vcodec: Use spinlock for context list protection lock

Tomasz Figa tfiga at chromium.org
Wed Sep 3 23:39:48 PDT 2025


On Thu, Sep 4, 2025 at 3:18 PM Chen-Yu Tsai <wenst at chromium.org> wrote:
>
> Ping?
>
> On Wed, Aug 20, 2025 at 6:37 PM Fei Shao <fshao at chromium.org> wrote:
> >
> > On Wed, Aug 20, 2025 at 3:54 PM Chen-Yu Tsai <wenst at chromium.org> wrote:
> > >
> > > Previously a mutex was added to protect the encoder and decoder context
> > > lists from unexpected changes originating from the SCP IP block, causing
> > > the context pointer to go invalid, resulting in a NULL pointer
> > > dereference in the IPI handler.
> > >
> > > Turns out on the MT8173, the VPU IPI handler is called from hard IRQ
> > > context. This causes a big warning from the scheduler. This was first
> > > reported downstream on the ChromeOS kernels, but is also reproducible
> > > on mainline using Fluster with the FFmpeg v4l2m2m decoders. Even though
> > > the actual capture format is not supported, the affected code paths
> > > are triggered.
> > >
>
> We really should get this in as this triggers a very large and scary
> warning every time the encoder or decoder is used.

Just to clarify, it does actually cause BUG_ON() panics, so if the
original change is already present in a stable kernel, this fix should
be merged to stable as well.

Best,
Tomasz



More information about the Linux-mediatek mailing list