[scudo] Adjust the reserved size for each Region to 1GB.
Test: CQ

We had a test case where we were running out of	virtual	space in a region.
This change increases that space by 4X.

Also adds some extra debug info if this happens again.

Issue: MA-572
Change-Id: Ide8bdbb758c7d9153169c9ead16288be0dfd76bb
diff --git a/zircon/third_party/ulib/scudo/allocator.h b/zircon/third_party/ulib/scudo/allocator.h
index 1526d11..1dce9c4 100644
--- a/zircon/third_party/ulib/scudo/allocator.h
+++ b/zircon/third_party/ulib/scudo/allocator.h
@@ -54,8 +54,8 @@
 };
 
 struct FuchsiaConfig {
-  // 256MB Regions
-  typedef SizeClassAllocator64<DefaultSizeClassMap, 28U> Primary;
+  // 1GB Regions
+  typedef SizeClassAllocator64<DefaultSizeClassMap, 30U> Primary;
   template <class A>
   using TSDRegistryT = TSDRegistrySharedT<A, 8U>; // Shared, max 8 TSDs.
 };
diff --git a/zircon/third_party/ulib/scudo/primary64.h b/zircon/third_party/ulib/scudo/primary64.h
index 37e2d3d..cd2af14 100644
--- a/zircon/third_party/ulib/scudo/primary64.h
+++ b/zircon/third_party/ulib/scudo/primary64.h
@@ -247,6 +247,7 @@
       if (UNLIKELY(RegionBase + MappedUser + UserMapSize > RegionSize)) {
         if (!Region->Exhausted) {
           Region->Exhausted = true;
+          printStats();
           Printf(
               "Scudo OOM: The process has Exhausted %zuM for size class %zu.\n",
               RegionSize >> 20, Size);