Re: kldunload kernel: How should the kernel behave when it is requested to unload itself

From: Tomoaki AOKI <junchoon_at_dec.sakura.ne.jp>
Date: Thu, 09 Nov 2023 17:28:12 UTC
On Fri, 10 Nov 2023 00:10:13 +0800
Zhenlei Huang <zlei@FreeBSD.org> wrote:

> Hi,
> 
> This is *NOT* joking.
> 
> While working on https://reviews.freebsd.org/D42527 I realized the
> module kernel also has userrefs, that is to say, userland can request
> to unload kernel, aka `kldunload kernel`.
> 
> This is interesting. Well no doubt that the loader can unload kernel.
> Then after the kernel is loaded and has been initialized (SYSINIT), how
> should it behave when it get an unload request?
> 
> I'm proposing https://reviews.freebsd.org/D42530 to do not allow unloading
> the kernel. It is by intuition.
> 
> What do you think ?
> 
> 
> Best regards,
> Zhenlei

Possibly too paranoid, but the summery on D42530 looks a bit confusing.
Would better to be

 'The userland or kernel shall not unload the module "kernel".'

or

 'The userland or kernel shall not unload the "kernel" module.'

.

The original SUMMARY could be read as, in meaning, 'The userland or
kernel shall not unload *.ko.'

*.ko is sometimes called as "kernel module", although it stants for
"kernel object".

-- 
Tomoaki AOKI    <junchoon@dec.sakura.ne.jp>