Bug 10835 - vanilla kernel 2.6.25.4 + TLAN NIC driver oops or so...
Summary: vanilla kernel 2.6.25.4 + TLAN NIC driver oops or so...
Status: CLOSED INSUFFICIENT_DATA
Alias: None
Product: Drivers
Classification: Unclassified
Component: Network (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: drivers_network@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-05-29 22:22 UTC by Wizard Vandal
Modified: 2010-01-19 17:51 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.25.4
Subsystem:
Regression: No
Bisected commit-id:


Attachments
my config (42.51 KB, application/octet-stream)
2008-05-29 22:30 UTC, Wizard Vandal
Details

Description Wizard Vandal 2008-05-29 22:22:35 UTC
Latest working kernel version: 2.6.25.4
Earliest failing kernel version: 2.6.25.4
Distribution: debian sid
Hardware Environment: Compaq Deskpro (some old comp)
Software Environment: latest updates

Problem Description: 
after some time of normal work I lost connect to my router. no ping, no ssh. nothing. I come to router, switched on monitor and see infinetely looping messages about some error like this: TLAN: Could't allocate memory for... and some memory dumps. It's quickly scrolling so exact error message I can't read. On keyboard "caps Lock" and "scroll lock" are blinking...

Alt+Ctrl+Del don't reboot system. So I reset it and all run fine again... I don't know for how long it will...

There is one vlan on tlan interface. If it's help...

As I remember, on 2.6.25.1 there was no errors for much more time (maybe it's my luck). So I think may be something changed between 2.6.25.1 and 2.6.25.4 that break memory allocations for that driver or so...

lspci:
00:00.0 Host bridge: Intel Corporation 440LX/EX - 82443LX/EX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corporation 440LX/EX - 82443LX/EX AGP bridge (rev 03)
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:0e.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:0f.0 SCSI storage controller: Adaptec AIC-7860 (rev 03)
00:10.0 Network controller: Compaq Computer Corporation Netelligent 10/100 TX Embedded UTP (rev 10)
00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:14.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 01)
00:14.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:14.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
00:14.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01)
01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2164W [Millennium II] AGP


Steps to reproduce:
try to use such hardware... or simply tlan NIC.
Comment 1 Wizard Vandal 2008-05-29 22:30:50 UTC
Created attachment 16332 [details]
my config

config used in kernel compilation....
Comment 2 Anonymous Emailer 2008-05-29 22:42:40 UTC
Reply-To: akpm@linux-foundation.org


(switched to email.  Please respond via emailed reply-to-all, not via the
bugzilla web interface).

On Thu, 29 May 2008 22:22:36 -0700 (PDT) bugme-daemon@bugzilla.kernel.org wrote:

> http://bugzilla.kernel.org/show_bug.cgi?id=10835
> 
>            Summary: vanilla kernel 2.6.25.4 + TLAN NIC driver oops or so...
>            Product: Drivers
>            Version: 2.5
>      KernelVersion: 2.6.25.4
>           Platform: All
>         OS/Version: Linux
>               Tree: Mainline
>             Status: NEW
>           Severity: normal
>           Priority: P1
>          Component: Network
>         AssignedTo: jgarzik@pobox.com
>         ReportedBy: wizard580@gmail.com
> 
> 
> Latest working kernel version: 2.6.25.4

I assume you meant 2.6.25.1 here.

> Earliest failing kernel version: 2.6.25.4
> Distribution: debian sid
> Hardware Environment: Compaq Deskpro (some old comp)
> Software Environment: latest updates
> 
> Problem Description: 
> after some time of normal work I lost connect to my router. no ping, no ssh.
> nothing. I come to router, switched on monitor and see infinetely looping
> messages about some error like this: TLAN: Could't allocate memory for... and
> some memory dumps. It's quickly scrolling so exact error message I can't
> read.

It could only have been

	"TLAN:  Couldn't allocate memory for received data.\n"

however the stupid driver prints the same string from three different
places.

> On keyboard "caps Lock" and "scroll lock" are blinking...

hm, that might mean it oopses as well.

