WZZZ wrote:
Forgot to mention that, after I applied the MI one over the flatsix rev4, I also didn't get the mlockall(): Function not implemented
You have me confused now. Theoretically the only difference between flatsixracer's installer and MI''s explicit build is that flatsixracer's installs the modified ntp-restrict.conf and ntpd-wrapper. If you previously installed with flatsixracer's installer you installed ntp-restrict.conf and ntpd-wrapper. If you then explicitly build ntp and installed (e.g., like shown in MI) after and install from flatsixracer then those updated ntp-restrict.conf and ntpd-wrapper are still in your system.
On the one hand you show me a log that has the mlockall error but no sntp -v error and then you say you are not getting the mlockall error. The log indicates to me that at that time you had the updated ntpd-wrapper (which fixes the sntp -v error) but did not have the updated ntp-restrict.conf which gets rid of the KOD and mlockall log messages. On the other hand you say you didn't get the mlockall message.
I cannot see you having a log which reports the KOD messages and not having the mlockall error. However, as I type this I seem to now recall that briefly flatsixracer posted an installer where he addressed to mlockall message by fixing it from /private/etc/ntp.conf instead of from ntp-restrict.conf. I posted a recommendation he move the fix (rlimit memlock 0) into ntp-restrict.conf to keep all the changes in the one file plus I think that any changes to ntp.conf would get clobbered if you change the ntp server in Date&Time preferences. So maybe you still have his rlimit change in /private/etc/ntp.conf.
If you want to go back to the beginning you would need to make sure you have the original OSX ntp.conf, ntp-restrict.conf, and ntpd-wrapper. Then you can use the normal explicit build as described by MI. You should then see the -v message, KOD messages, and mlockall message in the log. But why would you want to do that? If you use flatsixracer's latest installer (or just add the fixed/updated ntp-restrict.conf and ntpd-wrapper) you should not see those log messages.
I recommend you use flatsixracer's installer. Because there is (or should be) no difference between the ntp files it installs and the ones you would get from an explicit build. But with flatsixracer's installer you do get the updated ntp-restrict.conf and ntpd-wrapper that MI doesn't address. You really want those updates (well, or at a minimum the ntpd-wrapper update since that sntp -v really does need to be fixed while ntp-restrict.conf just addresses suppressing a bunch of log warnings).
As for that very rare crash, here's a portion of that log again with one line highlighted:
Application Specific Information:
*** error for object 0x100200268: incorrect checksum for freed object - object was probably modified after being freed.
Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 libSystem.B.dylib 0x00007fff8382f5d6 __kill + 10
1 libSystem.B.dylib 0x00007fff838cfcd6 abort + 83
2 libSystem.B.dylib 0x00007fff838be90d szone_error + 519
3 libSystem.B.dylib 0x00007fff837eabe6 tiny_free_list_remove_ptr + 158
4 libSystem.B.dylib 0x00007fff837e81ae szone_free_definite_size + 2005
5 libcrypto.0.9.8.dylib 0x00007fff867142a5 CRYPTO_free + 37
6 libcrypto.0.9.8.dylib 0x00007fff86710979 lh_free + 57
7 libcrypto.0.9.8.dylib 0x00007fff86770c10 int_err_del + 48
8 libSystem.B.dylib 0x00007fff837f389f __cxa_finalize + 214
9 libSystem.B.dylib 0x00007fff837f37ac exit + 18
10 ntpd 0x0000000100011918 finish + 88
11 libSystem.B.dylib 0x00007fff8384166a _sigtramp + 26
12 libSystem.B.dylib 0x00007fff837e8af2 tiny_free_list_add_ptr + 314
13 libSystem.B.dylib 0x00007fff837e81fc szone_free_definite_size + 2083
14 ntpd 0x00000001000336f3 uninit_util + 99
15 libSystem.B.dylib 0x00007fff837f389f __cxa_finalize + 214
16 libSystem.B.dylib 0x00007fff837f37ac exit + 18
17 ntpd 0x0000000100051a74 exit_worker + 68
18 ntpd 0x0000000100051ec4 send_blocking_req_internal + 1092
19 ntpd 0x000000010004f54b queue_blocking_request + 187
20 ntpd 0x000000010004e584 getaddrinfo_sometime + 372
21 ntpd 0x0000000100002c5c config_peers + 1036
22 ntpd 0x0000000100004eb9 config_ntpd + 6521
23 ntpd 0x00000001000078fc getconfig + 380
24 ntpd 0x000000010001221b ntpdmain + 1707
25 ntpd 0x0000000100001344 start + 52
My current theory is that it was a function named finish() that failed. There is a function name finish() in the ntpd.c source file.
/*
* finish - exit gracefully
*/
static RETSIGTYPE
finish(
int sig
)
{
const char *sig_desc;
sig_desc = NULL;
#ifdef HAVE_STRSIGNAL
sig_desc = strsignal(sig);
#endif
if (sig_desc == NULL)
sig_desc = "";
msyslog(LOG_NOTICE, "%s exiting on signal %d (%s)", progname,
sig, sig_desc);
/* See Bug 2513 and Bug 2522 re the unlink of PIDFILE */
# ifdef HAVE_DNSREGISTRATION
if (mdns != NULL)
DNSServiceRefDeallocate(mdns);
# endif
exit(0);
}
I'm guessing that "finish+88" in the crash log is that DNSServiceRefDeallocate() call but that's only a guess since I didn't look any deeper into this. It's interesting that that piece of code is trying do address a couple of bug reports :-) This is all I have to say on this. This post is getting way too long and now going off topic.