--- ./source/private_module/lun/lun_mgmt/lun_mgmt_intf.c	2018-04-17 02:50:07.000000000 +0000
+++ ./source/private_module/lun/lun_mgmt/lun_mgmt_intf.c.hotpatch	2020-01-08 06:44:11.000000000 +0000
@@ -16596,7 +16596,7 @@
 
 /* Ժ: SR-0000341803֧windows2012֤20140118huangfa 00227577,end */
 #endif
-
+void copyInnerLunExtendFeature(uint32_t *dstLunExtendFeature, uint32_t *srcLunExtendFeature);
 #if defined(MACRO_FEATURE_LUN_MIGR) || defined(MACRO_FEATURE_LUN_MIRROR)
 /* Ժ: SR-0000341793 ֧LUNǨƣhuangfa 00227577, 2014/1/18, start */
 /*****************************************************************************
@@ -16678,7 +16678,7 @@
     /* DTS2015030207017, ֵȡעдǰдӿʱIO, l00179763, 20150310, end */
 
     dstCtrl->relatedLunId = srcCtrl->relatedLunId;
-    dstCtrl->lunExtendFeature = srcCtrl->lunExtendFeature;
+    copyInnerLunExtendFeature(&dstCtrl->lunExtendFeature, &srcCtrl->lunExtendFeature);
     dstCtrl->ops = srcCtrl->ops;
 
     return;
@@ -30232,3 +30232,22 @@
     return isTRUE;
 }
 
+void copyInnerLunExtendFeature(uint32_t *dstLunExtendFeature, uint32_t *srcLunExtendFeature)
+{
+    uint32_t lunExtendFeature = 0;
+ 
+    if ((NULL == srcLunExtendFeature) || (NULL == dstLunExtendFeature))
+    {
+        return;
+    }
+ 
+    lunExtendFeature = ((1 << LUN_EXTENDFEATURE_HYPERCLUSTER) |
+                         (1 << LUN_EXTENDFETURE_PARENT_ROW)   |
+                         (1 << LUN_EXTENDFETURE_CHILD_ROW)    |
+                         (1 << LUN_EXTENDFETURE_CHILD_ROW_OLD));
+ 
+    *dstLunExtendFeature &= ~lunExtendFeature;
+    *dstLunExtendFeature |= (lunExtendFeature & (*srcLunExtendFeature));
+ 
+    return;
+}