> Alt+Ctrl+Del don't reboot system. So I reset it and all run fine again... I
> don't know for how long it will...
> 
> There is one vlan on tlan interface. If it's help...
> 
> As I remember, on 2.6.25.1 there was no errors for much more time (maybe it's
> my luck). So I think may be something changed between 2.6.25.1 and 2.6.25.4
> that break memory allocations for that driver or so...
> 
> lspci:
> 00:00.0 Host bridge: Intel Corporation 440LX/EX - 82443LX/EX Host bridge (rev
> 03)
> 00:01.0 PCI bridge: Intel Corporation 440LX/EX - 82443LX/EX AGP bridge (rev
> 03)
> 00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
> RTL-8139/8139C/8139C+ (rev 10)
> 00:0e.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
> RTL-8139/8139C/8139C+ (rev 10)
> 00:0f.0 SCSI storage controller: Adaptec AIC-7860 (rev 03)
> 00:10.0 Network controller: Compaq Computer Corporation Netelligent 10/100 TX
> Embedded UTP (rev 10)
> 00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
> RTL-8139/8139C/8139C+ (rev 10)
> 00:14.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 01)
> 00:14.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
> 00:14.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
> 00:14.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01)
> 01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2164W
> [Millennium
> II] AGP
> 
> 
> Steps to reproduce:
> try to use such hardware... or simply tlan NIC.

Alas, no significant changes have been made to tlan.c in ages.
Comment 3 Wizard Vandal 2008-05-29 23:32:41 UTC
> I assume you meant 2.6.25.1 here.
Maybe... as I said, I don't know is it my luck or something else...

>It could only have been
>       "TLAN:  Couldn't allocate memory for received data.\n"
Again maybe. I looked at sorce, but I'm too little programmer to see why it
can print such error or fix that.

One more thing:
now, I've tried to remove nf_conntrack_ftp module and kernel crashed.
Screen not checked, just reset and go away. Keyboard leds again blinks, as
always when it crashed.

Do I have to post new bug or you can do all checks or whatever without it?

2008/5/30 Andrew Morton <akpm@linux-foundation.org>:

>
> (switched to email.  Please respond via emailed reply-to-all, not via the
> bugzilla web interface).
>
> On Thu, 29 May 2008 22:22:36 -0700 (PDT)
> bugme-daemon@bugzilla.kernel.orgwrote:
>
> > http://bugzilla.kernel.org/show_bug.cgi?id=10835
> >
> >            Summary: vanilla kernel 2.6.25.4 + TLAN NIC driver oops or
> so...
> >            Product: Drivers
> >            Version: 2.5
> >      KernelVersion: 2.6.25.4
> >           Platform: All
> >         OS/Version: Linux
> >               Tree: Mainline
> >             Status: NEW
> >           Severity: normal
> >           Priority: P1
> >          Component: Network
> >         AssignedTo: jgarzik@pobox.com
> >         ReportedBy: wizard580@gmail.com
> >
> >
> > Latest working kernel version: 2.6.25.4
>
> I assume you meant 2.6.25.1 here.
>
> > Earliest failing kernel version: 2.6.25.4
> > Distribution: debian sid
> > Hardware Environment: Compaq Deskpro (some old comp)
> > Software Environment: latest updates
> >
> > Problem Description:
> > after some time of normal work I lost connect to my router. no ping, no
> ssh.
> > nothing. I come to router, switched on monitor and see infinetely looping
> > messages about some error like this: TLAN: Could't allocate memory for...
> and
> > some memory dumps. It's quickly scrolling so exact error message I can't
> read.
>
> It could only have been
>
>        "TLAN:  Couldn't allocate memory for received data.\n"
>
> however the stupid driver prints the same string from three different
> places.
>
> > On keyboard "caps Lock" and "scroll lock" are blinking...
>
> hm, that might mean it oopses as well.
>
> > Alt+Ctrl+Del don't reboot system. So I reset it and all run fine again...
> I
> > don't know for how long it will...
> >
> > There is one vlan on tlan interface. If it's help...
> >
> > As I remember, on 2.6.25.1 there was no errors for much more time (maybe
> it's
> > my luck). So I think may be something changed between 2.6.25.1 and
> 2.6.25.4
> > that break memory allocations for that driver or so...
> >
> > lspci:
> > 00:00.0 Host bridge: Intel Corporation 440LX/EX - 82443LX/EX Host bridge
> (rev
> > 03)
> > 00:01.0 PCI bridge: Intel Corporation 440LX/EX - 82443LX/EX AGP bridge
> (rev 03)
> > 00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
> > RTL-8139/8139C/8139C+ (rev 10)
> > 00:0e.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
> > RTL-8139/8139C/8139C+ (rev 10)
> > 00:0f.0 SCSI storage controller: Adaptec AIC-7860 (rev 03)
> > 00:10.0 Network controller: Compaq Computer Corporation Netelligent
> 10/100 TX
> > Embedded UTP (rev 10)
> > 00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
> > RTL-8139/8139C/8139C+ (rev 10)
> > 00:14.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 01)
> > 00:14.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
> > 00:14.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev
> 01)
> > 00:14.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01)
> > 01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2164W
> [Millennium
> > II] AGP
> >
> >
> > Steps to reproduce:
> > try to use such hardware... or simply tlan NIC.
>
> Alas, no significant changes have been made to tlan.c in ages.
>
>


