summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlasdair G Kergon <agk@redhat.com>2005-05-06 01:16:08 +0200
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-05-06 01:36:46 +0200
commitf1daa40b638891a62e1be40f78d752c500265362 (patch)
tree5d62da772240a6cb26eddee42c9bf0fc3ce703a3
parent[PATCH] device-mapper multipath: Use private workqueue (diff)
downloadlinux-f1daa40b638891a62e1be40f78d752c500265362.tar.xz
linux-f1daa40b638891a62e1be40f78d752c500265362.zip
[PATCH] device-mapper dm-emc: Fix a memset
The dm emc hardware handler code memset the hardware handler structure to zero AFTER it had initialized the structure's spinlock field. Signed-Off-By: Alasdair G Kergon <agk@redhat.com> From: Dave Olien <dmo@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/md/dm-emc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/md/dm-emc.c b/drivers/md/dm-emc.c
index 700658664594..c7067674dcb7 100644
--- a/drivers/md/dm-emc.c
+++ b/drivers/md/dm-emc.c
@@ -223,8 +223,10 @@ static struct emc_handler *alloc_emc_handler(void)
{
struct emc_handler *h = kmalloc(sizeof(*h), GFP_KERNEL);
- if (h)
+ if (h) {
+ memset(h, 0, sizeof(*h));
spin_lock_init(&h->lock);
+ }
return h;
}
@@ -259,8 +261,6 @@ static int emc_create(struct hw_handler *hwh, unsigned argc, char **argv)
if (!h)
return -ENOMEM;
- memset(h, 0, sizeof(*h));
-
hwh->context = h;
if ((h->short_trespass = short_trespass))