fix for CRTC mutex corruption
Ilija Hadzic
ihadzic at research.bell-labs.com
Tue Oct 29 20:22:09 CET 2013
On Tue, 29 Oct 2013, Daniel Vetter wrote:
> Aside: The horribly ad-hoc calling convetions with some of the (x, y, fb,
> mode) parameters being set before calling a lower-level functions, some
> being restored, some of them being the old backup value and some of them
> being expected to be updated by the called function really gives me the
> creeps.
>
> But fixing that is something for a _really_ slow week (month even ...).
>
I agree, I don't like it either. It's too tangled-up, but fixing it will
probably be a major rework.
>> The actual fix is implemented in patch #6; preceding
>> 5 patches are necessary prerequisites.
>
> Hm, I don't really see why patches 1,2&4 are required. If we reorder them
> to the end of the series as follow-up cleanups then we'd only need to
> backport 3 patches. Which is imo reasonable.
1 and 2 could indeed be left out, but the end-result will look really ugly
(e.g., x and y restoration will come from save_set.x and save_set.y, while
frame buffer restoration will come from old_fb (and IMO, it's always
better to first cleanup the code that one is about to touch and then make
functional changes).
Patch 4, however, is required because of saving and restoration of
'enabled' flag, but it could be split in two: the required part that
restores the enabled flag that restores only the the 'enabled' flag and
the cleanup part that eliminates unecessary restoration of hwmode field.
-- Ilija
More information about the dri-devel
mailing list