(cherry picked from commit 39c29631400aa5b00a1bc3e92034b2d7e9d3cd42)
(cherry picked from commit 49825806d4e839fdf0129caa65a0e1610a546682)
Signed-off-by: Grooooot <isula@huawei.com>