netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Rusty Russell <rusty@rustcorp.com.au>,
	lkml - Kernel Mailing List <linux-kernel@vger.kernel.org>,
	netdev <netdev@vger.kernel.org>,
	Herbert Xu <herbert@gondor.apana.org.au>,
	Keir Fraser <Keir.Fraser@cl.cam.ac.uk>
Subject: Re: netfront for review
Date: Thu, 03 May 2007 16:34:28 +0200	[thread overview]
Message-ID: <4639F2F4.1090905@redhat.com> (raw)
In-Reply-To: <4639F16C.3090005@goop.org>

Jeremy Fitzhardinge wrote:
> Gerd Hoffmann wrote:
>>> Gerd, in change 11196:b85da7cd9ea5 "front: Fix rx buffer leak when
>>> tearing down an interface." you added a call to
>>> "add_id_to_freelist(np->rx_skbs, id);".  However, rx_skbs doesn't have
>>> an extra entry for the list head, and there's never any corresponding
>>> get_id_from_freelist(np->rx_skbs).  What should it be?
>> The function has an effect in page flipping mode only.  It walks the
>> whole list of rx skbufs (id is the loop variable ...), checks whenever
>> they are handed out to the frontend driver to fill in packet data and
>> not returned yet, and if so reclaim them ...
> 
> Yes, but why use add_id_to_freelist?  rx_skbs are not being used on a
> freelist anywhere else.  It just means the rx_skb array gets filled with
> small integers, but the rest of the code assumes they're either NULL or
> an skb pointer.

Hmm, good point.  Have to look at the code again, it has been some time 
I've written that, and it took me some time to figure how all the grant 
table stuff works ...

Maybe the add_id_to_freelist() call can simply be dropped.  The whole 
interface is released shortly thereafter, probably thats why filling the 
freelist with yunk never caused any problems ...

cheers,
   Gerd


  parent reply	other threads:[~2007-05-03 14:36 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <4637D672.5030706@goop.org>
2007-05-02  3:37 ` netfront for review Rusty Russell
2007-05-02  3:51   ` Herbert Xu
2007-05-02  4:23     ` Rusty Russell
2007-05-02  4:18   ` Jeremy Fitzhardinge
2007-05-02 19:47   ` Jeremy Fitzhardinge
2007-05-03  7:33     ` Gerd Hoffmann
2007-05-03 14:27       ` Jeremy Fitzhardinge
2007-05-03 14:30         ` Keir Fraser
2007-05-03 14:34         ` Gerd Hoffmann [this message]
2007-05-03 15:17       ` Christoph Hellwig
2007-05-03 15:38         ` Gerd Hoffmann
2007-05-03 16:00           ` Jeremy Fitzhardinge

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=4639F2F4.1090905@redhat.com \
    --to=kraxel@redhat.com \
    --cc=Keir.Fraser@cl.cam.ac.uk \
    --cc=herbert@gondor.apana.org.au \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=rusty@rustcorp.com.au \
    /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).