linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Geert Uytterhoeven <geert@linux-m68k.org>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: linux-media@vger.kernel.org, Sakari Ailus <sakari.ailus@iki.fi>,
	Martin Kepplinger <martink@posteo.de>,
	Ricardo Ribalda <ribalda@kernel.org>,
	Dave Stevenson <dave.stevenson@raspberrypi.com>,
	Bingbu Cao <bingbu.cao@intel.com>,
	"Paul J. Murphy" <paul.j.murphy@intel.com>,
	Daniele Alessandrelli <daniele.alessandrelli@intel.com>,
	Tianshu Qiu <tian.shu.qiu@intel.com>,
	Jimmy Su <jimmy.su@intel.com>,
	Jason Chen <jason.z.chen@intel.com>,
	Arec Kao <arec.kao@intel.com>,
	Shunqian Zheng <zhengsq@rock-chips.com>,
	Jacopo Mondi <jacopo@jmondi.org>,
	Mikhail Rudenko <mike.rudenko@gmail.com>,
	linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH v2] media: v4l2-subdev: Document and enforce .s_stream() requirements
Date: Tue, 24 Oct 2023 10:57:26 +0200 (CEST)	[thread overview]
Message-ID: <2221395-6a9b-9527-d697-e76aebc6af@linux-m68k.org> (raw)
In-Reply-To: <20230918124838.14210-1-laurent.pinchart@ideasonboard.com>

 	Hi Laurent,

On Mon, 18 Sep 2023, Laurent Pinchart wrote:
> The subdev .s_stream() operation must not be called to start an already
> started subdev, or stop an already stopped one. This requirement has
> never been formally documented. Fix it, and catch possible offenders
> with a WARN_ON() in the call_s_stream() wrapper.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> Changes since v1:
>
> - Add WARN_ON() in call_s_stream()
> - Fix typo and language in documentation

Thanks for your patch, which is now commit 009905ec50433259 ("media:
v4l2-subdev: Document and enforce .s_stream() requirements")
in linux-next/master media/master.

This patch causes the below warning during s2idle/s2ram on Salvator-XS
(R-Car H3 ES2.0) and White-Hawk (R-Car V4H).  Koelsch (R-Car M2-W) is not
affected, as its DU does not use the VSP.

     Filesystems sync: 0.014 seconds
     Freezing user space processes
     Freezing user space processes completed (elapsed 0.006 seconds)
     OOM killer disabled.
     Freezing remaining freezable tasks
     Freezing remaining freezable tasks completed (elapsed 0.002 seconds)
     ------------[ cut here ]------------
     WARNING: CPU: 2 PID: 962 at drivers/media/v4l2-core/v4l2-subdev.c:371 call_s_stream+0xd4/0xf0
     CPU: 2 PID: 962 Comm: s2idle Not tainted 6.6.0-rc3-arm64-renesas-00068-g009905ec5043 #2302
     Hardware name: Renesas Salvator-X 2nd version board based on r8a77951 (DT)
     pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
     pc : call_s_stream+0xd4/0xf0
     lr : vsp1_pipeline_stop+0x10c/0x2a4
     sp : ffff800083f635f0
     x29: ffff800083f635f0 x28: 0000000000000000 x27: 0000000000000001
     x26: 0000000000000000 x25: ffff0004c3375b08 x24: ffff0004c3375880
     x23: 0000000000000288 x22: ffff0004c3375b30 x21: 0000000000000000
     x20: ffff0004c3370880 x19: ffff0004c33750f0 x18: 0000000000000001
     x17: 000000040044ffff x16: 00000034b5503510 x15: 0000000000000028
     x14: 0000000000000000 x13: 0000000000000003 x12: 0000000000000000
     x11: 0000000000000000 x10: ffff800082063b78 x9 : ffff800081a5abb8
     x8 : 00000000e50359b8 x7 : 00000000000000ac x6 : 0000000000002b10
     x5 : 0000000000000000 x4 : ffff8000838f8000 x3 : ffff800080932760
     x2 : ffff80008096671c x1 : 0000000000000000 x0 : 0000000000000001
     Call trace:
      call_s_stream+0xd4/0xf0
      vsp1_pipeline_stop+0x10c/0x2a4
      vsp1_du_setup_lif+0x324/0x468
      rcar_du_vsp_disable+0x1c/0x24
      rcar_du_crtc_atomic_disable+0x2f8/0x438
      disable_outputs+0x22c/0x338
      drm_atomic_helper_commit_modeset_disables+0x18/0x44
      rcar_du_atomic_commit_tail+0x90/0xd8
      commit_tail+0x9c/0x178
      drm_atomic_helper_commit+0x18c/0x1a0
      drm_atomic_commit+0xa4/0xd8
      drm_atomic_helper_disable_all+0x1ec/0x200
      drm_atomic_helper_suspend+0xa0/0x208
      drm_mode_config_helper_suspend+0x2c/0x70
      rcar_du_pm_suspend+0x14/0x1c
      platform_pm_suspend+0x28/0x64
      dpm_run_callback+0x34/0x90
      __device_suspend+0x10c/0x3c4
      dpm_suspend+0x140/0x250
      dpm_suspend_start+0x78/0x90
      suspend_devices_and_enter+0x124/0x570
      pm_suspend+0x1ec/0x310
      state_store+0x88/0x124
      kobj_attr_store+0x14/0x24
      sysfs_kf_write+0x48/0x6c
      kernfs_fop_write_iter+0x118/0x1a8
      vfs_write+0x208/0x30c
      ksys_write+0x64/0xec
      __arm64_sys_write+0x18/0x20
      invoke_syscall+0x44/0x108
      el0_svc_common.constprop.0+0x3c/0xdc
      do_el0_svc+0x1c/0x24
      el0_svc+0x40/0xd4
      el0t_64_sync_handler+0x134/0x150
      el0t_64_sync+0x14c/0x150
     irq event stamp: 19852
     hardirqs last  enabled at (19851): [<ffff800080dc3234>] _raw_spin_unlock_irqrestore+0x6c/0x70
     hardirqs last disabled at (19852): [<ffff800080db3f9c>] el1_dbg+0x20/0x80
     softirqs last  enabled at (17806): [<ffff800080010618>] __do_softirq+0x430/0x4e0
     softirqs last disabled at (17799): [<ffff8000800151e0>] ____do_softirq+0xc/0x14
     ---[ end trace 0000000000000000 ]---

Gr{oetje,eeting}s,

 						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
 							    -- Linus Torvalds

  reply	other threads:[~2023-10-24  8:57 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-18 12:48 [PATCH v2] media: v4l2-subdev: Document and enforce .s_stream() requirements Laurent Pinchart
2023-10-24  8:57 ` Geert Uytterhoeven [this message]
2023-10-24 14:27   ` Laurent Pinchart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2221395-6a9b-9527-d697-e76aebc6af@linux-m68k.org \
    --to=geert@linux-m68k.org \
    --cc=arec.kao@intel.com \
    --cc=bingbu.cao@intel.com \
    --cc=daniele.alessandrelli@intel.com \
    --cc=dave.stevenson@raspberrypi.com \
    --cc=jacopo@jmondi.org \
    --cc=jason.z.chen@intel.com \
    --cc=jimmy.su@intel.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=martink@posteo.de \
    --cc=mike.rudenko@gmail.com \
    --cc=paul.j.murphy@intel.com \
    --cc=ribalda@kernel.org \
    --cc=sakari.ailus@iki.fi \
    --cc=tian.shu.qiu@intel.com \
    --cc=zhengsq@rock-chips.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).