Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Jul 2008 14:24:01 -0600
From:      James Gritton <jamie@gritton.org>
To:        freebsd-virtualization@freebsd.org
Subject:   Re: Simpler Vimage sysctls
Message-ID:  <4877C161.3080400@gritton.org>
In-Reply-To: <487787CC.6020302@gritton.org>
References:  <487787CC.6020302@gritton.org>

next in thread | previous in thread | raw e-mail | index | archive | help
OK, forget that last part about the SYSCTL_V_XXX macros not needing to 
be redefined for VIMAGE - I didn't notice that they link to the 
sysctl_handle_v_xxx functions.

- Jamie


James Gritton wrote:
> While working on combining jail_set and Vimage, I found that the 
> sysctl virtualization hacks were more complicated than they needed to be.
>
> The extra "subs" and "mod" arguments in SYSCTL_HANDLER_V_ARGS don't 
> need to be explicitly passed because they're members of the 
> sysctl_v_oid structure passed in the oidp argument.  By using 
> oidp->oid_v_subs instead of subs (and same for mod), 
> SYSCTL_HANDLER_V_ARGS becomes the same as SYSCTL_HANDLER_ARGS, and no 
> longer need to be defined.
>
> With the handlers now taking the same arguments, the sysctl_oid and 
> sysctl_v_oid structures become identical and sysctl_v_oid can go away.
>
> Unrelated to this is the various SYSCTL_V_XXX macros that refer to 
> either SYSCTL_V_OID or SYSCTL_OID depending on the VIMAGE define.  
> Since SYSCTL_V_OID already reduces to SYSCTL_OID if VIMAGE is 
> undefined, those further switches are unnecessary.
>
> I'm including a diff that trims all this away, while keeping the same 
> functionality.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4877C161.3080400>