On Thu, 06 Mar 2025 12:11:01 +0000, Yeoreum Yun wrote:
In some coresight drivers, drvdata->spinlock can be held during __schedule() by perf_event_task_sched_out()/in().
Since drvdata->spinlock type is spinlock_t and perf_event_task_sched_out()/in() is called after acquiring rq_lock, which is raw_spinlock_t (an unsleepable lock), this poses an issue in PREEMPT_RT kernel where spinlock_t is sleepable.
[...]
Applied, thanks!
[1/9] coresight: change coresight_device lock type to raw_spinlock_t https://git.kernel.org/coresight/c/26f060c1 [2/9] coresight-etm4x: change etmv4_drvdata spinlock type to raw_spinlock_t https://git.kernel.org/coresight/c/743c5a97 [3/9] coresight: change coresight_trace_id_map's lock type to raw_spinlock_t https://git.kernel.org/coresight/c/4cf364ca [4/9] coresight-cti: change cti_drvdata spinlock's type to raw_spinlock_t https://git.kernel.org/coresight/c/e3044065 [5/9] coresight-etb10: change etb_drvdata spinlock's type to raw_spinlock_t https://git.kernel.org/coresight/c/6b80c0ab [6/9] coresight-funnel: change funnel_drvdata spinlock's type to raw_spinlock_t https://git.kernel.org/coresight/c/56eb02f0 [7/9] coresight-replicator: change replicator_drvdata spinlock's type to raw_spinlock_t https://git.kernel.org/coresight/c/982d0a0e [8/9] coresight-tmc: change tmc_drvdata spinlock's type to raw_spinlock_t https://git.kernel.org/coresight/c/db11f75b [9/9] coresight/ultrasoc: change smb_drv_data spinlock's type to raw_spinlock_t https://git.kernel.org/coresight/c/d11eb31d
Best regards,