# Man page incomplete



## rtobiasr (Jan 16, 2022)

According to https://www.freebsd.org/cgi/man.cgi?bwn I am supposed to put stuff into my kernel configuration file. What kernel configuration file? Where is it? Once I find it, and put my stuff in there then how do I recompile the kernel?


----------



## grahamperrin@ (Jan 16, 2022)

True: synopses such as these confuse people.

Instead of:



> To compile this driver into the kernel, …



– imagine:



> If you need to compile this driver into the kernel, …



Similarly, for:



> To load the driver as a module at boot, …



– imagine the word _If_.

In simple terms:

if you use a standard installer for a RELEASE of FreeBSD, either the module will loan when required or the GENERIC kernel includes the compilation
it's not normal to require wireless networking at boot time.
That's not me SHOUTING  it's customary to use uppercase for those phrases.

Hint

At a command line, on the Mac:

`kldstat | grep bwn`

If it's listed, it's loaded.


*Postscript*: corrected a typo (`kldstat`, not `kldtsat`)


----------



## Erichans (Jan 16, 2022)

rtobiasr, what would you do after reading this?


----------



## zirias@ (Jan 19, 2022)

Really don't see what's missing here. If you _want_ to compile a kernel, you'll read the corresponding chapter of the handbook and then KNOW where to put the configuration. It doesn't make sense to duplicate that documentation in every manpage.

If you don't want that, there's the simple alternative to just load the module.

Well, we could now talk about whether it would be better to mention the (probably much more common) loading of the module first.


----------



## SirDice (Jan 19, 2022)

rtobiasr said:


> What kernel configuration file? Where is it? Once I find it, and put my stuff in there then how do I recompile the kernel?


Handbook: Chapter 8. Configuring the FreeBSD Kernel



> Traditionally, FreeBSD used a monolithic kernel. The kernel was one large program, supported a fixed list of devices, and in order to change the kernel’s behavior, one had to compile and then reboot into a new kernel.
> 
> *Today, most of the functionality in the FreeBSD kernel is contained in modules which can be dynamically loaded and unloaded from the kernel as necessary.* This allows the running kernel to adapt immediately to new hardware and for new functionality to be brought into the kernel. This is known as a modular kernel.


----------



## zirias@ (Jan 19, 2022)

That's some weird wording btw. In operating systems architecture, the opposite of a monolithic kernel would be a microkernel. The key difference here is that everything that doesn't absolutely require the privileged CPU mode ("ring-0") is running in separate, unprivileged kernel services.

The modern FreeBSD kernel is modular, but it's still monolithic as well. That isn't something bad btw, microkernels never really took off as they have their own set of problems in practice. So, just a nitpick about wording...


----------



## rtobiasr (Jan 31, 2022)

I was looking at:






						bwn(4)
					






					www.freebsd.org
				




In part, it says, "To compile this driver into the kernel, add the following lines to the kernel configuration file"

After searching, I found the answer, but guys, seriously... what kernel configuration file? Where is it? What do I do with it after I edit it? FreeBSD documentation team: Throw us a bone.


----------



## eternal_noob (Jan 31, 2022)

Why another thread?









						Man page incomplete
					

According to https://www.freebsd.org/cgi/man.cgi?bwn I am supposed to put stuff into my kernel configuration file. What kernel configuration file? Where is it? Once I find it, and put my stuff in there then how do I recompile the kernel?




					forums.freebsd.org


----------



## zirias@ (Jan 31, 2022)

Why would you even _want_ to "compile it into the kernel"? The manpage also explains how to load the module instead, no compiling needed for that.

Compiling a custom kernel is documented in the handbook (although I think it should really explain how to _include_ GENERIC instead of copying it). It wouldn't make sense to repeat that in every single manpage.


----------



## SirDice (Jan 31, 2022)

[_Mod: moved everything to the existing thread with the exact same question_]


----------

