From: Patrick McHardy <kaber@trash.net>
To: Massimiliano Hofer <max@nucleus.it>
Cc: netfilter-devel@lists.netfilter.org
Subject: Re: [PATCH] entry_data
Date: Tue, 20 Jun 2006 15:17:21 +0200 [thread overview]
Message-ID: <4497F561.4000503@trash.net> (raw)
In-Reply-To: <200606201325.02775.max@nucleus.it>
Massimiliano Hofer wrote:
> I changed the API on the (possibly wrong) assumption that most modules will
> need it for shared data (that's what I and at least some other modules need),
> but thinking about it there are other uses (multiple data with different
> sharing, non shared data that has no business in the userspace struct, etc.).
> In other words, you're right.
>
> Following your suggestion I could add a .priv_size field and if it is non zero
> I allocate the requested memory and pass it as void * (the same type passed
> to (*checkentry)(), (*destroy)() and (*match)()).
>
> We have 2 ways to implement this:
> - we can allocate priv_size more bytes after data;
> - we can separately allocate priv_size bytes and store a pointer in
> u.kernel.entry_data.
>
> Seeing how the initialization code works, the first one is a bit hairy. The
> latter is really easy to implement, but if someone just needs 4 bytes we end
> up storing a pointer to a pointer with no good reason.
The case of just needing a pointer is just an optimization for a
special-case in my opinion (avoid lookup of globally shared state),
per-instance state is probably more common. So I'd suggest to go
with the second possibility.
next prev parent reply other threads:[~2006-06-20 13:17 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-04 22:29 [PATCH] entry_data Massimiliano Hofer
2006-06-11 23:19 ` Massimiliano Hofer
2006-06-12 9:50 ` Pablo Neira Ayuso
2006-06-12 12:45 ` Massimiliano Hofer
2006-06-13 15:19 ` Pablo Neira Ayuso
2006-06-13 20:56 ` Massimiliano Hofer
2006-06-19 0:15 ` Pablo Neira Ayuso
2006-06-19 7:02 ` Massimiliano Hofer
2006-06-19 23:37 ` Pablo Neira Ayuso
2006-06-20 1:39 ` Patrick McHardy
2006-06-14 9:03 ` Sven Anders
2006-06-17 22:55 ` Massimiliano Hofer
2006-06-19 17:45 ` Patrick McHardy
2006-06-19 23:05 ` Massimiliano Hofer
2006-06-20 1:29 ` Patrick McHardy
2006-06-19 17:34 ` Patrick McHardy
2006-06-19 22:35 ` Massimiliano Hofer
2006-06-19 23:13 ` Patrick McHardy
2006-06-20 11:25 ` Massimiliano Hofer
2006-06-20 13:17 ` Patrick McHardy [this message]
2006-06-21 0:03 ` [PATCH] priv_data (formerly entry_data) Massimiliano Hofer
2006-06-21 0:30 ` Patrick McHardy
2006-06-21 0:45 ` Massimiliano Hofer
2006-06-21 1:04 ` Patrick McHardy
2006-06-21 8:31 ` Massimiliano Hofer
2006-06-21 23:50 ` Massimiliano Hofer
2006-06-22 15:18 ` Patrick McHardy
2006-06-21 0:33 ` Massimiliano Hofer
2006-06-21 0:42 ` Massimiliano Hofer
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=4497F561.4000503@trash.net \
--to=kaber@trash.net \
--cc=max@nucleus.it \
--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.