netdata-git: Initial ifdefs for NetBSD

This commit is contained in:
Kamil Rytarowski 2017-02-25 14:49:12 +01:00
parent 8ad10aff65
commit 7f0d970731
7 changed files with 2377 additions and 0 deletions

View file

@ -4,3 +4,9 @@ SHA1 (netdata-1.5.0.tar.gz) = ba14ff2e340c1326b5c8c34e3ec79421ce5d99d2
RMD160 (netdata-1.5.0.tar.gz) = 22f84edbfa3e536c3cf3a52c76bfe765682cf9ec
SHA512 (netdata-1.5.0.tar.gz) = 8655a6480a4975ad49804336627444336a72690377236b031a489f8c251d28e2b1ee13af18d34f60d2fc96220339315570408d7028c51d334f26a26e6765b4e5
Size (netdata-1.5.0.tar.gz) = 2398311 bytes
SHA1 (patch-src_common.c) = 65dd1218d48f55a9b26181d1d87d7f5d00a3505f
SHA1 (patch-src_common.h) = 56101e3d455293be81f27cf8b0ba3634968f6d83
SHA1 (patch-src_daemon.c) = e66833cb9f23a2911ef0cd2bb629c65adf828d8d
SHA1 (patch-src_main.c) = 0606d0416fedbb8b64e460b1cd9faa24b3812dc5
SHA1 (patch-src_netbsd__sysctl.c) = d5ac560925d7e8a04fe1a36d91d7d938dad0b4ce
SHA1 (patch-src_plugin__netbsd.h) = 9d437aedb0c291da885d4e0c03d79f90202ccd0c

View file

