Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
comprehensive list of deprecated kernel features?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
xgivolari
Tux's lil' helper
Tux's lil' helper


Joined: 26 Jul 2021
Posts: 102

PostPosted: Thu Dec 02, 2021 1:10 pm    Post subject: comprehensive list of deprecated kernel features? Reply with quote

Hello everyone,

I am looking for information on which options, features, subsystems, etc.. are not in active development anymore and can be left out. For example, according to the Fedora 36 change notes, the entire framebuffer subsystem is deprecated. All fbdev drivers can be disabled and are replaced by CONFIG_DRM_SIMPLEDRM. The only reason for keeping the subsystem itself is for fbcon support. Where can I find out which other parts of the kernel are deprecated? Thank you!
Back to top
View user's profile Send private message
psycho
Guru
Guru


Joined: 22 Jun 2007
Posts: 544
Location: New Zealand

PostPosted: Fri Dec 17, 2021 6:47 am    Post subject: Reply with quote

Hi Xgivolari.

CONFIG_DRM_SIMPLEDRM has never worked for me: perhaps not surprisingly (given that the nvidia-driver messages say explicitly that it shouldn't be set), on my hardware it stops my nvidia kernel module from loading (so I use good old VESA for a high resolution console). Plenty of deprecated features are still useful or even necessary in some situations: just because the developers have flagged something as unlikely to be around in future doesn't mean you should definitely stop using it immediately. I imagine if you went through your kernel systematically disabling every deprecated feature you might give yourself some unnecessary headaches: it makes more sense to assess everything on a case-by-case basis, depending on what it is and whether the replacement's really a better solution for you.

The kernel source is quite well documented: generally speaking if you're selecting a deprecated feature via make menuconfig it will tell you (and even advise you re what to do instead)...so you probably don't need any additional documents (your custom kernel will already be informed by the guidance in the config menus themselves). If you're wanting a comprehensive list, all together in one place, I guess you could grep the source tree and make your own...but it sounds like you're assuming if something "is not in active development" (or at least is "deprecated") then it "can be left out"...but that's not the case. If it were that simple they'd just remove the features rather than leaving them in and flagging them as deprecated: they're still there because some people still use them, so you're probably better off just factoring it in as something to consider ("do I really want to keep using this deprecated feature or can I switch to the new alternative?") rather than aiming to identify and purge every bit of deprecated code.

To sum up, I don't know of any comprehensive up-to-date list of all deprecated kernel features, but I'm guessing nobody maintains one because it's not really necessary (deprecated code often works perfectly well...sometimes better, for some people, than the new code...your example of CONFIG_DRM_SIMPLEDRM being a good one, as Fedora's advice there just breaks my systems).
Back to top
View user's profile Send private message
Goverp
Advocate
Advocate


Joined: 07 Mar 2007
Posts: 2202

PostPosted: Fri Dec 17, 2021 9:27 am    Post subject: Re: comprehensive list of deprecated kernel features? Reply with quote

xgivolari wrote:
I am looking for information on which options, features, subsystems, etc.. are not in active development anymore and can be left out. For example, according to the Fedora 36 change notes, the entire framebuffer subsystem is deprecated. All fbdev drivers can be disabled and are replaced by CONFIG_DRM_SIMPLEDRM. The only reason for keeping the subsystem itself is for fbcon support. Where can I find out which other parts of the kernel are deprecated?

If you want a kernel with everything except stuff you shouldn't have, just use a stock distro kernel such as sys-kernel/gentoo-kernel-bin. Why bother doing anything else when someone's already done the work? Such a kernel will support hardware you don't have and features you can't use, because of course its developers have to cover all possible users.

If you want to roll-your-own kernel that just suits your hardware alone, take the above configuration (I guess in sys-kernel/gentoo-kernel's .config), tweak it with "make localmodconfig", and then tailor it to your own satisfaction. Note that to use localmodconfig, you need to have ALL hardware you want to support plugged in and working. That causes all necessary modules to be loaded, so "make localmodconfig" can see what to prune.

That previous paragraph over-simplifies - "tailor it to your own satisfaction" covers a multitude of options. For example, you might not need NUMA support, or you might want a more specific cpu type (I guess the gentoo ones will be for generic X86_64 targets, but as I've not used them, I can't say.) You won't see much change in performance (unless you go extreme), but you will reduce kernel build time and size.
_________________
Greybeard
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum