[NETNS]: The net-subsys IDs generator.
authorPavel Emelyanov <xemul@openvz.org>
Tue, 15 Apr 2008 07:35:23 +0000 (00:35 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 15 Apr 2008 07:35:23 +0000 (00:35 -0700)
commitc93cf61fd1d5378134f9b06703f7078067542e00
tree5ea9e584aa2c10b9c395730ee5bb944902d3e760
parent31efdf0530b6351b0658d35a602a0f2d6bc2ed6f
[NETNS]: The net-subsys IDs generator.

To make some per-net generic pointers, we need some way to address
them, i.e. - IDs. This is simple IDA-based IDs generator for pernet
subsystems.

Addressing questions about potential checkpoint/restart problems:
these IDs are "lite-offsets" within the net structure and are by no
means supposed to be exported to the userspace.

Since it will be used in the nearest future by devices only (tun,
vlan, tunnels, bridge, etc), I make it resemble the functionality
of register_pernet_device().

The new ids is stored in the *id pointer _before_ calling the init
callback to make this id available in this callback.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/net_namespace.h
net/core/net_namespace.c