summaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
authorNicolas Pitre <nicolas.pitre@linaro.org>2016-11-11 00:10:10 -0500
committerThomas Gleixner <tglx@linutronix.de>2016-11-16 03:26:35 -0500
commitbaa73d9e478ff32d62f3f9422822b59dd9a95a21 (patch)
treeec1ac1b90e4a6c6337acb564d7fb518418fc510f /init
parent53d3eaa31508222e445b489f3c3ac4c63542a4ef (diff)
posix-timers: Make them configurable
Some embedded systems have no use for them. This removes about 25KB from the kernel binary size when configured out. Corresponding syscalls are routed to a stub logging the attempt to use those syscalls which should be enough of a clue if they were disabled without proper consideration. They are: timer_create, timer_gettime: timer_getoverrun, timer_settime, timer_delete, clock_adjtime, setitimer, getitimer, alarm. The clock_settime, clock_gettime, clock_getres and clock_nanosleep syscalls are replaced by simple wrappers compatible with CLOCK_REALTIME, CLOCK_MONOTONIC and CLOCK_BOOTTIME only which should cover the vast majority of use cases with very little code. Signed-off-by: Nicolas Pitre <nico@linaro.org> Acked-by: Richard Cochran <richardcochran@gmail.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: John Stultz <john.stultz@linaro.org> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Cc: Paul Bolle <pebolle@tiscali.nl> Cc: linux-kbuild@vger.kernel.org Cc: netdev@vger.kernel.org Cc: Michal Marek <mmarek@suse.com> Cc: Edward Cree <ecree@solarflare.com> Link: http://lkml.kernel.org/r/1478841010-28605-7-git-send-email-nicolas.pitre@linaro.org Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'init')
-rw-r--r--init/Kconfig17
1 files changed, 17 insertions, 0 deletions
diff --git a/init/Kconfig b/init/Kconfig
index 34407f15e6d3..456e0b891238 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1445,6 +1445,23 @@ config SYSCTL_SYSCALL
1445 1445
1446 If unsure say N here. 1446 If unsure say N here.
1447 1447
1448config POSIX_TIMERS
1449 bool "Posix Clocks & timers" if EXPERT
1450 default y
1451 help
1452 This includes native support for POSIX timers to the kernel.
1453 Some embedded systems have no use for them and therefore they
1454 can be configured out to reduce the size of the kernel image.
1455
1456 When this option is disabled, the following syscalls won't be
1457 available: timer_create, timer_gettime: timer_getoverrun,
1458 timer_settime, timer_delete, clock_adjtime, getitimer,
1459 setitimer, alarm. Furthermore, the clock_settime, clock_gettime,
1460 clock_getres and clock_nanosleep syscalls will be limited to
1461 CLOCK_REALTIME, CLOCK_MONOTONIC and CLOCK_BOOTTIME only.
1462
1463 If unsure say y.
1464
1448config KALLSYMS 1465config KALLSYMS
1449 bool "Load all symbols for debugging/ksymoops" if EXPERT 1466 bool "Load all symbols for debugging/ksymoops" if EXPERT
1450 default y 1467 default y