scsi: target: core: file: Don't duplicate memset(0xff)
authorChaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Sun, 28 Feb 2021 05:56:45 +0000 (21:56 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 10 Mar 2021 04:47:18 +0000 (23:47 -0500)
The function fd_do_prot_fill() is called from two callers
fd_do_prot_unmap() and fd_format_prot(). Both callers initialize the passed
buffer to 0xff with memset().

Move the memset() call to fd_do_prot_fill() to avoid duplication.

Link: https://lore.kernel.org/r/20210228055645.22253-24-chaitanya.kulkarni@wdc.com
Reviewed-by: Mike Christie <michael.christie@oracle.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/target_core_file.c

index 5a66854..ef4a8e1 100644 (file)
@@ -498,6 +498,7 @@ fd_do_prot_fill(struct se_device *se_dev, sector_t lba, sector_t nolb,
 
        prot_length = nolb * se_dev->prot_length;
 
+       memset(buf, 0xff, bufsize);
        for (prot = 0; prot < prot_length;) {
                sector_t len = min_t(sector_t, bufsize, prot_length - prot);
                ssize_t ret = kernel_write(prot_fd, buf, len, &pos);
@@ -523,7 +524,6 @@ fd_do_prot_unmap(struct se_cmd *cmd, sector_t lba, sector_t nolb)
                pr_err("Unable to allocate FILEIO prot buf\n");
                return -ENOMEM;
        }
-       memset(buf, 0xff, PAGE_SIZE);
 
        rc = fd_do_prot_fill(cmd->se_dev, lba, nolb, buf, PAGE_SIZE);
 
@@ -882,7 +882,6 @@ static int fd_format_prot(struct se_device *dev)
                 (unsigned long long)(dev->transport->get_blocks(dev) + 1) *
                                        dev->prot_length);
 
-       memset(buf, 0xff, unit_size);
        ret = fd_do_prot_fill(dev, 0, dev->transport->get_blocks(dev) + 1,
                              buf, unit_size);
        vfree(buf);