diff options
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/Kconfig | 10 | ||||
-rw-r--r-- | drivers/net/appletalk/Kconfig | 2 | ||||
-rw-r--r-- | drivers/net/hamradio/Kconfig | 4 | ||||
-rw-r--r-- | drivers/net/irda/Kconfig | 10 | ||||
-rw-r--r-- | drivers/net/ppp_deflate.c | 6 | ||||
-rw-r--r-- | drivers/net/ppp_generic.c | 12 | ||||
-rw-r--r-- | drivers/net/wan/Kconfig | 6 | ||||
-rw-r--r-- | drivers/net/wan/cycx_x25.c | 8 | ||||
-rw-r--r-- | drivers/net/wan/pc300_tty.c | 27 | ||||
-rw-r--r-- | drivers/net/wan/sdla_chdlc.c | 13 | ||||
-rw-r--r-- | drivers/net/wan/x25_asy.c | 20 |
11 files changed, 45 insertions, 73 deletions
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig index 68242bda4b9c..3a0a55b62aaf 100644 --- a/drivers/net/Kconfig +++ b/drivers/net/Kconfig | |||
@@ -589,7 +589,7 @@ config EL2 | |||
589 | 589 | ||
590 | config ELPLUS | 590 | config ELPLUS |
591 | tristate "3c505 \"EtherLink Plus\" support" | 591 | tristate "3c505 \"EtherLink Plus\" support" |
592 | depends on NET_VENDOR_3COM && ISA | 592 | depends on NET_VENDOR_3COM && ISA && ISA_DMA_API |
593 | ---help--- | 593 | ---help--- |
594 | Information about this network (Ethernet) card can be found in | 594 | Information about this network (Ethernet) card can be found in |
595 | <file:Documentation/networking/3c505.txt>. If you have a card of | 595 | <file:Documentation/networking/3c505.txt>. If you have a card of |
@@ -630,7 +630,7 @@ config EL3 | |||
630 | 630 | ||
631 | config 3C515 | 631 | config 3C515 |
632 | tristate "3c515 ISA \"Fast EtherLink\"" | 632 | tristate "3c515 ISA \"Fast EtherLink\"" |
633 | depends on NET_VENDOR_3COM && (ISA || EISA) | 633 | depends on NET_VENDOR_3COM && (ISA || EISA) && ISA_DMA_API |
634 | help | 634 | help |
635 | If you have a 3Com ISA EtherLink XL "Corkscrew" 3c515 Fast Ethernet | 635 | If you have a 3Com ISA EtherLink XL "Corkscrew" 3c515 Fast Ethernet |
636 | network card, say Y and read the Ethernet-HOWTO, available from | 636 | network card, say Y and read the Ethernet-HOWTO, available from |
@@ -708,7 +708,7 @@ config TYPHOON | |||
708 | 708 | ||
709 | config LANCE | 709 | config LANCE |
710 | tristate "AMD LANCE and PCnet (AT1500 and NE2100) support" | 710 | tristate "AMD LANCE and PCnet (AT1500 and NE2100) support" |
711 | depends on NET_ETHERNET && ISA | 711 | depends on NET_ETHERNET && ISA && ISA_DMA_API |
712 | help | 712 | help |
713 | If you have a network (Ethernet) card of this type, say Y and read | 713 | If you have a network (Ethernet) card of this type, say Y and read |
714 | the Ethernet-HOWTO, available from | 714 | the Ethernet-HOWTO, available from |
@@ -864,7 +864,7 @@ config NI52 | |||
864 | 864 | ||
865 | config NI65 | 865 | config NI65 |
866 | tristate "NI6510 support" | 866 | tristate "NI6510 support" |
867 | depends on NET_VENDOR_RACAL && ISA | 867 | depends on NET_VENDOR_RACAL && ISA && ISA_DMA_API |
868 | help | 868 | help |
869 | If you have a network (Ethernet) card of this type, say Y and read | 869 | If you have a network (Ethernet) card of this type, say Y and read |
870 | the Ethernet-HOWTO, available from | 870 | the Ethernet-HOWTO, available from |
@@ -1072,7 +1072,7 @@ config NE2000 | |||
1072 | 1072 | ||
1073 | config ZNET | 1073 | config ZNET |
1074 | tristate "Zenith Z-Note support (EXPERIMENTAL)" | 1074 | tristate "Zenith Z-Note support (EXPERIMENTAL)" |
1075 | depends on NET_ISA && EXPERIMENTAL | 1075 | depends on NET_ISA && EXPERIMENTAL && ISA_DMA_API |
1076 | help | 1076 | help |
1077 | The Zenith Z-Note notebook computer has a built-in network | 1077 | The Zenith Z-Note notebook computer has a built-in network |
1078 | (Ethernet) card, and this is the Linux driver for it. Note that the | 1078 | (Ethernet) card, and this is the Linux driver for it. Note that the |
diff --git a/drivers/net/appletalk/Kconfig b/drivers/net/appletalk/Kconfig index 60b19679ca5c..69c488d933a2 100644 --- a/drivers/net/appletalk/Kconfig +++ b/drivers/net/appletalk/Kconfig | |||
@@ -13,7 +13,7 @@ config DEV_APPLETALK | |||
13 | 13 | ||
14 | config LTPC | 14 | config LTPC |
15 | tristate "Apple/Farallon LocalTalk PC support" | 15 | tristate "Apple/Farallon LocalTalk PC support" |
16 | depends on DEV_APPLETALK && (ISA || EISA) | 16 | depends on DEV_APPLETALK && (ISA || EISA) && ISA_DMA_API |
17 | help | 17 | help |
18 | This allows you to use the AppleTalk PC card to connect to LocalTalk | 18 | This allows you to use the AppleTalk PC card to connect to LocalTalk |
19 | networks. The card is also known as the Farallon PhoneNet PC card. | 19 | networks. The card is also known as the Farallon PhoneNet PC card. |
diff --git a/drivers/net/hamradio/Kconfig b/drivers/net/hamradio/Kconfig index 34068f81d45e..7cdebe1a0b61 100644 --- a/drivers/net/hamradio/Kconfig +++ b/drivers/net/hamradio/Kconfig | |||
@@ -45,7 +45,7 @@ config BPQETHER | |||
45 | 45 | ||
46 | config DMASCC | 46 | config DMASCC |
47 | tristate "High-speed (DMA) SCC driver for AX.25" | 47 | tristate "High-speed (DMA) SCC driver for AX.25" |
48 | depends on ISA && AX25 && BROKEN_ON_SMP | 48 | depends on ISA && AX25 && BROKEN_ON_SMP && ISA_DMA_API |
49 | ---help--- | 49 | ---help--- |
50 | This is a driver for high-speed SCC boards, i.e. those supporting | 50 | This is a driver for high-speed SCC boards, i.e. those supporting |
51 | DMA on one port. You usually use those boards to connect your | 51 | DMA on one port. You usually use those boards to connect your |
@@ -78,7 +78,7 @@ config DMASCC | |||
78 | 78 | ||
79 | config SCC | 79 | config SCC |
80 | tristate "Z8530 SCC driver" | 80 | tristate "Z8530 SCC driver" |
81 | depends on ISA && AX25 | 81 | depends on ISA && AX25 && ISA_DMA_API |
82 | ---help--- | 82 | ---help--- |
83 | These cards are used to connect your Linux box to an amateur radio | 83 | These cards are used to connect your Linux box to an amateur radio |
84 | in order to communicate with other computers. If you want to use | 84 | in order to communicate with other computers. If you want to use |
diff --git a/drivers/net/irda/Kconfig b/drivers/net/irda/Kconfig index 6bf76a444d48..1c553d7efdd9 100644 --- a/drivers/net/irda/Kconfig +++ b/drivers/net/irda/Kconfig | |||
@@ -310,7 +310,7 @@ config SIGMATEL_FIR | |||
310 | 310 | ||
311 | config NSC_FIR | 311 | config NSC_FIR |
312 | tristate "NSC PC87108/PC87338" | 312 | tristate "NSC PC87108/PC87338" |
313 | depends on IRDA | 313 | depends on IRDA && ISA_DMA_API |
314 | help | 314 | help |
315 | Say Y here if you want to build support for the NSC PC87108 and | 315 | Say Y here if you want to build support for the NSC PC87108 and |
316 | PC87338 IrDA chipsets. This driver supports SIR, | 316 | PC87338 IrDA chipsets. This driver supports SIR, |
@@ -321,7 +321,7 @@ config NSC_FIR | |||
321 | 321 | ||
322 | config WINBOND_FIR | 322 | config WINBOND_FIR |
323 | tristate "Winbond W83977AF (IR)" | 323 | tristate "Winbond W83977AF (IR)" |
324 | depends on IRDA | 324 | depends on IRDA && ISA_DMA_API |
325 | help | 325 | help |
326 | Say Y here if you want to build IrDA support for the Winbond | 326 | Say Y here if you want to build IrDA support for the Winbond |
327 | W83977AF super-io chipset. This driver should be used for the IrDA | 327 | W83977AF super-io chipset. This driver should be used for the IrDA |
@@ -347,7 +347,7 @@ config AU1000_FIR | |||
347 | 347 | ||
348 | config SMC_IRCC_FIR | 348 | config SMC_IRCC_FIR |
349 | tristate "SMSC IrCC (EXPERIMENTAL)" | 349 | tristate "SMSC IrCC (EXPERIMENTAL)" |
350 | depends on EXPERIMENTAL && IRDA | 350 | depends on EXPERIMENTAL && IRDA && ISA_DMA_API |
351 | help | 351 | help |
352 | Say Y here if you want to build support for the SMC Infrared | 352 | Say Y here if you want to build support for the SMC Infrared |
353 | Communications Controller. It is used in a wide variety of | 353 | Communications Controller. It is used in a wide variety of |
@@ -357,7 +357,7 @@ config SMC_IRCC_FIR | |||
357 | 357 | ||
358 | config ALI_FIR | 358 | config ALI_FIR |
359 | tristate "ALi M5123 FIR (EXPERIMENTAL)" | 359 | tristate "ALi M5123 FIR (EXPERIMENTAL)" |
360 | depends on EXPERIMENTAL && IRDA | 360 | depends on EXPERIMENTAL && IRDA && ISA_DMA_API |
361 | help | 361 | help |
362 | Say Y here if you want to build support for the ALi M5123 FIR | 362 | Say Y here if you want to build support for the ALi M5123 FIR |
363 | Controller. The ALi M5123 FIR Controller is embedded in ALi M1543C, | 363 | Controller. The ALi M5123 FIR Controller is embedded in ALi M1543C, |
@@ -385,7 +385,7 @@ config SA1100_FIR | |||
385 | 385 | ||
386 | config VIA_FIR | 386 | config VIA_FIR |
387 | tristate "VIA VT8231/VT1211 SIR/MIR/FIR" | 387 | tristate "VIA VT8231/VT1211 SIR/MIR/FIR" |
388 | depends on IRDA | 388 | depends on IRDA && ISA_DMA_API |
389 | help | 389 | help |
390 | Say Y here if you want to build support for the VIA VT8231 | 390 | Say Y here if you want to build support for the VIA VT8231 |
391 | and VIA VT1211 IrDA controllers, found on the motherboards using | 391 | and VIA VT1211 IrDA controllers, found on the motherboards using |
diff --git a/drivers/net/ppp_deflate.c b/drivers/net/ppp_deflate.c index 507d6328d4eb..3872088fdd10 100644 --- a/drivers/net/ppp_deflate.c +++ b/drivers/net/ppp_deflate.c | |||
@@ -87,8 +87,7 @@ static void z_comp_free(void *arg) | |||
87 | 87 | ||
88 | if (state) { | 88 | if (state) { |
89 | zlib_deflateEnd(&state->strm); | 89 | zlib_deflateEnd(&state->strm); |
90 | if (state->strm.workspace) | 90 | vfree(state->strm.workspace); |
91 | vfree(state->strm.workspace); | ||
92 | kfree(state); | 91 | kfree(state); |
93 | } | 92 | } |
94 | } | 93 | } |
@@ -308,8 +307,7 @@ static void z_decomp_free(void *arg) | |||
308 | 307 | ||
309 | if (state) { | 308 | if (state) { |
310 | zlib_inflateEnd(&state->strm); | 309 | zlib_inflateEnd(&state->strm); |
311 | if (state->strm.workspace) | 310 | kfree(state->strm.workspace); |
312 | kfree(state->strm.workspace); | ||
313 | kfree(state); | 311 | kfree(state); |
314 | } | 312 | } |
315 | } | 313 | } |
diff --git a/drivers/net/ppp_generic.c b/drivers/net/ppp_generic.c index c456dc81b873..3b377f6cd4a0 100644 --- a/drivers/net/ppp_generic.c +++ b/drivers/net/ppp_generic.c | |||
@@ -2467,14 +2467,10 @@ static void ppp_destroy_interface(struct ppp *ppp) | |||
2467 | skb_queue_purge(&ppp->mrq); | 2467 | skb_queue_purge(&ppp->mrq); |
2468 | #endif /* CONFIG_PPP_MULTILINK */ | 2468 | #endif /* CONFIG_PPP_MULTILINK */ |
2469 | #ifdef CONFIG_PPP_FILTER | 2469 | #ifdef CONFIG_PPP_FILTER |
2470 | if (ppp->pass_filter) { | 2470 | kfree(ppp->pass_filter); |
2471 | kfree(ppp->pass_filter); | 2471 | ppp->pass_filter = NULL; |
2472 | ppp->pass_filter = NULL; | 2472 | kfree(ppp->active_filter); |
2473 | } | 2473 | ppp->active_filter = NULL; |
2474 | if (ppp->active_filter) { | ||
2475 | kfree(ppp->active_filter); | ||
2476 | ppp->active_filter = NULL; | ||
2477 | } | ||
2478 | #endif /* CONFIG_PPP_FILTER */ | 2474 | #endif /* CONFIG_PPP_FILTER */ |
2479 | 2475 | ||
2480 | kfree(ppp); | 2476 | kfree(ppp); |
diff --git a/drivers/net/wan/Kconfig b/drivers/net/wan/Kconfig index 35791934a602..66b94668ddd8 100644 --- a/drivers/net/wan/Kconfig +++ b/drivers/net/wan/Kconfig | |||
@@ -26,7 +26,7 @@ config WAN | |||
26 | # There is no way to detect a comtrol sv11 - force it modular for now. | 26 | # There is no way to detect a comtrol sv11 - force it modular for now. |
27 | config HOSTESS_SV11 | 27 | config HOSTESS_SV11 |
28 | tristate "Comtrol Hostess SV-11 support" | 28 | tristate "Comtrol Hostess SV-11 support" |
29 | depends on WAN && ISA && m | 29 | depends on WAN && ISA && m && ISA_DMA_API |
30 | help | 30 | help |
31 | Driver for Comtrol Hostess SV-11 network card which | 31 | Driver for Comtrol Hostess SV-11 network card which |
32 | operates on low speed synchronous serial links at up to | 32 | operates on low speed synchronous serial links at up to |
@@ -38,7 +38,7 @@ config HOSTESS_SV11 | |||
38 | # The COSA/SRP driver has not been tested as non-modular yet. | 38 | # The COSA/SRP driver has not been tested as non-modular yet. |
39 | config COSA | 39 | config COSA |
40 | tristate "COSA/SRP sync serial boards support" | 40 | tristate "COSA/SRP sync serial boards support" |
41 | depends on WAN && ISA && m | 41 | depends on WAN && ISA && m && ISA_DMA_API |
42 | ---help--- | 42 | ---help--- |
43 | Driver for COSA and SRP synchronous serial boards. | 43 | Driver for COSA and SRP synchronous serial boards. |
44 | 44 | ||
@@ -127,7 +127,7 @@ config LANMEDIA | |||
127 | # There is no way to detect a Sealevel board. Force it modular | 127 | # There is no way to detect a Sealevel board. Force it modular |
128 | config SEALEVEL_4021 | 128 | config SEALEVEL_4021 |
129 | tristate "Sealevel Systems 4021 support" | 129 | tristate "Sealevel Systems 4021 support" |
130 | depends on WAN && ISA && m | 130 | depends on WAN && ISA && m && ISA_DMA_API |
131 | help | 131 | help |
132 | This is a driver for the Sealevel Systems ACB 56 serial I/O adapter. | 132 | This is a driver for the Sealevel Systems ACB 56 serial I/O adapter. |
133 | 133 | ||
diff --git a/drivers/net/wan/cycx_x25.c b/drivers/net/wan/cycx_x25.c index 5b48cd8568f5..02d57c0b4243 100644 --- a/drivers/net/wan/cycx_x25.c +++ b/drivers/net/wan/cycx_x25.c | |||
@@ -436,9 +436,7 @@ static int cycx_wan_new_if(struct wan_device *wandev, struct net_device *dev, | |||
436 | } | 436 | } |
437 | 437 | ||
438 | if (err) { | 438 | if (err) { |
439 | if (chan->local_addr) | 439 | kfree(chan->local_addr); |
440 | kfree(chan->local_addr); | ||
441 | |||
442 | kfree(chan); | 440 | kfree(chan); |
443 | return err; | 441 | return err; |
444 | } | 442 | } |
@@ -458,9 +456,7 @@ static int cycx_wan_del_if(struct wan_device *wandev, struct net_device *dev) | |||
458 | struct cycx_x25_channel *chan = dev->priv; | 456 | struct cycx_x25_channel *chan = dev->priv; |
459 | 457 | ||
460 | if (chan->svc) { | 458 | if (chan->svc) { |
461 | if (chan->local_addr) | 459 | kfree(chan->local_addr); |
462 | kfree(chan->local_addr); | ||
463 | |||
464 | if (chan->state == WAN_CONNECTED) | 460 | if (chan->state == WAN_CONNECTED) |
465 | del_timer(&chan->timer); | 461 | del_timer(&chan->timer); |
466 | } | 462 | } |
diff --git a/drivers/net/wan/pc300_tty.c b/drivers/net/wan/pc300_tty.c index 29f84ad08730..8454bf6caaa7 100644 --- a/drivers/net/wan/pc300_tty.c +++ b/drivers/net/wan/pc300_tty.c | |||
@@ -400,10 +400,8 @@ static void cpc_tty_close(struct tty_struct *tty, struct file *flip) | |||
400 | cpc_tty->buf_rx.last = NULL; | 400 | cpc_tty->buf_rx.last = NULL; |
401 | } | 401 | } |
402 | 402 | ||
403 | if (cpc_tty->buf_tx) { | 403 | kfree(cpc_tty->buf_tx); |
404 | kfree(cpc_tty->buf_tx); | 404 | cpc_tty->buf_tx = NULL; |
405 | cpc_tty->buf_tx = NULL; | ||
406 | } | ||
407 | 405 | ||
408 | CPC_TTY_DBG("%s: TTY closed\n",cpc_tty->name); | 406 | CPC_TTY_DBG("%s: TTY closed\n",cpc_tty->name); |
409 | 407 | ||
@@ -666,7 +664,7 @@ static void cpc_tty_rx_work(void * data) | |||
666 | unsigned long port; | 664 | unsigned long port; |
667 | int i, j; | 665 | int i, j; |
668 | st_cpc_tty_area *cpc_tty; | 666 | st_cpc_tty_area *cpc_tty; |
669 | volatile st_cpc_rx_buf * buf; | 667 | volatile st_cpc_rx_buf *buf; |
670 | char flags=0,flg_rx=1; | 668 | char flags=0,flg_rx=1; |
671 | struct tty_ldisc *ld; | 669 | struct tty_ldisc *ld; |
672 | 670 | ||
@@ -680,9 +678,9 @@ static void cpc_tty_rx_work(void * data) | |||
680 | cpc_tty = &cpc_tty_area[port]; | 678 | cpc_tty = &cpc_tty_area[port]; |
681 | 679 | ||
682 | if ((buf=cpc_tty->buf_rx.first) != 0) { | 680 | if ((buf=cpc_tty->buf_rx.first) != 0) { |
683 | if(cpc_tty->tty) { | 681 | if (cpc_tty->tty) { |
684 | ld = tty_ldisc_ref(cpc_tty->tty); | 682 | ld = tty_ldisc_ref(cpc_tty->tty); |
685 | if(ld) { | 683 | if (ld) { |
686 | if (ld->receive_buf) { | 684 | if (ld->receive_buf) { |
687 | CPC_TTY_DBG("%s: call line disc. receive_buf\n",cpc_tty->name); | 685 | CPC_TTY_DBG("%s: call line disc. receive_buf\n",cpc_tty->name); |
688 | ld->receive_buf(cpc_tty->tty, (char *)(buf->data), &flags, buf->size); | 686 | ld->receive_buf(cpc_tty->tty, (char *)(buf->data), &flags, buf->size); |
@@ -691,7 +689,7 @@ static void cpc_tty_rx_work(void * data) | |||
691 | } | 689 | } |
692 | } | 690 | } |
693 | cpc_tty->buf_rx.first = cpc_tty->buf_rx.first->next; | 691 | cpc_tty->buf_rx.first = cpc_tty->buf_rx.first->next; |
694 | kfree((unsigned char *)buf); | 692 | kfree(buf); |
695 | buf = cpc_tty->buf_rx.first; | 693 | buf = cpc_tty->buf_rx.first; |
696 | flg_rx = 1; | 694 | flg_rx = 1; |
697 | } | 695 | } |
@@ -733,7 +731,7 @@ static void cpc_tty_rx_disc_frame(pc300ch_t *pc300chan) | |||
733 | 731 | ||
734 | void cpc_tty_receive(pc300dev_t *pc300dev) | 732 | void cpc_tty_receive(pc300dev_t *pc300dev) |
735 | { | 733 | { |
736 | st_cpc_tty_area *cpc_tty; | 734 | st_cpc_tty_area *cpc_tty; |
737 | pc300ch_t *pc300chan = (pc300ch_t *)pc300dev->chan; | 735 | pc300ch_t *pc300chan = (pc300ch_t *)pc300dev->chan; |
738 | pc300_t *card = (pc300_t *)pc300chan->card; | 736 | pc300_t *card = (pc300_t *)pc300chan->card; |
739 | int ch = pc300chan->channel; | 737 | int ch = pc300chan->channel; |
@@ -742,7 +740,7 @@ void cpc_tty_receive(pc300dev_t *pc300dev) | |||
742 | int rx_len, rx_aux; | 740 | int rx_len, rx_aux; |
743 | volatile unsigned char status; | 741 | volatile unsigned char status; |
744 | unsigned short first_bd = pc300chan->rx_first_bd; | 742 | unsigned short first_bd = pc300chan->rx_first_bd; |
745 | st_cpc_rx_buf *new=NULL; | 743 | st_cpc_rx_buf *new = NULL; |
746 | unsigned char dsr_rx; | 744 | unsigned char dsr_rx; |
747 | 745 | ||
748 | if (pc300dev->cpc_tty == NULL) { | 746 | if (pc300dev->cpc_tty == NULL) { |
@@ -762,7 +760,7 @@ void cpc_tty_receive(pc300dev_t *pc300dev) | |||
762 | if (status & DST_EOM) { | 760 | if (status & DST_EOM) { |
763 | break; | 761 | break; |
764 | } | 762 | } |
765 | ptdescr=(pcsca_bd_t __iomem *)(card->hw.rambase+cpc_readl(&ptdescr->next)); | 763 | ptdescr = (pcsca_bd_t __iomem *)(card->hw.rambase+cpc_readl(&ptdescr->next)); |
766 | } | 764 | } |
767 | 765 | ||
768 | if (!rx_len) { | 766 | if (!rx_len) { |
@@ -771,10 +769,7 @@ void cpc_tty_receive(pc300dev_t *pc300dev) | |||
771 | cpc_writel(card->hw.scabase + DRX_REG(EDAL, ch), | 769 | cpc_writel(card->hw.scabase + DRX_REG(EDAL, ch), |
772 | RX_BD_ADDR(ch, pc300chan->rx_last_bd)); | 770 | RX_BD_ADDR(ch, pc300chan->rx_last_bd)); |
773 | } | 771 | } |
774 | if (new) { | 772 | kfree(new); |
775 | kfree(new); | ||
776 | new = NULL; | ||
777 | } | ||
778 | return; | 773 | return; |
779 | } | 774 | } |
780 | 775 | ||
@@ -787,7 +782,7 @@ void cpc_tty_receive(pc300dev_t *pc300dev) | |||
787 | continue; | 782 | continue; |
788 | } | 783 | } |
789 | 784 | ||
790 | new = (st_cpc_rx_buf *) kmalloc(rx_len + sizeof(st_cpc_rx_buf), GFP_ATOMIC); | 785 | new = (st_cpc_rx_buf *)kmalloc(rx_len + sizeof(st_cpc_rx_buf), GFP_ATOMIC); |
791 | if (new == 0) { | 786 | if (new == 0) { |
792 | cpc_tty_rx_disc_frame(pc300chan); | 787 | cpc_tty_rx_disc_frame(pc300chan); |
793 | continue; | 788 | continue; |
diff --git a/drivers/net/wan/sdla_chdlc.c b/drivers/net/wan/sdla_chdlc.c index afbe0024e3e1..496d29237e92 100644 --- a/drivers/net/wan/sdla_chdlc.c +++ b/drivers/net/wan/sdla_chdlc.c | |||
@@ -3664,15 +3664,10 @@ static void wanpipe_tty_close(struct tty_struct *tty, struct file * filp) | |||
3664 | chdlc_disable_comm_shutdown(card); | 3664 | chdlc_disable_comm_shutdown(card); |
3665 | unlock_adapter_irq(&card->wandev.lock,&smp_flags); | 3665 | unlock_adapter_irq(&card->wandev.lock,&smp_flags); |
3666 | 3666 | ||
3667 | if (card->tty_buf){ | 3667 | kfree(card->tty_buf); |
3668 | kfree(card->tty_buf); | 3668 | card->tty_buf = NULL; |
3669 | card->tty_buf=NULL; | 3669 | kfree(card->tty_rx); |
3670 | } | 3670 | card->tty_rx = NULL; |
3671 | |||
3672 | if (card->tty_rx){ | ||
3673 | kfree(card->tty_rx); | ||
3674 | card->tty_rx=NULL; | ||
3675 | } | ||
3676 | } | 3671 | } |
3677 | return; | 3672 | return; |
3678 | } | 3673 | } |
diff --git a/drivers/net/wan/x25_asy.c b/drivers/net/wan/x25_asy.c index 8c5cfcb55826..1c540d825551 100644 --- a/drivers/net/wan/x25_asy.c +++ b/drivers/net/wan/x25_asy.c | |||
@@ -107,13 +107,9 @@ static struct x25_asy *x25_asy_alloc(void) | |||
107 | static void x25_asy_free(struct x25_asy *sl) | 107 | static void x25_asy_free(struct x25_asy *sl) |
108 | { | 108 | { |
109 | /* Free all X.25 frame buffers. */ | 109 | /* Free all X.25 frame buffers. */ |
110 | if (sl->rbuff) { | 110 | kfree(sl->rbuff); |
111 | kfree(sl->rbuff); | ||
112 | } | ||
113 | sl->rbuff = NULL; | 111 | sl->rbuff = NULL; |
114 | if (sl->xbuff) { | 112 | kfree(sl->xbuff); |
115 | kfree(sl->xbuff); | ||
116 | } | ||
117 | sl->xbuff = NULL; | 113 | sl->xbuff = NULL; |
118 | 114 | ||
119 | if (!test_and_clear_bit(SLF_INUSE, &sl->flags)) { | 115 | if (!test_and_clear_bit(SLF_INUSE, &sl->flags)) { |
@@ -134,10 +130,8 @@ static int x25_asy_change_mtu(struct net_device *dev, int newmtu) | |||
134 | { | 130 | { |
135 | printk("%s: unable to grow X.25 buffers, MTU change cancelled.\n", | 131 | printk("%s: unable to grow X.25 buffers, MTU change cancelled.\n", |
136 | dev->name); | 132 | dev->name); |
137 | if (xbuff != NULL) | 133 | kfree(xbuff); |
138 | kfree(xbuff); | 134 | kfree(rbuff); |
139 | if (rbuff != NULL) | ||
140 | kfree(rbuff); | ||
141 | return -ENOMEM; | 135 | return -ENOMEM; |
142 | } | 136 | } |
143 | 137 | ||
@@ -169,10 +163,8 @@ static int x25_asy_change_mtu(struct net_device *dev, int newmtu) | |||
169 | 163 | ||
170 | spin_unlock_bh(&sl->lock); | 164 | spin_unlock_bh(&sl->lock); |
171 | 165 | ||
172 | if (xbuff != NULL) | 166 | kfree(xbuff); |
173 | kfree(xbuff); | 167 | kfree(rbuff); |
174 | if (rbuff != NULL) | ||
175 | kfree(rbuff); | ||
176 | return 0; | 168 | return 0; |
177 | } | 169 | } |
178 | 170 | ||