Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp37218pxj; Wed, 12 May 2021 21:50:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzmy31ImjjYPSQT9pXfPPp46eMAAzjpvSlVTfscbXEa8hnt50FRfJaQSGbTQdrzB370seoz X-Received: by 2002:a05:6602:24d4:: with SMTP id h20mr29352462ioe.4.1620881431925; Wed, 12 May 2021 21:50:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620881431; cv=none; d=google.com; s=arc-20160816; b=x1JS/hrZR12jhp8TTp2KqSqeLZ9Yy0IFCRF+cgptfd1UOrus+iyp5gd7oChcNVSmja HIk9f8JOHEQq+1wi4HcaqjY3Ks8hKL2XczfTmqHGHEQaEVlA/aA8HjUOeQmogV1BH2kB 9iBqRsvNwFCRcipGArNUceNvAXU2+cx4zwPeqNOeLyY/utXtESXoGTC58ODiGpmQqGpc XVuhz+M9rXu32eOxvaOil6tHk6cbBdRUClotxnenC/2kp6dOX24g81Q6bcfSpmVafDdz PNPT3mKjQ/FVeMCrwemX4kpXkVkDyDoWesBY3WtAHE595BLCr+yvg01yFKGkTFRWk7Wh Hxcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:date:cc:to:from:subject :message-id; bh=LfNpRB3UcY4t8h2hzNxeA40Uh+Md9XEQaGq3NflxvfQ=; b=0ZG1PWbjgaFX0JGjv2zK6lFUqjDZYe6t/tAgct9gJpw0ogTmoeSPW2Z6gf3EaYmj96 J6V45B3/7tXb3fzcKucjWWuvHVixCNDHP02ZLBrNnSLyHZIkTm2zwr4FcvOqFiIh7+ud +J5PPspRBGSE9cwWqKGVqwB3HVWrn1rzasj4jEYhkfC2de7pgFgzHvgFRYM9ip+kaBg5 a8fn2LRFY5OgvcL95dwnLcOnN//WbprEP+dHGb1H9kA/EkmoreJSXUGCwngLltgngE2M PBoJkC7sTeSiItT5xJkUIl9B4bLNy8ZgecAQiBqARxvnBZVo/5i+xMzyom978brrosZc 86lQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p15si2295653ilo.83.2021.05.12.21.50.20; Wed, 12 May 2021 21:50:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230387AbhEMEuD (ORCPT + 99 others); Thu, 13 May 2021 00:50:03 -0400 Received: from smtprelay0198.hostedemail.com ([216.40.44.198]:33110 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S230362AbhEMEtv (ORCPT ); Thu, 13 May 2021 00:49:51 -0400 Received: from omf07.hostedemail.com (clb03-v110.bra.tucows.net [216.40.38.60]) by smtprelay02.hostedemail.com (Postfix) with ESMTP id 9CEC4BA02; Thu, 13 May 2021 04:48:40 +0000 (UTC) Received: from [HIDDEN] (Authenticated sender: joe@perches.com) by omf07.hostedemail.com (Postfix) with ESMTPA id 1CAF7315D73; Thu, 13 May 2021 04:48:39 +0000 (UTC) Message-ID: Subject: Re: [PATCH] watchdog: Use sysfs_emit() and sysfs_emit_at() in "show" functions From: Joe Perches To: Juerg Haefliger , wim@linux-watchdog.org, linux@roeck-us.net, joel@jms.id.au, linux-watchdog@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org Cc: andrew@aj.id.au, linux-kernel@vger.kernel.org, Juerg Haefliger Date: Wed, 12 May 2021 21:48:37 -0700 In-Reply-To: <20210511061812.480172-1-juergh@canonical.com> References: <20210511061812.480172-1-juergh@canonical.com> Content-Type: text/plain; charset="ISO-8859-1" User-Agent: Evolution 3.38.1-1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=0.04 X-Rspamd-Server: rspamout05 X-Rspamd-Queue-Id: 1CAF7315D73 X-Stat-Signature: 6kzj9cfeptqsg315pdhjnu5ex5kpbywt X-Session-Marker: 6A6F6540706572636865732E636F6D X-Session-ID: U2FsdGVkX1/YmSWARqT1SSQJOYqo5pk6qOvYyh48NP4= X-HE-Tag: 1620881318-714369 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2021-05-11 at 08:18 +0200, Juerg Haefliger wrote: > Convert sprintf() in sysfs "show" functions to sysfs_emit() and > sysfs_emit_at() in order to check for buffer overruns in sysfs outputs. [] > diff --git a/drivers/watchdog/ziirave_wdt.c b/drivers/watchdog/ziirave_wdt.c [] > @@ -445,8 +445,9 @@ static ssize_t ziirave_wdt_sysfs_show_firm(struct device *dev, > ? if (ret) > ? return ret; > ? > > - ret = sprintf(buf, ZIIRAVE_FW_VERSION_FMT, w_priv->firmware_rev.major, > - w_priv->firmware_rev.minor); > + ret = sysfs_emit(buf, ZIIRAVE_FW_VERSION_FMT, > + w_priv->firmware_rev.major, > + w_priv->firmware_rev.minor); > ? > > ? mutex_unlock(&w_priv->sysfs_mutex); > ? > > @@ -468,8 +469,9 @@ static ssize_t ziirave_wdt_sysfs_show_boot(struct device *dev, > ? if (ret) > ? return ret; > ? > > - ret = sprintf(buf, ZIIRAVE_BL_VERSION_FMT, w_priv->bootloader_rev.major, > - w_priv->bootloader_rev.minor); > + ret = sysfs_emit(buf, ZIIRAVE_BL_VERSION_FMT, > + w_priv->bootloader_rev.major, > + w_priv->bootloader_rev.minor); > ? > > ? mutex_unlock(&w_priv->sysfs_mutex); > ? > > @@ -491,7 +493,7 @@ static ssize_t ziirave_wdt_sysfs_show_reason(struct device *dev, > ? if (ret) > ? return ret; > ? > > - ret = sprintf(buf, "%s", ziirave_reasons[w_priv->reset_reason]); > + ret = sysfs_emit(buf, "%s", ziirave_reasons[w_priv->reset_reason]); All of these formats should probably end with a newline and the ZIIRAVE__VERSION_FMT defines are to me unnecessary.