<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
p.msipheaderc10f11a2, li.msipheaderc10f11a2, div.msipheaderc10f11a2
{mso-style-name:msipheaderc10f11a2;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle19
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="msipheaderc10f11a2" style="margin:0in"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:green">[Public]</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Reviewed-by: John Clements <john.clements@amd.com><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Li, Candice <Candice.Li@amd.com> <br>
<b>Sent:</b> Friday, August 13, 2021 7:46 PM<br>
<b>To:</b> amd-gfx@lists.freedesktop.org<br>
<b>Cc:</b> Clements, John <John.Clements@amd.com>; Li, Candice <Candice.Li@amd.com><br>
<b>Subject:</b> [PATCH] drm/amd/amdgpu: remove unnecessary RAS context field<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="msipheaderc10f11a2" style="margin:0in"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:green">[Public]</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Delete ras_if->name in the RAS ctx structure and remove related lines.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Signed-off-by: Candice Li <a href="mailto:candice.li@amd.com">
candice.li@amd.com</a><o:p></o:p></p>
<p class="MsoNormal">---<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 4 +---<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h | 5 +++--<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 1 -<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c | 4 ++--<o:p></o:p></p>
<p class="MsoNormal">10 files changed, 6 insertions(+), 14 deletions(-)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c<o:p></o:p></p>
<p class="MsoNormal">index 9cfef56b2aee..5beaa7c1bd11 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c<o:p></o:p></p>
<p class="MsoNormal">@@ -615,7 +615,6 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal"> adev->gfx.ras_if->block = AMDGPU_RAS_BLOCK__GFX;<o:p></o:p></p>
<p class="MsoNormal"> adev->gfx.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->gfx.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->gfx.ras_if->name, "gfx");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> fs_info.head = ih_info.head = *adev->gfx.ras_if;<o:p></o:p></p>
<p class="MsoNormal"> r = amdgpu_ras_late_init(adev, adev->gfx.ras_if,<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c<o:p></o:p></p>
<p class="MsoNormal">index 1d50d534d77c..a766e1aad2b9 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c<o:p></o:p></p>
<p class="MsoNormal">@@ -41,7 +41,6 @@ int amdgpu_hdp_ras_late_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal"> adev->hdp.ras_if->block = AMDGPU_RAS_BLOCK__HDP;<o:p></o:p></p>
<p class="MsoNormal"> adev->hdp.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->hdp.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->hdp.ras_if->name, "hdp");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> ih_info.head = fs_info.head = *adev->hdp.ras_if;<o:p></o:p></p>
<p class="MsoNormal"> r = amdgpu_ras_late_init(adev, adev->hdp.ras_if,<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c<o:p></o:p></p>
<p class="MsoNormal">index ead3dc572ec5..24297dc51434 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c<o:p></o:p></p>
<p class="MsoNormal">@@ -41,7 +41,6 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal"> adev->mmhub.ras_if->block = AMDGPU_RAS_BLOCK__MMHUB;<o:p></o:p></p>
<p class="MsoNormal"> adev->mmhub.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->mmhub.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->mmhub.ras_if->name, "mmhub");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> ih_info.head = fs_info.head = *adev->mmhub.ras_if;<o:p></o:p></p>
<p class="MsoNormal"> r = amdgpu_ras_late_init(adev, adev->mmhub.ras_if,<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c<o:p></o:p></p>
<p class="MsoNormal">index 6201a5f4b4fa..6afb02fef8cf 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c<o:p></o:p></p>
<p class="MsoNormal">@@ -39,7 +39,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal"> adev->nbio.ras_if->block = AMDGPU_RAS_BLOCK__PCIE_BIF;<o:p></o:p></p>
<p class="MsoNormal"> adev->nbio.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->nbio.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->nbio.ras_if->name, "pcie_bif");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> ih_info.head = fs_info.head = *adev->nbio.ras_if;<o:p></o:p></p>
<p class="MsoNormal"> r = amdgpu_ras_late_init(adev, adev->nbio.ras_if,<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c<o:p></o:p></p>
<p class="MsoNormal">index 3811b6b6a192..96a8fd0ca1df 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c<o:p></o:p></p>
<p class="MsoNormal">@@ -64,7 +64,6 @@ const char *ras_block_string[] = {<o:p></o:p></p>
<p class="MsoNormal">};<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> #define ras_err_str(i) (ras_error_string[ffs(i)])<o:p></o:p></p>
<p class="MsoNormal">-#define ras_block_str(i) (ras_block_string[i])<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> #define RAS_DEFAULT_FLAGS (AMDGPU_RAS_FLAG_INIT_BY_VBIOS)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">@@ -530,7 +529,7 @@ static inline void put_obj(struct ras_manager *obj)<o:p></o:p></p>
<p class="MsoNormal"> if (obj && (--obj->use == 0))<o:p></o:p></p>
<p class="MsoNormal"> list_del(&obj->node);<o:p></o:p></p>
<p class="MsoNormal"> if (obj && (obj->use < 0))<o:p></o:p></p>
<p class="MsoNormal">- DRM_ERROR("RAS ERROR: Unbalance obj(%s) use\n", obj->head.name);<o:p></o:p></p>
<p class="MsoNormal">+ DRM_ERROR("RAS ERROR: Unbalance obj(%s) use\n", ras_block_str(obj->head.block));<o:p></o:p></p>
<p class="MsoNormal">}<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> /* make one obj and return it. */<o:p></o:p></p>
<p class="MsoNormal">@@ -793,7 +792,6 @@ static int amdgpu_ras_enable_all_features(struct amdgpu_device *adev,<o:p></o:p></p>
<p class="MsoNormal"> .type = default_ras_type,<o:p></o:p></p>
<p class="MsoNormal"> .sub_block_index = 0,<o:p></o:p></p>
<p class="MsoNormal"> };<o:p></o:p></p>
<p class="MsoNormal">- strcpy(head.name, ras_block_str(i));<o:p></o:p></p>
<p class="MsoNormal"> if (bypass) {<o:p></o:p></p>
<p class="MsoNormal"> /*<o:p></o:p></p>
<p class="MsoNormal"> * bypass psp. vbios enable ras for us.<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h<o:p></o:p></p>
<p class="MsoNormal">index 471ffe885fdf..abc5710898e8 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.h<o:p></o:p></p>
<p class="MsoNormal">@@ -53,6 +53,9 @@ enum amdgpu_ras_block {<o:p></o:p></p>
<p class="MsoNormal"> AMDGPU_RAS_BLOCK__LAST<o:p></o:p></p>
<p class="MsoNormal">};<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">+extern const char *ras_block_string[];<o:p></o:p></p>
<p class="MsoNormal">+<o:p></o:p></p>
<p class="MsoNormal">+#define ras_block_str(i) (ras_block_string[i])<o:p></o:p></p>
<p class="MsoNormal">#define AMDGPU_RAS_BLOCK_COUNT AMDGPU_RAS_BLOCK__LAST<o:p></o:p></p>
<p class="MsoNormal">#define AMDGPU_RAS_BLOCK_MASK ((1ULL << AMDGPU_RAS_BLOCK_COUNT) - 1)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">@@ -306,8 +309,6 @@ struct ras_common_if {<o:p></o:p></p>
<p class="MsoNormal"> enum amdgpu_ras_block block;<o:p></o:p></p>
<p class="MsoNormal"> enum amdgpu_ras_error_type type;<o:p></o:p></p>
<p class="MsoNormal"> uint32_t sub_block_index;<o:p></o:p></p>
<p class="MsoNormal">- /* block name */<o:p></o:p></p>
<p class="MsoNormal">- char name[32];<o:p></o:p></p>
<p class="MsoNormal">};<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> struct amdgpu_ras {<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c<o:p></o:p></p>
<p class="MsoNormal">index de91d29c9d96..65debb65a5df 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c<o:p></o:p></p>
<p class="MsoNormal">@@ -105,7 +105,6 @@ int amdgpu_sdma_ras_late_init(struct amdgpu_device *adev,<o:p></o:p></p>
<p class="MsoNormal"> adev->sdma.ras_if->block = AMDGPU_RAS_BLOCK__SDMA;<o:p></o:p></p>
<p class="MsoNormal"> adev->sdma.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->sdma.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->sdma.ras_if->name, "sdma");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> fs_info.head = ih_info->head = *adev->sdma.ras_if;<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c<o:p></o:p></p>
<p class="MsoNormal">index 0c7c56a91b25..a90029ee9733 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c<o:p></o:p></p>
<p class="MsoNormal">@@ -41,7 +41,6 @@ int amdgpu_umc_ras_late_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal"> adev->umc.ras_if->block = AMDGPU_RAS_BLOCK__UMC;<o:p></o:p></p>
<p class="MsoNormal"> adev->umc.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->umc.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->umc.ras_if->name, "umc");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> ih_info.head = fs_info.head = *adev->umc.ras_if;<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c<o:p></o:p></p>
<p class="MsoNormal">index 258cf86b32f6..2e47bc446700 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c<o:p></o:p></p>
<p class="MsoNormal">@@ -663,7 +663,6 @@ static int amdgpu_xgmi_ras_late_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal"> adev->gmc.xgmi.ras_if->block = AMDGPU_RAS_BLOCK__XGMI_WAFL;<o:p></o:p></p>
<p class="MsoNormal"> adev->gmc.xgmi.ras_if->type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;<o:p></o:p></p>
<p class="MsoNormal"> adev->gmc.xgmi.ras_if->sub_block_index = 0;<o:p></o:p></p>
<p class="MsoNormal">- strcpy(adev->gmc.xgmi.ras_if->name, "xgmi_wafl");<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"> ih_info.head = fs_info.head = *adev->gmc.xgmi.ras_if;<o:p></o:p></p>
<p class="MsoNormal"> r = amdgpu_ras_late_init(adev, adev->gmc.xgmi.ras_if,<o:p></o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c b/drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c<o:p></o:p></p>
<p class="MsoNormal">index cef929746739..1c94a14fc18d 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c<o:p></o:p></p>
<p class="MsoNormal">@@ -372,13 +372,13 @@ static void nbio_v7_4_handle_ras_controller_intr_no_bifring(struct amdgpu_device<o:p></o:p></p>
<p class="MsoNormal"> "errors detected in %s block, "<o:p></o:p></p>
<p class="MsoNormal"> "no user action is needed.\n",<o:p></o:p></p>
<p class="MsoNormal"> obj->err_data.ce_count,<o:p></o:p></p>
<p class="MsoNormal">- adev->nbio.ras_if->name);<o:p></o:p></p>
<p class="MsoNormal">+ ras_block_str(adev->nbio.ras_if->block));<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> if (err_data.ue_count)<o:p></o:p></p>
<p class="MsoNormal"> dev_info(adev->dev, "%ld uncorrectable hardware "<o:p></o:p></p>
<p class="MsoNormal"> "errors detected in %s block\n",<o:p></o:p></p>
<p class="MsoNormal"> obj->err_data.ue_count,<o:p></o:p></p>
<p class="MsoNormal">- adev->nbio.ras_if->name);<o:p></o:p></p>
<p class="MsoNormal">+ ras_block_str(adev->nbio.ras_if->block));<o:p></o:p></p>
<p class="MsoNormal"> }<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> dev_info(adev->dev, "RAS controller interrupt triggered "<o:p></o:p></p>
<p class="MsoNormal">-- <o:p></o:p></p>
<p class="MsoNormal">2.17.1<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="color:#44546A">Thanks,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#44546A">Candice<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>