linux-ppp.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Stark <gsstark@mit.edu>
To: linux-ppp@vger.kernel.org
Subject: Re: Kernel memory leak with PPPoE
Date: Fri, 10 Dec 2004 19:12:50 +0000	[thread overview]
Message-ID: <871xdy6k7h.fsf@stark.xeocode.com> (raw)
In-Reply-To: <87d5xi7ji9.fsf@stark.xeocode.com>


Michal Ostrowski <mostrows@watson.ibm.com> writes:

> Can you try doing this another way?  When pppd fails,let pppd die and
> start a new one.

I could do it for debugging. It's not acceptable for a real solution since
then the interface would appear and disappear and clients would get networking
errors for transient network reconnections.

> My concern is that by trying to stick within one pppd process you may be
> leaking something in pppd (e.g. not closing file-descriptors).  If the
> leak does not occur when you run new pppd processes, then I'd be
> inclined to think that it's a problem within pppd.

Well fds would normally get cleaned up when pppd exits.

> > I know it's suboptimal to report a bug report without reproducing it with a
> > clean unpatched, preferably recent, version. However this is my router box and
> > I upgrading it to linux 2.6 would be a major project (and I believe 2.4 suits
> > the 486 better). And with the unpatched pppd I would have to script restarting
> > pppd repeatedly (and deal with the consequences of the interface disappearing
> > and reappearing) since the pppoe module has a hard coded constant number of
> > retries before it aborts.
> > 
> 
> You can change that if you'd like.  I just decided on something that
> seemed sane.

Well really the PAD* retries ought to be a configurable parameter, along with
the timeouts, just like the ppp level retries. I tried adding parameters for
these but never finished the job.

For users manually dialing out it ought to fail after a few retries. But for a
router box that is supposed to maintain a 24x7 connection it really ought to
do exponential backoff at first and then keep retrying about once a minute or
so forever.

> I've looked through the 2.4.21 code, and in pppoe code there are few
> allocations to begin with.   The ones that could be a leak I've verified
> are not, or would only be a leak if the leak was actually in core net
> code (in which case it probably would have manifested itself in other
> ways and been dealt with already).

Hm. Perhaps it's elsewhere in the kernel but only triggered by the way pppox
creates and destroys interfaces dynamically?

-- 
greg


      parent reply	other threads:[~2004-12-10 19:12 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-10  6:30 Kernel memory leak with PPPoE Greg Stark
2004-12-10 13:38 ` Michal Ostrowski
2004-12-10 19:12 ` Greg Stark [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=871xdy6k7h.fsf@stark.xeocode.com \
    --to=gsstark@mit.edu \
    --cc=linux-ppp@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).