Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1314093 > unrolled thread
| Started by | David Vrabel <david.vrabel@citrix.com> |
|---|---|
| First post | 2016-01-21 11:50 +0100 |
| Last post | 2016-01-21 22:40 +0100 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [Xen-devel] [PATCH] cleancache: constify cleancache_ops structure David Vrabel <david.vrabel@citrix.com> - 2016-01-21 11:50 +0100
Re: [Xen-devel] [PATCH] cleancache: constify cleancache_ops structure Julia Lawall <julia.lawall@lip6.fr> - 2016-01-21 12:10 +0100
[Xen-devel] [PATCH v2] cleancache: constify cleancache_ops structure Julia Lawall <julia.lawall@lip6.fr> - 2016-01-21 16:50 +0100
Re: [Xen-devel] [PATCH v2] cleancache: constify cleancache_ops structure Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> - 2016-01-21 22:40 +0100
| From | David Vrabel <david.vrabel@citrix.com> |
|---|---|
| Date | 2016-01-21 11:50 +0100 |
| Subject | Re: [Xen-devel] [PATCH] cleancache: constify cleancache_ops structure |
| Message-ID | <qTkYq-41z-31@gated-at.bofh.it> |
On 23/12/15 21:06, Julia Lawall wrote: > The cleancache_ops structure is never modified, so declare it as const. > > This also removes the __read_mostly declaration on the cleancache_ops > variable declaration, since it seems redundant with const. > > Done with the help of Coccinelle. > > Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> > > --- > > Not sure that the __read_mostly change is correct. Does it apply to the > variable, or to what the variable points to? The variable, so... > --- a/mm/cleancache.c > +++ b/mm/cleancache.c > @@ -22,7 +22,7 @@ > * cleancache_ops is set by cleancache_register_ops to contain the pointers > * to the cleancache "backend" implementation functions. > */ > -static struct cleancache_ops *cleancache_ops __read_mostly; > +static const struct cleancache_ops *cleancache_ops; ...you want to retain the __read_mostly here. David
[toc] | [next] | [standalone]
| From | Julia Lawall <julia.lawall@lip6.fr> |
|---|---|
| Date | 2016-01-21 12:10 +0100 |
| Subject | Re: [Xen-devel] [PATCH] cleancache: constify cleancache_ops structure |
| Message-ID | <qTlhM-4qv-25@gated-at.bofh.it> |
| In reply to | #1314093 |
On Thu, 21 Jan 2016, David Vrabel wrote: > On 23/12/15 21:06, Julia Lawall wrote: > > The cleancache_ops structure is never modified, so declare it as const. > > > > This also removes the __read_mostly declaration on the cleancache_ops > > variable declaration, since it seems redundant with const. > > > > Done with the help of Coccinelle. > > > > Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> > > > > --- > > > > Not sure that the __read_mostly change is correct. Does it apply to the > > variable, or to what the variable points to? > > The variable, so... Thanks. I'll update the patch, unless you have already fixed it. julia > > --- a/mm/cleancache.c > > +++ b/mm/cleancache.c > > @@ -22,7 +22,7 @@ > > * cleancache_ops is set by cleancache_register_ops to contain the pointers > > * to the cleancache "backend" implementation functions. > > */ > > -static struct cleancache_ops *cleancache_ops __read_mostly; > > +static const struct cleancache_ops *cleancache_ops; > > ...you want to retain the __read_mostly here. > > David > -- > To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >
[toc] | [prev] | [next] | [standalone]
| From | Julia Lawall <julia.lawall@lip6.fr> |
|---|---|
| Date | 2016-01-21 16:50 +0100 |
| Subject | [Xen-devel] [PATCH v2] cleancache: constify cleancache_ops structure |
| Message-ID | <qTpEL-7eF-23@gated-at.bofh.it> |
| In reply to | #1314093 |
The cleancache_ops structure is never modified, so declare it as const.
Done with the help of Coccinelle.
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
---
v2: put back the read mostly
drivers/xen/tmem.c | 2 +-
include/linux/cleancache.h | 2 +-
mm/cleancache.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/include/linux/cleancache.h b/include/linux/cleancache.h
index bda5ec0b4..cb3e142 100644
--- a/include/linux/cleancache.h
+++ b/include/linux/cleancache.h
@@ -37,7 +37,7 @@ struct cleancache_ops {
void (*invalidate_fs)(int);
};
-extern int cleancache_register_ops(struct cleancache_ops *ops);
+extern int cleancache_register_ops(const struct cleancache_ops *ops);
extern void __cleancache_init_fs(struct super_block *);
extern void __cleancache_init_shared_fs(struct super_block *);
extern int __cleancache_get_page(struct page *);
diff --git a/drivers/xen/tmem.c b/drivers/xen/tmem.c
index 945fc43..4ac2ca8 100644
--- a/drivers/xen/tmem.c
+++ b/drivers/xen/tmem.c
@@ -242,7 +242,7 @@ static int tmem_cleancache_init_shared_fs(char *uuid, size_t pagesize)
return xen_tmem_new_pool(shared_uuid, TMEM_POOL_SHARED, pagesize);
}
-static struct cleancache_ops tmem_cleancache_ops = {
+static const struct cleancache_ops tmem_cleancache_ops = {
.put_page = tmem_cleancache_put_page,
.get_page = tmem_cleancache_get_page,
.invalidate_page = tmem_cleancache_flush_page,
diff --git a/mm/cleancache.c b/mm/cleancache.c
index 8fc5081..c6356d6 100644
--- a/mm/cleancache.c
+++ b/mm/cleancache.c
@@ -22,7 +22,7 @@
* cleancache_ops is set by cleancache_register_ops to contain the pointers
* to the cleancache "backend" implementation functions.
*/
-static struct cleancache_ops *cleancache_ops __read_mostly;
+static const struct cleancache_ops *cleancache_ops __read_mostly;
/*
* Counters available via /sys/kernel/debug/cleancache (if debugfs is
@@ -49,7 +49,7 @@ static void cleancache_register_ops_sb(struct super_block *sb, void *unused)
/*
* Register operations for cleancache. Returns 0 on success.
*/
-int cleancache_register_ops(struct cleancache_ops *ops)
+int cleancache_register_ops(const struct cleancache_ops *ops)
{
if (cmpxchg(&cleancache_ops, NULL, ops))
return -EBUSY;
[toc] | [prev] | [next] | [standalone]
| From | Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> |
|---|---|
| Date | 2016-01-21 22:40 +0100 |
| Subject | Re: [Xen-devel] [PATCH v2] cleancache: constify cleancache_ops structure |
| Message-ID | <qTv7s-2E4-27@gated-at.bofh.it> |
| In reply to | #1314286 |
On Thu, Jan 21, 2016 at 04:47:29PM +0100, Julia Lawall wrote:
> The cleancache_ops structure is never modified, so declare it as const.
>
> Done with the help of Coccinelle.
I will pull it in my tree and sent it to Linus.
Thanks!
>
> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
>
> ---
>
> v2: put back the read mostly
>
> drivers/xen/tmem.c | 2 +-
> include/linux/cleancache.h | 2 +-
> mm/cleancache.c | 4 ++--
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/linux/cleancache.h b/include/linux/cleancache.h
> index bda5ec0b4..cb3e142 100644
> --- a/include/linux/cleancache.h
> +++ b/include/linux/cleancache.h
> @@ -37,7 +37,7 @@ struct cleancache_ops {
> void (*invalidate_fs)(int);
> };
>
> -extern int cleancache_register_ops(struct cleancache_ops *ops);
> +extern int cleancache_register_ops(const struct cleancache_ops *ops);
> extern void __cleancache_init_fs(struct super_block *);
> extern void __cleancache_init_shared_fs(struct super_block *);
> extern int __cleancache_get_page(struct page *);
> diff --git a/drivers/xen/tmem.c b/drivers/xen/tmem.c
> index 945fc43..4ac2ca8 100644
> --- a/drivers/xen/tmem.c
> +++ b/drivers/xen/tmem.c
> @@ -242,7 +242,7 @@ static int tmem_cleancache_init_shared_fs(char *uuid, size_t pagesize)
> return xen_tmem_new_pool(shared_uuid, TMEM_POOL_SHARED, pagesize);
> }
>
> -static struct cleancache_ops tmem_cleancache_ops = {
> +static const struct cleancache_ops tmem_cleancache_ops = {
> .put_page = tmem_cleancache_put_page,
> .get_page = tmem_cleancache_get_page,
> .invalidate_page = tmem_cleancache_flush_page,
> diff --git a/mm/cleancache.c b/mm/cleancache.c
> index 8fc5081..c6356d6 100644
> --- a/mm/cleancache.c
> +++ b/mm/cleancache.c
> @@ -22,7 +22,7 @@
> * cleancache_ops is set by cleancache_register_ops to contain the pointers
> * to the cleancache "backend" implementation functions.
> */
> -static struct cleancache_ops *cleancache_ops __read_mostly;
> +static const struct cleancache_ops *cleancache_ops __read_mostly;
>
> /*
> * Counters available via /sys/kernel/debug/cleancache (if debugfs is
> @@ -49,7 +49,7 @@ static void cleancache_register_ops_sb(struct super_block *sb, void *unused)
> /*
> * Register operations for cleancache. Returns 0 on success.
> */
> -int cleancache_register_ops(struct cleancache_ops *ops)
> +int cleancache_register_ops(const struct cleancache_ops *ops)
> {
> if (cmpxchg(&cleancache_ops, NULL, ops))
> return -EBUSY;
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web