From: Bruce Johnston <[email protected]>

Remove function that would check if data was all zeroes. Use the
built-in kernel function mem_is_zero() instead.

Signed-off-by: Bruce Johnston <[email protected]>
Signed-off-by: Matthew Sakai <[email protected]>
---
 drivers/md/dm-vdo/data-vio.c | 17 +++--------------
 1 file changed, 3 insertions(+), 14 deletions(-)

diff --git a/drivers/md/dm-vdo/data-vio.c b/drivers/md/dm-vdo/data-vio.c
index 810002747091..262e11581f2d 100644
--- a/drivers/md/dm-vdo/data-vio.c
+++ b/drivers/md/dm-vdo/data-vio.c
@@ -17,6 +17,7 @@
 #include <linux/minmax.h>
 #include <linux/sched.h>
 #include <linux/spinlock.h>
+#include <linux/string.h>
 #include <linux/wait.h>
 
 #include "logger.h"
@@ -509,18 +510,6 @@ static void launch_data_vio(struct data_vio *data_vio, 
logical_block_number_t lb
        vdo_enqueue_completion(completion, VDO_DEFAULT_Q_MAP_BIO_PRIORITY);
 }
 
-static bool is_zero_block(char *block)
-{
-       int i;
-
-       for (i = 0; i < VDO_BLOCK_SIZE; i += sizeof(u64)) {
-               if (*((u64 *) &block[i]))
-                       return false;
-       }
-
-       return true;
-}
-
 static void copy_from_bio(struct bio *bio, char *data_ptr)
 {
        struct bio_vec biovec;
@@ -572,7 +561,7 @@ static void launch_bio(struct vdo *vdo, struct data_vio 
*data_vio, struct bio *b
                 * we acknowledge the bio.
                 */
                copy_from_bio(bio, data_vio->vio.data);
-               data_vio->is_zero = is_zero_block(data_vio->vio.data);
+               data_vio->is_zero = mem_is_zero(data_vio->vio.data, 
VDO_BLOCK_SIZE);
                data_vio->write = true;
        }
 
@@ -1459,7 +1448,7 @@ static void modify_for_partial_write(struct 
vdo_completion *completion)
                copy_from_bio(bio, data + data_vio->offset);
        }
 
-       data_vio->is_zero = is_zero_block(data);
+       data_vio->is_zero = mem_is_zero(data, VDO_BLOCK_SIZE);
        data_vio->read = false;
        launch_data_vio_logical_callback(data_vio,
                                         continue_data_vio_with_block_map_slot);
-- 
2.48.1


Reply via email to