mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
xen: Use DEVICE_ATTR_*() macro
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>
This commit is contained in:
parent
62fb9874f5
commit
2060061767
@ -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)
|
||||
{
|
||||
@ -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)
|
||||
{
|
||||
@ -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,
|
||||
|
@ -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));
|
||||
@ -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;
|
||||
@ -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;
|
||||
@ -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,
|
||||
|
@ -207,7 +207,7 @@ 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) \
|
||||
{ \
|
||||
@ -215,14 +215,14 @@ static ssize_t show_##name(struct 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)
|
||||
{
|
||||
@ -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;
|
||||
@ -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,
|
||||
|
Loading…
Reference in New Issue
Block a user