Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Apr 2023 21:56:29 +0200
From:      Hans Petter Selasky <hps@selasky.org>
To:        freebsd-current@freebsd.org, Zhenlei Huang <zlei@FreeBSD.org>
Subject:   Re: Is it valid to combine CTLFLAG_TUN with CTLFLAG_VNET ?
Message-ID:  <263045d4-409a-8a2d-87e1-50b1afcb7338@selasky.org>
In-Reply-To: <b2338626-4f3a-d0f8-ce6b-365b8e393fec@selasky.org>
References:  <94C1B333-9C0F-4874-BBB1-3E72F3DF3F6A@FreeBSD.org> <9dc65578-9312-1139-932f-396bc42e66b2@selasky.org> <ZC28li9kOc5e4rbc@FreeBSD.org> <b2338626-4f3a-d0f8-ce6b-365b8e393fec@selasky.org>

index | next in thread | previous in thread | raw e-mail

On 4/5/23 21:44, Hans Petter Selasky wrote:
> On 4/5/23 20:23, Gleb Smirnoff wrote:
>> What if we remove the CTLFLAG_VNET check from the code you posted above?
>> I don't see anything going wrong, rather going right 😄
>>
>> CTLFLAG_VNET will not mask away CTLFLAG_TUN.
> 
> Hi Gleb,
> 
> It's possible to bypass that check, but some work needs to be done 
> first. Then all jails created, will also start from those sysctl tunable 
> values.
> 
> The problem is, where does the VNET base pointer come from?
> 
> Especially those static sysctl's. You would need to make some design 
> there I guess and look at the SYSINIT() order. When are SYSINIT's filled 
> with tunable data's. And when is the default VNET created.
> 
> Because the data pointer passed to the register sysctl function is 
> simply an offset pointer into a malloc'ed structure.
> 
> --HPS
> 

Hi Zhenlei,

Feel free to work on this, and add me as a reviewer and complete phase 
two of:

> commit 3da1cf1e88f8448bb10c5f778ab56ff65c7a6938
> Author: Hans Petter Selasky <hselasky@FreeBSD.org>
> Date:   Fri Jun 27 16:33:43 2014 +0000
> 
>     Extend the meaning of the CTLFLAG_TUN flag to automatically check if
>     there is an environment variable which shall initialize the SYSCTL
>     during early boot. This works for all SYSCTL types both statically and
>     dynamically created ones, except for the SYSCTL NODE type and SYSCTLs
>     which belong to VNETs. A new flag, CTLFLAG_NOFETCH, has been added to

--HPS


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?263045d4-409a-8a2d-87e1-50b1afcb7338>