]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
NFS: null dereference in dev_remove()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 13 Mar 2012 17:18:48 +0000 (20:18 +0300)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 13 Mar 2012 19:33:08 +0000 (15:33 -0400)
In commit 5ffaf85541 "NFS: replace global bl_wq with per-net one" we
made "msg" a pointer instead of a struct stored in stack memory.  But we
forgot to change the memset() here so we're still clearing stack memory
instead clearing the struct like we intended.  It will lead to a kernel
crash.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/blocklayout/blocklayoutdm.c

index 30fc22af7bbb4430bc9cb8a4e258a8569a533a7d..737d839bc17b5aa0ae58e5350a235af1f8adfb2b 100644 (file)
@@ -54,7 +54,7 @@ static void dev_remove(struct net *net, dev_t dev)
        dprintk("Entering %s\n", __func__);
 
        bl_pipe_msg.bl_wq = &nn->bl_wq;
-       memset(&msg, 0, sizeof(*msg));
+       memset(msg, 0, sizeof(*msg));
        msg->data = kzalloc(1 + sizeof(bl_umount_request), GFP_NOFS);
        if (!msg->data)
                goto out;