]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC 296379,296380,296381,296593,296594,296595
authorsephe <sephe@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Thu, 16 Jun 2016 02:48:18 +0000 (02:48 +0000)
committersephe <sephe@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Thu, 16 Jun 2016 02:48:18 +0000 (02:48 +0000)
commit7ad2ddb14690abc25181c9fd6019139ab89842bb
tree044e8b06a3bfe2af86b88f1f30c872116a634eab
parent3eaed0534af24f50c4735f5a39ed472363e37d8c
MFC 296379,296380,296381,296593,296594,296595

296379
    hyperv/hn: Add multiple channel support, a.k.a. vRSS

    Each channel contains one RX ring and one TX ring.  And we
    try to distribute the channels to different evenly.

    Note: Currently we don't have enough information to extract
    the RSS type and RSS hash value from the received packets.

    This greatly improves the TX/RX performance for 8 virtual CPU
    Hyper-V over 10Ge: it can max out 10Ge for TCP when multiple
    RX/TX rings are enabled.

    This almost doubles the TX/RX performance for locally connected
    Hyper-Vs: was 6Gbps w/ 128 TCP streams, now 11Gbps w/ multiple
    RX/TX rings enabled.

    It is not enabled by default; it will be switched on after more
    tests.

    Collaborated with:  Hongjiang Zhang <honzhan microsoft com>
    MFC after:  2 week
    Sponsored by:       Microsoft OSTC

296380
    hyperv/hn: Pass channel to send done callbacks.

    Mainly to strigent the data packet send done check.

    MFC after:  2 weeks
    Sponsored by:       Microsoft OSTC

296381
    hyperv/hn: Add per-TX ring stats for # of transmitted packets

    MFC after:  2 weeks
    Sponsored by:       Microsoft OSTC

296593
    hyperv/hn: Move if_initname to an earlier place

    So that functions shared w/ attach path could use if_printf().

    While I'm here, remove unnecessary if_dunit and if_dname assignment.

    MFC after:  1 week
    Sponsored by:       Microsoft OSTC
    Differential Revision:      https://reviews.freebsd.org/D5576

296594
    hyperv/hn: Factor out hn_channel_attach

    MFC after:  1 week
    Sponsored by:       Microsoft OSTC
    Differential Revision:      https://reviews.freebsd.org/D5577

296595
    hyperv/hn: Make the # of TX rings configurable.

    Rename the tunables to avoid confusion.

    MFC after:  1 week
    Sponsored by:       Microsoft OSTC
    Differential Revision:      https://reviews.freebsd.org/D5578

git-svn-id: svn://svn.freebsd.org/base/stable/10@301943 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/dev/hyperv/include/hyperv.h
sys/dev/hyperv/netvsc/hv_net_vsc.c
sys/dev/hyperv/netvsc/hv_net_vsc.h
sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c
sys/dev/hyperv/netvsc/hv_rndis.h
sys/dev/hyperv/netvsc/hv_rndis_filter.c
sys/dev/hyperv/netvsc/hv_rndis_filter.h
sys/dev/hyperv/vmbus/hv_channel_mgmt.c