ptp: use permission-specific DEVICE_ATTR variants
authorJulia Lawall <julia.lawall@lip6.fr>
Sat, 29 Oct 2016 19:37:06 +0000 (21:37 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 31 Oct 2016 19:32:12 +0000 (15:32 -0400)
Use DEVICE_ATTR_RO for read only attributes.  This simplifies the
source code, improves readbility, and reduces the chance of
inconsistencies.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@ro@
declarer name DEVICE_ATTR;
identifier x,x_show;
@@

DEVICE_ATTR(x, \(0444\|S_IRUGO\), x_show, NULL);

@script:ocaml@
x << ro.x;
x_show << ro.x_show;
@@

if not (x^"_show" = x_show) then Coccilib.include_match false

@@
declarer name DEVICE_ATTR_RO;
identifier ro.x,ro.x_show;
@@

- DEVICE_ATTR(x, \(0444\|S_IRUGO\), x_show, NULL);
+ DEVICE_ATTR_RO(x);
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Acked-by: Richard Cochran <richardcochran@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/ptp/ptp_sysfs.c

index 302e626fe6b01777523c371e2760ee8f48acc68b..53d43954a9740a5520229a1e8798516805a73c19 100644 (file)
@@ -28,7 +28,7 @@ static ssize_t clock_name_show(struct device *dev,
        struct ptp_clock *ptp = dev_get_drvdata(dev);
        return snprintf(page, PAGE_SIZE-1, "%s\n", ptp->info->name);
 }
-static DEVICE_ATTR(clock_name, 0444, clock_name_show, NULL);
+static DEVICE_ATTR_RO(clock_name);
 
 #define PTP_SHOW_INT(name, var)                                                \
 static ssize_t var##_show(struct device *dev,                          \