Re: KTLS thread on 14.0-RC3

From: Zhenlei Huang <zlei_at_FreeBSD.org>
Date: Wed, 01 Nov 2023 01:01:32 UTC

> On Nov 1, 2023, at 8:37 AM, Rick Macklem <rick.macklem@gmail.com> wrote:
> 
> On Tue, Oct 31, 2023 at 10:06 AM John Baldwin <jhb@freebsd.org <mailto:jhb@freebsd.org>> wrote:
>> 
>> On 10/30/23 3:41 AM, Zhenlei Huang wrote:
>>> 
>>> 
>>>> On Oct 30, 2023, at 12:09 PM, Zhenlei Huang <zlei@FreeBSD.org> wrote:
>>>> 
>>>> 
>>>> 
>>>>> On Oct 29, 2023, at 5:43 PM, Gordon Bergling <gbe@freebsd.org> wrote:
>>>>> 
>>>>> Hi,
>>>>> 
>>>>> I am currently building a new system, which should be based on 14.0-RELEASE.
>>>>> Therefor I am tracking releng/14.0 since its creation and updating it currently
>>>>> via the usualy buildworld steps.
>>>>> 
>>>>> What I have noticed recently is, that the [KTLS] is missing. I have a stable/13
>>>>> system which shows the [KTLS] thread and a very recent -CURRENT that also shows
>>>>> the [KTLS] thread.
>>>>> 
>>>>> The stable/13 and releng/14.0 systems both use the GENERIC kernel, without any
>>>>> custom modifications.
>>>>> 
>>>>> Loaded KLDs are also the same.
>>>>> 
>>>>> Did I miss something, or is there something in releng/14.0 missing, which
>>>>> is currenlty enabled in stable/13?
>>>> 
>>>> KTLS shall still work as intended, the creation of it threads is deferred.
>>>> 
>>>> See a72ee355646c (ktls: Defer creation of threads and zones until first use)
>>>>> Run ktls_init() when the first KTLS session is created rather than
>>>>> unconditionally during boot.  This avoids creating unused threads and
>>>>> allocating unused resources on systems which do not use KTLS.
>>>> 
>>>> ```
>>>> -SYSINIT(ktls, SI_SUB_SMP + 1, SI_ORDER_ANY, ktls_init, NULL);
>>>> ```
>>> 
>>> Seems 14.0 only create one KTLS thread.
>>> 
>>> IIRC 13.2 create one thread per core.
>> 
>> That part should not be different.  There should always be one thread per core.
> Just fyi, I see one thread/core.
> Did you happen to do something like "ps ax" instead of "ps axHl"?

Yes, I typed "ps auxx".  `ps axHl` is the right way to get kernel threads.
Sorry for the noise.

> 
> rick
> ps: I also see a reclaim_0 thread.
> 
>> 
>> --
>> John Baldwin