&gt; I assume you meant <a href="http://2.6.25.1/" target="_blank">2.6.25.1</a> here.<br>Maybe... as I said, I don&#39;t know is it my luck or something else...<br><br>&gt;It could only have been<br>
&gt;&nbsp; &nbsp; &nbsp;&nbsp; &quot;TLAN: &nbsp;Couldn&#39;t allocate memory for received data.\n&quot;<br>
Again maybe. I looked at sorce, but I&#39;m too little programmer to see why it can print such error or fix that.<br><br>One more thing:<br>now, I&#39;ve tried to remove nf_conntrack_ftp module and kernel crashed.<br>Screen not checked, just reset and go away. Keyboard leds again blinks, as always when it crashed. <br>
<br>Do I have to post new bug or you can do all checks or whatever without it?<br><br><div class="gmail_quote">2008/5/30 Andrew Morton &lt;<a href="mailto:akpm@linux-foundation.org">akpm@linux-foundation.org</a>&gt;:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
(switched to email. &nbsp;Please respond via emailed reply-to-all, not via the<br>
bugzilla web interface).<br>
<div class="Ih2E3d"><br>
On Thu, 29 May 2008 22:22:36 -0700 (PDT) <a href="mailto:bugme-daemon@bugzilla.kernel.org">bugme-daemon@bugzilla.kernel.org</a> wrote:<br>
<br>
&gt; <a href="http://bugzilla.kernel.org/show_bug.cgi?id=10835" target="_blank">http://bugzilla.kernel.org/show_bug.cgi?id=10835</a><br>
&gt;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Summary: vanilla kernel <a href="http://2.6.25.4" target="_blank">2.6.25.4</a> + TLAN NIC driver oops or so...<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Product: Drivers<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Version: 2.5<br>
&gt; &nbsp; &nbsp; &nbsp;KernelVersion: <a href="http://2.6.25.4" target="_blank">2.6.25.4</a><br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Platform: All<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; OS/Version: Linux<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tree: Mainline<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Status: NEW<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Severity: normal<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Priority: P1<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Component: Network<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; AssignedTo: <a href="mailto:jgarzik@pobox.com">jgarzik@pobox.com</a><br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; ReportedBy: <a href="mailto:wizard580@gmail.com">wizard580@gmail.com</a><br>
&gt;<br>
&gt;<br>
&gt; Latest working kernel version: <a href="http://2.6.25.4" target="_blank">2.6.25.4</a><br>
<br>
</div>I assume you meant <a href="http://2.6.25.1" target="_blank">2.6.25.1</a> here.<br>
<div class="Ih2E3d"><br>
&gt; Earliest failing kernel version: <a href="http://2.6.25.4" target="_blank">2.6.25.4</a><br>
&gt; Distribution: debian sid<br>
&gt; Hardware Environment: Compaq Deskpro (some old comp)<br>
&gt; Software Environment: latest updates<br>
&gt;<br>
&gt; Problem Description:<br>
&gt; after some time of normal work I lost connect to my router. no ping, no ssh.<br>
&gt; nothing. I come to router, switched on monitor and see infinetely looping<br>
&gt; messages about some error like this: TLAN: Could&#39;t allocate memory for... and<br>
&gt; some memory dumps. It&#39;s quickly scrolling so exact error message I can&#39;t read.<br>
<br>
</div>It could only have been<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;&quot;TLAN: &nbsp;Couldn&#39;t allocate memory for received data.\n&quot;<br>
<br>
however the stupid driver prints the same string from three different<br>
places.<br>
<div class="Ih2E3d"><br>
&gt; On keyboard &quot;caps Lock&quot; and &quot;scroll lock&quot; are blinking...<br>
<br>
</div>hm, that might mean it oopses as well.<br>
<div><div></div><div class="Wj3C7c"><br>
&gt; Alt+Ctrl+Del don&#39;t reboot system. So I reset it and all run fine again... I<br>
&gt; don&#39;t know for how long it will...<br>
&gt;<br>
&gt; There is one vlan on tlan interface. If it&#39;s help...<br>
&gt;<br>
&gt; As I remember, on <a href="http://2.6.25.1" target="_blank">2.6.25.1</a> there was no errors for much more time (maybe it&#39;s<br>
&gt; my luck). So I think may be something changed between <a href="http://2.6.25.1" target="_blank">2.6.25.1</a> and <a href="http://2.6.25.4" target="_blank">2.6.25.4</a><br>
&gt; that break memory allocations for that driver or so...<br>
&gt;<br>
&gt; lspci:<br>
&gt; 00:00.0 Host bridge: Intel Corporation 440LX/EX - 82443LX/EX Host bridge (rev<br>
&gt; 03)<br>
&gt; 00:01.0 PCI bridge: Intel Corporation 440LX/EX - 82443LX/EX AGP bridge (rev 03)<br>
&gt; 00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd.<br>
&gt; RTL-8139/8139C/8139C+ (rev 10)<br>
&gt; 00:0e.0 Ethernet controller: Realtek Semiconductor Co., Ltd.<br>
&gt; RTL-8139/8139C/8139C+ (rev 10)<br>
&gt; 00:0f.0 SCSI storage controller: Adaptec AIC-7860 (rev 03)<br>
&gt; 00:10.0 Network controller: Compaq Computer Corporation Netelligent 10/100 TX<br>
&gt; Embedded UTP (rev 10)<br>
&gt; 00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd.<br>
&gt; RTL-8139/8139C/8139C+ (rev 10)<br>
&gt; 00:14.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 01)<br>
&gt; 00:14.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)<br>
&gt; 00:14.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)<br>
&gt; 00:14.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01)<br>
&gt; 01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2164W [Millennium<br>
&gt; II] AGP<br>
&gt;<br>
&gt;<br>
&gt; Steps to reproduce:<br>
&gt; try to use such hardware... or simply tlan NIC.<br>
<br>
</div></div>Alas, no significant changes have been made to tlan.c in ages.<br>
<br>
</blockquote></div><br><br clear="all"><br>-- <br>? ?????????, ???????
Comment 4 Anonymous Emailer 2008-05-29 23:44:40 UTC
Reply-To: akpm@linux-foundation.org

