diff options
Diffstat (limited to 'kernel/drivers/isdn/i4l')
-rw-r--r-- | kernel/drivers/isdn/i4l/isdn_net.c | 2 | ||||
-rw-r--r-- | kernel/drivers/isdn/i4l/isdn_ppp.c | 12 | ||||
-rw-r--r-- | kernel/drivers/isdn/i4l/isdn_tty.c | 2 |
3 files changed, 10 insertions, 6 deletions
diff --git a/kernel/drivers/isdn/i4l/isdn_net.c b/kernel/drivers/isdn/i4l/isdn_net.c index 546b7e811..aa5dd5668 100644 --- a/kernel/drivers/isdn/i4l/isdn_net.c +++ b/kernel/drivers/isdn/i4l/isdn_net.c @@ -58,7 +58,7 @@ * About SOFTNET: * Most of the changes were pretty obvious and basically done by HE already. * - * One problem of the isdn net device code is that is uses struct net_device + * One problem of the isdn net device code is that it uses struct net_device * for masters and slaves. However, only master interface are registered to * the network layer, and therefore, it only makes sense to call netif_* * functions on them. diff --git a/kernel/drivers/isdn/i4l/isdn_ppp.c b/kernel/drivers/isdn/i4l/isdn_ppp.c index c4198fa49..9c1e8adaf 100644 --- a/kernel/drivers/isdn/i4l/isdn_ppp.c +++ b/kernel/drivers/isdn/i4l/isdn_ppp.c @@ -301,6 +301,8 @@ isdn_ppp_open(int min, struct file *file) is->compflags = 0; is->reset = isdn_ppp_ccp_reset_alloc(is); + if (!is->reset) + return -ENOMEM; is->lp = NULL; is->mp_seqno = 0; /* MP sequence number */ @@ -320,6 +322,10 @@ isdn_ppp_open(int min, struct file *file) * VJ header compression init */ is->slcomp = slhc_init(16, 16); /* not necessary for 2. link in bundle */ + if (IS_ERR(is->slcomp)) { + isdn_ppp_ccp_reset_free(is); + return PTR_ERR(is->slcomp); + } #endif #ifdef CONFIG_IPPP_FILTER is->pass_filter = NULL; @@ -567,10 +573,8 @@ isdn_ppp_ioctl(int min, struct file *file, unsigned int cmd, unsigned long arg) is->maxcid = val; #ifdef CONFIG_ISDN_PPP_VJ sltmp = slhc_init(16, val); - if (!sltmp) { - printk(KERN_ERR "ippp, can't realloc slhc struct\n"); - return -ENOMEM; - } + if (IS_ERR(sltmp)) + return PTR_ERR(sltmp); if (is->slcomp) slhc_free(is->slcomp); is->slcomp = sltmp; diff --git a/kernel/drivers/isdn/i4l/isdn_tty.c b/kernel/drivers/isdn/i4l/isdn_tty.c index bc912611f..2175225af 100644 --- a/kernel/drivers/isdn/i4l/isdn_tty.c +++ b/kernel/drivers/isdn/i4l/isdn_tty.c @@ -1582,7 +1582,7 @@ isdn_tty_close(struct tty_struct *tty, struct file *filp) * line status register. */ if (port->flags & ASYNC_INITIALIZED) { - tty_wait_until_sent_from_close(tty, 3000); /* 30 seconds timeout */ + tty_wait_until_sent(tty, 3000); /* 30 seconds timeout */ /* * Before we drop DTR, make sure the UART transmitter * has completely drained; this is especially |