From: "Krzysztof Wilczyński" <kw@linux.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Logan Gunthorpe <logang@deltatee.com>,
Joe Perches <joe@perches.com>,
"Oliver O'Halloran" <oohall@gmail.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
Tyrel Datwyler <tyreld@linux.ibm.com>,
Russell Currey <ruscur@russell.cc>,
Kurt Schwemmer <kurt.schwemmer@microsemi.com>,
Vidya Sagar <vidyas@nvidia.com>,
Xiongfeng Wang <wangxiongfeng2@huawei.com>,
linux-pci@vger.kernel.org, linuxppc-dev@lists.ozlabs.org
Subject: [PATCH v2 02/14] PCI/AER: Use sysfs_emit() and sysfs_emit_at() in "show" functions
Date: Sat, 15 May 2021 05:24:22 +0000 [thread overview]
Message-ID: <20210515052434.1413236-2-kw@linux.com> (raw)
In-Reply-To: <20210515052434.1413236-1-kw@linux.com>
The sysfs_emit() and sysfs_emit_at() functions were introduced to make
it less ambiguous which function is preferred when writing to the output
buffer in a device attribute's "show" callback [1].
Convert the PCI sysfs object "show" functions from sprintf(), snprintf()
and scnprintf() to sysfs_emit() and sysfs_emit_at() accordingly, as the
latter is aware of the PAGE_SIZE buffer and correctly returns the number
of bytes written into the buffer.
No functional change intended.
[1] Documentation/filesystems/sysfs.rst
Related to:
commit ad025f8e46f3 ("PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions")
Signed-off-by: Krzysztof Wilczyński <kw@linux.com>
---
drivers/pci/pcie/aer.c | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c
index ec943cee5ecc..40ef7bed7a77 100644
--- a/drivers/pci/pcie/aer.c
+++ b/drivers/pci/pcie/aer.c
@@ -529,21 +529,23 @@ static const char *aer_agent_string[] = {
char *buf) \
{ \
unsigned int i; \
- char *str = buf; \
struct pci_dev *pdev = to_pci_dev(dev); \
u64 *stats = pdev->aer_stats->stats_array; \
+ size_t len = 0; \
\
for (i = 0; i < ARRAY_SIZE(strings_array); i++) { \
if (strings_array[i]) \
- str += sprintf(str, "%s %llu\n", \
- strings_array[i], stats[i]); \
+ len += sysfs_emit_at(buf, len, "%s %llu\n", \
+ strings_array[i], \
+ stats[i]); \
else if (stats[i]) \
- str += sprintf(str, #stats_array "_bit[%d] %llu\n",\
- i, stats[i]); \
+ len += sysfs_emit_at(buf, len, \
+ #stats_array "_bit[%d] %llu\n",\
+ i, stats[i]); \
} \
- str += sprintf(str, "TOTAL_%s %llu\n", total_string, \
- pdev->aer_stats->total_field); \
- return str-buf; \
+ len += sysfs_emit_at(buf, len, "TOTAL_%s %llu\n", total_string, \
+ pdev->aer_stats->total_field); \
+ return len; \
} \
static DEVICE_ATTR_RO(name)
@@ -563,7 +565,7 @@ aer_stats_dev_attr(aer_dev_nonfatal, dev_nonfatal_errs,
char *buf) \
{ \
struct pci_dev *pdev = to_pci_dev(dev); \
- return sprintf(buf, "%llu\n", pdev->aer_stats->field); \
+ return sysfs_emit(buf, "%llu\n", pdev->aer_stats->field); \
} \
static DEVICE_ATTR_RO(name)
--
2.31.1
next prev parent reply other threads:[~2021-05-15 5:24 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-15 5:24 [PATCH v2 01/14] PCI: Use sysfs_emit() and sysfs_emit_at() in "show" functions Krzysztof Wilczyński
2021-05-15 5:24 ` Krzysztof Wilczyński [this message]
2021-05-15 5:24 ` [PATCH v2 03/14] " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 04/14] PCI/MSI: " Krzysztof Wilczyński
2021-05-15 5:46 ` Joe Perches
2021-05-15 6:01 ` Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 05/14] PCI/IOV: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 06/14] PCI/P2PDMA: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 07/14] PCI/ASPM: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 08/14] PCI: switchtec: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 09/14] PCI: rpadlpar: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 10/14] PCI: hotplug: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 11/14] PCI: shpchp: " Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 12/14] PCI: Fix trailing newline handling of resource_alignment_param Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 13/14] PCI/sysfs: Add missing trailing newline to devspec_show() Krzysztof Wilczyński
2021-05-15 5:24 ` [PATCH v2 14/14] PCI/sysfs: Only show value when driver_override is not NULL Krzysztof Wilczyński
2021-05-15 5:36 ` [PATCH v2 01/14] PCI: Use sysfs_emit() and sysfs_emit_at() in "show" functions Krzysztof Wilczyński
2021-05-15 5:43 ` Joe Perches
2021-05-15 5:59 ` Krzysztof Wilczyński
2021-05-17 15:48 ` Logan Gunthorpe
2021-05-17 17:44 ` Krzysztof Wilczyński
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210515052434.1413236-2-kw@linux.com \
--to=kw@linux.com \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=joe@perches.com \
--cc=kurt.schwemmer@microsemi.com \
--cc=linux-pci@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=logang@deltatee.com \
--cc=mpe@ellerman.id.au \
--cc=oohall@gmail.com \
--cc=paulus@samba.org \
--cc=ruscur@russell.cc \
--cc=tyreld@linux.ibm.com \
--cc=vidyas@nvidia.com \
--cc=wangxiongfeng2@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).