[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1311344164.12772.78.camel@zakaz.uk.xensource.com>
Date: Fri, 22 Jul 2011 15:16:04 +0100
From: Ian Campbell <Ian.Campbell@...citrix.com>
To: David Miller <davem@...emloft.net>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-nfs@...r.kernel.org" <linux-nfs@...r.kernel.org>,
Chas Williams <chas@....nrl.navy.mil>,
<linux-atm-general@...ts.sourceforge.net>
Subject: Re: [PATCH 08/13] net: convert drivers to paged frag API.
On Fri, 2011-07-22 at 15:12 +0100, David Miller wrote:
> From: Ian Campbell <ian.campbell@...rix.com>
> Date: Fri, 22 Jul 2011 14:17:28 +0100
>
> > - put_dma(tx->index,eni_dev->dma,&j,(unsigned long)
> > - skb_shinfo(skb)->frags[i].page + skb_shinfo(skb)->frags[i].page_offset,
> > + put_dma(tx->index,eni_dev->dma,&j,
> > + (unsigned long)skb_frag_address(&skb_shinfo(skb)->frags[i]),
>
> This is not an equivalent transformation.
>
> skb_frag_address() does a page_address() on the frag page, but that is
> not what the code was doing here previously.
>
> It's possible the code was buggy, but you can't do a fix like that
> amidst what is supposed to be a semantically NOP transformation.
Ouch, you are absolutely right, I didn't spot that, sorry.
The original code does look pretty bogus though, indexing off a struct
page * like that -- CC'ing the ATM maintainer + list.
Ian.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists