ConfigurableArrayPool shoud use GC.AllocateUninitializedArray instead of new T[].
SharedArrayPool use GC.AllocateUninitializedArray:
buffer = GC.AllocateUninitializedArray<T>(minimumLength);
There are four line with new T[] in ConfigurableArrayPool.cs. Probably all of them can be replaced with GC.AllocateUninitializedArray.