Re: [PATCH linux-next v3] fbdev: use sysfs_emit() to instead of scnprintf()

From: Helge Deller
Date: Sat Dec 10 2022 - 11:16:04 EST


On 12/5/22 09:31, ye.xingchen@xxxxxxxxxx wrote:
From: ye xingchen <ye.xingchen@xxxxxxxxxx>

Follow the advice of the Documentation/filesystems/sysfs.rst and show()
should only use sysfs_emit() or sysfs_emit_at() when formatting the
value to be returned to user space.

Signed-off-by: ye xingchen <ye.xingchen@xxxxxxxxxx>

I've applied this patch, but split it up into two (one for each driver).
Please, send seperate patches per driver next time (and add proper changelog
if you do a v2/v3 version).

Thanks!
Helge


---
v2 -> v3
Fix the mistakes in v2.
drivers/video/fbdev/sh_mobile_lcdcfb.c | 8 ++++----
drivers/video/fbdev/uvesafb.c | 10 +++++-----
2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.c b/drivers/video/fbdev/sh_mobile_lcdcfb.c
index 6d00893d41f4..ad9323ed8e2e 100644
--- a/drivers/video/fbdev/sh_mobile_lcdcfb.c
+++ b/drivers/video/fbdev/sh_mobile_lcdcfb.c
@@ -1188,7 +1188,7 @@ overlay_alpha_show(struct device *dev, struct device_attribute *attr, char *buf)
struct fb_info *info = dev_get_drvdata(dev);
struct sh_mobile_lcdc_overlay *ovl = info->par;

- return scnprintf(buf, PAGE_SIZE, "%u\n", ovl->alpha);
+ return sysfs_emit(buf, "%u\n", ovl->alpha);
}

static ssize_t
@@ -1226,7 +1226,7 @@ overlay_mode_show(struct device *dev, struct device_attribute *attr, char *buf)
struct fb_info *info = dev_get_drvdata(dev);
struct sh_mobile_lcdc_overlay *ovl = info->par;

- return scnprintf(buf, PAGE_SIZE, "%u\n", ovl->mode);
+ return sysfs_emit(buf, "%u\n", ovl->mode);
}

static ssize_t
@@ -1265,7 +1265,7 @@ overlay_position_show(struct device *dev, struct device_attribute *attr,
struct fb_info *info = dev_get_drvdata(dev);
struct sh_mobile_lcdc_overlay *ovl = info->par;

- return scnprintf(buf, PAGE_SIZE, "%d,%d\n", ovl->pos_x, ovl->pos_y);
+ return sysfs_emit(buf, "%d,%d\n", ovl->pos_x, ovl->pos_y);
}

static ssize_t
@@ -1306,7 +1306,7 @@ overlay_rop3_show(struct device *dev, struct device_attribute *attr, char *buf)
struct fb_info *info = dev_get_drvdata(dev);
struct sh_mobile_lcdc_overlay *ovl = info->par;

- return scnprintf(buf, PAGE_SIZE, "%u\n", ovl->rop3);
+ return sysfs_emit(buf, "%u\n", ovl->rop3);
}

static ssize_t
diff --git a/drivers/video/fbdev/uvesafb.c b/drivers/video/fbdev/uvesafb.c
index 00d789b6c0fa..ba8028a0cc7a 100644
--- a/drivers/video/fbdev/uvesafb.c
+++ b/drivers/video/fbdev/uvesafb.c
@@ -1580,7 +1580,7 @@ static ssize_t uvesafb_show_vendor(struct device *dev,
struct uvesafb_par *par = info->par;

if (par->vbe_ib.oem_vendor_name_ptr)
- return scnprintf(buf, PAGE_SIZE, "%s\n", (char *)
+ return sysfs_emit(buf, "%s\n", (char *)
(&par->vbe_ib) + par->vbe_ib.oem_vendor_name_ptr);
else
return 0;
@@ -1595,7 +1595,7 @@ static ssize_t uvesafb_show_product_name(struct device *dev,
struct uvesafb_par *par = info->par;

if (par->vbe_ib.oem_product_name_ptr)
- return scnprintf(buf, PAGE_SIZE, "%s\n", (char *)
+ return sysfs_emit(buf, "%s\n", (char *)
(&par->vbe_ib) + par->vbe_ib.oem_product_name_ptr);
else
return 0;
@@ -1610,7 +1610,7 @@ static ssize_t uvesafb_show_product_rev(struct device *dev,
struct uvesafb_par *par = info->par;

if (par->vbe_ib.oem_product_rev_ptr)
- return scnprintf(buf, PAGE_SIZE, "%s\n", (char *)
+ return sysfs_emit(buf, "%s\n", (char *)
(&par->vbe_ib) + par->vbe_ib.oem_product_rev_ptr);
else
return 0;
@@ -1625,7 +1625,7 @@ static ssize_t uvesafb_show_oem_string(struct device *dev,
struct uvesafb_par *par = info->par;

if (par->vbe_ib.oem_string_ptr)
- return scnprintf(buf, PAGE_SIZE, "%s\n",
+ return sysfs_emit(buf, "%s\n",
(char *)(&par->vbe_ib) + par->vbe_ib.oem_string_ptr);
else
return 0;
@@ -1639,7 +1639,7 @@ static ssize_t uvesafb_show_nocrtc(struct device *dev,
struct fb_info *info = dev_get_drvdata(dev);
struct uvesafb_par *par = info->par;

- return scnprintf(buf, PAGE_SIZE, "%d\n", par->nocrtc);
+ return sysfs_emit(buf, "%d\n", par->nocrtc);
}

static ssize_t uvesafb_store_nocrtc(struct device *dev,