On Fri, 30 May 2008 17:32:07 +1100 "Wizard Vandal" <wizard580@gmail.com> wrote:

> > I assume you meant 2.6.25.1 here.
> Maybe... as I said, I don't know is it my luck or something else...
> 
> >It could only have been
> >       "TLAN:  Couldn't allocate memory for received data.\n"
> Again maybe. I looked at sorce, but I'm too little programmer to see why it
> can print such error or fix that.

OK, thanks.

Can you please add the below patch and retest?  That at least will tell
us where it is failing.  I expect the driver has a memory leak.

> One more thing:
> now, I've tried to remove nf_conntrack_ftp module and kernel crashed.
> Screen not checked, just reset and go away. Keyboard leds again blinks, as
> always when it crashed.
> 
> Do I have to post new bug or you can do all checks or whatever without it?

Yes, please send a separate report.  Just an emailed one to

netdev@vger.kernel.org
Andrew Morton <akpm@linux-foundation.org>

will suffice.

Please try to ensure that this netfilter problem is not mixed up with
the tlan one.  For example, if tlan has used all the memory up then
perhaps netfilter did a memory allocation, then that failed and we hit
an untested error path.


--- a/drivers/net/tlan.c~a
+++ a/drivers/net/tlan.c
@@ -1580,9 +1580,12 @@ static u32 TLan_HandleRxEOF( struct net_
 
 		if (bbuf) {
 			skb = dev_alloc_skb(frameSize + 7);
-			if (skb == NULL)
-				printk(KERN_INFO "TLAN: Couldn't allocate memory for received data.\n");
-			else {
+			if (skb == NULL) {
+				printk(KERN_INFO "TLAN: Couldn't allocate "
+					"memory for received data: %d.\n",
+					__LINE__);
+				mdelay(1000);
+			} else {
 				head_buffer = priv->rxBuffer + (priv->rxHead * TLAN_MAX_FRAME_SIZE);
 				skb_reserve(skb, 2);
 				t = (void *) skb_put(skb, frameSize);
@@ -1619,8 +1622,12 @@ static u32 TLan_HandleRxEOF( struct net_
 				head_list->buffer[0].address = pci_map_single(priv->pciDev, new_skb->data, TLAN_MAX_FRAME_SIZE, PCI_DMA_FROMDEVICE);
 				head_list->buffer[8].address = (u32) t;
 				TLan_StoreSKB(head_list, new_skb);
-			} else
-				printk(KERN_WARNING "TLAN:  Couldn't allocate memory for received data.\n" );
+			} else {
+				printk(KERN_INFO "TLAN: Couldn't allocate "
+					"memory for received data: %d.\n",
+					__LINE__);
+				mdelay(1000);
+			}
 		}
 
 		head_list->forward = 0;
@@ -2021,7 +2028,10 @@ static void TLan_ResetLists( struct net_
 		} else {
 			skb = dev_alloc_skb( TLAN_MAX_FRAME_SIZE + 7 );
 			if ( skb == NULL ) {
-				printk( "TLAN:  Couldn't allocate memory for received data.\n" );
+				printk(KERN_INFO "TLAN: Couldn't allocate "
+					"memory for received data: %d.\n",
+					__LINE__);
+				mdelay(1000);
 				/* If this ever happened it would be a problem */
 			} else {
 				skb->dev = dev;
_
Comment 5 Wizard Vandal 2008-05-30 00:05:12 UTC
> Can you please add the below patch and retest?  That at least will tell
> us where it is failing.  I expect the driver has a memory leak.
>

Ok. I'll do this, but sometime later. 4 days I will be away...


>
> > One more thing:
> > now, I've tried to remove nf_conntrack_ftp module and kernel crashed.
> > Screen not checked, just reset and go away. Keyboard leds again blinks,
> as
> > always when it crashed.
> >
> > Do I have to post new bug or you can do all checks or whatever without
> it?
>
> Yes, please send a separate report.  Just an emailed one to
>
> netdev@vger.kernel.org
> Andrew Morton <akpm@linux-foundation.org>
>
> will suffice.
>
> Please try to ensure that this netfilter problem is not mixed up with
> the tlan one.  For example, if tlan has used all the memory up then
> perhaps netfilter did a memory allocation, then that failed and we hit
> an untested error path.
>

I think it's not mixed, because it hangs after 30 min from last restart, and
there was much free memory 3 secs before hang.
and I make mistake. not ftp conntrack but irc. sorry for that.

I'll post bug later as I said.


>
>
> --- a/drivers/net/tlan.c~a
> +++ a/drivers/net/tlan.c
> @@ -1580,9 +1580,12 @@ static u32 TLan_HandleRxEOF( struct net_
>
>                if (bbuf) {
>                        skb = dev_alloc_skb(frameSize + 7);
> -                       if (skb == NULL)
> -                               printk(KERN_INFO "TLAN: Couldn't allocate
> memory for received data.\n");
> -                       else {
> +                       if (skb == NULL) {
> +                               printk(KERN_INFO "TLAN: Couldn't allocate "
> +                                       "memory for received data: %d.\n",
> +                                       __LINE__);
> +                               mdelay(1000);
> +                       } else {
>                                head_buffer = priv->rxBuffer + (priv->rxHead
> * TLAN_MAX_FRAME_SIZE);
>                                skb_reserve(skb, 2);
>                                t = (void *) skb_put(skb, frameSize);
> @@ -1619,8 +1622,12 @@ static u32 TLan_HandleRxEOF( struct net_
>                                head_list->buffer[0].address =
> pci_map_single(priv->pciDev, new_skb->data, TLAN_MAX_FRAME_SIZE,
> PCI_DMA_FROMDEVICE);
>                                head_list->buffer[8].address = (u32) t;
>                                TLan_StoreSKB(head_list, new_skb);
> -                       } else
> -                               printk(KERN_WARNING "TLAN:  Couldn't
> allocate memory for received data.\n" );
> +                       } else {
> +                               printk(KERN_INFO "TLAN: Couldn't allocate "
> +                                       "memory for received data: %d.\n",
> +                                       __LINE__);
> +                               mdelay(1000);
> +                       }
>                }
>
>                head_list->forward = 0;
> @@ -2021,7 +2028,10 @@ static void TLan_ResetLists( struct net_
>                } else {
>                        skb = dev_alloc_skb( TLAN_MAX_FRAME_SIZE + 7 );
>                        if ( skb == NULL ) {
> -                               printk( "TLAN:  Couldn't allocate memory
> for received data.\n" );
> +                               printk(KERN_INFO "TLAN: Couldn't allocate "
> +                                       "memory for received data: %d.\n",
> +                                       __LINE__);
> +                               mdelay(1000);
>                                /* If this ever happened it would be a
> problem */
>                        } else {
>                                skb->dev = dev;
> _
>
>


<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Can you please add the below patch and retest? &nbsp;That at least will tell<br>

us where it is failing. &nbsp;I expect the driver has a memory leak.<br>
<div class="Ih2E3d"></div></blockquote><div><br>Ok. I&#39;ll do this, but sometime later. 4 days I will be away...<br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d"><br>
&gt; One more thing:<br>
&gt; now, I&#39;ve tried to remove nf_conntrack_ftp module and kernel crashed.<br>
&gt; Screen not checked, just reset and go away. Keyboard leds again blinks, as<br>
&gt; always when it crashed.<br>
&gt;<br>
&gt; Do I have to post new bug or you can do all checks or whatever without it?<br>
<br>
</div>Yes, please send a separate report. &nbsp;Just an emailed one to<br>
<br>
<a href="mailto:netdev@vger.kernel.org">netdev@vger.kernel.org</a><br>
<div class="Ih2E3d">Andrew Morton &lt;<a href="mailto:akpm@linux-foundation.org">akpm@linux-foundation.org</a>&gt;<br>
<br>
</div>will suffice.<br>
<br>
Please try to ensure that this netfilter problem is not mixed up with<br>
the tlan one. &nbsp;For example, if tlan has used all the memory up then<br>
perhaps netfilter did a memory allocation, then that failed and we hit<br>
an untested error path.<br>
</blockquote><div><br>I think it&#39;s not mixed, because it hangs after 30 min from last restart, and there was much free memory 3 secs before hang.<br>and I make mistake. not ftp conntrack but irc. sorry for that.<br><br>
I&#39;ll post bug later as I said.<br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
<br>
--- a/drivers/net/tlan.c~a<br>
+++ a/drivers/net/tlan.c<br>
@@ -1580,9 +1580,12 @@ static u32 TLan_HandleRxEOF( struct net_<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (bbuf) {<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;skb = dev_alloc_skb(frameSize + 7);<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (skb == NULL)<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk(KERN_INFO &quot;TLAN: Couldn&#39;t allocate memory for received data.\n&quot;);<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else {<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (skb == NULL) {<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk(KERN_INFO &quot;TLAN: Couldn&#39;t allocate &quot;<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;memory for received data: %d.\n&quot;,<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; __LINE__);<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mdelay(1000);<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } else {<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;head_buffer = priv-&gt;rxBuffer + (priv-&gt;rxHead * TLAN_MAX_FRAME_SIZE);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;skb_reserve(skb, 2);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;t = (void *) skb_put(skb, frameSize);<br>
@@ -1619,8 +1622,12 @@ static u32 TLan_HandleRxEOF( struct net_<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;head_list-&gt;buffer[0].address = pci_map_single(priv-&gt;pciDev, new_skb-&gt;data, TLAN_MAX_FRAME_SIZE, PCI_DMA_FROMDEVICE);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;head_list-&gt;buffer[8].address = (u32) t;<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;TLan_StoreSKB(head_list, new_skb);<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } else<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk(KERN_WARNING &quot;TLAN: &nbsp;Couldn&#39;t allocate memory for received data.\n&quot; );<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } else {<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk(KERN_INFO &quot;TLAN: Couldn&#39;t allocate &quot;<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;memory for received data: %d.\n&quot;,<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; __LINE__);<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mdelay(1000);<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;head_list-&gt;forward = 0;<br>
@@ -2021,7 +2028,10 @@ static void TLan_ResetLists( struct net_<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} else {<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;skb = dev_alloc_skb( TLAN_MAX_FRAME_SIZE + 7 );<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ( skb == NULL ) {<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk( &quot;TLAN: &nbsp;Couldn&#39;t allocate memory for received data.\n&quot; );<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; printk(KERN_INFO &quot;TLAN: Couldn&#39;t allocate &quot;<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;memory for received data: %d.\n&quot;,<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; __LINE__);<br>
+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mdelay(1000);<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;/* If this ever happened it would be a problem */<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} else {<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;skb-&gt;dev = dev;<br>
_<br>
<br>
</blockquote></div><br><br clear="all"><br>-- <br>? ?????????, ???????
Comment 6 Alan 2010-01-19 17:51:46 UTC
Closing out stale bugs

Note You need to log in before you can comment on or make changes to this bug.