order of executing MOD_LOAD and registering module sysctl-s

Andriy Gapon avg at FreeBSD.org
Thu Aug 3 06:58:15 UTC 2017


On 02/08/2017 18:49, John Baldwin wrote:
> sysctl nodes are created explicitly via linker_file_register_sysctls, not via
> SYSINITs, so you can't order them with respect to other init functions.
> 
> I think Andriy's suggestion of doing sysctls "inside" sysinits (so they are
> registered last and unregistered first) is probably better than the current
> state and is a simpler fix than changing all sysctls to use SYSINITs.

Kostik (kib) suggested a possible valid use-case that depends on the current
order: adding dynamic sysctl-s under static sysctl-s via the module load handler.
He also offered an idea for a possible solution: holding the modules lock in the
shared mode (MOD_SLOCK) around calls to sysctl-s registered from modules.

-- 
Andriy Gapon


More information about the freebsd-current mailing list