Xntpd will improperly synchronize the clock. The problem does not appear so much to be in the code, as in one of the constants defined by the specifications -- it is too loose. A patch is coming. Brief summary: Xntpd synchronzes when the "error" is less than 1; this causes problems with all of the root clocks, as they do not work that smoothly. Thus, they have a lot of time steps; so do other sites that synch to them. In addition, if you are doing a file transfer, xntpd's concept of error will still go well below 1 during the file transfer, and a 2-4 second error will be stepped into your clock. This patch lowers the treshold to .025. I have been running this patch on xntpd-3.51 for over a year on another machine; I have just applied it to our internal time server today. (yes, this really should be back-prop'd to the maintainers of xntpd; I figured that it would be more likely to be accepted if it had your backing as well)
Please reopen this bug with the patch. The Right Thing To Do is to send the patch to the xntp3 crowd -- we'll be happy to include the patch with an update of xntp3.