drm/atomic: workaround possible amdgpu bug
This commit is contained in:
parent
3e984d5cf3
commit
7aa0c43396
|
@ -531,12 +531,17 @@ impl<A: AsRawFd + 'static> AtomicDrmSurface<A> {
|
||||||
// on the atomic api we can modeset and trigger a page_flip event on the same call!
|
// on the atomic api we can modeset and trigger a page_flip event on the same call!
|
||||||
AtomicCommitFlags::PageFlipEvent,
|
AtomicCommitFlags::PageFlipEvent,
|
||||||
AtomicCommitFlags::AllowModeset,
|
AtomicCommitFlags::AllowModeset,
|
||||||
// we also do not need to wait for completion, like with `set_crtc`.
|
// we also *should* not need to wait for completion, like with `set_crtc`,
|
||||||
// and have tested this already, so we do not expect any errors later down the line.
|
// because we have tested this exact commit already, so we do not expect any errors later down the line.
|
||||||
AtomicCommitFlags::Nonblock,
|
//
|
||||||
|
// but there is always an exception and `amdgpu` can fail in interesting ways with this flag set...
|
||||||
|
// https://gitlab.freedesktop.org/drm/amd/-/issues?scope=all&utf8=%E2%9C%93&state=opened&search=drm_atomic_helper_wait_for_flip_done
|
||||||
|
//
|
||||||
|
// so we skip this flag:
|
||||||
|
// AtomicCommitFlags::Nonblock,
|
||||||
]
|
]
|
||||||
} else {
|
} else {
|
||||||
&[AtomicCommitFlags::AllowModeset, AtomicCommitFlags::Nonblock]
|
&[AtomicCommitFlags::AllowModeset]
|
||||||
},
|
},
|
||||||
req,
|
req,
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue