R&D/DPDK

82599 VF Link detected as 100M

sunshout 2014. 10. 10. 13:16

FreeBSD report:

http://unix.derkeiler.com/Mailing-Lists/FreeBSD/net/2012-10/msg00095.html

- link status 는 못찾는데 동작은 함



bug report:

http://permalink.gmane.org/gmane.comp.networking.dpdk.devel/857



FreeBSD IXGBE pf driver 의 경우

ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500

        options=8407bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO>

        ether a0:36:9f:13:82:a8

        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>

        media: Ethernet autoselect (10Gbase-Twinax <full-duplex>)

        status: active



ethtool shows difference autoneg result


root@choonho:/hugepage/libvirt/qemu# ethtool p4p1

Settings for p4p1:

        Supported ports: [ FIBRE ]

        Supported link modes:   1000baseT/Full

                                10000baseT/Full

        Supported pause frame use: No

        Supports auto-negotiation: Yes

        Advertised link modes:  1000baseT/Full

                                10000baseT/Full

        Advertised pause frame use: No

        Advertised auto-negotiation: Yes

        Speed: 10000Mb/s

        Duplex: Full

        Port: FIBRE

        PHYAD: 0

        Transceiver: external

        Auto-negotiation: on

        Supports Wake-on: d

        Wake-on: d

        Current message level: 0x00000007 (7)

                               drv probe link

        Link detected: yes

root@choonho:/hugepage/libvirt/qemu# ethtool -a p4p1

Pause parameters for p4p1:

Autonegotiate:  off

RX:             on

TX:             on



VF link status


root@cnode24-m:~# ethtool p2p1_0

Settings for p2p1_0:

        Supported ports: [ ]

        Supported link modes:   10000baseT/Full

        Supported pause frame use: No

        Supports auto-negotiation: No

        Advertised link modes:  Not reported

        Advertised pause frame use: No

        Advertised auto-negotiation: No

        Speed: 10000Mb/s

        Duplex: Full

        Port: Other

        PHYAD: 0

        Transceiver: Unknown!

        Auto-negotiation: off

        Current message level: 0x00000007 (7)

                               drv probe link

        Link detected: yes



Mailbox Register bit

/* Define mailbox register bits */

#define IXGBE_VFMAILBOX_REQ      0x00000001 /* Request for PF Ready bit */

#define IXGBE_VFMAILBOX_ACK      0x00000002 /* Ack PF message received */

#define IXGBE_VFMAILBOX_VFU      0x00000004 /* VF owns the mailbox buffer */

#define IXGBE_VFMAILBOX_PFU      0x00000008 /* PF owns the mailbox buffer */

#define IXGBE_VFMAILBOX_PFSTS    0x00000010 /* PF wrote a message in the MB */

#define IXGBE_VFMAILBOX_PFACK    0x00000020 /* PF ack the previous VF msg */

#define IXGBE_VFMAILBOX_RSTI     0x00000040 /* PF has reset indication */

#define IXGBE_VFMAILBOX_RSTD     0x00000080 /* PF has indicated reset done */





Possible reason

- wrong communication between PF and VF.


Output


Checking link statusPMD: ixgbe_check_for_rst_vf(): ixgbe_check_for_rst_vf

done

PMD: ixgbe_check_for_rst_vf(): ixgbe_check_for_rst_vf

Port 0 Link Up - speed 100 Mbps - half-duplex


reference

82599-10-gbe-controller-datasheet.pdf