[PATCH 0/3] media: hws: fix shared IRQ and video quiesce handling

Ben Hoff posted 3 patches 1 week, 3 days ago
drivers/media/pci/hws/hws.h            |   2 +
drivers/media/pci/hws/hws_irq.c        |  84 +-----------
drivers/media/pci/hws/hws_pci.c        | 181 ++++---------------------
drivers/media/pci/hws/hws_v4l2_ioctl.c |  14 --
drivers/media/pci/hws/hws_video.c      | 144 ++------------------
5 files changed, 44 insertions(+), 381 deletions(-)
[PATCH 0/3] media: hws: fix shared IRQ and video quiesce handling
Posted by Ben Hoff 1 week, 3 days ago
HWS quiescence currently disables a shared IRQ descriptor and calls
vb2_streamoff() without the queue's state mutex. This can prevent other
devices on the interrupt line from being serviced and race userspace
capture operations during suspend or shutdown.

Remove diagnostic register accesses first, then restrict IRQ quiescence
to the HWS function and serialize monitor and queue transitions. Runtime
readiness checks report an unready core without resetting shared hardware
while capture buffers may still be owned by another channel.

Based on media-next/next at b38d06ad1e13 ("media: ipu6: Fix up missing
IWYU issue"). Apply the three patches in order.

AI assistance: OpenAI Codex using GPT-6 assisted with this submission.
Each patch includes Assisted-by: Codex:GPT-6 to identify the agent and model.

Validation:
- Applied and built every patch boundary as an external module with W=1
  against the prepared x86_64 kernel, with CONFIG_PM_SLEEP=y.
- Strict checkpatch and git diff --check pass.
- Hardware capture and system-sleep tests have not been run for this
  extracted series.

Ben Hoff (3):
  media: hws: remove debug controls and lifecycle tracing
  media: hws: quiesce interrupts without disabling shared IRQ
  media: hws: serialize video quiesce with queue state

 drivers/media/pci/hws/hws.h            |   2 +
 drivers/media/pci/hws/hws_irq.c        |  84 +-----------
 drivers/media/pci/hws/hws_pci.c        | 181 ++++---------------------
 drivers/media/pci/hws/hws_v4l2_ioctl.c |  14 --
 drivers/media/pci/hws/hws_video.c      | 144 ++------------------
 5 files changed, 44 insertions(+), 381 deletions(-)


base-commit: b38d06ad1e13c32970d58039c154f009b81a3368
Re: [PATCH 0/3] media: hws: fix shared IRQ and video quiesce handling
Posted by Hans Verkuil 2 days, 18 hours ago
Hi Ben,

On 15/09/2026 03:01, Ben Hoff wrote:
> HWS quiescence currently disables a shared IRQ descriptor and calls
> vb2_streamoff() without the queue's state mutex. This can prevent other
> devices on the interrupt line from being serviced and race userspace
> capture operations during suspend or shutdown.
> 
> Remove diagnostic register accesses first, then restrict IRQ quiescence
> to the HWS function and serialize monitor and queue transitions. Runtime
> readiness checks report an unready core without resetting shared hardware
> while capture buffers may still be owned by another channel.
> 
> Based on media-next/next at b38d06ad1e13 ("media: ipu6: Fix up missing
> IWYU issue"). Apply the three patches in order.
> 
> AI assistance: OpenAI Codex using GPT-6 assisted with this submission.
> Each patch includes Assisted-by: Codex:GPT-6 to identify the agent and model.

So I'm marking this series as Changes Requested.

It is not so much the code, but the awful AI generated commit messages.
For example. patch 1/3 makes lots of changes, but the commit message doesn't
even say why this is needed. It tells you it keeps code, but obviously
you can't see what that code is in the patch because it is, well, kept :-)

To me this patch just looks like a big cleanup patch, ditching old debug
code that is no longer needed. Which sounds like a perfectly find commit
log message.

I suggest deleting the commit messages and rewriting them yourself in
words that a human would use ('serialize video quiesce with queue state':
really? What the heck does that even mean?)

Remember that AI can be very useful, but in the end it is a human (i.e.
me) that has to review it.

Regards,

	Hans

> 
> Validation:
> - Applied and built every patch boundary as an external module with W=1
>   against the prepared x86_64 kernel, with CONFIG_PM_SLEEP=y.
> - Strict checkpatch and git diff --check pass.
> - Hardware capture and system-sleep tests have not been run for this
>   extracted series.
> 
> Ben Hoff (3):
>   media: hws: remove debug controls and lifecycle tracing
>   media: hws: quiesce interrupts without disabling shared IRQ
>   media: hws: serialize video quiesce with queue state
> 
>  drivers/media/pci/hws/hws.h            |   2 +
>  drivers/media/pci/hws/hws_irq.c        |  84 +-----------
>  drivers/media/pci/hws/hws_pci.c        | 181 ++++---------------------
>  drivers/media/pci/hws/hws_v4l2_ioctl.c |  14 --
>  drivers/media/pci/hws/hws_video.c      | 144 ++------------------
>  5 files changed, 44 insertions(+), 381 deletions(-)
> 
> 
> base-commit: b38d06ad1e13c32970d58039c154f009b81a3368
>