Message ID | 20230214035445.1250139-1-talumbau@google.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [mm-unstable,v1,1/2] mm: multi-gen LRU: clean up sysfs code | expand |
Reviewed-by: Wei Xu <weixugc@google.com> On Mon, Feb 13, 2023 at 7:54 PM T.J. Alumbaugh <talumbau@google.com> wrote: > > This patch cleans up the sysfs code. Specifically, Nit: Remove "This patch" per the "submitting patches" guide. > 1. use sysfs_emit(), > 2. use __ATTR_RW(), and > 3. constify multi-gen LRU struct attribute_group. > > Signed-off-by: T.J. Alumbaugh <talumbau@google.com> > --- > include/linux/mmzone.h | 2 +- > mm/vmscan.c | 22 +++++++++------------- > 2 files changed, 10 insertions(+), 14 deletions(-) > > diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h > index 9fb1b03b83b2..bf8786d45b31 100644 > --- a/include/linux/mmzone.h > +++ b/include/linux/mmzone.h > @@ -1369,7 +1369,7 @@ typedef struct pglist_data { > > #ifdef CONFIG_LRU_GEN > /* kswap mm walk data */ > - struct lru_gen_mm_walk mm_walk; > + struct lru_gen_mm_walk mm_walk; > /* lru_gen_folio list */ > struct lru_gen_memcg memcg_lru; > #endif > diff --git a/mm/vmscan.c b/mm/vmscan.c > index d4b9fd1ae0ed..09c064accdb1 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -5658,14 +5658,14 @@ static void lru_gen_change_state(bool enabled) > * sysfs interface > ******************************************************************************/ > > -static ssize_t show_min_ttl(struct kobject *kobj, struct kobj_attribute *attr, char *buf) > +static ssize_t min_ttl_ms_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) > { > - return sprintf(buf, "%u\n", jiffies_to_msecs(READ_ONCE(lru_gen_min_ttl))); > + return sysfs_emit(buf, "%u\n", jiffies_to_msecs(READ_ONCE(lru_gen_min_ttl))); > } > > /* see Documentation/admin-guide/mm/multigen_lru.rst for details */ > -static ssize_t store_min_ttl(struct kobject *kobj, struct kobj_attribute *attr, > - const char *buf, size_t len) > +static ssize_t min_ttl_ms_store(struct kobject *kobj, struct kobj_attribute *attr, > + const char *buf, size_t len) > { > unsigned int msecs; > > @@ -5677,11 +5677,9 @@ static ssize_t store_min_ttl(struct kobject *kobj, struct kobj_attribute *attr, > return len; > } > > -static struct kobj_attribute lru_gen_min_ttl_attr = __ATTR( > - min_ttl_ms, 0644, show_min_ttl, store_min_ttl > -); > +static struct kobj_attribute lru_gen_min_ttl_attr = __ATTR_RW(min_ttl_ms); > > -static ssize_t show_enabled(struct kobject *kobj, struct kobj_attribute *attr, char *buf) > +static ssize_t enabled_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) > { > unsigned int caps = 0; > > @@ -5698,7 +5696,7 @@ static ssize_t show_enabled(struct kobject *kobj, struct kobj_attribute *attr, c > } > > /* see Documentation/admin-guide/mm/multigen_lru.rst for details */ > -static ssize_t store_enabled(struct kobject *kobj, struct kobj_attribute *attr, > +static ssize_t enabled_store(struct kobject *kobj, struct kobj_attribute *attr, > const char *buf, size_t len) > { > int i; > @@ -5725,9 +5723,7 @@ static ssize_t store_enabled(struct kobject *kobj, struct kobj_attribute *attr, > return len; > } > > -static struct kobj_attribute lru_gen_enabled_attr = __ATTR( > - enabled, 0644, show_enabled, store_enabled > -); > +static struct kobj_attribute lru_gen_enabled_attr = __ATTR_RW(enabled); > > static struct attribute *lru_gen_attrs[] = { > &lru_gen_min_ttl_attr.attr, > @@ -5735,7 +5731,7 @@ static struct attribute *lru_gen_attrs[] = { > NULL > }; > > -static struct attribute_group lru_gen_attr_group = { > +static const struct attribute_group lru_gen_attr_group = { > .name = "lru_gen", > .attrs = lru_gen_attrs, > }; > -- > 2.39.1.581.gbfd45094c4-goog > >
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 9fb1b03b83b2..bf8786d45b31 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -1369,7 +1369,7 @@ typedef struct pglist_data { #ifdef CONFIG_LRU_GEN /* kswap mm walk data */ - struct lru_gen_mm_walk mm_walk; + struct lru_gen_mm_walk mm_walk; /* lru_gen_folio list */ struct lru_gen_memcg memcg_lru; #endif diff --git a/mm/vmscan.c b/mm/vmscan.c index d4b9fd1ae0ed..09c064accdb1 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -5658,14 +5658,14 @@ static void lru_gen_change_state(bool enabled) * sysfs interface ******************************************************************************/ -static ssize_t show_min_ttl(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +static ssize_t min_ttl_ms_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) { - return sprintf(buf, "%u\n", jiffies_to_msecs(READ_ONCE(lru_gen_min_ttl))); + return sysfs_emit(buf, "%u\n", jiffies_to_msecs(READ_ONCE(lru_gen_min_ttl))); } /* see Documentation/admin-guide/mm/multigen_lru.rst for details */ -static ssize_t store_min_ttl(struct kobject *kobj, struct kobj_attribute *attr, - const char *buf, size_t len) +static ssize_t min_ttl_ms_store(struct kobject *kobj, struct kobj_attribute *attr, + const char *buf, size_t len) { unsigned int msecs; @@ -5677,11 +5677,9 @@ static ssize_t store_min_ttl(struct kobject *kobj, struct kobj_attribute *attr, return len; } -static struct kobj_attribute lru_gen_min_ttl_attr = __ATTR( - min_ttl_ms, 0644, show_min_ttl, store_min_ttl -); +static struct kobj_attribute lru_gen_min_ttl_attr = __ATTR_RW(min_ttl_ms); -static ssize_t show_enabled(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +static ssize_t enabled_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) { unsigned int caps = 0; @@ -5698,7 +5696,7 @@ static ssize_t show_enabled(struct kobject *kobj, struct kobj_attribute *attr, c } /* see Documentation/admin-guide/mm/multigen_lru.rst for details */ -static ssize_t store_enabled(struct kobject *kobj, struct kobj_attribute *attr, +static ssize_t enabled_store(struct kobject *kobj, struct kobj_attribute *attr, const char *buf, size_t len) { int i; @@ -5725,9 +5723,7 @@ static ssize_t store_enabled(struct kobject *kobj, struct kobj_attribute *attr, return len; } -static struct kobj_attribute lru_gen_enabled_attr = __ATTR( - enabled, 0644, show_enabled, store_enabled -); +static struct kobj_attribute lru_gen_enabled_attr = __ATTR_RW(enabled); static struct attribute *lru_gen_attrs[] = { &lru_gen_min_ttl_attr.attr, @@ -5735,7 +5731,7 @@ static struct attribute *lru_gen_attrs[] = { NULL }; -static struct attribute_group lru_gen_attr_group = { +static const struct attribute_group lru_gen_attr_group = { .name = "lru_gen", .attrs = lru_gen_attrs, };
This patch cleans up the sysfs code. Specifically, 1. use sysfs_emit(), 2. use __ATTR_RW(), and 3. constify multi-gen LRU struct attribute_group. Signed-off-by: T.J. Alumbaugh <talumbau@google.com> --- include/linux/mmzone.h | 2 +- mm/vmscan.c | 22 +++++++++------------- 2 files changed, 10 insertions(+), 14 deletions(-)