Bug 4380
Summary: | (net via_velocity) receiver hang after setting mtu >1500 | ||
---|---|---|---|
Product: | Drivers | Reporter: | Anders Bostr (anders) |
Component: | Network | Assignee: | Jeff Garzik (jgarzik) |
Status: | CLOSED CODE_FIX | ||
Severity: | normal | CC: | alan, bunk, jyrki.muukkonen, romieu |
Priority: | P2 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 2.6.8 | Subsystem: | |
Regression: | --- | Bisected commit-id: | |
Attachments: |
Patch to get velocityget 1.19 driver to compile on linux 2.6.12
fix memory corruption when changing the mtu |
Description
Anders Bostr
2005-03-21 07:23:49 UTC
Does the same problem exist in 2.6.12-rc1? Yes, the problem persists with 2.6.12-rc1. VIA has released an updated velocity-driver, version 1.19. That driver works with jumbo-frames (mtu>1500)! I've tested this with 2.6.8. It won't compile with 2.6.10 due to changed PCI-API. In order to download the new velocity-driver for linux, go to http://www.viaarena.com/default.aspx?PageID=2, select Windows XP (not linux!), Ethernet and then download version 23 of the combo-driver. Does the driver in 2.6.12-rc5 still have this problem? I can't test this at the moment, but the velocity-driver is unchanged between 2.6.12-rc1 and 2.6.12-rc5 and rc1 has the bug. I'm having similar problems with the via-velocity driver too. Also, there seems to be some problems with ipv6 connectivity as well. Sometimes the device is able to get the ipv6 router advertisement and autoconfigure itself - sometimes not. Moreover, all tcp traffic just seem to disappear. ICMP (ping6, tracepath6) works just fine. BTW, the velocityget 1.19 driver compiles on 2.6.12 with a few fixes, attaching the patch (can also be found at http://www.kruu.org/jvtm/via-velocity/ ). Velocityget doesn't work with pre-empt. Other than that it "seems to work" since I'm writing this report. Created attachment 5765 [details]
Patch to get velocityget 1.19 driver to compile on linux 2.6.12
Comment on attachment 5765 [details] Patch to get velocityget 1.19 driver to compile on linux 2.6.12 2005-08-24 Jyrki Muukkonen <jyrki_kruu_org> Patch for getting VIA's own Velocity gigabit ethernet drivers to compile on linux-2.6.12. The in-kernel via-velocity.c driver seems to be br0ken (MTU and IPV6 issues, see http://bugzilla.kernel.org/show_bug.cgi?id=4380) Notes: - suspend/resume is _not_ tested - pre-empt needs to be disabled (who wants that crap anyways ;) diff -ur 1.19/velocity_main.c 1.19-hack/velocity_main.c --- 1.19/velocity_main.c 2005-01-14 11:19:18.000000000 +0200 +++ 1.19-hack/velocity_main.c 2005-08-24 18:35:05.276710224 +0300 @@ -2329,7 +2329,7 @@ struct ethtool_drvinfo info={ETHTOOL_GDRVINFO}; strcpy(info.driver, VELOCITY_NAME); strcpy(info.version, VELOCITY_VERSION); - strcpy(info.bus_info,pInfo->pcid->slot_name); + strcpy(info.bus_info, pci_name(pInfo->pcid)); if (copy_to_user(ifr->ifr_data, &info, sizeof(info))) return -EFAULT; } @@ -2500,7 +2500,7 @@ netif_stop_queue(dev); spin_lock_irqsave(&pInfo->lock, flags); - pci_save_state(pcid, pInfo->pci_state); + pci_save_state(pcid); #ifdef ETHTOOL_GWOL @@ -2536,7 +2536,7 @@ pci_set_power_state(pcid, 0); pci_enable_wake(pcid, 0, 0); - pci_restore_state(pcid, pInfo->pci_state); + pci_restore_state(pcid); mac_wol_reset(pInfo->pMacRegs); Is this problem still present in 2.6.14.5/2.6.15-rc7? I haven't tested with anything newer than 2.6.12-rc1, but the changes to the driver after 2.6.12-rc1 seems unrelated. Version 1.21 of Via's own driver is available with source-code under GPL from www.viaarena.com. It is much faster and works fine. It just needs a module-param patch for the latest kernels. Created attachment 7486 [details]
fix memory corruption when changing the mtu
Anders, can you try the attached patch against 2.6.16-rc5 ?
--
Ueimor
I'm assuming the patch from comment #11 (that is already included in 2.6.17) fixed this issue. Please reopen this bug if it's still present in kernel 2.6.17. |