summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2010-08-16 05:25:00 +0200
committerDavid S. Miller <davem@davemloft.net>2010-08-19 08:40:03 +0200
commitf037590fff3005ce8a1513858d7d44f50053cc8f (patch)
tree5ea1d9356272524e9ebc6c30e2ab4ad06ed6b0e6 /net
parentnetlink: fix compat recvmsg (diff)
downloadlinux-f037590fff3005ce8a1513858d7d44f50053cc8f.tar.xz
linux-f037590fff3005ce8a1513858d7d44f50053cc8f.zip
rds: fix a leak of kernel memory
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>
Diffstat (limited to 'net')
-rw-r--r--net/rds/recv.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/rds/recv.c b/net/rds/recv.c
index 795a00b7f2cb..c93588c2d553 100644
--- a/net/rds/recv.c
+++ b/net/rds/recv.c
@@ -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);