Sysctl Naming

Dag-Erling Smørgrav des at des.no
Thu Oct 11 05:11:31 PDT 2007


Matthew Jakeman <m.jakeman at lancaster.ac.uk> writes:
> I am wanting to create a number of sysctl variables at kernel boot
> time, 1 for each network interface. I have the code set up to loop
> through the interfaces using ifnet_byindex() already for other
> purposes so wanted to create them in this loop.
>
> The problem I'm having is naming them, using the SYSCTL_INT() macro as
> specified :
>
> SYSCTL_INT(parent, nbr, name, access, ptr, val, descr);
>
> The 'name' parameter is what I wish to manipulate in the loop to
> append the interface name on to the sysctl variable created however I
> can't think of a way to do this. If there is another way to accomplish
> this I would be grateful to hear any suggestions.

This is the wrong approach, simply create a node with a fixed name in
each device's private sysctl tree.  See for instance how the coretemp
driver in CURRENT inserts a node into each CPU device's sysctl tree.

DES
-- 
Dag-Erling Smørgrav - des at des.no


More information about the freebsd-hackers mailing list