summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAkinobu Mita <akinobu.mita@gmail.com>2013-03-07 15:42:52 +0100
committerSteven Whitehouse <swhiteho@redhat.com>2013-04-04 10:52:50 +0200
commit4146c3d469dc400eefa253fb37aa1e74fb5e41f8 (patch)
treea9f4fbd78f9cf0a79c540fd642483018dec0583f
parentGFS2: use kmalloc for lvb bitmap (diff)
downloadlinux-4146c3d469dc400eefa253fb37aa1e74fb5e41f8.tar.xz
linux-4146c3d469dc400eefa253fb37aa1e74fb5e41f8.zip
GFS2: use memchr_inv
Use memchr_inv to verify that the specified memory range is cleared. Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: Steven Whitehouse <swhiteho@redhat.com> Cc: cluster-devel@redhat.com Cc: Christine Caulfield <ccaulfie@redhat.com> Cc: David Teigland <teigland@redhat.com>
-rw-r--r--fs/gfs2/lock_dlm.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/fs/gfs2/lock_dlm.c b/fs/gfs2/lock_dlm.c
index b15bb45911ca..c8423d6de6c3 100644
--- a/fs/gfs2/lock_dlm.c
+++ b/fs/gfs2/lock_dlm.c
@@ -483,12 +483,8 @@ static void control_lvb_write(struct lm_lockstruct *ls, uint32_t lvb_gen,
static int all_jid_bits_clear(char *lvb)
{
- int i;
- for (i = JID_BITMAP_OFFSET; i < GDLM_LVB_SIZE; i++) {
- if (lvb[i])
- return 0;
- }
- return 1;
+ return !memchr_inv(lvb + JID_BITMAP_OFFSET, 0,
+ GDLM_LVB_SIZE - JID_BITMAP_OFFSET);
}
static void sync_wait_cb(void *arg)