netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Auke Kok <auke-jan.h.kok@intel.com>
To: "Brandeburg, Jesse" <jesse.brandeburg@intel.com>
Cc: Christoph Hellwig <hch@lst.de>,
	Jesse Brandeburg <jesse.brandeburg@gmail.com>,
	David Miller <davem@davemloft.net>,
	netdev@vger.kernel.org
Subject: Re: [PATCH] move skb->dev assignment into netdev_alloc_skb
Date: Tue, 15 Aug 2006 07:37:20 -0700	[thread overview]
Message-ID: <44E1DC20.3050605@intel.com> (raw)
In-Reply-To: <Pine.WNT.4.63.0608141742290.336@jbrandeb-desk.amr.corp.intel.com>

Brandeburg, Jesse wrote:
> On Sat, 12 Aug 2006, Christoph Hellwig wrote:
>>>>> Signed-off-by: Christoph Hellwig <hch@lst.de>
>>>> Since the e1000 change is non-trivial I'm not going to bypass
>>>> the driver author on it, sorry.
>>>>
>>>> What I did do was put the netdev_alloc_skb() change into my
>>>> tree, and since I'm co-author of the tg3 driver I'll apply
>>>> that bit too.
>>>>
>>>> The e1000 bit will need to go through the e1000 maintainers.
>>> Thank you, I'll take a look at this tomorrow, as I need to digest the
>>> patch in context.
>> Did you get a chance to look at it?  For your conveniance here's just
>> the e1000 bits, without the hunks Dave has commited already:
>>
> 
> I'm okay with this change.  Auke will shortly be submitting a patch set 
> for 2.6.19 and it should include this.

Great, I was already waiting for this change to drip in but hadn't checked for 
it. I've queued it and it will be included in this weeks' patch series git pull 
request.

Cheers,

Auke


> Thanks for the feedback Christoph!
> 
> Jesse
> 
> for reference this is the patch, but like i said auke will enqueue it in 
> GIT and send it to Jeff for inclusion.
> 
> e1000: clean up skb allocation code, patch submitted by Christoph
> 
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
> 
> ---
> 
>  drivers/net/e1000/e1000_main.c |   19 +++++++------------
>  1 files changed, 7 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
> index 627f224..66c0325 100644
> --- a/drivers/net/e1000/e1000_main.c
> +++ b/drivers/net/e1000/e1000_main.c
> @@ -36,7 +36,7 @@ static char e1000_driver_string[] = "Int
>  #else
>  #define DRIVERNAPI "-NAPI"
>  #endif
> -#define DRV_VERSION "7.1.9-k4"DRIVERNAPI
> +#define DRV_VERSION "7.1.9-k6"DRIVERNAPI
>  char e1000_driver_version[] = DRV_VERSION;
>  static char e1000_copyright[] = "Copyright (c) 1999-2006 Intel Corporation.";
>  
> @@ -3711,7 +3711,6 @@ e1000_clean_rx_irq(struct e1000_adapter 
>  			    netdev_alloc_skb(netdev, length + NET_IP_ALIGN);
>  			if (new_skb) {
>  				skb_reserve(new_skb, NET_IP_ALIGN);
> -				new_skb->dev = netdev;
>  				memcpy(new_skb->data - NET_IP_ALIGN,
>  				       skb->data - NET_IP_ALIGN,
>  				       length + NET_IP_ALIGN);
> @@ -3978,13 +3977,13 @@ e1000_alloc_rx_buffers(struct e1000_adap
>  	buffer_info = &rx_ring->buffer_info[i];
>  
>  	while (cleaned_count--) {
> -		if (!(skb = buffer_info->skb))
> -			skb = netdev_alloc_skb(netdev, bufsz);
> -		else {
> +		skb = buffer_info->skb;
> +		if (skb) {
>  			skb_trim(skb, 0);
>  			goto map_skb;
>  		}
>  
> +		skb = netdev_alloc_skb(netdev, bufsz);
>  		if (unlikely(!skb)) {
>  			/* Better luck next round */
>  			adapter->alloc_rx_buff_failed++;
> @@ -4009,10 +4008,10 @@ e1000_alloc_rx_buffers(struct e1000_adap
>  				dev_kfree_skb(skb);
>  				dev_kfree_skb(oldskb);
>  				break; /* while !buffer_info->skb */
> -			} else {
> -				/* Use new allocation */
> -				dev_kfree_skb(oldskb);
>  			}
> +
> +			/* Use new allocation */
> +			dev_kfree_skb(oldskb);
>  		}
>  		/* Make buffer alignment 2 beyond a 16 byte boundary
>  		 * this will result in a 16 byte aligned IP header after
> @@ -4020,8 +4019,6 @@ e1000_alloc_rx_buffers(struct e1000_adap
>  		 */
>  		skb_reserve(skb, NET_IP_ALIGN);
>  
> -		skb->dev = netdev;
> -
>  		buffer_info->skb = skb;
>  		buffer_info->length = adapter->rx_buffer_len;
>  map_skb:
> @@ -4135,8 +4132,6 @@ e1000_alloc_rx_buffers_ps(struct e1000_a
>  		 */
>  		skb_reserve(skb, NET_IP_ALIGN);
>  
> -		skb->dev = netdev;
> -
>  		buffer_info->skb = skb;
>  		buffer_info->length = adapter->rx_ps_bsize0;
>  		buffer_info->dma = pci_map_single(pdev, skb->data,

      reply	other threads:[~2006-08-15 14:39 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-05 13:01 [PATCH] move skb->dev assignment into netdev_alloc_skb Christoph Hellwig
2006-08-07 23:10 ` David Miller
2006-08-08  0:29   ` Jesse Brandeburg
2006-08-12 13:57     ` Christoph Hellwig
2006-08-15  1:00       ` Brandeburg, Jesse
2006-08-15 14:37         ` Auke Kok [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44E1DC20.3050605@intel.com \
    --to=auke-jan.h.kok@intel.com \
    --cc=davem@davemloft.net \
    --cc=hch@lst.de \
    --cc=jesse.brandeburg@gmail.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).