backends/drm: merge all commits and try again if atomic commits fail
The failure might be from the commit reordering going wrong in some way. The total accumulated state might still work even if an individual commit does not though, so before considering the whole frame lost, merge all the commits and try again