lkml.org 
[lkml]   [2019]   [Apr]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 03/12] net: ll_temac: Fix support for 64-bit platforms
    On Fri, 26 Apr 2019 22:59:12 +0200, Andrew Lunn wrote:
    > On Fri, Apr 26, 2019 at 11:40:13AM -0700, Jakub Kicinski wrote:
    > > On Fri, 26 Apr 2019 09:32:22 +0200, Esben Haabendal wrote:
    > > > The use of buffer descriptor APP4 field (32-bit) for storing skb pointer
    > > > obviously does not work on 64-bit platforms.
    > > > As APP3 is also unused, we can use that to store the other half of 64-bit
    > > > pointer values.
    > > >
    > > > Contrary to what is hinted at in commit message of commit 15bfe05c8d63
    > > > ("net: ethernet: xilinx: Mark XILINX_LL_TEMAC broken on 64-bit")
    > > > there are no other pointers stored in cdmac_bd.
    > > >
    > > > Signed-off-by: Esben Haabendal <esben@geanix.com>
    > >
    > > This is a bit strange, the driver stores the host's virtual address into
    > > the HW descriptor?
    >
    > Hi Jukub

    I need to start keeping track of all the ways my name gets spelled :)
    I find it entertaining :)

    > This is reasonably common. You need some sort of cookie which links
    > the hardware descriptor to the skbuf it points to. The hardware makes
    > no use of it, it is just a cookie.

    Right, but accesses to HW descriptor memory ring are significantly
    more expensive, especially on platforms which are not coherent with
    DMA operations (everything but x86?)

    A preferable design is to have two descriptor rings - one for HW
    descriptors and one for software context, no?

    \
     
     \ /
      Last update: 2019-04-26 23:10    [W:3.284 / U:0.336 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site