diff options
author | Len Brown <len.brown@intel.com> | 2009-04-05 02:14:15 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2009-04-05 02:14:15 -0400 |
commit | 478c6a43fcbc6c11609f8cee7c7b57223907754f (patch) | |
tree | a7f7952099da60d33032aed6de9c0c56c9f8779e /drivers/net/ppp_async.c | |
parent | 8a3f257c704e02aee9869decd069a806b45be3f1 (diff) | |
parent | 6bb597507f9839b13498781e481f5458aea33620 (diff) |
Merge branch 'linus' into release
Conflicts:
arch/x86/kernel/cpu/cpufreq/longhaul.c
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/net/ppp_async.c')
-rw-r--r-- | drivers/net/ppp_async.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/ppp_async.c b/drivers/net/ppp_async.c index 6567fabd2e13..6de8399d6dd9 100644 --- a/drivers/net/ppp_async.c +++ b/drivers/net/ppp_async.c | |||
@@ -157,6 +157,7 @@ ppp_asynctty_open(struct tty_struct *tty) | |||
157 | { | 157 | { |
158 | struct asyncppp *ap; | 158 | struct asyncppp *ap; |
159 | int err; | 159 | int err; |
160 | int speed; | ||
160 | 161 | ||
161 | if (tty->ops->write == NULL) | 162 | if (tty->ops->write == NULL) |
162 | return -EOPNOTSUPP; | 163 | return -EOPNOTSUPP; |
@@ -187,6 +188,8 @@ ppp_asynctty_open(struct tty_struct *tty) | |||
187 | ap->chan.private = ap; | 188 | ap->chan.private = ap; |
188 | ap->chan.ops = &async_ops; | 189 | ap->chan.ops = &async_ops; |
189 | ap->chan.mtu = PPP_MRU; | 190 | ap->chan.mtu = PPP_MRU; |
191 | speed = tty_get_baud_rate(tty); | ||
192 | ap->chan.speed = speed; | ||
190 | err = ppp_register_channel(&ap->chan); | 193 | err = ppp_register_channel(&ap->chan); |
191 | if (err) | 194 | if (err) |
192 | goto out_free; | 195 | goto out_free; |
@@ -233,11 +236,9 @@ ppp_asynctty_close(struct tty_struct *tty) | |||
233 | tasklet_kill(&ap->tsk); | 236 | tasklet_kill(&ap->tsk); |
234 | 237 | ||
235 | ppp_unregister_channel(&ap->chan); | 238 | ppp_unregister_channel(&ap->chan); |
236 | if (ap->rpkt) | 239 | kfree_skb(ap->rpkt); |
237 | kfree_skb(ap->rpkt); | ||
238 | skb_queue_purge(&ap->rqueue); | 240 | skb_queue_purge(&ap->rqueue); |
239 | if (ap->tpkt) | 241 | kfree_skb(ap->tpkt); |
240 | kfree_skb(ap->tpkt); | ||
241 | kfree(ap); | 242 | kfree(ap); |
242 | } | 243 | } |
243 | 244 | ||