announce: 2.2.1: kernel time changes (experimental patch)

Ulrich Windl (ulrich.windl@rz.uni-regensburg.de)
Wed, 3 Feb 1999 08:45:33 +0100


Hello,

being tired of having a bug-free kernel? ;-)

I have an experimental patch that is a snapshot from the yet-to-come
PPSkit-0.5. As great things are planned, I thought I'd correct the
basics first:

I have moved the time related stuff from kernel/sched.c to
kernel/time.c (where it always belonged, but never appeared). The
same is true for sched.h and time.h. Interestingly compilation of my
i386 kernel showed that no file had to be changed, even though xtime
is only declared in <linux/time.h> now (meaning that all the files
using <time.h> also used <sched.h>).

In addition I made the NTP stuff optional for small kernels or
embedded systems that do not need/want it. There are now three levels
for NTP/PPS support:

1) CONFIG_NTP
2) CONFIG_NTP_PPS
3) CONFIG_NTP_PPS_SERIAL

For compatibility with standard kernels CONFIG_NTP should be set. In
previous PPSkits 2) and 3) simply wre CONFIG_PPS_SYNC. Now you can
have the basic PPS functions in the kernel, and still having an
unchanged serial driver if you like (by setting only 2)). If anyone
wants to write PPS code for some other exotic device (like the
parallel port) it could be done with CONFIG_NTP_PPS_<other>. I hope
that the concept is clear enough now.

I'd like people to try this patch, even if they disable everything,
because I have only build two kernels on a i386 with everything
ENABLED. Maybe other achitectures or drivers I don't use have a
problem. Please tell me what is wrong!

Linus basically likes the idea to move the time stuff out from
sched.c (sched.c is much shorter now), and maybe others will like the
optional NTP stuff. If people like the idea very much, and if Linus
agrees, I could rip out another portion of the future PPSkit to be
included in the standard kernel, maybe even in 2.2.x.

One well-known bug/feature: adjtimex() _silently_ ignores mode values
it doesn't know about. So if you disable NTP stuff in the kernel, you
still can run applications using it, but they will silently fail. I
want to resolve this too, soon.

As the next generation of NTP support in the kernel will use 64bit
quantities, the NTP overhead might be noticable. Therefore I first
wanted to make it optional.

(The PPSkit functionality basically corresponds to PPSkit-0.4.2 with
fixes included)

For those located at master.kernel.org, the stuff (PPSkit-0.5.0-
pre1.diff.gz) is located in ~windl; others have a look at
ftp://pcphy4.physik.uni-regensburg.de/pub/wiu09524/PPS

The patch is 18kB...

Regards,
Ulrich Windl

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/