mbox series

[v2,0/5] drm/bridge: Revert all bridge_state related changes

Message ID 20200107185807.606999-1-boris.brezillon@collabora.com (mailing list archive)
Headers show
Series drm/bridge: Revert all bridge_state related changes | expand

Message

Boris Brezillon Jan. 7, 2020, 6:58 p.m. UTC
Hello

Sorry for the noise. I realize the v1 didn't contain any explanation
about why those commits were reverted and were missing my SoB.

The addition of a bridge_state object introduced a circular dependency
between drm.ko and drm_kms_helper.ko which uncovered a misdesign in how
the whole thing was implemented. Let's revert all patches for now.

Regards,

Boris

P.S.: Daniel, I'd appreciate if you could find some time to look at the
patch series introducing the faulty patches [1]. Those have been
reviewed by Laurent and Neil who didn't seem to notice the problem you
reported (improper core/helper separation and improper use of atomic
helpers from the core). I don't know if Laurent and Neil were aware of
these rule, but I definitely wasn't. I'm pretty sure it's clearly
stated somewhere in the doc, so it's likely all my fault (RTFM).
To sum-up, I'm no denying my responsibility in this mess and I'm fine
taking the blame for not noticing the regression before pushing
those patches to drm-misc-next and for not reading the doc, but this
also proves one thing: no matter how good the doc is, we need reviews
from those who design/drive the subsystem (AKA you) if we want to catch
such design issues before merging things. And I'm not talking about
regressions that can be detected/reported with a good CI infrastructure
here (though we definitely want a good CI too :-)).

[1]https://patchwork.freedesktop.org/series/64915/

Boris Brezillon (5):
  Revert "drm/bridge: Fix a NULL pointer dereference in
    drm_atomic_bridge_chain_check()"
  Revert "drm/bridge: Add the necessary bits to support bus format
    negotiation"
  Revert "drm/bridge: Add an ->atomic_check() hook"
  Revert "drm/bridge: Patch atomic hooks to take a drm_bridge_state"
  Revert "drm/bridge: Add a drm_bridge_state object"

 .../drm/bridge/analogix/analogix_dp_core.c    |  41 +-
 drivers/gpu/drm/drm_atomic.c                  |  39 --
 drivers/gpu/drm/drm_atomic_helper.c           |  32 +-
 drivers/gpu/drm/drm_bridge.c                  | 531 +-----------------
 drivers/gpu/drm/rcar-du/rcar_lvds.c           |   8 +-
 include/drm/drm_atomic.h                      |   3 -
 include/drm/drm_bridge.h                      | 275 +--------
 7 files changed, 49 insertions(+), 880 deletions(-)