KConfig option CONFIG_NO_HZ_FULL not found (3.13.0-32 kernel), to build low latency setup
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
KConfig option CONFIG_NO_HZ_FULL not found (3.13.0-32 kernel), to build low latency setup
Hello,
I currently have Ubuntu 14.04.01 LTS, Kernel 3.13.0-32 on a dual core laptop. I am working on creating a low latency kernel image of 3.12.74
version and preempt_rt patch.
While make menuconfig, (using the .config file as received while installing Ubuntu 14.04.1),
I see only 2 options under "Timer Subsystems"
-> Old Idle dynticks config
-> High resolution Timer support
It is missing option related to CONFIG_NO_HZ_FULL and other similar options.
It is not a problem of kernel supporting the feature, as it is available as per documentation from 3.10 kernel.
This is relvant excerpt from original config which am modifying:
#
# Timers subsystem
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ_COMMON=y
# CONFIG_HZ_PERIODIC is not set
CONFIG_NO_HZ_IDLE=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
(Not sure and dont believe I have disabled anything that would make this option disabled). So, now, I believe this particular config file which I received aling with Ubuntu 14 installation is incomplete. But am not an expert at these options, so I have 2 simple questions:
1) How do I modify config file (There might be dependencies etc and other things might need to be done, instead of just adding another macro in config file as CONFIG_NO_HZ_FULL)
2) How do I deal with this issue in general, as always I would be using some existing config file, which might be incomplete, and I might be missing some options which I might want to try out.
Thank you
Last edited by barz_83_LQ; 02-10-2018 at 04:45 AM.
Reason: Missing detail added
Distribution: Debian testing/sid; OpenSuSE; Fedora; Mint
Posts: 5,524
Rep:
OK, you need to get the config file from somewhere. Where did it come from? I usually use the latest /boot/config-xyz file, and just rename it .config. Then, before you can manually configure the kernel, you have to do 'make oldconfig'. Then you can do a menuconfig, or xconfig, or gconfig.
Dear AwesomeMachine,
I have used the .config file taken from existing installation and reused it. I did directly run make menuconfig.
I have by now tried multiple things, (also checked make help for a view of make targets of linux kernel), make defconfig and then make oldconfig and then make menuconfig, (or) make alldefconfig and then make menuconfig (or) make oldconfig and then make menuconfig etc various combinations of these but still I do not get the option corresponding to CONFIG_NO_HZ_FULL.
The documentation resources (for example ...https://lwn.net/Articles/549580/) show that the option has been present since 3.10 and am building 3.12.x version of kernel.
My question is straight forward, why am I unable to see the option. Any inputs towards resolution or anything that I misunderstood. I have actually searched in kernel source directory for CONFIG_NO_HZ_FULL but I did not get any results in config files but I got the macro in source and header files.Exact source version of kernel am trying to build is 3.12.74.
I just realized that the default arch provided config file for 64 bit one (x86_64_defconfig) contains the option CONFIG_NO_HZ_FULL, the 32 bit variant(i386_defconfig) doesnt contain the macro.
"I am not sure if that is intentional and the 32 bit kernel 3.12 doesnt support CONFIG_NO_HZ_FULL option (or) it is something that needs to be fixed (or) overlooked to be updated".
1) So, any comments and inputs and detail on my understanding(above statement) is greatly appreciated.
2)Can I manually edit the 32 bit config file to include the macro? (It din work, I tried already) (or) should I try to compare the 64 bit config file and 32 bit one and copy relevant changes to the 32 bit one (Am about to give this a try now)
Thank you very much
Last edited by barz_83_LQ; 02-11-2018 at 05:14 AM.
Reason: Increased scope of question but made questions particular
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.