git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
net
/
ipv6
/
mcast.c
diff --git
a/net/ipv6/mcast.c
b/net/ipv6/mcast.c
index
6e871af
..
c75cd1c
100644
(file)
--- a/
net/ipv6/mcast.c
+++ b/
net/ipv6/mcast.c
@@
-767,10
+767,10
@@
static void mld_add_delrec(struct inet6_dev *idev, struct ifmcaddr6 *im)
* for deleted items allows change reports to use common code with
* non-deleted or query-response MCA's.
*/
* for deleted items allows change reports to use common code with
* non-deleted or query-response MCA's.
*/
- pmc = k
z
alloc(sizeof(*pmc), GFP_ATOMIC);
+ pmc = k
m
alloc(sizeof(*pmc), GFP_ATOMIC);
if (!pmc)
return;
if (!pmc)
return;
-
+ memset(pmc, 0, sizeof(*pmc));
spin_lock_bh(&im->mca_lock);
spin_lock_init(&pmc->mca_lock);
pmc->idev = im->idev;
spin_lock_bh(&im->mca_lock);
spin_lock_init(&pmc->mca_lock);
pmc->idev = im->idev;
@@
-893,7
+893,7
@@
int ipv6_dev_mc_inc(struct net_device *dev, struct in6_addr *addr)
* not found: create a new one.
*/
* not found: create a new one.
*/
- mc = k
z
alloc(sizeof(struct ifmcaddr6), GFP_ATOMIC);
+ mc = k
m
alloc(sizeof(struct ifmcaddr6), GFP_ATOMIC);
if (mc == NULL) {
write_unlock_bh(&idev->lock);
if (mc == NULL) {
write_unlock_bh(&idev->lock);
@@
-901,6
+901,7
@@
int ipv6_dev_mc_inc(struct net_device *dev, struct in6_addr *addr)
return -ENOMEM;
}
return -ENOMEM;
}
+ memset(mc, 0, sizeof(struct ifmcaddr6));
init_timer(&mc->mca_timer);
mc->mca_timer.function = igmp6_timer_handler;
mc->mca_timer.data = (unsigned long) mc;
init_timer(&mc->mca_timer);
mc->mca_timer.function = igmp6_timer_handler;
mc->mca_timer.data = (unsigned long) mc;
@@
-1933,10
+1934,10
@@
static int ip6_mc_add1_src(struct ifmcaddr6 *pmc, int sfmode,
psf_prev = psf;
}
if (!psf) {
psf_prev = psf;
}
if (!psf) {
- psf = k
z
alloc(sizeof(*psf), GFP_ATOMIC);
+ psf = k
m
alloc(sizeof(*psf), GFP_ATOMIC);
if (!psf)
return -ENOBUFS;
if (!psf)
return -ENOBUFS;
-
+ memset(psf, 0, sizeof(*psf));
psf->sf_addr = *psfsrc;
if (psf_prev) {
psf_prev->sf_next = psf;
psf->sf_addr = *psfsrc;
if (psf_prev) {
psf_prev->sf_next = psf;
@@
-2251,8
+2252,6
@@
void ipv6_mc_up(struct inet6_dev *idev)
void ipv6_mc_init_dev(struct inet6_dev *idev)
{
void ipv6_mc_init_dev(struct inet6_dev *idev)
{
- struct in6_addr maddr;
-
write_lock_bh(&idev->lock);
rwlock_init(&idev->mc_lock);
idev->mc_gq_running = 0;
write_lock_bh(&idev->lock);
rwlock_init(&idev->mc_lock);
idev->mc_gq_running = 0;
@@
-2268,10
+2267,6
@@
void ipv6_mc_init_dev(struct inet6_dev *idev)
idev->mc_maxdelay = IGMP6_UNSOLICITED_IVAL;
idev->mc_v1_seen = 0;
write_unlock_bh(&idev->lock);
idev->mc_maxdelay = IGMP6_UNSOLICITED_IVAL;
idev->mc_v1_seen = 0;
write_unlock_bh(&idev->lock);
-
- /* Add all-nodes address. */
- ipv6_addr_all_nodes(&maddr);
- ipv6_dev_mc_inc(idev->dev, &maddr);
}
/*
}
/*
@@
-2430,7
+2425,7
@@
static int igmp6_mc_seq_open(struct inode *inode, struct file *file)
{
struct seq_file *seq;
int rc = -ENOMEM;
{
struct seq_file *seq;
int rc = -ENOMEM;
- struct igmp6_mc_iter_state *s = k
z
alloc(sizeof(*s), GFP_KERNEL);
+ struct igmp6_mc_iter_state *s = k
m
alloc(sizeof(*s), GFP_KERNEL);
if (!s)
goto out;
if (!s)
goto out;
@@
-2441,6
+2436,7
@@
static int igmp6_mc_seq_open(struct inode *inode, struct file *file)
seq = file->private_data;
seq->private = s;
seq = file->private_data;
seq->private = s;
+ memset(s, 0, sizeof(*s));
out:
return rc;
out_kfree:
out:
return rc;
out_kfree:
@@
-2604,7
+2600,7
@@
static int igmp6_mcf_seq_open(struct inode *inode, struct file *file)
{
struct seq_file *seq;
int rc = -ENOMEM;
{
struct seq_file *seq;
int rc = -ENOMEM;
- struct igmp6_mcf_iter_state *s = k
z
alloc(sizeof(*s), GFP_KERNEL);
+ struct igmp6_mcf_iter_state *s = k
m
alloc(sizeof(*s), GFP_KERNEL);
if (!s)
goto out;
if (!s)
goto out;
@@
-2615,6
+2611,7
@@
static int igmp6_mcf_seq_open(struct inode *inode, struct file *file)
seq = file->private_data;
seq->private = s;
seq = file->private_data;
seq->private = s;
+ memset(s, 0, sizeof(*s));
out:
return rc;
out_kfree:
out:
return rc;
out_kfree: