Suche nach Erklärung für Kernellogeintrag bei Intel EtherExpressPro Netzwerkkarte : card reports no resources/RX buffera
Hallo allerseits ! Nun, der Betreff sagt ja nun schon einiges .. Es geht um einen Rechner, den ich als Firewall einsetzen will, und nu hab ich diverse Probleme, das Netzwerk ans Laufen zu bekommen. Während der Fehlersuche bin ich auf Unmengen ein Einträgen im kernellog gestoßen, die abwechselnd für eth0 und eth1 sind und ebenso abwechselnd behaupten : eth0 : card reports no resources eth0 : card reports no RX buffers Zur Rechnerconfig : Ist ein Celeron 766 , 64 mb speicher , ist eine siemens-fujitsu konstruktion. zwei etherexpresspro /100 + PCI netzwerkkarten OnBoard Grafik, sound und so. Installiert ist eine Personalversion von Suse Linux 7.0, 2.2.16 er kernel. Via ifconfig ist bisher nur eine Karte aktiv, alle Firewallregeln sind erstmal deaktiviert. Hab grade mal die Meldung in den Kernelsources gesucht . Sind folgende Zeilen aus dem File eepro100.c, falls es interessiert . Hat was mit dem Prüfen der RX Buffer zu tun. Wo es nu ungefähr herkommt weis ich ja, aber : Ist das ein Bug im Kern ? Ein Fehler auf der Karte ? Hab bisher im Archiv nichts finden können .. Hat jemand von Euch ne Idee dazu ? Vielen Dank schonmal ! gruß Roland S. printk(KERN_WARNING "%s: card reports no RX buffers.\n", dev->name); im halbwegs gesamten kontext : if (status & 0x1000) { spin_lock(&sp->lock); if ((status & 0x003c) == 0x0028) { /* No more Rx buffers. */ struct RxFD *rxf; printk(KERN_WARNING "%s: card reports no RX buffers.\n", dev->name); rxf = sp->rx_ringp[sp->cur_rx % RX_RING_SIZE]; if (rxf == NULL) { if (speedo_debug > 2) printk(KERN_DEBUG "%s: NULL cur_rx in speedo_interrupt().\n", dev->name); sp->rx_ring_state |= RrNoMem|RrNoResources; } else if (rxf == sp->last_rxf) { if (speedo_debug > 2) printk(KERN_DEBUG "%s: cur_rx is last in speedo_interrupt().\n", dev->name); sp->rx_ring_state |= RrNoMem|RrNoResources; } else outb(RxResumeNoResources, ioaddr + SCBCmd); } else if ((status & 0x003c) == 0x0008) { /* No resources. */ struct RxFD *rxf; printk(KERN_WARNING "%s: card reports no resources.\n", dev->name); rxf = sp->rx_ringp[sp->cur_rx % RX_RING_SIZE]; if (rxf == NULL) { if (speedo_debug > 2) printk(KERN_DEBUG "%s: NULL cur_rx in speedo_interrupt().\n", dev->name); sp->rx_ring_state |= RrNoMem|RrNoResources; } else if (rxf == sp->last_rxf) { if (speedo_debug > 2) printk(KERN_DEBUG "%s: cur_rx is last in speedo_interrupt().\n", dev->name); sp->rx_ring_state |= RrNoMem|RrNoResources; } else { /* Restart the receiver. */ outl(sp->rx_ring_dma[sp->cur_rx % RX_RING_SIZE], ioaddr + SCBPointer); outb(RxStart, ioaddr + SCBCmd); } } sp->stats.rx_errors++; spin_unlock(&sp->lock); }
Hi Roland, Roland Schwarz wrote:
Hallo allerseits !
Nun, der Betreff sagt ja nun schon einiges .. Es geht um einen Rechner, den ich als Firewall einsetzen will, und nu hab ich diverse Probleme, das Netzwerk ans Laufen zu bekommen. Während der Fehlersuche bin ich auf Unmengen ein Einträgen im kernellog gestoßen, die abwechselnd für eth0 und eth1 sind und ebenso abwechselnd behaupten : eth0 : card reports no resources eth0 : card reports no RX buffers
Zur Rechnerconfig : Ist ein Celeron 766 , 64 mb speicher , ist eine siemens-fujitsu konstruktion. zwei etherexpresspro /100 + PCI netzwerkkarten OnBoard Grafik, sound und so.
Installiert ist eine Personalversion von Suse Linux 7.0, 2.2.16 er kernel. Via ifconfig ist bisher nur eine Karte aktiv, alle Firewallregeln sind erstmal deaktiviert.
Hab grade mal die Meldung in den Kernelsources gesucht . Sind folgende Zeilen aus dem File eepro100.c, falls es interessiert . Hat was mit dem Prüfen der RX Buffer zu tun. Wo es nu ungefähr herkommt weis ich ja, aber : Ist das ein Bug im Kern ? Ein Fehler auf der Karte ? Hab bisher im Archiv nichts finden können ..
und in der SDB hast du erst gar nicht nachgesehen oder? Unter http://sdb.suse.de/sdb/de/html/eepro100_e100.html ist genau dein Problem geschildert wenn ich mich nicht irre.
Hat jemand von Euch ne Idee dazu ?
Vielen Dank schonmal !
gruß
Roland S.
Ciao Steffen
participants (2)
-
Roland Schwarz
-
Steffen Telle