Remove need for gpu when unrefing managed resources.

Metal and D3D don't require the GrGpu to delete resources, and for
Vulkan, we'll store the GrVkGpu in each individual resource. This will
allow us to use sk_sp<SomeManagedResource> in the future.

Bug: skia:9935
Change-Id: Id51022b935ad360367976a6bdf60cdda9e3f7dee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/276456
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
diff --git a/src/gpu/vk/GrVkDescriptorSetManager.cpp b/src/gpu/vk/GrVkDescriptorSetManager.cpp
index 1d2e235..ca09b80 100644
--- a/src/gpu/vk/GrVkDescriptorSetManager.cpp
+++ b/src/gpu/vk/GrVkDescriptorSetManager.cpp
@@ -207,7 +207,7 @@
             return nullptr;
         }
 
-        ds = new GrVkDescriptorSet(vkDS, fPoolManager.fPool, handle);
+        ds = new GrVkDescriptorSet(gpu, vkDS, fPoolManager.fPool, handle);
     }
     SkASSERT(ds);
     return ds;
@@ -222,13 +222,13 @@
     fPoolManager.freeGPUResources(gpu);
 
     for (int i = 0; i < fFreeSets.count(); ++i) {
-        fFreeSets[i]->unref(gpu);
+        fFreeSets[i]->unref();
     }
     fFreeSets.reset();
 
     for (int i = 0; i < fImmutableSamplers.count(); ++i) {
         if (fImmutableSamplers[i]) {
-            fImmutableSamplers[i]->unref(gpu);
+            fImmutableSamplers[i]->unref();
         }
     }
     fImmutableSamplers.reset();
@@ -290,7 +290,7 @@
 
 bool GrVkDescriptorSetManager::DescriptorPoolManager::getNewPool(GrVkGpu* gpu) {
     if (fPool) {
-        fPool->unref(gpu);
+        fPool->unref();
         uint32_t newPoolSize = fMaxDescriptors + ((fMaxDescriptors + 1) >> 1);
         if (newPoolSize < kMaxDescriptors) {
             fMaxDescriptors = newPoolSize;
@@ -339,7 +339,7 @@
     }
 
     if (fPool) {
-        fPool->unref(gpu);
+        fPool->unref();
         fPool = nullptr;
     }
 }