X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=net%2Firda%2Firlap.c;fp=net%2Firda%2Firlap.c;h=7029618f5719fa6659bd096c7d7a0345b29dff70;hb=64ba3f394c830ec48a1c31b53dcae312c56f1604;hp=e7852a07495e44785c4b42148d22f69e12dd9fc7;hpb=be1e6109ac94a859551f8e1774eb9a8469fe055c;p=linux-2.6.git diff --git a/net/irda/irlap.c b/net/irda/irlap.c index e7852a074..7029618f5 100644 --- a/net/irda/irlap.c +++ b/net/irda/irlap.c @@ -29,6 +29,7 @@ * ********************************************************************/ +#include #include #include #include @@ -116,10 +117,11 @@ struct irlap_cb *irlap_open(struct net_device *dev, struct qos_info *qos, IRDA_DEBUG(4, "%s()\n", __FUNCTION__); /* Initialize the irlap structure. */ - self = kzalloc(sizeof(struct irlap_cb), GFP_KERNEL); + self = kmalloc(sizeof(struct irlap_cb), GFP_KERNEL); if (self == NULL) return NULL; + memset(self, 0, sizeof(struct irlap_cb)); self->magic = LAP_MAGIC; /* Make a binding between the layers */ @@ -881,9 +883,8 @@ static void irlap_change_speed(struct irlap_cb *self, __u32 speed, int now) /* Change speed now, or just piggyback speed on frames */ if (now) { /* Send down empty frame to trigger speed change */ - skb = alloc_skb(0, GFP_ATOMIC); - if (skb) - irlap_queue_xmit(self, skb); + skb = dev_alloc_skb(0); + irlap_queue_xmit(self, skb); } } @@ -1221,7 +1222,7 @@ static int irlap_seq_open(struct inode *inode, struct file *file) { struct seq_file *seq; int rc = -ENOMEM; - struct irlap_iter_state *s = kzalloc(sizeof(*s), GFP_KERNEL); + struct irlap_iter_state *s = kmalloc(sizeof(*s), GFP_KERNEL); if (!s) goto out; @@ -1237,6 +1238,7 @@ static int irlap_seq_open(struct inode *inode, struct file *file) seq = file->private_data; seq->private = s; + memset(s, 0, sizeof(*s)); out: return rc; out_kfree: