Use scnprintf() and its return value to avoid a separate strlen() call.

Signed-off-by: Thorsten Blum <[email protected]>
---
 arch/powerpc/kernel/rtas_flash.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/rtas_flash.c b/arch/powerpc/kernel/rtas_flash.c
index 583dc16e9d3c..aff8a67e274f 100644
--- a/arch/powerpc/kernel/rtas_flash.c
+++ b/arch/powerpc/kernel/rtas_flash.c
@@ -291,6 +291,7 @@ static ssize_t rtas_flash_read_num(struct file *file, char 
__user *buf,
 {
        struct rtas_update_flash_t *const uf = &rtas_update_flash_data;
        char msg[RTAS_MSG_MAXLEN];
+       size_t len;
        int status;
 
        mutex_lock(&rtas_update_flash_mutex);
@@ -298,8 +299,8 @@ static ssize_t rtas_flash_read_num(struct file *file, char 
__user *buf,
        mutex_unlock(&rtas_update_flash_mutex);
 
        /* Read as number */
-       sprintf(msg, "%d\n", status);
-       return simple_read_from_buffer(buf, count, ppos, msg, strlen(msg));
+       len = scnprintf(msg, sizeof(msg), "%d\n", status);
+       return simple_read_from_buffer(buf, count, ppos, msg, len);
 }
 
 /* We could be much more efficient here.  But to keep this function

Reply via email to