* SiS900: NULL pointer encountered in Rx ring, skipping
@ 2004-07-23 18:52 Dominik Karall
2004-07-25 9:21 ` Dominik Karall
2004-07-27 15:26 ` Jeff Garzik
0 siblings, 2 replies; 6+ messages in thread
From: Dominik Karall @ 2004-07-23 18:52 UTC (permalink / raw)
To: Linux Kernel ML, Daniele Venzano
After a few hours my network doesn't work on my laptop. There appear a lot of
those messages:
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
eth0: NULL pointer encountered in Rx ring, skipping
It works again after restarting network. I'm using 2.6.8-rc2 now. It was the
same problem in 2.6.7, but I didn't test it with earlier kernels.
And right now I got one more eth0 message:
eth0: Too much work at interrupt, interrupt status = 0x00000031.
eth0: Too much work at interrupt, interrupt status = 0x00000001.
Here the messages after module loading:
eth0: SiS 900 Internal MII PHY transceiver found at address 1.
eth0: Using transceiver found at address 1 as default
eth0: SiS 900 PCI Fast Ethernet at 0xd000, IRQ 9, 00:a0:cf:c0:8a:dc.
eth0: Media Link On 100mbps full-duplex
eth0: Memory squeeze,deferring packet.
lspci:
0000:00:01.1 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 PCI
Fast Ethernet (rev 80)
Subsystem: Silicon Integrated Systems [SiS] SiS900 10/100 Ethernet
Adapter
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 32 (13000ns min, 2750ns max)
Interrupt: pin C routed to IRQ 9
Region 0: I/O ports at d000 [size=ffda0000]
Region 1: Memory at ffdc0000 (32-bit, non-prefetchable) [size=4K]
Expansion ROM at 00020000 [disabled]
Capabilities: [40] Power Management version 1
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
____________
dominik
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: SiS900: NULL pointer encountered in Rx ring, skipping
2004-07-23 18:52 SiS900: NULL pointer encountered in Rx ring, skipping Dominik Karall
@ 2004-07-25 9:21 ` Dominik Karall
2004-07-27 15:26 ` Jeff Garzik
1 sibling, 0 replies; 6+ messages in thread
From: Dominik Karall @ 2004-07-25 9:21 UTC (permalink / raw)
To: Linux Kernel ML; +Cc: Daniele Venzano
After doing some changes in the /proc/sys/, it works now without problems!
My settings:
net.ipv4.tcp_keepalive_time=3600
net.ipv4.tcp_rmem=4096 25165824 25165824
net.core.rmem_max=25165824
net.core.rmem_default=25165824
net.ipv4.tcp_wmem=4096 65536 25165824
net.core.wmem_max=25165824
net.core.wmem_default=65536
net.core.optmem_max=25165824
________
dominik
On Friday 23 July 2004 20:52, Dominik Karall wrote:
> After a few hours my network doesn't work on my laptop. There appear a lot
> of those messages:
>
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
>
> It works again after restarting network. I'm using 2.6.8-rc2 now. It was
> the same problem in 2.6.7, but I didn't test it with earlier kernels.
>
> And right now I got one more eth0 message:
> eth0: Too much work at interrupt, interrupt status = 0x00000031.
> eth0: Too much work at interrupt, interrupt status = 0x00000001.
>
> Here the messages after module loading:
> eth0: SiS 900 Internal MII PHY transceiver found at address 1.
> eth0: Using transceiver found at address 1 as default
> eth0: SiS 900 PCI Fast Ethernet at 0xd000, IRQ 9, 00:a0:cf:c0:8a:dc.
> eth0: Media Link On 100mbps full-duplex
> eth0: Memory squeeze,deferring packet.
>
> lspci:
> 0000:00:01.1 Ethernet controller: Silicon Integrated Systems [SiS] SiS900
> PCI Fast Ethernet (rev 80)
> Subsystem: Silicon Integrated Systems [SiS] SiS900 10/100 Ethernet
> Adapter
> Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
> Stepping- SERR+ FastB2B-
> Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
> <TAbort- <MAbort- >SERR- <PERR-
> Latency: 32 (13000ns min, 2750ns max)
> Interrupt: pin C routed to IRQ 9
> Region 0: I/O ports at d000 [size=ffda0000]
> Region 1: Memory at ffdc0000 (32-bit, non-prefetchable) [size=4K]
> Expansion ROM at 00020000 [disabled]
> Capabilities: [40] Power Management version 1
> Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
> PME(D0+,D1+,D2+,D3hot+,D3cold+)
> Status: D0 PME-Enable- DSel=0 DScale=0 PME-
>
> ____________
> dominik
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: SiS900: NULL pointer encountered in Rx ring, skipping
2004-07-23 18:52 SiS900: NULL pointer encountered in Rx ring, skipping Dominik Karall
2004-07-25 9:21 ` Dominik Karall
@ 2004-07-27 15:26 ` Jeff Garzik
2004-07-27 16:14 ` Dominik Karall
1 sibling, 1 reply; 6+ messages in thread
From: Jeff Garzik @ 2004-07-27 15:26 UTC (permalink / raw)
To: Dominik Karall; +Cc: Linux Kernel ML, Daniele Venzano
Dominik Karall wrote:
> After a few hours my network doesn't work on my laptop. There appear a lot of
> those messages:
>
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
> eth0: NULL pointer encountered in Rx ring, skipping
>
> It works again after restarting network. I'm using 2.6.8-rc2 now. It was the
> same problem in 2.6.7, but I didn't test it with earlier kernels.
A NULL appears when the machine is temporarily unable to allocate room
for a new skb. Your machine's atomic memory pools are getting too low...
Jeff
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: SiS900: NULL pointer encountered in Rx ring, skipping
2004-07-27 15:26 ` Jeff Garzik
@ 2004-07-27 16:14 ` Dominik Karall
2004-07-27 16:21 ` Jeff Garzik
0 siblings, 1 reply; 6+ messages in thread
From: Dominik Karall @ 2004-07-27 16:14 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Linux Kernel ML, Daniele Venzano
On Tuesday 27 July 2004 17:26, Jeff Garzik wrote:
> Dominik Karall wrote:
> > After a few hours my network doesn't work on my laptop. There appear a
> > lot of those messages:
> >
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> > eth0: NULL pointer encountered in Rx ring, skipping
> >
> > It works again after restarting network. I'm using 2.6.8-rc2 now. It was
> > the same problem in 2.6.7, but I didn't test it with earlier kernels.
>
> A NULL appears when the machine is temporarily unable to allocate room
> for a new skb. Your machine's atomic memory pools are getting too low...
>
> Jeff
Yes, I took a look at the code and found the debug message. But isn't there
any way to avoid network stop working? Because after a network restart it
works again, maybe there could be used any "soft reset" to make network
working again after such an error.
Dominik
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: SiS900: NULL pointer encountered in Rx ring, skipping
2004-07-27 16:14 ` Dominik Karall
@ 2004-07-27 16:21 ` Jeff Garzik
2004-07-28 12:29 ` Daniele Venzano
0 siblings, 1 reply; 6+ messages in thread
From: Jeff Garzik @ 2004-07-27 16:21 UTC (permalink / raw)
To: Dominik Karall; +Cc: Linux Kernel ML, Daniele Venzano
Dominik Karall wrote:
> On Tuesday 27 July 2004 17:26, Jeff Garzik wrote:
>
>>Dominik Karall wrote:
>>
>>>After a few hours my network doesn't work on my laptop. There appear a
>>>lot of those messages:
>>>
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>eth0: NULL pointer encountered in Rx ring, skipping
>>>
>>>It works again after restarting network. I'm using 2.6.8-rc2 now. It was
>>>the same problem in 2.6.7, but I didn't test it with earlier kernels.
>>
>>A NULL appears when the machine is temporarily unable to allocate room
>>for a new skb. Your machine's atomic memory pools are getting too low...
>>
>> Jeff
>
>
> Yes, I took a look at the code and found the debug message. But isn't there
> any way to avoid network stop working? Because after a network restart it
> works again, maybe there could be used any "soft reset" to make network
> working again after such an error.
The OOM problem is completely unrelated to the network, therefore no
reset should ever be considered for this condition.
The driver should properly handle the 'NULL in rx ring' condition as a
normal occurence. It should skip to the next available skb in the ring.
If no skbs are remain, it should drop the skb.
See natsemi.c for additional -- and optional -- OOM handling techniques.
Jeff
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: SiS900: NULL pointer encountered in Rx ring, skipping
2004-07-27 16:21 ` Jeff Garzik
@ 2004-07-28 12:29 ` Daniele Venzano
0 siblings, 0 replies; 6+ messages in thread
From: Daniele Venzano @ 2004-07-28 12:29 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Dominik Karall, Linux Kernel ML, Daniele Venzano
On Tue, Jul 27, 2004 at 12:21:58PM -0400, Jeff Garzik wrote:
> The OOM problem is completely unrelated to the network, therefore no
> reset should ever be considered for this condition.
>
> The driver should properly handle the 'NULL in rx ring' condition as a
> normal occurence. It should skip to the next available skb in the ring.
> If no skbs are remain, it should drop the skb.
>
> See natsemi.c for additional -- and optional -- OOM handling techniques.
>
> Jeff
I will check this for the sis900 driver.
--
-----------------------------
Daniele Venzano
Web: http://teg.homeunix.org
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2004-07-28 12:29 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-23 18:52 SiS900: NULL pointer encountered in Rx ring, skipping Dominik Karall
2004-07-25 9:21 ` Dominik Karall
2004-07-27 15:26 ` Jeff Garzik
2004-07-27 16:14 ` Dominik Karall
2004-07-27 16:21 ` Jeff Garzik
2004-07-28 12:29 ` Daniele Venzano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox