backports.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Hauke Mehrtens <hauke@hauke-m.de>
To: backports@vger.kernel.org
Cc: johannes@sipsolutions.net, Hauke Mehrtens <hauke@hauke-m.de>
Subject: [PATCH 29/30] backports: Add sysfs_emit()
Date: Tue,  1 Dec 2020 23:04:14 +0100	[thread overview]
Message-ID: <20201201220415.30582-30-hauke@hauke-m.de> (raw)
In-Reply-To: <20201201220415.30582-1-hauke@hauke-m.de>

Add the sysfs_emit() function which was added in Linux upstream commit
2efc459d06f1 ("sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs
output") and is now used by drivers-base-devcoredump.c

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
 backport/backport-include/linux/sysfs.h | 14 +++++++++++++
 backport/compat/backport-5.10.c         | 27 +++++++++++++++++++++++++
 2 files changed, 41 insertions(+)

diff --git a/backport/backport-include/linux/sysfs.h b/backport/backport-include/linux/sysfs.h
index 0b71db54..ad8a8229 100644
--- a/backport/backport-include/linux/sysfs.h
+++ b/backport/backport-include/linux/sysfs.h
@@ -8,4 +8,18 @@
 			 _name##_show, _name##_store)
 #endif
 
+#if LINUX_VERSION_IS_LESS(5,10,0)
+#define sysfs_emit LINUX_BACKPORT(sysfs_emit)
+#ifdef CONFIG_SYSFS
+__printf(2, 3)
+int sysfs_emit(char *buf, const char *fmt, ...);
+#else /* CONFIG_SYSFS */
+__printf(2, 3)
+static inline int sysfs_emit(char *buf, const char *fmt, ...)
+{
+	return 0;
+}
+#endif /* CONFIG_SYSFS */
+#endif /* < 5.10 */
+
 #endif /* __BACKPORT_LINUX_SYSFS_H */
diff --git a/backport/compat/backport-5.10.c b/backport/compat/backport-5.10.c
index 141862da..c3a7b7d3 100644
--- a/backport/compat/backport-5.10.c
+++ b/backport/compat/backport-5.10.c
@@ -3,6 +3,7 @@
 #include <linux/export.h>
 #include <linux/kernel.h>
 #include <linux/netdevice.h>
+#include <linux/sysfs.h>
 
 /**
  *	dev_fetch_sw_netstats - get per-cpu network device statistics
@@ -52,3 +53,29 @@ int netif_rx_any_context(struct sk_buff *skb)
 		return netif_rx_ni(skb);
 }
 EXPORT_SYMBOL(netif_rx_any_context);
+
+/**
+ *	sysfs_emit - scnprintf equivalent, aware of PAGE_SIZE buffer.
+ *	@buf:	start of PAGE_SIZE buffer.
+ *	@fmt:	format
+ *	@...:	optional arguments to @format
+ *
+ *
+ * Returns number of characters written to @buf.
+ */
+int sysfs_emit(char *buf, const char *fmt, ...)
+{
+	va_list args;
+	int len;
+
+	if (WARN(!buf || offset_in_page(buf),
+		 "invalid sysfs_emit: buf:%p\n", buf))
+		return 0;
+
+	va_start(args, fmt);
+	len = vscnprintf(buf, PAGE_SIZE, fmt, args);
+	va_end(args);
+
+	return len;
+}
+EXPORT_SYMBOL_GPL(sysfs_emit);
-- 
2.20.1

--
To unsubscribe from this list: send the line "unsubscribe backports" in

  parent reply	other threads:[~2020-12-01 22:06 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-01 22:03 [PATCH 00/30] backports: Update to match kernel 5.10-rc6 Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 01/30] backports: Adapt to changes in Ubuntu mainline URLs Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 02/30] gentree.py: Remoace space between -I and $(src) Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 03/30] backports: Extend NOSTDINC_FLAGS Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 04/30] patches: Refresh on kernel 5.8.18 Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 05/30] backports: add sched_set_fifo_low Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 06/30] backports: add tasklet_setup, from_tasklet Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 07/30] backports: Add time64_to_tm and ipv6_mc_check_mld Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 08/30] backprots: make patches apply on 5.9.11 Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 09/30] header: add module_sdio_driver Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 10/30] header: Rename kfree_sensitive(x) to kzfree(x) Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 11/30] header: dummy implementation for thermal_zone_device_enable Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 12/30] header: Add __skb_put_zero() Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 13/30] dependency: add MT7663S Hauke Mehrtens
2020-12-01 22:03 ` [PATCH 14/30] backports: add gpiochip_request_own_desc() Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 15/30] backports: Add microchip wilc1000 driver Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 16/30] backports: Make rx_list handling work on older kernel versions Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 17/30] patches: Add missing linux/kthread.h include Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 18/30] patches: Add include to rtw88 Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 19/30] patches: handle netdev_walk_all_lower_dev() Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 20/30] patches: Remove unneeded 0018-pv-trace-fixes patch Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 21/30] patches: Refresh on kernel 5.10-rc6 Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 22/30] patches: Avoid using NLA_POLICY_RANGE(NLA_BINARY, ...) Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 23/30] patches: Deactivate hikey9xx staging driver Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 24/30] patches: Revert usage of small_ops Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 25/30] headers: Add DEFINE_SEQ_ATTRIBUTE Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 26/30] backports: Add netif_rx_any_context() Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 27/30] backports: Add dev_fetch_sw_netstats() Hauke Mehrtens
2020-12-01 22:04 ` [PATCH 28/30] backports: Make ieee80211_tx_status handling work on older kernel versions Hauke Mehrtens
2020-12-01 22:04 ` Hauke Mehrtens [this message]
2020-12-01 22:04 ` [PATCH 30/30] backports: Remove crypto/akcipher.h Hauke Mehrtens
2020-12-06 15:57 ` [PATCH 00/30] backports: Update to match kernel 5.10-rc6 Hauke Mehrtens

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=20201201220415.30582-30-hauke@hauke-m.de \
    --to=hauke@hauke-m.de \
    --cc=backports@vger.kernel.org \
    --cc=johannes@sipsolutions.net \
    /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).