2009-10-20 19:11:46

by James Cloos

[permalink] [raw]
Subject: ntp-dev-4.2.5p235-RC build failure: MOD_NANO not #defined

I get this when trying to build the 235 RC:

make[1]: Entering directory `.../work/ntp-dev-4.2.5p235-RC/ntpd'
if i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../lib/isc/include -I../lib/isc/nothreads/include -I../lib/isc/unix/include -I../libopts -I/usr/include -march=pentium3 -O2 -Wno-error -Wall -Wcast-qual -Wmissing-prototypes -Wpointer-arith -Wshadow -Winit-self -Wstrict-overflow -Wno-strict-prototypes -MT ntp_loopfilter.o -MD -MP -MF ".deps/ntp_loopfilter.Tpo" -c -o ntp_loopfilter.o ntp_loopfilter.c; \
then mv -f ".deps/ntp_loopfilter.Tpo" ".deps/ntp_loopfilter.Po"; else rm -f ".deps/ntp_loopfilter.Tpo"; exit 1; fi
ntp_loopfilter.c: In function 'local_clock':
ntp_loopfilter.c:521: error: 'MOD_NANO' undeclared (first use in this function)
ntp_loopfilter.c:521: error: (Each undeclared identifier is reported only once
ntp_loopfilter.c:521: error: for each function it appears in.)
make[1]: *** [ntp_loopfilter.o] Error 1
make[1]: Leaving directory `.../work/ntp-dev-4.2.5p235-RC/ntpd'
make: *** [all] Error 2

In ntp_loopfilter.c, MOD_NANO is protected w/in an #ifdef STA_NANO.

I find STA_NANO #defined in <linux/timex.h>, but I cannot find a
definition for MOD_NANO anywhere.

That said, <linux/timex.h> does #define several MOD_ defines in a block
called /* xntp 3.4 compatibility names */ to match the ADJ_ defines;
it #defines ADJ_NANO, but does not include a MOD_NANO #define in that
compatability block.

Also, my <sys/timex.h> (from glibc-2.10.1) says:

sys/timex.h> /* These definitions from linux/timex.h as of 2.6.30. */


Should ntp_loopfilter.c be using ADJ_NANO instead of MOD_NANO?

Or should timex.h #define MOD_NANO ADJ_NANO?

All of the additions to linux/timex.h since 2.6.30 then are protected
within an #ifdef __KERNEL__ and would, therefore, make no difference.

(In case it is an lk issue, I've included lkml and (following lkml style)
my best guess at the relevant CCs; in case it is an ntpd issue it is also
sent to the ntp hackers list; I do not know whether the latter list
requires subscription to post....)

-JimC
--
James Cloos <[email protected]> OpenPGP: 1024D/ED7DAEA6


2009-10-20 19:28:07

by Dave Hart

[permalink] [raw]
Subject: Re: [ntp:hackers] ntp-dev-4.2.5p235-RC build failure: MOD_NANO not #defined

Please see:

https://support.ntp.org/bugs/show_bug.cgi?id=1219

which points the finger at the Linux header and has a reference to:

https://bugzilla.redhat.com/show_bug.cgi?id=505566

titled: timex.h: #define MOD_NANO ADJ_NANO missing

Cheers,
Dave Hart

2009-10-20 20:45:50

by john stultz

[permalink] [raw]
Subject: Re: [ntp:hackers] ntp-dev-4.2.5p235-RC build failure: MOD_NANO not #defined

On Tue, Oct 20, 2009 at 12:27 PM, Dave Hart <[email protected]> wrote:
> Please see:
>
> https://support.ntp.org/bugs/show_bug.cgi?id=1219
>
> which points the finger at the Linux header and has a reference to:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=505566
>
> titled: timex.h: #define MOD_NANO ADJ_NANO missing

The kernel has already been fixed, but glibc still needs to pick up the change.

See the kernel commit here:
http://git.kernel.org/?p=linux/kernel/git/tip/linux-2.6-tip.git;a=commitdiff;h=c95b4502ad7fe8f3b9954aec794b00ac0046ab3a

thanks
-john

2009-10-20 23:32:22

by James Cloos

[permalink] [raw]
Subject: Re: [ntp:hackers] ntp-dev-4.2.5p235-RC build failure: MOD_NANO not #defined

>>>>> "john" == john stultz <[email protected]> writes:

john> The kernel has already been fixed, but glibc still needs to pick up the change.
john> See the kernel commit here:
john> http://git.kernel.org/?p=linux/kernel/git/tip/linux-2.6-tip.git;a=commitdiff;h=c95b4502ad7fe8f3b9954aec794b00ac0046ab3a

Ah. I only looked in my (up to date) clone of Linus’ tree; I didn’t
check the trees-to-pull.

Will that be part of a pull request for the current rc or only for the
next merge window?

-JimC
--
James Cloos <[email protected]> OpenPGP: 1024D/ED7DAEA6

2009-10-21 00:44:01

by john stultz

[permalink] [raw]
Subject: Re: [ntp:hackers] ntp-dev-4.2.5p235-RC build failure: MOD_NANO not #defined

On Tue, 2009-10-20 at 19:22 -0400, James Cloos wrote:
> >>>>> "john" == john stultz <[email protected]> writes:
>
> john> The kernel has already been fixed, but glibc still needs to pick up the change.
> john> See the kernel commit here:
> john> http://git.kernel.org/?p=linux/kernel/git/tip/linux-2.6-tip.git;a=commitdiff;h=c95b4502ad7fe8f3b9954aec794b00ac0046ab3a
>
> Ah. I only looked in my (up to date) clone of Linus’ tree; I didn’t
> check the trees-to-pull.

Huh. I guess I was mistaken and had mixed up my bookmarks. You're right,
I thought it was already upstream, but I've been looking at the wrong
tree. The patch is not yet in mainline.

> Will that be part of a pull request for the current rc or only for the
> next merge window?

Ingo, any eta on when commit c95b4502ad7fe8f3b9954aec794b00ac0046ab3a
will be pushed? Not sure how it got missed this last cycle.

thanks
-john

2009-10-21 23:09:54

by Reg Clemens

[permalink] [raw]
Subject: Re: [ntp:hackers] ntp-dev-4.2.5p235-RC build failure: MOD_NANO not #defined


Isnt it just time to get rid of these MOD_ constructs in ntp?

A quick find/grep of the code shows that there are only 7 usages left
in the ntpd main line.

There are 2 in tickadj.

There are 15 in ntptime.

It would take less time to change these to the STA_*** forms than
to see this question ever come up again.

--
Reg.Clemens
[email protected]