]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
rds: fix a leak of kernel memory
authorEric Dumazet <eric.dumazet@gmail.com>
Mon, 16 Aug 2010 03:25:00 +0000 (03:25 +0000)
committerPaul Gortmaker <paul.gortmaker@windriver.com>
Thu, 6 Jan 2011 23:07:57 +0000 (18:07 -0500)
commit f037590fff3005ce8a1513858d7d44f50053cc8f upstream.

struct rds_rdma_notify contains a 32 bits hole on 64bit arches,
make sure it is zeroed before copying it to user.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
net/rds/recv.c

index e2a2b9344f7b576be4d06ca02f23c072acd9f904..93aadc0173cbe26c2efb30fbc69fcf21e16d31f4 100644 (file)
@@ -297,7 +297,7 @@ static int rds_still_queued(struct rds_sock *rs, struct rds_incoming *inc,
 int rds_notify_queue_get(struct rds_sock *rs, struct msghdr *msghdr)
 {
        struct rds_notifier *notifier;
-       struct rds_rdma_notify cmsg;
+       struct rds_rdma_notify cmsg = { 0 }; /* fill holes with zero */
        unsigned int count = 0, max_messages = ~0U;
        unsigned long flags;
        LIST_HEAD(copy);