@ -0,0 +1,34 @@
$NetBSD$
--- src/common.c.orig 2017-01-23 19:49:04.000000000 +0000
+++ src/common.c
@@ -3,10 +3,14 @@
#ifdef __APPLE__
#define INHERIT_NONE 0
#endif /* __APPLE__ */
-#if defined(__FreeBSD__) || defined(__APPLE__)
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__NetBSD__)
# define O_NOATIME 0
# define MADV_DONTFORK INHERIT_NONE
-#endif /* __FreeBSD__ || __APPLE__*/
+#endif /* __FreeBSD__ || __APPLE__ || __NetBSD__*/
+
+#ifdef __NetBSD__
+#include <lwp.h>
+#endif
char *global_host_prefix = "";
int enable_ksm = 1;
@@ -1035,9 +1039,11 @@ pid_t gettid(void) {
uint64_t curthreadid;
pthread_threadid_np(NULL, &curthreadid);
return (pid_t)curthreadid;
+#elif defined(__NetBSD__)
+ return _lwp_self();
#else
return (pid_t)syscall(SYS_gettid);
-#endif /* __FreeBSD__, __APPLE__*/
+#endif /* __FreeBSD__, __APPLE__, __NetBSD__*/
}
char *fgets_trim_len(char *buf, size_t buf_size, FILE *fp, size_t *len) {

View file

@ -0,0 +1,42 @@
$NetBSD$
--- src/common.h.orig 2017-01-23 19:49:04.000000000 +0000
+++ src/common.h
@@ -23,9 +23,9 @@
#else /* !defined(ENABLE_JEMALLOC) && !defined(ENABLE_TCMALLOC) */
-#if !(defined(__FreeBSD__) || defined(__APPLE__))
+#if !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__NetBSD__))
#include <malloc.h>
-#endif /* __FreeBSD__ || __APPLE__ */
+#endif /* __FreeBSD__ || __APPLE__ || __NetBSD__ */
#endif
@@ -67,9 +67,9 @@
#include <syslog.h>
#include <sys/mman.h>
-#if !(defined(__FreeBSD__) || defined(__APPLE__))
+#if !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__NetBSD__))
#include <sys/prctl.h>
-#endif /* __FreeBSD__ || __APPLE__*/
+#endif /* __FreeBSD__ || __APPLE__ || __NetBSD__*/
#include <sys/resource.h>
#include <sys/socket.h>
@@ -187,10 +187,12 @@
#include "plugin_freebsd.h"
#elif defined(__APPLE__)
#include "plugin_macos.h"
+#elif defined(__NetBSD__)
+#include "plugin_netbsd.h"
#else
#include "plugin_proc.h"
#include "plugin_proc_diskspace.h"
-#endif /* __FreeBSD__, __APPLE__*/
+#endif /* __FreeBSD__, __APPLE__, __NetBSD__*/
#include "plugin_tc.h"
#include "plugins_d.h"

View file

@ -0,0 +1,22 @@
$NetBSD$
--- src/daemon.c.orig 2017-01-23 19:49:04.000000000 +0000
+++ src/daemon.c
@@ -117,7 +117,7 @@ int become_user(const char *username, in
ngroups = 0;
}
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined(__NetBSD__)
if(setregid(gid, gid) != 0) {
#else
if(setresgid(gid, gid, gid) != 0) {
@@ -126,7 +126,7 @@ int become_user(const char *username, in
return -1;
}
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined(__NetBSD__)
if(setreuid(uid, uid) != 0) {
#else
if(setresuid(uid, uid, uid) != 0) {

View file

@ -0,0 +1,42 @@
$NetBSD$
--- src/main.c.orig 2017-01-23 19:49:04.000000000 +0000
+++ src/main.c
@@ -43,10 +43,12 @@ struct netdata_static_thread static_thre
{"freebsd", "plugins", "freebsd", 1, NULL, NULL, freebsd_main},
#elif defined(__APPLE__)
{"macos", "plugins", "macos", 1, NULL, NULL, macos_main},
+#elif defined(__NetBSD__)
+ {"netbsd", "plugins", "netbsd", 1, NULL, NULL, netbsd_main},
#else
{"proc", "plugins", "proc", 1, NULL, NULL, proc_main},
{"diskspace", "plugins", "diskspace", 1, NULL, NULL, proc_diskspace_main},
-#endif /* __FreeBSD__, __APPLE__*/
+#endif /* __FreeBSD__, __APPLE__, __NetBSD__*/
{"cgroups", "plugins", "cgroups", 1, NULL, NULL, cgroups_main},
{"check", "plugins", "checks", 0, NULL, NULL, checks_main},
{"backends", NULL, NULL, 1, NULL, NULL, backends_main},
@@ -567,9 +569,9 @@ int main(int argc, char **argv)
if(setrlimit(RLIMIT_CORE, &rl) != 0)
error("Cannot request unlimited core dumps for debugging... Proceeding anyway...");
-#if !(defined(__FreeBSD__) || defined(__APPLE__))
+#if !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__NetBSD__))
prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
-#endif /* __FreeBSD__ || __APPLE__*/
+#endif /* __FreeBSD__ || __APPLE__ || __NetBSD__*/
}
// --------------------------------------------------------------------
@@ -744,9 +746,9 @@ int main(int argc, char **argv)
struct rlimit rl = { RLIM_INFINITY, RLIM_INFINITY };
if(setrlimit(RLIMIT_CORE, &rl) != 0)
error("Cannot request unlimited core dumps for debugging... Proceeding anyway...");
-#if !(defined(__FreeBSD__) || defined(__APPLE__))
+#if !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__NetBSD__))
prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
-#endif /* __FreeBSD__ || __APPLE__*/
+#endif /* __FreeBSD__ || __APPLE__ || __NetBSD__ */
}
#endif /* NETDATA_INTERNAL_CHECKS */

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,19 @@
$NetBSD$
--- src/plugin_netbsd.h.orig 2017-02-25 13:40:51.439972628 +0000
+++ src/plugin_netbsd.h
@@ -0,0 +1,14 @@
+#ifndef NETDATA_PLUGIN_NETBSD_H
+#define NETDATA_PLUGIN_NETBSD_H 1
+
+#include <sys/sysctl.h>
+
+#define GETSYSCTL(name, var) getsysctl(name, &(var), sizeof(var))
+
+void *netbsd_main(void *ptr);
+
+int getsysctl(const char *name, void *ptr, size_t len);
+
+extern int do_netbsd_sysctl(int update_every, usec_t dt);
+
+#endif /* NETDATA_PLUGIN_NETBSD_H */