OSDN Git Service

Revert "Revert "minigbm: replace DRM_FORMAT_MOD_INVALID with DRM_FORMAT_MOD_LINEAR""
authorGurchetan Singh <gurchetansingh@chromium.org>
Fri, 12 Jan 2018 23:31:50 +0000 (23:31 +0000)
committerGurchetan Singh <gurchetansingh@chromium.org>
Thu, 18 Jan 2018 03:44:38 +0000 (03:44 +0000)
This reverts commit 9ad07155dd9e5370e507d266766a8bcfbb4fa4d7.

Reason for revert: We haven't seen improvements in the graphs after the speculative
revert that landed in 10292.0.0:

https://chromeperf.appspot.com/group_report?keys=agxzfmNocm9tZXBlcmZyFAsSB0Fub21hbHkYgICQ6IzqogoM

Original change's description:
> Revert "minigbm: replace DRM_FORMAT_MOD_INVALID with DRM_FORMAT_MOD_LINEAR"
>
> This reverts commit 9927d78669f67c2446888aa32a3e9f9c71f7228b.
>
> BUG=chromium:799639
> TEST=run graphics_GLMark2
>
> Change-Id: Idcf25de31fe2a17cc28900558e19145ca33dbff5
> Reviewed-on: https://chromium-review.googlesource.com/853223
> Commit-Ready: Dominik Behr <dbehr@chromium.org>
> Tested-by: Dominik Behr <dbehr@chromium.org>
> Reviewed-by: Robert Tarasov <tutankhamen@chromium.org>

Bug: chromium:799639
Change-Id: I100b93e41f43c026181eef0777f76b5c2cd93d6c
Reviewed-on: https://chromium-review.googlesource.com/865773
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Dominik Behr <dbehr@chromium.org>
drv_priv.h
helpers.c
i915.c

index a397b1e..21c003b 100644 (file)
@@ -92,7 +92,7 @@ struct backend {
 
 #define BO_USE_SW_RARELY BO_USE_SW_READ_RARELY | BO_USE_SW_WRITE_RARELY
 
-#define LINEAR_METADATA (struct format_metadata) { 0, 1, DRM_FORMAT_MOD_NONE }
+#define LINEAR_METADATA (struct format_metadata) { 0, 1, DRM_FORMAT_MOD_LINEAR }
 // clang-format on
 
 #endif
index ef653ed..6c26e54 100644 (file)
--- a/helpers.c
+++ b/helpers.c
@@ -515,7 +515,7 @@ struct drv_array *drv_query_kms(struct driver *drv)
                        for (k = 0; k < drv_array_size(kms_items); k++) {
                                struct kms_item *item = drv_array_at_idx(kms_items, k);
                                if (item->format == plane->formats[j] &&
-                                   item->modifier == DRM_FORMAT_MOD_INVALID) {
+                                   item->modifier == DRM_FORMAT_MOD_LINEAR) {
                                        item->use_flags |= use_flag;
                                        found = true;
                                        break;
@@ -524,7 +524,7 @@ struct drv_array *drv_query_kms(struct driver *drv)
 
                        if (!found) {
                                struct kms_item item = { .format = plane->formats[j],
-                                                        .modifier = DRM_FORMAT_MOD_INVALID,
+                                                        .modifier = DRM_FORMAT_MOD_LINEAR,
                                                         .use_flags = use_flag };
 
                                drv_array_append(kms_items, &item);
diff --git a/i915.c b/i915.c
index 9b7a6fe..be315a1 100644 (file)
--- a/i915.c
+++ b/i915.c
@@ -63,7 +63,7 @@ static int i915_add_kms_item(struct driver *drv, const struct kms_item *item)
                if (combo->format != item->format)
                        continue;
 
-               if (item->modifier == DRM_FORMAT_MOD_INVALID &&
+               if (item->modifier == DRM_FORMAT_MOD_LINEAR &&
                    combo->metadata.tiling == I915_TILING_X) {
                        /*
                         * FIXME: drv_query_kms() does not report the available modifiers