diff --git a/.dotnet5.0.metadata b/.dotnet5.0.metadata
index 62c1f86..96189de 100644
--- a/.dotnet5.0.metadata
+++ b/.dotnet5.0.metadata
@@ -1 +1 @@
-5bf0db1cb5c90d71df0d5ddb1f9b037963a5c032 SOURCES/dotnet-v5.0.213-SDK.tar.gz
+2042c0388d94f880ee7e495a095c44f091330ab7 SOURCES/dotnet-v5.0.212-SDK.tar.gz
diff --git a/.gitignore b/.gitignore
index 9b24a6e..4598592 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/dotnet-v5.0.213-SDK.tar.gz
+SOURCES/dotnet-v5.0.212-SDK.tar.gz
diff --git a/SOURCES/runtime-62170-clang13.patch b/SOURCES/runtime-62170-clang13.patch
new file mode 100644
index 0000000..5869a69
--- /dev/null
+++ b/SOURCES/runtime-62170-clang13.patch
@@ -0,0 +1,79 @@
+From a89c562f9389fdc2bb1356d3da782d0063951e14 Mon Sep 17 00:00:00 2001
+From: Jan Vorlicek <jan.vorlicek@volny.cz>
+Date: Tue, 30 Nov 2021 10:55:21 +0100
+Subject: [PATCH] Fix clang 13 induced runtime issues (#62170)
+
+The clang 13 optimizer started to assume that "this" pointer is always
+properly aligned. That lead to elimination of some code that was actually
+needed.
+It also takes pointer aliasing rules more strictly in one place in jit.
+That caused the optimizer to falsely assume that a callee with an argument
+passed by reference is not modifying that argument and used a stale
+copy of the original value at the caller site.
+
+This change fixes both of the issues. With this fix, runtime compiled
+using clang 13 seems to be fully functional.
+---
+ src/coreclr/src/inc/corhlpr.h           | 8 ++++----
+ src/coreclr/src/jit/bitsetasshortlong.h | 4 ++--
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/coreclr/src/inc/corhlpr.h b/src/coreclr/src/inc/corhlpr.h
+index 450514da95c..427e8cdc0ff 100644
+--- a/src/coreclr/src/inc/corhlpr.h
++++ b/src/coreclr/src/inc/corhlpr.h
+@@ -336,7 +336,7 @@ struct COR_ILMETHOD_SECT
+     const COR_ILMETHOD_SECT* Next() const
+     {
+         if (!More()) return(0);
+-        return ((COR_ILMETHOD_SECT*)(((BYTE *)this) + DataSize()))->Align();
++        return ((COR_ILMETHOD_SECT*)Align(((BYTE *)this) + DataSize()));
+     }
+ 
+     const BYTE* Data() const
+@@ -374,9 +374,9 @@ struct COR_ILMETHOD_SECT
+         return((AsSmall()->Kind & CorILMethod_Sect_FatFormat) != 0);
+     }
+ 
+-    const COR_ILMETHOD_SECT* Align() const
++    static const void* Align(const void* p)
+     {
+-        return((COR_ILMETHOD_SECT*) ((((UINT_PTR) this) + 3) & ~3));
++        return((void*) ((((UINT_PTR) p) + 3) & ~3));
+     }
+ 
+ protected:
+@@ -579,7 +579,7 @@ typedef struct tagCOR_ILMETHOD_FAT : IMAGE_COR_ILMETHOD_FAT
+ 
+     const COR_ILMETHOD_SECT* GetSect() const {
+         if (!More()) return (0);
+-        return(((COR_ILMETHOD_SECT*) (GetCode() + GetCodeSize()))->Align());
++        return(((COR_ILMETHOD_SECT*) COR_ILMETHOD_SECT::Align(GetCode() + GetCodeSize())));
+     }
+ } COR_ILMETHOD_FAT;
+ 
+diff --git a/src/coreclr/src/jit/bitsetasshortlong.h b/src/coreclr/src/jit/bitsetasshortlong.h
+index 078cdc810e9..4c52819853f 100644
+--- a/src/coreclr/src/jit/bitsetasshortlong.h
++++ b/src/coreclr/src/jit/bitsetasshortlong.h
+@@ -345,7 +345,7 @@ public:
+     {
+         if (IsShort(env))
+         {
+-            (size_t&)out = (size_t)out & ((size_t)gen | (size_t)in);
++            out = (BitSetShortLongRep)((size_t)out & ((size_t)gen | (size_t)in));
+         }
+         else
+         {
+@@ -361,7 +361,7 @@ public:
+     {
+         if (IsShort(env))
+         {
+-            (size_t&)in = (size_t)use | ((size_t)out & ~(size_t)def);
++            in = (BitSetShortLongRep)((size_t)use | ((size_t)out & ~(size_t)def));
+         }
+         else
+         {
+-- 
+2.33.1
+
diff --git a/SPECS/dotnet5.0.spec b/SPECS/dotnet5.0.spec
index 69fc3d9..08df9e9 100644
--- a/SPECS/dotnet5.0.spec
+++ b/SPECS/dotnet5.0.spec
@@ -20,10 +20,10 @@
 # until that's done, disable LTO.  This has to happen before setting the flags below.
 %define _lto_cflags %{nil}
 
-%global host_version 5.0.16
-%global runtime_version 5.0.16
+%global host_version 5.0.15
+%global runtime_version 5.0.15
 %global aspnetcore_runtime_version %{runtime_version}
-%global sdk_version 5.0.213
+%global sdk_version 5.0.212
 %global templates_version %{runtime_version}
 #%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
 
@@ -56,7 +56,7 @@
 
 Name:           dotnet5.0
 Version:        %{sdk_rpm_version}
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        .NET Runtime and SDK
 License:        MIT and ASL 2.0 and BSD and LGPLv2+ and CC-BY and CC0 and MS-PL and EPL-1.0 and GPL+ and GPLv2 and ISC and OFL and zlib
 URL:            https://github.com/dotnet/
@@ -69,6 +69,8 @@ Source2:        dotnet.sh.in
 
 Patch1:         source-build-remove-test-references-from-patches.patch
 
+Patch100:       runtime-62170-clang13.patch
+
 # Disable telemetry by default; make it opt-in
 Patch500:       sdk-telemetry-optout.patch
 
@@ -186,8 +188,6 @@ Requires:       dotnet-hostfxr-5.0%{?_isa} >= %{host_rpm_version}-%{release}
 # libicu is dlopen()ed
 Requires:       libicu%{?_isa}
 
-# See src/runtime.*/src/libraries/Native/AnyOS/brotli-version.txt
-Provides:       bundled(brotli) = 1.0.9
 %if %{use_bundled_libunwind}
 Provides: bundled(libunwind) = 1.3
 %endif
@@ -336,6 +336,7 @@ sed -i 's|skiptests|skiptests ignorewarnings|' repos/runtime.common.props
 %patch1 -p1
 
 pushd src/dotnet-runtime.*
+%patch100 -p1
 popd
 
 pushd src/dotnet-sdk.*
@@ -518,37 +519,28 @@ rm -rf %{buildroot}%{_libdir}/dotnet/packs/NETStandard.Library.Ref/2.1.0
 
 
 %changelog
-* Thu Apr 07 2022 Omair Majid <omajid@redhat.com> - 5.0.213-1
-- Update to .NET SDK 5.0.213 and Runtime 5.0.16
-- Resolves: RHBZ#2072003
-
-* Thu Mar 03 2022 Omair Majid <omajid@redhat.com> - 5.0.212-1
+* Wed Mar 23 2022 Omair Majid <omajid@redhat.com> - 5.0.212-2
 - Update to .NET SDK 5.0.212 and Runtime 5.0.15
-- Resolves: RHBZ#2060496
+- Resolves: RHBZ#2060495
 
-* Fri Jan 28 2022 Omair Majid <omajid@redhat.com> - 5.0.211-1
+* Wed Mar 23 2022 Omair Majid <omajid@redhat.com> - 5.0.211-1
 - Update to .NET SDK 5.0.211 and Runtime 5.0.14
-- Resolves: RHBZ#2047767
+- Resolves: RHBZ#2047766
 
-* Thu Dec 09 2021 Omair Majid <omajid@redhat.com> - 5.0.210-1
+* Wed Jan 05 2022 Omair Majid <omajid@redhat.com> - 5.0.210-2
 - Update to .NET SDK 5.0.210 and Runtime 5.0.13
-- Resolves: RHBZ#2030738
-
-* Fri Nov 19 2021 Omair Majid <omajid@redhat.com> - 5.0.209-1
-- Update to .NET SDK 5.0.209 and Runtime 5.0.12
-- Resolves: RHBZ#2024414
-
-* Wed Oct 13 2021 Omair Majid <omajid@redhat.com> - 5.0.208-2
-- Update to .NET SDK 5.0.208 and Runtime 5.0.11
-- Resolves: 2015936
+- Resolves: RHBZ#2030737
 
-* Sun Oct 10 2021 Omair Majid <omajid@redhat.com> - 5.0.207-3
-- Disable subpackages that will be provided by .NET 6 SRPM
-- Resolves: RHBZ#1986017
+* Thu Dec 02 2021 Omair Majid <omajid@redhat.com> - 5.0.209-2
+- Bump release
+- Related: RHBZ#2011058
+- Related: RHBZ#2003078
 
-* Fri Sep 24 2021 Omair Majid <omajid@redhat.com> - 5.0.207-2
-- Update to .NET SDK 5.0.207 and Runtime 5.0.10
-- Resolves: RHBZ#2000319
+* Sun Nov 21 2021 Omair Majid <omajid@redhat.com> - 5.0.209.1-1
+- Update to .NET SDK 5.0.209 and Runtime 5.0.12
+- Resolves: RHBZ#2024319
+- Resolves: RHBZ#2011058
+- Resolves: RHBZ#2003078
 
 * Thu Aug 12 2021 Omair Majid <omajid@redhat.com> - 5.0.206-1
 - Update to .NET SDK 5.0.206 and Runtime 5.0.9