From: poma <pomidorabelisima@gmail.com>
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: David Miller <davem@davemloft.net>, netdev@vger.kernel.org
Subject: Re: [PATCH net] skge: dma_sync the whole receive buffer
Date: Tue, 20 Aug 2013 05:28:09 +0200 [thread overview]
Message-ID: <5212E249.2050203@gmail.com> (raw)
In-Reply-To: <52116B9C.8050003@gmail.com>
On 19.08.2013 02:49, poma wrote:
> On 15.08.2013 17:41, Stephen Hemminger wrote:
>> On Wed, 14 Aug 2013 20:29:06 +0200
>> poma <pomidorabelisima@gmail.com> wrote:
>>
>>> On 14.08.2013 18:20, Stephen Hemminger wrote:
>>>> On Wed, 14 Aug 2013 12:20:03 +0200
>>>> poma <pomidorabelisima@gmail.com> wrote:
>>>>
>>>>> On 14.08.2013 03:00, Stephen Hemminger wrote:
>>>>>> On Tue, 13 Aug 2013 15:09:55 -0700 (PDT)
>>>>>> David Miller <davem@davemloft.net> wrote:
>>>>>>
>>>>>>> From: Stephen Hemminger <stephen@networkplumber.org>
>>>>>>> Date: Sat, 10 Aug 2013 15:02:07 -0700
>>>>>>>
>>>>>>>> The DMA sync should sync the whole receive buffer, not just
>>>>>>>> part of it. Fixes log messages dma_sync_check.
>>>>>>>>
>>>>>>>> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
>>>>>>>
>>>>>>> Applied, but I really suspect that your "check DMA mapping errors"
>>>>>>> patch has added a serious regression. A regression much worse than
>>>>>>> the bug you were trying to fix with that change.
>>>>>>
>>>>>> Argh. The problem is deeper than that. Device got broken somewhere between
>>>>>> 3.2 and 3.4. My old Dlink card works on 3.2 but gets DMA errors on 3.4.
>>>>>> The config's are different though so checking that as well.
>>>>>>
>>>>>
>>>>> Can I help you with debugging?
>>>>> DGE-530T is rather solid device.
>>>>
>>>> Don't think it is a hardware problem.
>>>> The failure is when the board access the Receive ring PCI memory area.
>>>> This region is allocated with pci_alloc_consistent and therefore should
>>>> be available. Two possible issues are driver math issues, or hardware
>>>> problems with where the region is located. Some of these cards don't
>>>> really have full 64 bit PCI support.
>>>>
>>>> My board is:
>>>> 05:01.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter (rev 11)
>>>> Subsystem: D-Link System Inc DGE-530T Gigabit Ethernet Adapter
>>>> Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 18
>>>> Memory at f7d20000 (32-bit, non-prefetchable) [size=16K]
>>>> I/O ports at c000 [size=256]
>>>> Expansion ROM at f7d00000 [disabled] [size=128K]
>>>> Capabilities: [48] Power Management version 2
>>>> Capabilities: [50] Vital Product Data
>>>> Kernel driver in use: skge
>>>>
>>>>
>>>> What is your config?
>>>>
>>>
>>> 01:09.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter
>>> (rev 11)
>>> Subsystem: D-Link System Inc DGE-530T Gigabit Ethernet Adapter
>>> Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 19
>>> Memory at fbffc000 (32-bit, non-prefetchable) [size=16K]
>>> I/O ports at b400 [size=256]
>>> [virtual] Expansion ROM at ec000000 [disabled] [size=128K]
>>> Capabilities: [48] Power Management version 2
>>> Capabilities: [50] Vital Product Data
>>> Kernel driver in use: skge
>>>
>>>
>>> poma
>>>
>>
>> In the course of debugging this, I moved the card to another slot
>> and all the problems went away. I suspect either card insertion or more likely
>> the crap consumer motherboards don't have full PCI support on some slots.
>>
>> There doesn't seem to be anyway to address this in software.
>>
>
>
> DGE-530T is further tested in the 3 available slots:
> 01:06.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter
> (rev 11)
> 01:07.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter
> (rev 11)
> 01:08.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter
> (rev 11)
> And the result is the same as in the slot:
> 01:09.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter
> (rev 11)
> warnings, oopses and kernel crashes.
>
> However DGE-528T(RTL8110s) on the same bus runs without errors:
> 01:09.0 Ethernet controller: D-Link System Inc DGE-528T Gigabit Ethernet
> Adapter (rev 10)
> Subsystem: D-Link System Inc DGE-528T Gigabit Ethernet Adapter
> Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 19
> I/O ports at cc00 [size=256]
> Memory at fbfff000 (32-bit, non-prefetchable) [size=256]
> [virtual] Expansion ROM at fbe00000 [disabled] [size=128K]
> Capabilities: [dc] Power Management version 2
> Kernel driver in use: r8169
>
> Besides comparing the behavior of these two cards, e.g. NFS upload, I
> noticed an obvious difference in the data flow.
> Via DGE-528T transmission is steady, while via DGE-530T the traffic is
> at times interrupted and unstable.
> So it seems that the "WARNING: at lib/dma-debug.c:937 check_unmap…"
> isn't just a fun.
>
In support of the validity of the device I made a test with the
2.6.32-358.14.1.el6.x86_64.debug kernel.
And everything worked as it should.
01:08.0 Ethernet controller: D-Link System Inc Gigabit Ethernet Adapter
(rev 11)
Subsystem: D-Link System Inc DGE-530T Gigabit Ethernet Adapter
Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 18
Memory at fbff8000 (32-bit, non-prefetchable) [size=16K]
I/O ports at cc00 [size=256]
[virtual] Expansion ROM at fbe00000 [disabled] [size=128K]
Capabilities: [48] Power Management version 2
Capabilities: [50] Vital Product Data
Kernel driver in use: skge
Kernel modules: skge
filename:
/lib/modules/2.6.32-358.14.1.el6.x86_64.debug/kernel/drivers/net/skge.ko
version: 1.13
license: GPL
author: Stephen Hemminger <shemminger@linux-foundation.org>
description: SysKonnect Gigabit Ethernet driver
srcversion: ADF6781C2E0D2D895F86279
alias: pci:v00001737d00001032sv*sd00000015bc*sc*i*
alias: pci:v00001737d00001064sv*sd*bc*sc*i*
alias: pci:v00001371d0000434Esv*sd*bc*sc*i*
alias: pci:v000011ABd00005005sv*sd*bc*sc*i*
alias: pci:v000011ABd00004320sv*sd*bc*sc*i*
alias: pci:v00001186d00004B01sv*sd*bc*sc*i*
alias: pci:v00001186d00004C00sv*sd*bc*sc*i*
alias: pci:v00001148d00004320sv*sd*bc*sc*i*
alias: pci:v00001148d00004300sv*sd*bc*sc*i*
alias: pci:v000010B7d000080EBsv*sd*bc*sc*i*
alias: pci:v000010B7d00001700sv*sd*bc*sc*i*
depends:
vermagic: 2.6.32-358.14.1.el6.x86_64.debug SMP mod_unload modversions
parm: debug:Debug level (0=none,...,16=all) (int)
Given all the tests and all written, something isn't right, at all.
Should I quote Shakespeare. :)
poma
next prev parent reply other threads:[~2013-08-20 3:28 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-05 0:22 [PATCH net] skge: add dma_mapping check Stephen Hemminger
2013-08-05 1:35 ` David Miller
2013-08-05 3:40 ` [PATCH net] skge: fix build on 32 bit Stephen Hemminger
2013-08-05 6:37 ` David Miller
2013-08-10 11:51 ` [PATCH net] skge: add dma_mapping check poma
2013-08-10 17:41 ` Stephen Hemminger
2013-08-10 20:29 ` David Miller
2013-08-10 22:02 ` [PATCH net] skge: dma_sync the whole receive buffer Stephen Hemminger
2013-08-11 4:23 ` poma
2013-08-13 22:09 ` David Miller
2013-08-13 22:20 ` Stephen Hemminger
2013-08-14 1:00 ` Stephen Hemminger
2013-08-14 10:20 ` poma
2013-08-14 16:20 ` Stephen Hemminger
2013-08-14 18:29 ` poma
2013-08-15 15:41 ` Stephen Hemminger
2013-08-16 14:36 ` poma
2013-08-19 0:49 ` poma
2013-08-20 3:28 ` poma [this message]
2013-08-21 16:04 ` poma
2013-08-22 0:40 ` Greg KH
2013-08-22 3:30 ` poma
2013-08-22 4:00 ` Greg KH
2013-08-22 14:46 ` poma
2013-08-22 4:08 ` Stephen Hemminger
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=5212E249.2050203@gmail.com \
--to=pomidorabelisima@gmail.com \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=stephen@networkplumber.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.