msk card very very slow

1000M network cable or 100M network cable. Directly connected with the network cable testing:
ftp transfer, max speed is < 60K

my config info:
Code:
ifconfig_msk0="inet 192.168.1.8  netmask 255.255.255.0"

#ifconfig msk0
msk0: flags=9843<UP,BROADCAST,RUNNING,SIMPLEX,LINK0,MULTICAST> metric 0 mtu 1500
        options=c011a<TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4,VLAN_HWTSO,LINKSTATE>
        ether 00:16:e6:5f:bf:23
        inet 192.168.1.8 netmask 0xffffff00 broadcast 192.168.1.255
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active

dev.mskc.0.%desc: Marvell Yukon 88E8056 Gigabit Ethernet
dev.mskc.0.%driver: mskc
dev.mskc.0.%location: slot=0 function=0
dev.mskc.0.%pnpinfo: vendor=0x11ab device=0x4364 subvendor=0x1458 subdevice=0xe000 class=0x020000
dev.mskc.0.%parent: pci2
dev.mskc.0.process_limit: 128
dev.mskc.0.int_holdoff: 100
dev.msk.0.%desc: Marvell Technology Group Ltd. Yukon EC Ultra Id 0xb4 Rev 0x02
dev.msk.0.%driver: msk
dev.msk.0.%parent: mskc0
dev.msk.0.stats.rx.ucast_frames: 22032
dev.msk.0.stats.rx.bcast_frames: 60
dev.msk.0.stats.rx.pause_frames: 65536
dev.msk.0.stats.rx.mcast_frames: 0
dev.msk.0.stats.rx.crc_errs: 0
dev.msk.0.stats.rx.good_octets: 56305667
dev.msk.0.stats.rx.bad_octets: 0
dev.msk.0.stats.rx.frames_64: 183
dev.msk.0.stats.rx.frames_65_127: 28684
dev.msk.0.stats.rx.frames_128_255: 20637
dev.msk.0.stats.rx.frames_256_511: 3664
dev.msk.0.stats.rx.frames_512_1023: 3513
dev.msk.0.stats.rx.frames_1024_1518: 30947
dev.msk.0.stats.rx.frames_1519_max: 0
dev.msk.0.stats.rx.frames_too_long: 0
dev.msk.0.stats.rx.jabbers: 0
dev.msk.0.stats.rx.overflows: 3
dev.msk.0.stats.tx.ucast_frames: 6054
dev.msk.0.stats.tx.bcast_frames: 54
dev.msk.0.stats.tx.pause_frames: 65536
dev.msk.0.stats.tx.mcast_frames: 0
dev.msk.0.stats.tx.octets: 39514808
dev.msk.0.stats.tx.frames_64: 39321776
dev.msk.0.stats.tx.frames_65_127: 45928
dev.msk.0.stats.tx.frames_128_255: 856
dev.msk.0.stats.tx.frames_256_511: 687
dev.msk.0.stats.tx.frames_512_1023: 807
dev.msk.0.stats.tx.frames_1024_1518: 23190
dev.msk.0.stats.tx.frames_1519_max: 0
dev.msk.0.stats.tx.colls: 0
dev.msk.0.stats.tx.late_colls: 0
dev.msk.0.stats.tx.excess_colls: 0
dev.msk.0.stats.tx.multi_colls: 0
dev.msk.0.stats.tx.single_colls: 0
dev.msk.0.stats.tx.underflows: 0
dev.miibus.0.%parent: msk0

msk driver reason or my config is novalid.
 
I think this is a FreeBSD msk driver bug.

Today, I start with linux liveCD. msk card very quick.
 
yongari@ FreeBSD Developer August 26th, 2010, 15:33

I don't think it could be related with hardware issues. I know msk(4) has several issues to support some Marvell controllers but it looks hard to fix them mainly due to lack of documentation and hardware. Most Marvell controllers are available only on LOM and laptops so it's hard to get the hardware unless I replace my motherboard with new one which has Marvell controller.

One vague guess for the cause of issue is power management related one, like powerd(Cool. Recent controllers seem to have more advanced power saving features and that seems to require proper configuration but that's not available to open source developers.
 
Maurovale
There is a workaround, just edit the file /boot/loader.conf with the following:

Code:
hw.pci.enable_msi=0 
hw.pci.enable_msix=0
Reboot and you can use that nic.

For me I changed to another networkd card for performance reasons.
 
All known msk(4) related issues were fixed in stable/8 or 9.0-RELEASE Beta3.
You should not need any tunable changes. Just make sure to "cold reboot" your box after updating your sources to latest stable/8.
 
Back
Top