public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit
@ 2026-04-19  1:05 Maxwell Doose
  2026-04-19 11:33 ` Jonathan Cameron
  2026-04-20 13:54 ` Dan Carpenter
  0 siblings, 2 replies; 5+ messages in thread
From: Maxwell Doose @ 2026-04-19  1:05 UTC (permalink / raw)
  To: lars, Michael.Hennerich, jic23, gregkh
  Cc: dlechner, nuno.sa, andy, linux-iio, linux-staging, linux-kernel

This patch replaces sprintf calls in ad7816.c with sysfs_emit to help
modernize the driver, ensure bounds checking, and to increase stability.

Signed-off-by: Maxwell Doose <m32285159@gmail.com>
---
 drivers/staging/iio/adc/ad7816.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/staging/iio/adc/ad7816.c b/drivers/staging/iio/adc/ad7816.c
index 172acf135f3b..0e32a2295990 100644
--- a/drivers/staging/iio/adc/ad7816.c
+++ b/drivers/staging/iio/adc/ad7816.c
@@ -124,8 +124,8 @@ static ssize_t ad7816_show_mode(struct device *dev,
 	struct ad7816_chip_info *chip = iio_priv(indio_dev);
 
 	if (chip->mode)
-		return sprintf(buf, "power-save\n");
-	return sprintf(buf, "full\n");
+		return sysfs_emit(buf, "power-save\n");
+	return sysfs_emit(buf, "full\n");
 }
 
 static ssize_t ad7816_store_mode(struct device *dev,
@@ -156,7 +156,7 @@ static ssize_t ad7816_show_available_modes(struct device *dev,
 					   struct device_attribute *attr,
 					   char *buf)
 {
-	return sprintf(buf, "full\npower-save\n");
+	return sysfs_emit(buf, "full\npower-save\n");
 }
 
 static IIO_DEVICE_ATTR(available_modes, 0444, ad7816_show_available_modes,
@@ -169,7 +169,7 @@ static ssize_t ad7816_show_channel(struct device *dev,
 	struct iio_dev *indio_dev = dev_to_iio_dev(dev);
 	struct ad7816_chip_info *chip = iio_priv(indio_dev);
 
-	return sprintf(buf, "%d\n", chip->channel_id);
+	return sysfs_emit(buf, "%d\n", chip->channel_id);
 }
 
 static ssize_t ad7816_store_channel(struct device *dev,
@@ -231,9 +231,9 @@ static ssize_t ad7816_show_value(struct device *dev,
 		data &= AD7816_TEMP_FLOAT_MASK;
 		if (value < 0)
 			data = BIT(AD7816_TEMP_FLOAT_OFFSET) - data;
-		return sprintf(buf, "%d.%.2d\n", value, data * 25);
+		return sysfs_emit(buf, "%d.%.2d\n", value, data * 25);
 	}
-	return sprintf(buf, "%u\n", data);
+	return sysfs_emit(buf, "%u\n", data);
 }
 
 static IIO_DEVICE_ATTR(value, 0444, ad7816_show_value, NULL, 0);
@@ -281,9 +281,9 @@ static ssize_t ad7816_show_oti(struct device *dev,
 		value = AD7816_BOUND_VALUE_MIN +
 			(chip->oti_data[chip->channel_id] -
 			AD7816_BOUND_VALUE_BASE);
-		return sprintf(buf, "%d\n", value);
+		return sysfs_emit(buf, "%d\n", value);
 	}
-	return sprintf(buf, "%u\n", chip->oti_data[chip->channel_id]);
+	return sysfs_emit(buf, "%u\n", chip->oti_data[chip->channel_id]);
 }
 
 static inline ssize_t ad7816_set_oti(struct device *dev,
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit
  2026-04-19  1:05 [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit Maxwell Doose
@ 2026-04-19 11:33 ` Jonathan Cameron
  2026-04-19 15:28   ` Maxwell Doose
  2026-04-20 13:54 ` Dan Carpenter
  1 sibling, 1 reply; 5+ messages in thread
From: Jonathan Cameron @ 2026-04-19 11:33 UTC (permalink / raw)
  To: Maxwell Doose
  Cc: lars, Michael.Hennerich, gregkh, dlechner, nuno.sa, andy,
	linux-iio, linux-staging, linux-kernel, Md. Mahmudul Hasan Mabud

On Sat, 18 Apr 2026 20:05:37 -0500
Maxwell Doose <m32285159@gmail.com> wrote:

> This patch replaces sprintf calls in ad7816.c with sysfs_emit to help
> modernize the driver, ensure bounds checking, and to increase stability.
> 
> Signed-off-by: Maxwell Doose <m32285159@gmail.com>
Hi Maxwell,

There is a more substantial rework of this code undergoing revisions.
https://lore.kernel.org/all/20260331072453.6530-1-mdmahmudulhasan1511@gmail.com/

Both because that's been underway for a little time and because it makes
a wider set of improvements, I'd rather we took that one forwards.
However, as I noted in that thread, the ABI is likely to go away anyway as
part of dragging this driver into a state suitable for moving out of staging.
I don't mind cleaning it up as an intermediate state however as that graduation
from staging may take a while!

Thanks,

Jonathan



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit
  2026-04-19 11:33 ` Jonathan Cameron
@ 2026-04-19 15:28   ` Maxwell Doose
  0 siblings, 0 replies; 5+ messages in thread
From: Maxwell Doose @ 2026-04-19 15:28 UTC (permalink / raw)
  To: Jonathan Cameron
  Cc: lars, Michael.Hennerich, gregkh, dlechner, nuno.sa, andy,
	linux-iio, linux-staging, linux-kernel, Md. Mahmudul Hasan Mabud

On Sun, Apr 19, 2026 at 6:33 AM Jonathan Cameron <jic23@kernel.org> wrote:
>
> Both because that's been underway for a little time and because it makes
> a wider set of improvements, I'd rather we took that one forwards.

Sorry, I didn't see the other patch. I'll focus on the v2 for the srf08
patch for the time being then.

best regards,
maxwell

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit
  2026-04-19  1:05 [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit Maxwell Doose
  2026-04-19 11:33 ` Jonathan Cameron
@ 2026-04-20 13:54 ` Dan Carpenter
  2026-04-20 14:46   ` Maxwell Doose
  1 sibling, 1 reply; 5+ messages in thread
From: Dan Carpenter @ 2026-04-20 13:54 UTC (permalink / raw)
  To: Maxwell Doose
  Cc: lars, Michael.Hennerich, jic23, gregkh, dlechner, nuno.sa, andy,
	linux-iio, linux-staging, linux-kernel

On Sat, Apr 18, 2026 at 08:05:37PM -0500, Maxwell Doose wrote:
> This patch replaces sprintf calls in ad7816.c with sysfs_emit to help
> modernize the driver, ensure bounds checking, and to increase stability.

This says that changing to sysfs_emit() will increase the stability of
the driver, but actually that's not true.  I am fine with these sorts of
hardening patches but I want the commit message to say that "The original
code is fine as is" instead of implying it is unstable.

If the commit did fix a real issue, then we would need a Fixes tag.

regards,
dan carpenter


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit
  2026-04-20 13:54 ` Dan Carpenter
@ 2026-04-20 14:46   ` Maxwell Doose
  0 siblings, 0 replies; 5+ messages in thread
From: Maxwell Doose @ 2026-04-20 14:46 UTC (permalink / raw)
  To: Dan Carpenter
  Cc: lars, Michael.Hennerich, jic23, gregkh, dlechner, nuno.sa, andy,
	linux-iio, linux-staging, linux-kernel

On Mon, Apr 20, 2026 at 8:54 AM Dan Carpenter <error27@gmail.com> wrote:
>
> This says that changing to sysfs_emit() will increase the stability of
> the driver, but actually that's not true.

Sorry. Like I've said in previous emails to you, I'm still figuring it
all out. When I made this patch, I was under the impression that since
sysfs_emit() improved security by preventing overflow errors, that it
would inherently improve stability as well. Thanks for pointing out my
error.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-04-20 14:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-19  1:05 [PATCH] staging: iio: adc: ad7816: replace sprintf with sysfs_emit Maxwell Doose
2026-04-19 11:33 ` Jonathan Cameron
2026-04-19 15:28   ` Maxwell Doose
2026-04-20 13:54 ` Dan Carpenter
2026-04-20 14:46   ` Maxwell Doose

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox