All of lore.kernel.org
 help / color / mirror / Atom feed
From: Massimiliano Hofer <max@nucleus.it>
To: Patrick McHardy <kaber@trash.net>
Cc: Netfilter Development Mailinglist <netfilter-devel@lists.netfilter.org>
Subject: Re: priv_data patch
Date: Mon, 14 Aug 2006 16:40:41 +0200	[thread overview]
Message-ID: <200608141640.41759.max@nucleus.it> (raw)
In-Reply-To: <44E07BCD.8030206@trash.net>

On Monday 14 August 2006 3:34 pm, you wrote:

> While merging the priv_data patch I noticed an oversight. Currently,
> when modifying the ruleset, all modules dump their entire state
> (user configuration + internal state kept in the same structure)
> to userspace, which will return it to the kernel. That means for
> example that the limit match will not loose its current state when
> modifying other rules. When we move the state out of the data shared
> with userspace this can't be done anymore, so each modification to
> the table will cause all modules to loose their current state, even
> if they we're not directly affected by the change. We can't break
> this behaviour, so this limits potential users of the priv_data stuff
> to things like hashlimit or recent, which do a lookup of state stored
> completely external from the ruleset (and could use it to cache the
> lookup result). I don't think that this is worth it, we probably need
> to wait until we have a better userspace interface before we can do
> something like this ..

I'm afraid you are right. This limits the usefulness to volatile data that can 
safely be discarded. This can be some sort of disposable statistic or 
performance enhancing cache of data that can be retrieved in other ways.

Without this patch we are condemned to ugly tricks for data needed by 
condition, hashlimit and recent. I think this is useful, but I'll leave it to 
you to decide if it's worth.

Any idea for a better userspace interface?
It's not the first time you tell me that we could have a better "next 
generation" userspace interface. Maybe it's time to start planning.
Does anyone have wishes for new or different ways to do things?

Just an example without proper thought or planning: we could set an optional 
way rules could use to tag themselves and have their data back if they want 
it. As with priv_data this won't benefit everyone. I'll keep thinking of 
better ways.

IMHO a portion of data outside the one passed by userspace (persistent or 
volatile) is a must in the long run and will free us from an arbitrary 
constraint between userspace and kernelspace. I see other people are writing 
matches that rely on separate user input to complete its data (interface 
groups?) and they will need somewhere to store it.

-- 
Saluti,
   Massimiliano Hofer
        Nucleus

  parent reply	other threads:[~2006-08-14 14:40 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-14 13:34 priv_data patch Patrick McHardy
2006-08-14 14:25 ` Joakim Axelsson
2006-08-14 14:31   ` Patrick McHardy
2006-08-14 15:20     ` Joakim Axelsson
2006-08-14 15:28       ` Patrick McHardy
2006-08-14 16:04         ` Joakim Axelsson
2006-08-14 16:13           ` Patrick McHardy
2006-08-14 16:55             ` Joakim Axelsson
2006-08-14 16:59               ` Patrick McHardy
2006-08-15  8:27               ` Amin Azez
2006-08-15  8:40                 ` Joakim Axelsson
2006-08-14 15:31       ` Patrick McHardy
2006-08-14 15:40         ` Joakim Axelsson
2006-08-14 15:46           ` Patrick McHardy
2006-08-14 15:56             ` Joakim Axelsson
2006-08-14 16:01               ` Patrick McHardy
2006-08-14 16:13                 ` Joakim Axelsson
2006-08-14 16:26                   ` Patrick McHardy
2006-08-14 16:40                     ` Joakim Axelsson
2006-08-14 16:50                       ` Patrick McHardy
2006-08-14 17:11                         ` Joakim Axelsson
2006-08-14 17:48                           ` Patrick McHardy
2006-08-14 17:59                             ` Joakim Axelsson
2006-08-14 15:53       ` Massimiliano Hofer
2006-08-14 14:40 ` Massimiliano Hofer [this message]
2006-08-14 14:48   ` Patrick McHardy
2006-08-14 14:58     ` Joakim Axelsson
2006-08-14 15:05       ` Patrick McHardy
2006-08-14 16:19     ` Massimiliano Hofer
2006-08-14 16:32       ` Joakim Axelsson
     [not found] ` <200608141557.35918.max@nucleus.it>
     [not found]   ` <44E08AC7.2050204@trash.net>
     [not found]     ` <200608141702.50753.max@nucleus.it>
2006-08-14 15:14       ` Patrick McHardy

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=200608141640.41759.max@nucleus.it \
    --to=max@nucleus.it \
    --cc=kaber@trash.net \
    --cc=netfilter-devel@lists.netfilter.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.