]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/gpu/drm/i915/i915_cmd_parser.c
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
[karo-tx-linux.git] / drivers / gpu / drm / i915 / i915_cmd_parser.c
index c45856bcc8b910c568f611c011ee9df91e423326..593b657d3e59e21d3e73dac35086a64a850f8b69 100644 (file)
@@ -709,11 +709,13 @@ int i915_cmd_parser_init_ring(struct intel_engine_cs *ring)
        BUG_ON(!validate_cmds_sorted(ring, cmd_tables, cmd_table_count));
        BUG_ON(!validate_regs_sorted(ring));
 
-       ret = init_hash_table(ring, cmd_tables, cmd_table_count);
-       if (ret) {
-               DRM_ERROR("CMD: cmd_parser_init failed!\n");
-               fini_hash_table(ring);
-               return ret;
+       if (hash_empty(ring->cmd_hash)) {
+               ret = init_hash_table(ring, cmd_tables, cmd_table_count);
+               if (ret) {
+                       DRM_ERROR("CMD: cmd_parser_init failed!\n");
+                       fini_hash_table(ring);
+                       return ret;
+               }
        }
 
        ring->needs_cmd_parser = true;