Re: [PATCH v3) posix-timers: make it configurable
From: John Stultz
Date: Thu Sep 15 2016 - 14:46:46 EST
On Thu, Sep 15, 2016 at 11:37 AM, Nicolas Pitre
<nicolas.pitre@xxxxxxxxxx> wrote:
> On Thu, 15 Sep 2016, John Stultz wrote:
>
>> On Thu, Sep 15, 2016 at 11:28 AM, Nicolas Pitre
>> <nicolas.pitre@xxxxxxxxxx> wrote:
>> > On Thu, 15 Sep 2016, John Stultz wrote:
>> >
>> >> > diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig
>> >> > index 62824f2fe4..62504a2c9f 100644
>> >> > --- a/kernel/time/Kconfig
>> >> > +++ b/kernel/time/Kconfig
>> >> > @@ -195,3 +195,21 @@ config HIGH_RES_TIMERS
>> >> >
>> >> > endmenu
>> >> > endif
>> >> > +
>> >> > +config POSIX_TIMERS
>> >> > + bool "Posix Clocks & timers" if EMBEDDED
>> >> > + default y
>> >> > + help
>> >> > + This includes native support for POSIX timers to the kernel.
>> >> > + Most embedded systems may have no use for them and therefore they
>> >> > + can be configured out to reduce the size of the kernel image.
>> >> > +
>> >> > + When this option is disabled, the following syscalls won't be
>> >> > + available: timer_create, timer_gettime: timer_getoverrun,
>> >> > + timer_settime, timer_delete, clock_adjtime. Furthermore, the
>> >> > + clock_settime, clock_gettime, clock_getres and clock_nanosleep
>> >> > + syscalls will be limited to CLOCK_REALTIME and CLOCK_MONOTONIC
>> >> > + only.
>> >> > +
>> >> > + If unsure say y.
>> >> >
>> >>
>> >> One thought.. Should this go under:
>> >> Configure standard kernel features (expert users)
>> >> rather then a top level item under General Setup ?
>> >
>> > Hmmm... probably yes.
>> >
>> > Do you need that I repost the patch?
>>
>> I can see about moving it..
>
> OK.
>
> Making it conditional on EXPERT rather than EMBEDDED would also be more
> inline with the other similar options there.
Ack.
Although I'm also seeing some Kconfig noise when I disable it:
warning: (SFC && TILE_NET && AMD_XGBE && BFIN_MAC_USE_HWSTAMP &&
TIGON3 && BNX2X && LIQUIDIO && FEC && E1000E && IGB && IXGBE && I40E
&& FM10K && MLX4_EN && MLX5_CORE_EN && RAVB && SXGBE_ETH && STMMAC_ETH
&& TI_CPTS && PTP_1588_CLOCK_GIANFAR && PTP_1588_CLOCK_IXP46X &&
DP83640_PHY && PTP_1588_CLOCK_PCH) selects PTP_1588_CLOCK which has
unmet direct dependencies (NET && POSIX_TIMERS)
warning: (SFC && TILE_NET && AMD_XGBE && BFIN_MAC_USE_HWSTAMP &&
TIGON3 && BNX2X && LIQUIDIO && FEC && E1000E && IGB && IXGBE && I40E
&& FM10K && MLX4_EN && MLX5_CORE_EN && RAVB && SXGBE_ETH && STMMAC_ETH
&& TI_CPTS && PTP_1588_CLOCK_GIANFAR && PTP_1588_CLOCK_IXP46X &&
DP83640_PHY && PTP_1588_CLOCK_PCH) selects PTP_1588_CLOCK which has
unmet direct dependencies (NET && POSIX_TIMERS)
Not sure if this is just expected given we can't do reverse dependency
checking on select...
Maybe PTP_1588_CLOCK needs to select POSIX_TIMERS instead of just depend on it?
thanks
-john