* [Cluster-devel] [PATCH] GFS2: Use shorter form of zero_user_page() in code.
@ 2007-07-10 13:05 Robert P. J. Day
2007-07-10 13:12 ` [Cluster-devel] " Steven Whitehouse
0 siblings, 1 reply; 4+ messages in thread
From: Robert P. J. Day @ 2007-07-10 13:05 UTC (permalink / raw)
To: cluster-devel.redhat.com
Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
---
AFAICT, the following should be entirely equivalent, but shorter,
based on the zero_user_page macro defined in highmem.h.
fs/gfs2/bmap.c | 6 ++----
fs/gfs2/ops_address.c | 6 ++----
2 files changed, 4 insertions(+), 8 deletions(-)
diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
index c53a5d2..8fd90b3 100644
--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -14,6 +14,7 @@
#include <linux/gfs2_ondisk.h>
#include <linux/crc32.h>
#include <linux/lm_interface.h>
+#include <linux/highmem.h>
#include "gfs2.h"
#include "incore.h"
@@ -933,10 +934,7 @@ static int gfs2_block_truncate_page(struct address_space *mapping)
if (sdp->sd_args.ar_data == GFS2_DATA_ORDERED || gfs2_is_jdata(ip))
gfs2_trans_add_bh(ip->i_gl, bh, 0);
- kaddr = kmap_atomic(page, KM_USER0);
- memset(kaddr + offset, 0, length);
- flush_dcache_page(page);
- kunmap_atomic(kaddr, KM_USER0);
+ zero_user_page(page, offset, length, KM_USER0);
unlock:
unlock_page(page);
diff --git a/fs/gfs2/ops_address.c b/fs/gfs2/ops_address.c
index 30c1562..d90ce06 100644
--- a/fs/gfs2/ops_address.c
+++ b/fs/gfs2/ops_address.c
@@ -19,6 +19,7 @@
#include <linux/writeback.h>
#include <linux/gfs2_ondisk.h>
#include <linux/lm_interface.h>
+#include <linux/highmem.h>
#include "gfs2.h"
#include "incore.h"
@@ -203,10 +204,7 @@ static int stuffed_readpage(struct gfs2_inode *ip, struct page *page)
* so we need to supply one here. It doesn't happen often.
*/
if (unlikely(page->index)) {
- kaddr = kmap_atomic(page, KM_USER0);
- memset(kaddr, 0, PAGE_CACHE_SIZE);
- kunmap_atomic(kaddr, KM_USER0);
- flush_dcache_page(page);
+ zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0);
SetPageUptodate(page);
return 0;
}
--
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA
http://fsdev.net/wiki/index.php?title=Main_Page
========================================================================
^ permalink raw reply related [flat|nested] 4+ messages in thread* [Cluster-devel] Re: [PATCH] GFS2: Use shorter form of zero_user_page() in code.
2007-07-10 13:05 [Cluster-devel] [PATCH] GFS2: Use shorter form of zero_user_page() in code Robert P. J. Day
@ 2007-07-10 13:12 ` Steven Whitehouse
2007-07-11 10:43 ` Steven Whitehouse
0 siblings, 1 reply; 4+ messages in thread
From: Steven Whitehouse @ 2007-07-10 13:12 UTC (permalink / raw)
To: cluster-devel.redhat.com
Hi,
I'll add this in as soon as Linus has pulled the current tree. Thanks,
Steve.
On Tue, 2007-07-10 at 09:05 -0400, Robert P. J. Day wrote:
> Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
>
> ---
>
> AFAICT, the following should be entirely equivalent, but shorter,
> based on the zero_user_page macro defined in highmem.h.
>
> fs/gfs2/bmap.c | 6 ++----
> fs/gfs2/ops_address.c | 6 ++----
> 2 files changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
> index c53a5d2..8fd90b3 100644
> --- a/fs/gfs2/bmap.c
> +++ b/fs/gfs2/bmap.c
> @@ -14,6 +14,7 @@
> #include <linux/gfs2_ondisk.h>
> #include <linux/crc32.h>
> #include <linux/lm_interface.h>
> +#include <linux/highmem.h>
>
> #include "gfs2.h"
> #include "incore.h"
> @@ -933,10 +934,7 @@ static int gfs2_block_truncate_page(struct address_space *mapping)
> if (sdp->sd_args.ar_data == GFS2_DATA_ORDERED || gfs2_is_jdata(ip))
> gfs2_trans_add_bh(ip->i_gl, bh, 0);
>
> - kaddr = kmap_atomic(page, KM_USER0);
> - memset(kaddr + offset, 0, length);
> - flush_dcache_page(page);
> - kunmap_atomic(kaddr, KM_USER0);
> + zero_user_page(page, offset, length, KM_USER0);
>
> unlock:
> unlock_page(page);
> diff --git a/fs/gfs2/ops_address.c b/fs/gfs2/ops_address.c
> index 30c1562..d90ce06 100644
> --- a/fs/gfs2/ops_address.c
> +++ b/fs/gfs2/ops_address.c
> @@ -19,6 +19,7 @@
> #include <linux/writeback.h>
> #include <linux/gfs2_ondisk.h>
> #include <linux/lm_interface.h>
> +#include <linux/highmem.h>
>
> #include "gfs2.h"
> #include "incore.h"
> @@ -203,10 +204,7 @@ static int stuffed_readpage(struct gfs2_inode *ip, struct page *page)
> * so we need to supply one here. It doesn't happen often.
> */
> if (unlikely(page->index)) {
> - kaddr = kmap_atomic(page, KM_USER0);
> - memset(kaddr, 0, PAGE_CACHE_SIZE);
> - kunmap_atomic(kaddr, KM_USER0);
> - flush_dcache_page(page);
> + zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0);
> SetPageUptodate(page);
> return 0;
> }
>
^ permalink raw reply [flat|nested] 4+ messages in thread* [Cluster-devel] Re: [PATCH] GFS2: Use shorter form of zero_user_page() in code.
2007-07-10 13:12 ` [Cluster-devel] " Steven Whitehouse
@ 2007-07-11 10:43 ` Steven Whitehouse
2007-07-11 10:59 ` Robert P. J. Day
0 siblings, 1 reply; 4+ messages in thread
From: Steven Whitehouse @ 2007-07-11 10:43 UTC (permalink / raw)
To: cluster-devel.redhat.com
Hi,
I just realised when I came to apply this patch that we already have
these changes in the combination of Nate Diller's patch to bmap.c and my
patch (at your suggestion) to ops_address.c so I think this is a
duplicate,
Steve.
On Tue, 2007-07-10 at 14:12 +0100, Steven Whitehouse wrote:
> Hi,
>
> I'll add this in as soon as Linus has pulled the current tree. Thanks,
>
> Steve.
>
> On Tue, 2007-07-10 at 09:05 -0400, Robert P. J. Day wrote:
> > Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
> >
> > ---
> >
> > AFAICT, the following should be entirely equivalent, but shorter,
> > based on the zero_user_page macro defined in highmem.h.
> >
> > fs/gfs2/bmap.c | 6 ++----
> > fs/gfs2/ops_address.c | 6 ++----
> > 2 files changed, 4 insertions(+), 8 deletions(-)
> >
> > diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
> > index c53a5d2..8fd90b3 100644
> > --- a/fs/gfs2/bmap.c
> > +++ b/fs/gfs2/bmap.c
> > @@ -14,6 +14,7 @@
> > #include <linux/gfs2_ondisk.h>
> > #include <linux/crc32.h>
> > #include <linux/lm_interface.h>
> > +#include <linux/highmem.h>
> >
> > #include "gfs2.h"
> > #include "incore.h"
> > @@ -933,10 +934,7 @@ static int gfs2_block_truncate_page(struct address_space *mapping)
> > if (sdp->sd_args.ar_data == GFS2_DATA_ORDERED || gfs2_is_jdata(ip))
> > gfs2_trans_add_bh(ip->i_gl, bh, 0);
> >
> > - kaddr = kmap_atomic(page, KM_USER0);
> > - memset(kaddr + offset, 0, length);
> > - flush_dcache_page(page);
> > - kunmap_atomic(kaddr, KM_USER0);
> > + zero_user_page(page, offset, length, KM_USER0);
> >
> > unlock:
> > unlock_page(page);
> > diff --git a/fs/gfs2/ops_address.c b/fs/gfs2/ops_address.c
> > index 30c1562..d90ce06 100644
> > --- a/fs/gfs2/ops_address.c
> > +++ b/fs/gfs2/ops_address.c
> > @@ -19,6 +19,7 @@
> > #include <linux/writeback.h>
> > #include <linux/gfs2_ondisk.h>
> > #include <linux/lm_interface.h>
> > +#include <linux/highmem.h>
> >
> > #include "gfs2.h"
> > #include "incore.h"
> > @@ -203,10 +204,7 @@ static int stuffed_readpage(struct gfs2_inode *ip, struct page *page)
> > * so we need to supply one here. It doesn't happen often.
> > */
> > if (unlikely(page->index)) {
> > - kaddr = kmap_atomic(page, KM_USER0);
> > - memset(kaddr, 0, PAGE_CACHE_SIZE);
> > - kunmap_atomic(kaddr, KM_USER0);
> > - flush_dcache_page(page);
> > + zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0);
> > SetPageUptodate(page);
> > return 0;
> > }
> >
>
^ permalink raw reply [flat|nested] 4+ messages in thread* [Cluster-devel] Re: [PATCH] GFS2: Use shorter form of zero_user_page() in code.
2007-07-11 10:43 ` Steven Whitehouse
@ 2007-07-11 10:59 ` Robert P. J. Day
0 siblings, 0 replies; 4+ messages in thread
From: Robert P. J. Day @ 2007-07-11 10:59 UTC (permalink / raw)
To: cluster-devel.redhat.com
On Wed, 11 Jul 2007, Steven Whitehouse wrote:
> Hi,
>
> I just realised when I came to apply this patch that we already have
> these changes in the combination of Nate Diller's patch to bmap.c
> and my patch (at your suggestion) to ops_address.c so I think this
> is a duplicate,
>
> Steve.
no problem, just toss it, then.
rday
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-07-11 10:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-10 13:05 [Cluster-devel] [PATCH] GFS2: Use shorter form of zero_user_page() in code Robert P. J. Day
2007-07-10 13:12 ` [Cluster-devel] " Steven Whitehouse
2007-07-11 10:43 ` Steven Whitehouse
2007-07-11 10:59 ` Robert P. J. Day
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.