Refactor UV restoration to use same tilesize as Y

Change-Id: I56e741551f74624a84250d7565520db9c5127d1b
diff --git a/av1/common/alloccommon.c b/av1/common/alloccommon.c
index 50446b2..4860ae4 100644
--- a/av1/common/alloccommon.c
+++ b/av1/common/alloccommon.c
@@ -90,8 +90,11 @@
 #if CONFIG_LOOP_RESTORATION
 void av1_alloc_restoration_buffers(AV1_COMMON *cm) {
   int p;
-  for (p = 0; p < MAX_MB_PLANE; ++p)
-    av1_alloc_restoration_struct(&cm->rst_info[p], cm->width, cm->height);
+  av1_alloc_restoration_struct(&cm->rst_info[0], cm->width, cm->height);
+  for (p = 1; p < MAX_MB_PLANE; ++p)
+    av1_alloc_restoration_struct(&cm->rst_info[p],
+                                 cm->width >> cm->subsampling_x,
+                                 cm->height >> cm->subsampling_y);
   cm->rst_internal.tmpbuf =
       (int32_t *)aom_realloc(cm->rst_internal.tmpbuf, RESTORATION_TMPBUF_SIZE);
   if (cm->rst_internal.tmpbuf == NULL)