Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Possible regression in wm(4)?
Hi,
On 2017/11/14 21:53, Bert Kiers wrote:
> On Tue, Nov 14, 2017 at 08:07:46PM +0900, Kengo NAKAHARA wrote:
>> I'm sorry I cannot solve it...
>> Hmm, now I think this problem may relate to MSI/MSI-X interrupts
>> setting about ioapic. If it is not a problem, could you try the
>> following patch?
>> I believe this patch let wm(4) do the same behavior as NetBSD-7,
>> that is, wm(4) uses INTx interrupt instead of MSI/MSI-X interrupt.
>>
>> ====================
>> --- a/sys/dev/pci/if_wm.c
>> +++ b/sys/dev/pci/if_wm.c
>> @@ -174,10 +174,10 @@ int wm_debug = WM_DEBUG_TX | WM_DEBUG_RX | WM_DEBUG_LINK | WM_DEBUG_GMII
>> #define WM_MAX_NINTR (WM_MAX_NQUEUEINTR + 1)
>>
>> #ifndef WM_DISABLE_MSI
>> -#define WM_DISABLE_MSI 0
>> +#define WM_DISABLE_MSI 1
>> #endif
>> #ifndef WM_DISABLE_MSIX
>> -#define WM_DISABLE_MSIX 0
>> +#define WM_DISABLE_MSIX 1
>> #endif
>>
>> int wm_disable_msi = WM_DISABLE_MSI;
>> ====================
>
> That still does not work. The NIC probes as
>
> yvresse# grep ^wm1 dmesg.netbsd8wmfixC
> wm1 at pci1 dev 0 function 1: 82576 1000BaseT Ethernet (rev. 0x01)
> wm1: interrupting at ioapic1 pin 16
> wm1: PCI-Express bus
> wm1: 16384 words (16 address bits) SPI EEPROM, version 1.43, Image Unique ID e6060000
> wm1: Ethernet address 00:30:48:9e:a9:2f
> wm1: Copper
> wm1: 0x74440<SPI,IOH_VALID,PCIE,NEWQUEUE,ASF_FIRM,ARC_SUBSYS>
>
> But still no traffic.
Oh...., the dmesg is as expected, but the behavior is not.
Hmm, sorry, could you give me the following information?
+ "intrctl list" result on NetBSD-8
- before trying traffic and after it
- full dmesg on NetBSD-8 which boot with "-xv" option
- full dmesg on NetBSD-7 (which boot -xv if you can)
- "acpidump -dt" result
> I have two wm(4) cards with different chips. I'll put them in the
> machine tomorrow and see what happens.
I expect it will work.
> Btw, this is the only device that tries to use MSI(X) in this box.
>
> Two devices use ioapic pin 16:
>
> wm1: interrupting at ioapic1 pin 16
> uhci0: interrupting at ioapic0 pin 16
>
> and systat vmstat shows between 0 and 10 interrupts per second there on
> that pin
Yes, they use pin 16, but wm1 use ioapic1 whereas uhci0 use ioapic0.
Which ioapic's pin 16 interrupts occur?
Thanks,
--
//////////////////////////////////////////////////////////////////////
Internet Initiative Japan Inc.
Device Engineering Section,
IoT Platform Development Department,
Network Division,
Technology Unit
Kengo NAKAHARA <k-nakahara%iij.ad.jp@localhost>
Home |
Main Index |
Thread Index |
Old Index