Skip to content

Commit

Permalink
xen: Use DEVICE_ATTR_*() macro
Browse files Browse the repository at this point in the history
Use DEVICE_ATTR_*() helper instead of plain DEVICE_ATTR(),
which makes the code a bit shorter and easier to read.

Signed-off-by: YueHaibing <yuehaibing@huawei.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Link: https://lore.kernel.org/r/20210526141019.13752-1-yuehaibing@huawei.com
Signed-off-by: Juergen Gross <jgross@suse.com>
  • Loading branch information
YueHaibing authored and Juergen Gross committed Jul 5, 2021
1 parent 62fb987 commit 2060061
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 28 deletions.
6 changes: 3 additions & 3 deletions drivers/xen/pcpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ static int xen_pcpu_up(uint32_t cpu_id)
return HYPERVISOR_platform_op(&op);
}

static ssize_t show_online(struct device *dev,
static ssize_t online_show(struct device *dev,
struct device_attribute *attr,
char *buf)
{
Expand All @@ -101,7 +101,7 @@ static ssize_t show_online(struct device *dev,
return sprintf(buf, "%u\n", !!(cpu->flags & XEN_PCPU_FLAGS_ONLINE));
}

static ssize_t __ref store_online(struct device *dev,
static ssize_t __ref online_store(struct device *dev,
struct device_attribute *attr,
const char *buf, size_t count)
{
Expand Down Expand Up @@ -130,7 +130,7 @@ static ssize_t __ref store_online(struct device *dev,
ret = count;
return ret;
}
static DEVICE_ATTR(online, S_IRUGO | S_IWUSR, show_online, store_online);
static DEVICE_ATTR_RW(online);

static struct attribute *pcpu_dev_attrs[] = {
&dev_attr_online.attr,
Expand Down
28 changes: 11 additions & 17 deletions drivers/xen/xen-balloon.c
Original file line number Diff line number Diff line change
Expand Up @@ -134,13 +134,13 @@ void xen_balloon_init(void)
EXPORT_SYMBOL_GPL(xen_balloon_init);

#define BALLOON_SHOW(name, format, args...) \
static ssize_t show_##name(struct device *dev, \
static ssize_t name##_show(struct device *dev, \
struct device_attribute *attr, \
char *buf) \
{ \
return sprintf(buf, format, ##args); \
} \
static DEVICE_ATTR(name, S_IRUGO, show_##name, NULL)
static DEVICE_ATTR_RO(name)

BALLOON_SHOW(current_kb, "%lu\n", PAGES2KB(balloon_stats.current_pages));
BALLOON_SHOW(low_kb, "%lu\n", PAGES2KB(balloon_stats.balloon_low));
Expand All @@ -152,16 +152,15 @@ static DEVICE_ULONG_ATTR(retry_count, 0444, balloon_stats.retry_count);
static DEVICE_ULONG_ATTR(max_retry_count, 0644, balloon_stats.max_retry_count);
static DEVICE_BOOL_ATTR(scrub_pages, 0644, xen_scrub_pages);

static ssize_t show_target_kb(struct device *dev, struct device_attribute *attr,
static ssize_t target_kb_show(struct device *dev, struct device_attribute *attr,
char *buf)
{
return sprintf(buf, "%lu\n", PAGES2KB(balloon_stats.target_pages));
}

static ssize_t store_target_kb(struct device *dev,
static ssize_t target_kb_store(struct device *dev,
struct device_attribute *attr,
const char *buf,
size_t count)
const char *buf, size_t count)
{
char *endchar;
unsigned long long target_bytes;
Expand All @@ -176,22 +175,19 @@ static ssize_t store_target_kb(struct device *dev,
return count;
}

static DEVICE_ATTR(target_kb, S_IRUGO | S_IWUSR,
show_target_kb, store_target_kb);
static DEVICE_ATTR_RW(target_kb);


static ssize_t show_target(struct device *dev, struct device_attribute *attr,
char *buf)
static ssize_t target_show(struct device *dev, struct device_attribute *attr,
char *buf)
{
return sprintf(buf, "%llu\n",
(unsigned long long)balloon_stats.target_pages
<< PAGE_SHIFT);
}

static ssize_t store_target(struct device *dev,
static ssize_t target_store(struct device *dev,
struct device_attribute *attr,
const char *buf,
size_t count)
const char *buf, size_t count)
{
char *endchar;
unsigned long long target_bytes;
Expand All @@ -206,9 +202,7 @@ static ssize_t store_target(struct device *dev,
return count;
}

static DEVICE_ATTR(target, S_IRUGO | S_IWUSR,
show_target, store_target);

static DEVICE_ATTR_RW(target);

static struct attribute *balloon_attrs[] = {
&dev_attr_target_kb.attr,
Expand Down
15 changes: 7 additions & 8 deletions drivers/xen/xenbus/xenbus_probe.c
Original file line number Diff line number Diff line change
Expand Up @@ -207,22 +207,22 @@ void xenbus_otherend_changed(struct xenbus_watch *watch,
EXPORT_SYMBOL_GPL(xenbus_otherend_changed);

#define XENBUS_SHOW_STAT(name) \
static ssize_t show_##name(struct device *_dev, \
static ssize_t name##_show(struct device *_dev, \
struct device_attribute *attr, \
char *buf) \
{ \
struct xenbus_device *dev = to_xenbus_device(_dev); \
\
return sprintf(buf, "%d\n", atomic_read(&dev->name)); \
} \
static DEVICE_ATTR(name, 0444, show_##name, NULL)
static DEVICE_ATTR_RO(name)

XENBUS_SHOW_STAT(event_channels);
XENBUS_SHOW_STAT(events);
XENBUS_SHOW_STAT(spurious_events);
XENBUS_SHOW_STAT(jiffies_eoi_delayed);

static ssize_t show_spurious_threshold(struct device *_dev,
static ssize_t spurious_threshold_show(struct device *_dev,
struct device_attribute *attr,
char *buf)
{
Expand All @@ -231,9 +231,9 @@ static ssize_t show_spurious_threshold(struct device *_dev,
return sprintf(buf, "%d\n", dev->spurious_threshold);
}

static ssize_t set_spurious_threshold(struct device *_dev,
struct device_attribute *attr,
const char *buf, size_t count)
static ssize_t spurious_threshold_store(struct device *_dev,
struct device_attribute *attr,
const char *buf, size_t count)
{
struct xenbus_device *dev = to_xenbus_device(_dev);
unsigned int val;
Expand All @@ -248,8 +248,7 @@ static ssize_t set_spurious_threshold(struct device *_dev,
return count;
}

static DEVICE_ATTR(spurious_threshold, 0644, show_spurious_threshold,
set_spurious_threshold);
static DEVICE_ATTR_RW(spurious_threshold);

static struct attribute *xenbus_attrs[] = {
&dev_attr_event_channels.attr,
Expand Down

0 comments on commit 2060061

Please sign in to comment.