Re: Netlink connector

From: Patrick McHardy
Date: Mon Jul 25 2005 - 19:17:17 EST

Thomas Graf wrote:
* Patrick McHardy <42E579BC.8000701@xxxxxxxxx> 2005-07-26 01:46

You still have to take care of mixed 64/32 bit environments, u64 fields
for example are differently alligned.

My solution to this (in the same patchset) is that we never
derference u64s but instead copy them.

I don't understand. The problem is mainly u64 embedded in structures,
the structs have different sizes if the u64 is not 8 byte aligned
and the structure size padded to a multiple of 8.

Then fix it so we can use more families and groups. I started some work
on this, but I'm not sure if I have time to complete it.
Great, this is one of the remaining issues I haven't solved yet.
If you want me to take over just hand over your unfinished work
and I'll integrate it into my patchset.

I started working on it after the OLS party, so no postable code yet :)
The idea for more groups is basically to remove the fixed groups
bitmask from struct sockaddr_nl and use setsockopt to add/remove
multicast subscriptions. If we add the limitation that a packet
can only be multicasted to a single group we can support an arbitary
number of groups, otherwise we would still be limited by size of
skb->cb. This limitation shouldn't be a problem, AFAIK nothing is
multicasting to multiple groups at once right now and the increased
number of groups will allow a better granularity anyway. The main
problem is keeping it backwards-compatible for current netlink users.
If this isn't possible we may need to call it netlink2.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at