Kernel parameter vs modprobe file


are there any recommendations which one of methodes mentioned in the title to use?
In general or for example in particular for amdgpu?
Is one more faster or save?

Thanks for the answer. I already went through those pages but I am missing an experience based opinion.
Is one method more faster for booting for example or how about flexibility?

if you use it as kernel parameter it will force the system to use this setting right from the first moment while using a configuration file cause that it is loaded in the booting process. usually a config file is more comfort and there are only very rare situations when to use a kernel parameter. i wouldn’t bother with amd-gpu’s because amd is well supported by linux. nvidia instead is a pain in the butt.
the question about boot-speed isn’t really important in practice, there is no real advantage and if the speed advantage is only a reading in milliseconds. a config file instead is easy adjusted and more comfortable. if there isn’t any reason to use a kernel parameter to get the system running than there is no reason to use a kernel parameter.

It depends if it’s a built-in module or a loadable module.

If a feature was baked into the kernel (e.g. Kernel config parameter = Y) you need provide it as a parameter in the boot loader configuration (cmdline).

If it’s a loadable module (e.g. Kernel config parameter = M) you can use a modprobe config file as well.
It’ll also look for cmdline parameters.


cmdline parameters → Works for both, built-in as well as loadable modules.
modprobe file → Will only work for loadable modules.


I will disagree, that is your personal preference to use config files, but there is no advantage at all it is the same amount of work in the end, writing the parameter in a file (even more work actually for the config files, as you have to create them, making sure they have proper permission, things like that). On the contrary I feel like it is simpler to add all kernel parameters in the grub config file rather than in other multiple files in modprobe.d folder. Also it is wrong from the technical standpoint as explained by Moson.

I will also disagree with that blanket statement about Nvidia. Maybe, for specific cards, using them on Linux is a pain, but honestly, in Manjaro, it is one click to install the Nvidia drivers, and it works just fine, there is no support problem (besides very old card not supported by recent drivers, but that is what older drivers are for). The only pain is to take the minute needed to click the install button (and you can install one of those older drivers). I understand people don’t like Nvidia because it is not open source blablabla, but it is misleading to say that. I see as much issues if not more on the open source side regarding video cards.