summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorachaulk <achaulk@chromium.org>2015-06-23 11:50:54 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-23 18:51:29 +0000
commitd7567117d5243686333a4678df5b4a23b18ddb4a (patch)
tree99264c0f2dc0481da86e11c4f08372dc2ef2acb8
parentb9d66b050824f376e90e536452672bdcf2410df6 (diff)
downloadchromium_src-d7567117d5243686333a4678df5b4a23b18ddb4a.zip
chromium_src-d7567117d5243686333a4678df5b4a23b18ddb4a.tar.gz
chromium_src-d7567117d5243686333a4678df5b4a23b18ddb4a.tar.bz2
Revert of ozone: Reallocate atomic property set (patchset #1 id:1 of https://codereview.chromium.org/1206513005/)
Reason for revert: kernel doesn't like it. need to resubmit Original issue's description: > ozone: Reallocate atomic property set > > The library doesn't clear the existing set for us, so we start fresh each frame > > Committed: https://crrev.com/23171db9366c6e9b3a926ccc558c3bd001f0852e > Cr-Commit-Position: refs/heads/master@{#335685} TBR=dnicoara@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1204763002 Cr-Commit-Position: refs/heads/master@{#335719}
-rw-r--r--ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc b/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc
index e387c1b..29ed57e 100644
--- a/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc
+++ b/ui/ozone/platform/drm/gpu/hardware_display_plane_manager_atomic.cc
@@ -34,6 +34,20 @@ bool HardwareDisplayPlaneManagerAtomic::Commit(
HardwareDisplayPlaneList* plane_list,
bool is_sync,
bool test_only) {
+ for (HardwareDisplayPlane* plane : plane_list->old_plane_list) {
+ bool found =
+ std::find(plane_list->plane_list.begin(), plane_list->plane_list.end(),
+ plane) != plane_list->plane_list.end();
+ if (!found) {
+ // This plane is being released, so we need to zero it.
+ plane->set_in_use(false);
+ HardwareDisplayPlaneAtomic* atomic_plane =
+ static_cast<HardwareDisplayPlaneAtomic*>(plane);
+ atomic_plane->SetPlaneData(plane_list->atomic_property_set.get(), 0, 0,
+ gfx::Rect(), gfx::Rect());
+ }
+ }
+
std::vector<base::WeakPtr<CrtcController>> crtcs;
for (HardwareDisplayPlane* plane : plane_list->plane_list) {
HardwareDisplayPlaneAtomic* atomic_plane =
@@ -56,7 +70,6 @@ bool HardwareDisplayPlaneManagerAtomic::Commit(
PLOG(ERROR) << "Failed to commit properties";
return false;
}
- plane_list->atomic_property_set.reset(drmModePropertySetAlloc());
return true;
}