Use kmemdup rather than duplicating its implementation

Signed-off-by: YueHaibing <yuehaib...@huawei.com>
---
 drivers/scsi/ufs/ufshcd.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index acf298da054c..6d5e2f5d8468 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -3309,12 +3309,11 @@ int ufshcd_read_string_desc(struct ufs_hba *hba, u8 
desc_index,
                str[ret++] = '\0';
 
        } else {
-               str = kzalloc(uc_str->len, GFP_KERNEL);
+               str = kmemdup(uc_str, uc_str->len, GFP_KERNEL);
                if (!str) {
                        ret = -ENOMEM;
                        goto out;
                }
-               memcpy(str, uc_str, uc_str->len);
                ret = uc_str->len;
        }
 out:



Reply via email to