Andy Lutomirski [off-list ref] :
[...]
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 ?
Btw the r8169 driver in 2.6.9-rcX does not advertise NETIF_F_HIGHDMA: where
would a >32 bit address come from ?
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.
--
Ueimor