ALT Linux hardware support
 help / color / mirror / Atom feed
From: Sergey Vlasov <vsu@altlinux.ru>
To: hardware@altlinux.ru
Subject: Re: [Hardware] Re: Kernel panic в Мастер 2.4 (fealnx, Myson BC001)
Date: Sun, 19 Dec 2004 19:52:20 +0300
Message-ID: <20041219165220.GB7149@sirius.home> (raw)
In-Reply-To: <41C5A9FA.7000500@mail.ru>

[-- Attachment #1: Type: text/plain, Size: 2168 bytes --]

On Sun, Dec 19, 2004 at 06:19:06PM +0200, Yuri N. Glibovetz wrote:
> http://lists.altlinux.ru/pipermail/sisyphus/2003-December/031179.html
> http://lists.altlinux.ru/pipermail/sisyphus/2003-December/031194.html
> http://lists.altlinux.ru/pipermail/sisyphus/2003-December/031231.html
> http://lists.altlinux.ru/pipermail/sisyphus/2003-December/031258.html
> http://lists.altlinux.ru/pipermail/sisyphus/2003-December/031271.html
> 
> Интересно, чем закончилась эта история?

А ничем - тогда так ничего и не раскопали.

> Кстати если верить другим источникам, место Oops локализовано.
> fealnx.c:netdev_rx:
> 
> >/* Check if the packet is long enough to accept without copying
> >   to a minimally-sized skbuff. */
> >if (pkt_len < rx_copybreak &&
> >    (skb = dev_alloc_skb(pkt_len + 2)) != NULL) {
> >     skb->dev = dev;
> >     skb_reserve(skb, 2);    /* 16 byte align the IP header */
> >                             /* Call copy + cksum if available. */
> >
> >#if ! defined(__alpha__)
> >     eth_copy_and_sum(skb,
> >         np->cur_rx->skbuff->tail, pkt_len, 0);
> >     skb_put(skb, pkt_len);
> >#else
> >     memcpy(skb_put(skb, pkt_len),
> >           np->cur_rx->skbuff->tail, pkt_len);
> >#endif
> >} else {
> >     skb_put(skb = np->cur_rx->skbuff, pkt_len);
> >     np->cur_rx->skbuff = NULL;
> >     if (np->really_rx_count == RX_RING_SIZE)
> >        np->lack_rxbuf = np->cur_rx;
> >     --np->really_rx_count;   // <----- это здесь
> >}

В данном случае oops был в другом месте - в intr_handler():

			/* Free the original skb. */
			pci_unmap_single(np->pci_dev, np->cur_tx->buffer,
				np->cur_tx->skbuff->len, PCI_DMA_TODEVICE);
			dev_kfree_skb_irq(np->cur_tx->skbuff);

В np->cur_tx->skbuff оказался NULL.

Это весьма похоже на проблему, исправленую в 2.6 вот этим патчем:

http://linux.bkbits.net:8080/linux-2.6/cset@406b2395GEYyN1xve0b-r-4zWwj-iQ

Причём в 2.4 этого патча до сих пор нет (хотя после него в 2.6 была
целая серия из 11 патчей, которые вошли и в 2.4).  Странно.  Видимо,
эти карточки никому не нужны.

А вот что там за "another problem in the RX path" - не совсем понятно.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2004-12-19 16:52 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-19 12:50   ` Michael Shigorin
2004-12-19 16:19     ` Yuri N. Glibovetz
2004-12-19 16:52       ` Sergey Vlasov [this message]
2004-12-19 18:58         ` Yuri N. Glibovetz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20041219165220.GB7149@sirius.home \
    --to=vsu@altlinux.ru \
    --cc=hardware@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux hardware support

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/hardware/0 hardware/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 hardware hardware/ http://lore.altlinux.org/hardware \
		hardware@altlinux.ru hardware@lists.altlinux.org hardware@lists.altlinux.ru hardware@lists.altlinux.com hardware@altlinux.org
	public-inbox-index hardware

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.hardware


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git