From: Andy Lutomirski <luto@stanford.edu>
To: Francois Romieu <romieu@fr.zoreil.com>
Cc: Andy Lutomirski <luto@myrealbox.com>,
Hans-Frieder Vogt <hfvogt@arcor.de>,
linux-kernel@vger.kernel.org, jgarzik@pobox.com,
netdev@oss.sgi.com
Subject: Re: 2.6.9-rc1-bk11+ and 2.6.9-rc1-mm3,4 r8169: freeze during boot (FIX included)
Date: Sun, 19 Sep 2004 16:51:53 -0700 [thread overview]
Message-ID: <414E1B99.4070501@stanford.edu> (raw)
In-Reply-To: <20040919213952.GA32570@electric-eye.fr.zoreil.com>
[-- Attachment #1: Type: text/plain, Size: 2521 bytes --]
Francois Romieu wrote:
> Andy Lutomirski <luto@myrealbox.com> :
> [...]
>
>>FWIW, it looks like init_board is setting PCIDAC in tp->cp_cmd but that
>>isn't updated to the card until after the rx ring is filled in
>>r8169_open. This seems suspicious, since DMA memory is being allocated
>>possibly in >32-bit addresses but the card hasn't been told to support
>>that. Fixing this doesn't seem to help, though...
>
>
> rtl8169_hw_start() writes the CPlusCmd register before the ring descriptor
> adresses are set. Can you elaborate why it would not be enough ?
Because rtl8169_init_ring() is called before rtl8169_hw_start() in
rtl8169_open(). init_ring allocates the recieve buffers, and I'm
assuming that r8169_alloc_rx_skb() can get >32 bits.
>
> Btw the r8169 driver in 2.6.9-rcX does not advertise NETIF_F_HIGHDMA: where
> would a >32 bit address come from ?
I was looking at 2.6.9-rc2-mm1, which has (pardon hideous line wrapping):
if ((sizeof(dma_addr_t) > 4) && !pci_set_dma_mask(pdev, DMA_64BIT_MASK)) {
tp->cp_cmd |= PCIDAC;
dev->features |= NETIF_F_HIGHDMA;
^^^^^^^^^^^^^^^
} else {
rc = pci_set_dma_mask(pdev, DMA_32BIT_MASK);
if (rc < 0) {
printk(KERN_ERR PFX "DMA configuration failed.\n");
goto err_out_free_res;
}
}
But I have 512MB RAM, so this probably isn't a problem for me. I'm
running x86_64, BTW.
>
>
>>Turning off high DMA fixes it. Maybe it just needs to be disabled until
>>someone figures out what's going on.
>
>
> I am cooking a patch for it (+ check for PCI error).
>
> As a side note, the r8169 chipset does not like DAC to be enabled on a
> 32bit system. I got the usual PCI error reported while trying it.
Will this be ready for 2.6.9? Otherwise it would probably be better to
just disable DAC so the driver keeps working.
On an unrelated note, I just took a look at the PHY timer code. It
looks like the PHY timer will never reactivate once it shuts off, which
means that the resetting is completely deterministic and the printk
conveys no useful information. Can we just delete it (patch attached --
this computer mangles them)?
What does it do, anyway? If it is necessary for someone's card (not
mine) to acquire a gigabit link (which is what it seemed to do in old
versions of the driver), then we're _still_ broken for the case where
they drop the link and try to reacquire it. Would it make sense to
remove the reset_enable stuff in -mm for awhile and see if anyone complains?
--Andy
[-- Attachment #2: r8169-quiet.txt --]
[-- Type: text/plain, Size: 456 bytes --]
Index: 2.6.9-rc2-mm1/drivers/net/r8169.c
===================================================================
--- 2.6.9-rc2-mm1.orig/drivers/net/r8169.c 2004-09-19 16:43:09.725537944 -0700
+++ 2.6.9-rc2-mm1/drivers/net/r8169.c 2004-09-19 16:50:33.900013160 -0700
@@ -1044,8 +1044,6 @@
if (tp->link_ok(ioaddr))
goto out_unlock;
- printk(KERN_WARNING PFX "%s: PHY reset until link up\n", dev->name);
-
tp->phy_reset_enable(ioaddr);
out_mod_timer:
next prev parent reply other threads:[~2004-09-19 23:51 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200409130035.50823.hfvogt@arcor.de>
[not found] ` <20040912232604.GC27282@electric-eye.fr.zoreil.com>
2004-09-13 12:43 ` 2.6.9-rc1-bk11+ and 2.6.9-rc1-mm3,4 r8169: freeze during boot (FIX included) Hans-Frieder Vogt
2004-09-13 22:02 ` Francois Romieu
2004-09-13 23:31 ` Hans-Frieder Vogt
2004-09-15 22:40 ` Hans-Frieder Vogt
2004-09-15 23:09 ` Francois Romieu
2004-09-15 23:32 ` Hans-Frieder Vogt
2004-09-16 7:02 ` Francois Romieu
2004-09-16 18:20 ` Jon Mason
2004-09-17 15:43 ` Jon Mason
2004-09-17 16:01 ` Francois Romieu
2004-09-19 21:17 ` Andy Lutomirski
2004-09-19 21:39 ` Francois Romieu
2004-09-19 23:51 ` Andy Lutomirski [this message]
2004-09-20 2:56 ` Jeff Garzik
2004-09-20 7:17 ` Francois Romieu
2004-09-20 17:59 ` Jeff Garzik
2004-09-20 21:15 ` Francois Romieu
2004-09-20 16:06 ` Jon Mason
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=414E1B99.4070501@stanford.edu \
--to=luto@stanford.edu \
--cc=hfvogt@arcor.de \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@myrealbox.com \
--cc=netdev@oss.sgi.com \
--cc=romieu@fr.zoreil.com \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).