This commit doesn't fix any bug, it is just code cleanup. Use the
function format_dev_t instead of sprintf, because format_dev_t does the
same thing.

Remove the useless memset call.

An unsigned integer can take at most 10 digits, so extend the array size 
to 22. (note that because the range of minor and major numbers is limited, 
the size 16 could not be exceeded, thus this function couldn't write 
beyond string end)

Signed-off-by: Mikulas Patocka <mpato...@redhat.com>

---
 drivers/md/dm-stripe.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Index: linux-2.6/drivers/md/dm-stripe.c
===================================================================
--- linux-2.6.orig/drivers/md/dm-stripe.c       2025-06-02 16:14:58.000000000 
+0200
+++ linux-2.6/drivers/md/dm-stripe.c    2025-06-02 16:26:46.000000000 +0200
@@ -405,7 +405,7 @@ static int stripe_end_io(struct dm_targe
                blk_status_t *error)
 {
        unsigned int i;
-       char major_minor[16];
+       char major_minor[22];
        struct stripe_c *sc = ti->private;
 
        if (!*error)
@@ -417,8 +417,7 @@ static int stripe_end_io(struct dm_targe
        if (*error == BLK_STS_NOTSUPP)
                return DM_ENDIO_DONE;
 
-       memset(major_minor, 0, sizeof(major_minor));
-       sprintf(major_minor, "%d:%d", MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)));
+       format_dev_t(major_minor, bio_dev(bio));
 
        /*
         * Test to see which stripe drive triggered the event


Reply via email to