lkml.org 
[lkml]   [2016]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.16 050/346] net: mvneta: set real interrupt per packet for tx_done
    3.16.39-rc1 review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Dmitri Epshtein <dima@marvell.com>

    commit 06708f81528725148473c0869d6af5f809c6824b upstream.

    Commit aebea2ba0f74 ("net: mvneta: fix Tx interrupt delay") intended to
    set coalescing threshold to a value guaranteeing interrupt generation
    per each sent packet, so that buffers can be released with no delay.

    In fact setting threshold to '1' was wrong, because it causes interrupt
    every two packets. According to the documentation a reason behind it is
    following - interrupt occurs once sent buffers counter reaches a value,
    which is higher than one specified in MVNETA_TXQ_SIZE_REG(q). This
    behavior was confirmed during tests. Also when testing the SoC working
    as a NAS device, better performance was observed with int-per-packet,
    as it strongly depends on the fact that all transmitted packets are
    released immediately.

    This commit enables NETA controller work in interrupt per sent packet mode
    by setting coalescing threshold to 0.

    Signed-off-by: Dmitri Epshtein <dima@marvell.com>
    Signed-off-by: Marcin Wojtas <mw@semihalf.com>
    Fixes aebea2ba0f74 ("net: mvneta: fix Tx interrupt delay")
    Acked-by: Willy Tarreau <w@1wt.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    drivers/net/ethernet/marvell/mvneta.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/drivers/net/ethernet/marvell/mvneta.c
    +++ b/drivers/net/ethernet/marvell/mvneta.c
    @@ -216,7 +216,7 @@
    /* Various constants */

    /* Coalescing */
    -#define MVNETA_TXDONE_COAL_PKTS 1
    +#define MVNETA_TXDONE_COAL_PKTS 0 /* interrupt per packet */
    #define MVNETA_RX_COAL_PKTS 32
    #define MVNETA_RX_COAL_USEC 100

    \
     
     \ /
      Last update: 2016-11-14 04:59    [W:4.116 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site