lkml.org 
[lkml]   [2016]   [Nov]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH net-next v6 02/10] dpaa_eth: add support for DPAA Ethernet
    From
    From: Madalin-Cristian Bucur <madalin.bucur@nxp.com>
    Date: Mon, 7 Nov 2016 16:32:16 +0000

    >> -----Original Message-----
    >> From: David Miller [mailto:davem@davemloft.net]
    >> Sent: Monday, November 07, 2016 5:55 PM
    >>
    >> From: Madalin-Cristian Bucur <madalin.bucur@nxp.com>
    >> Date: Mon, 7 Nov 2016 15:43:26 +0000
    >>
    >> >> From: David Miller [mailto:davem@davemloft.net]
    >> >> Sent: Thursday, November 03, 2016 9:58 PM
    >> >>
    >> >> Why? By clearing this, you disallow an important fundamental way to do
    >> >> performane testing, via pktgen.
    >> >
    >> > The Tx path in DPAA requires one to insert a back-pointer to the skb
    >> into
    >> > the Tx buffer. On the Tx confirmation path the back-pointer in the
    >> buffer
    >> > is used to release the skb. If Tx buffer is shared we'd alter the back-
    >> pointer
    >> > and leak/double free skbs. See also
    >>
    >> Then have your software state store an array of SKB pointers, one for each
    >> TX ring entry, just like every other driver does.
    >
    > There is no Tx ring in DPAA. Frames are send out on QMan HW queues towards
    > the FMan for Tx and then received back on Tx confirmation queues for cleanup.
    > Array traversal would for sure cost more than using the back-pointer. Also,
    > we can now process confirmations on a different core than the one doing Tx,
    > we'd have to keep the arrays percpu and force the Tx conf on the same core.
    > Or add locks.

    Report back an integer index, like every scsi driver out there which
    completes tagged queued block I/O operations asynchronously. You can
    associate the array with a specific TX confirmation queue.

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