Timur Tabi
2024-Feb-02 17:14 UTC
[PATCH 1/2] drm/nouveau: don't fini scheduler if not initialized
On Fri, 2024-02-02 at 01:05 +0100, Danilo Krummrich wrote:> nouveau_abi16_ioctl_channel_alloc() and nouveau_cli_init() simply call > their corresponding *_fini() counterpart. This can lead to > nouveau_sched_fini() being called without struct nouveau_sched ever > being initialized in the first place.Thanks, I've confirmed that these patches do fix the problem.
Danilo Krummrich
2024-Feb-02 17:24 UTC
[PATCH 1/2] drm/nouveau: don't fini scheduler if not initialized
On 2/2/24 18:14, Timur Tabi wrote:> On Fri, 2024-02-02 at 01:05 +0100, Danilo Krummrich wrote: >> nouveau_abi16_ioctl_channel_alloc() and nouveau_cli_init() simply call >> their corresponding *_fini() counterpart. This can lead to >> nouveau_sched_fini() being called without struct nouveau_sched ever >> being initialized in the first place. > > Thanks, I've confirmed that these patches do fix the problemCool, gonna add your 'Tested-by' then. - Danilo
Timur Tabi
2024-Feb-14 23:48 UTC
[PATCH 1/2] drm/nouveau: don't fini scheduler if not initialized
On Fri, 2024-02-02 at 17:14 +0000, Timur Tabi wrote:> On Fri, 2024-02-02 at 01:05 +0100, Danilo Krummrich wrote: > > nouveau_abi16_ioctl_channel_alloc() and nouveau_cli_init() simply call > > their corresponding *_fini() counterpart. This can lead to > > nouveau_sched_fini() being called without struct nouveau_sched ever > > being initialized in the first place. > > Thanks, I've confirmed that these patches do fix the problem.Looks like I spoke too soon, I just hit the problem with the drm-next tree. I'm able to repro the problem by having r535_gsp_init() return an error. r535_gsp_rpc_poll return -EINVAL (I'm testing my own GSP-RM build) and nouveau_sched_fini() is called even though nouveau_sched_init() was never called.
Maybe Matching Threads
- [PATCH 1/2] drm/nouveau: don't fini scheduler if not initialized
- [PATCH v2] drm/nouveau: Improve variable names in nouveau_sched_init()
- [PATCH] drm/nouveau: Improve variable names in nouveau_sched_init()
- [PATCH drm-misc-next] drm/nouveau: sched: avoid job races between entities
- [PATCH] drm/nouveau: Constify struct nouveau_job_ops