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>