deleted file mode 100644
@@ -1,299 +0,0 @@
-diff --git a/src/collectd.c b/src/collectd.c
-index 6b77d599..f17c19eb 100644
---- a/src/collectd.c
-+++ b/src/collectd.c
-@@ -294,7 +294,7 @@ static int do_init (void)
- #endif
-
- #if HAVE_LIBSTATGRAB
-- if (sg_init ())
-+ if (sg_init (0))
- {
- ERROR ("sg_init: %s", sg_str_error (sg_get_error ()));
- return (-1);
-diff --git a/src/disk.c b/src/disk.c
-index 4a78f1bd..5f972aa5 100644
---- a/src/disk.c
-+++ b/src/disk.c
-@@ -77,34 +77,6 @@
- static mach_port_t io_master_port = MACH_PORT_NULL;
- /* #endif HAVE_IOKIT_IOKITLIB_H */
-
--#elif KERNEL_LINUX
--typedef struct diskstats
--{
-- char *name;
--
-- /* This overflows in roughly 1361 years */
-- unsigned int poll_count;
--
-- counter_t read_sectors;
-- counter_t write_sectors;
--
-- counter_t read_bytes;
-- counter_t write_bytes;
--
-- counter_t read_ops;
-- counter_t write_ops;
-- counter_t read_time;
-- counter_t write_time;
--
-- counter_t avg_read_time;
-- counter_t avg_write_time;
--
-- struct diskstats *next;
--} diskstats_t;
--
--static diskstats_t *disklist;
--/* #endif KERNEL_LINUX */
--
- #elif HAVE_LIBKSTAT
- #define MAX_NUMDISK 256
- extern kstat_ctl_t *kc;
-@@ -182,10 +154,6 @@ static int disk_init (void)
- }
- /* #endif HAVE_IOKIT_IOKITLIB_H */
-
--#elif KERNEL_LINUX
-- /* do nothing */
--/* #endif KERNEL_LINUX */
--
- #elif HAVE_LIBKSTAT
- kstat_t *ksp_chain;
-
-@@ -235,16 +203,6 @@ static void disk_submit (const char *plugin_instance,
- plugin_dispatch_values (&vl);
- } /* void disk_submit */
-
--#if KERNEL_LINUX
--static counter_t disk_calc_time_incr (counter_t delta_time, counter_t delta_ops)
--{
-- double avg_time = ((double) delta_time) / ((double) delta_ops);
-- double avg_time_incr = ((double) interval_g) * avg_time;
--
-- return ((counter_t) (avg_time_incr + .5));
--}
--#endif
--
- #if HAVE_IOKIT_IOKITLIB_H
- static signed long long dict_get_value (CFDictionaryRef dict, const char *key)
- {
-@@ -428,218 +386,6 @@ static int disk_read (void)
- IOObjectRelease (disk_list);
- /* #endif HAVE_IOKIT_IOKITLIB_H */
-
--#elif KERNEL_LINUX
-- FILE *fh;
-- char buffer[1024];
--
-- char *fields[32];
-- int numfields;
-- int fieldshift = 0;
--
-- int minor = 0;
--
-- counter_t read_sectors = 0;
-- counter_t write_sectors = 0;
--
-- counter_t read_ops = 0;
-- counter_t read_merged = 0;
-- counter_t read_time = 0;
-- counter_t write_ops = 0;
-- counter_t write_merged = 0;
-- counter_t write_time = 0;
-- int is_disk = 0;
--
-- diskstats_t *ds, *pre_ds;
--
-- if ((fh = fopen ("/proc/diskstats", "r")) == NULL)
-- {
-- fh = fopen ("/proc/partitions", "r");
-- if (fh == NULL)
-- {
-- ERROR ("disk plugin: fopen (/proc/{diskstats,partitions}) failed.");
-- return (-1);
-- }
--
-- /* Kernel is 2.4.* */
-- fieldshift = 1;
-- }
--
-- while (fgets (buffer, sizeof (buffer), fh) != NULL)
-- {
-- char *disk_name;
--
-- numfields = strsplit (buffer, fields, 32);
--
-- if ((numfields != (14 + fieldshift)) && (numfields != 7))
-- continue;
--
-- minor = atoll (fields[1]);
--
-- disk_name = fields[2 + fieldshift];
--
-- for (ds = disklist, pre_ds = disklist; ds != NULL; pre_ds = ds, ds = ds->next)
-- if (strcmp (disk_name, ds->name) == 0)
-- break;
--
-- if (ds == NULL)
-- {
-- if ((ds = (diskstats_t *) calloc (1, sizeof (diskstats_t))) == NULL)
-- continue;
--
-- if ((ds->name = strdup (disk_name)) == NULL)
-- {
-- free (ds);
-- continue;
-- }
--
-- if (pre_ds == NULL)
-- disklist = ds;
-- else
-- pre_ds->next = ds;
-- }
--
-- is_disk = 0;
-- if (numfields == 7)
-- {
-- /* Kernel 2.6, Partition */
-- read_ops = atoll (fields[3]);
-- read_sectors = atoll (fields[4]);
-- write_ops = atoll (fields[5]);
-- write_sectors = atoll (fields[6]);
-- }
-- else if (numfields == (14 + fieldshift))
-- {
-- read_ops = atoll (fields[3 + fieldshift]);
-- write_ops = atoll (fields[7 + fieldshift]);
--
-- read_sectors = atoll (fields[5 + fieldshift]);
-- write_sectors = atoll (fields[9 + fieldshift]);
--
-- if ((fieldshift == 0) || (minor == 0))
-- {
-- is_disk = 1;
-- read_merged = atoll (fields[4 + fieldshift]);
-- read_time = atoll (fields[6 + fieldshift]);
-- write_merged = atoll (fields[8 + fieldshift]);
-- write_time = atoll (fields[10+ fieldshift]);
-- }
-- }
-- else
-- {
-- DEBUG ("numfields = %i; => unknown file format.", numfields);
-- continue;
-- }
--
-- {
-- counter_t diff_read_sectors;
-- counter_t diff_write_sectors;
--
-- /* If the counter wraps around, it's only 32 bits.. */
-- if (read_sectors < ds->read_sectors)
-- diff_read_sectors = 1 + read_sectors
-- + (UINT_MAX - ds->read_sectors);
-- else
-- diff_read_sectors = read_sectors - ds->read_sectors;
-- if (write_sectors < ds->write_sectors)
-- diff_write_sectors = 1 + write_sectors
-- + (UINT_MAX - ds->write_sectors);
-- else
-- diff_write_sectors = write_sectors - ds->write_sectors;
--
-- ds->read_bytes += 512 * diff_read_sectors;
-- ds->write_bytes += 512 * diff_write_sectors;
-- ds->read_sectors = read_sectors;
-- ds->write_sectors = write_sectors;
-- }
--
-- /* Calculate the average time an io-op needs to complete */
-- if (is_disk)
-- {
-- counter_t diff_read_ops;
-- counter_t diff_write_ops;
-- counter_t diff_read_time;
-- counter_t diff_write_time;
--
-- if (read_ops < ds->read_ops)
-- diff_read_ops = 1 + read_ops
-- + (UINT_MAX - ds->read_ops);
-- else
-- diff_read_ops = read_ops - ds->read_ops;
-- DEBUG ("disk plugin: disk_name = %s; read_ops = %llu; "
-- "ds->read_ops = %llu; diff_read_ops = %llu;",
-- disk_name,
-- read_ops, ds->read_ops, diff_read_ops);
--
-- if (write_ops < ds->write_ops)
-- diff_write_ops = 1 + write_ops
-- + (UINT_MAX - ds->write_ops);
-- else
-- diff_write_ops = write_ops - ds->write_ops;
--
-- if (read_time < ds->read_time)
-- diff_read_time = 1 + read_time
-- + (UINT_MAX - ds->read_time);
-- else
-- diff_read_time = read_time - ds->read_time;
--
-- if (write_time < ds->write_time)
-- diff_write_time = 1 + write_time
-- + (UINT_MAX - ds->write_time);
-- else
-- diff_write_time = write_time - ds->write_time;
--
-- if (diff_read_ops != 0)
-- ds->avg_read_time += disk_calc_time_incr (
-- diff_read_time, diff_read_ops);
-- if (diff_write_ops != 0)
-- ds->avg_write_time += disk_calc_time_incr (
-- diff_write_time, diff_write_ops);
--
-- ds->read_ops = read_ops;
-- ds->read_time = read_time;
-- ds->write_ops = write_ops;
-- ds->write_time = write_time;
-- } /* if (is_disk) */
--
-- /* Don't write to the RRDs if we've just started.. */
-- ds->poll_count++;
-- if (ds->poll_count <= 2)
-- {
-- DEBUG ("disk plugin: (ds->poll_count = %i) <= "
-- "(min_poll_count = 2); => Not writing.",
-- ds->poll_count);
-- continue;
-- }
--
-- if ((read_ops == 0) && (write_ops == 0))
-- {
-- DEBUG ("disk plugin: ((read_ops == 0) && "
-- "(write_ops == 0)); => Not writing.");
-- continue;
-- }
--
-- if ((ds->read_bytes != 0) || (ds->write_bytes != 0))
-- disk_submit (disk_name, "disk_octets",
-- ds->read_bytes, ds->write_bytes);
--
-- if ((ds->read_ops != 0) || (ds->write_ops != 0))
-- disk_submit (disk_name, "disk_ops",
-- read_ops, write_ops);
--
-- if ((ds->avg_read_time != 0) || (ds->avg_write_time != 0))
-- disk_submit (disk_name, "disk_time",
-- ds->avg_read_time, ds->avg_write_time);
--
-- if (is_disk)
-- {
-- disk_submit (disk_name, "disk_merged",
-- read_merged, write_merged);
-- } /* if (is_disk) */
-- } /* while (fgets (buffer, sizeof (buffer), fh) != NULL) */
--
-- fclose (fh);
--/* #endif defined(KERNEL_LINUX) */
--
- #elif HAVE_LIBKSTAT
- # if HAVE_KSTAT_IO_T_WRITES && HAVE_KSTAT_IO_T_NWRITES && HAVE_KSTAT_IO_T_WTIME
- # define KIO_ROCTETS reads
deleted file mode 100644
@@ -1,11 +0,0 @@
---- collectd-4.10.9/src/Makefile.am~ 2020-09-10 19:45:41.936847854 +0000
-+++ collectd-4.10.9/src/Makefile.am 2020-09-10 19:45:50.416713658 +0000
-@@ -418,7 +418,7 @@
- iptables_la_LIBADD = owniptc/libiptc.la
- iptables_la_DEPENDENCIES = owniptc/libiptc.la
- else
--iptables_la_LIBADD = -liptc
-+iptables_la_LIBADD = -lip4tc
- endif
- collectd_LDADD += "-dlopen" iptables.la
- collectd_DEPENDENCIES += iptables.la
deleted file mode 100644
@@ -1,10 +0,0 @@
---- collectd-4.10.9/src/utils_mount.c~ 2022-08-10 13:45:39.424289940 +0000
-+++ collectd-4.10.9/src/utils_mount.c 2022-08-10 13:45:58.224239495 +0000
-@@ -31,6 +31,7 @@
- #include "plugin.h"
- #include "utils_mount.h"
-
-+#undef HAVE_XFS_XQM_H
- #if HAVE_XFS_XQM_H
- # include <xfs/xqm.h>
- #define XFS_SUPER_MAGIC_STR "XFSB"
deleted file mode 100644
@@ -1,63 +0,0 @@
-Based on patch from Pavel Rochnyack
-https://git.ipfire.org/?p=thirdparty/collectd.git;a=commitdiff;h=d5a3c020d33cc33ee8049f54c7b4dffcd123bf83
-
-diff -Naur collectd-4.10.9/src/sensors.c.orig collectd-4.10.9/src/sensors.c
---- collectd-4.10.9/src/sensors.c.orig 2013-04-08 08:26:17.000000000 +0200
-+++ collectd-4.10.9/src/sensors.c 2021-04-13 23:17:43.196069346 +0200
-@@ -150,7 +150,7 @@
- # endif
- /* #endif SENSORS_API_VERSION < 0x400 */
-
--#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
-+#elif (SENSORS_API_VERSION >= 0x400)
- typedef struct featurelist
- {
- const sensors_chip_name *chip;
-@@ -162,11 +162,7 @@
- # ifndef SENSORS_CONF_PATH
- # define SENSORS_CONF_PATH "/etc/sensors3.conf"
- # endif
--/* #endif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500) */
-
--#else /* if SENSORS_API_VERSION >= 0x500 */
--# error "This version of libsensors is not supported yet. Please report this " \
-- "as bug."
- #endif
-
- static const char *conffile = SENSORS_CONF_PATH;
-@@ -394,7 +390,7 @@
- } /* while sensors_get_detected_chips */
- /* #endif SENSORS_API_VERSION < 0x400 */
-
--#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
-+#elif (SENSORS_API_VERSION >= 0x400)
- chip_num = 0;
- while ((chip = sensors_get_detected_chips (NULL, &chip_num)) != NULL)
- {
-@@ -448,7 +444,7 @@
- } /* while (subfeature) */
- } /* while (feature) */
- } /* while (chip) */
--#endif /* (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500) */
-+#endif /* (SENSORS_API_VERSION >= 0x400) */
-
- if (first_feature == NULL)
- {
-@@ -541,7 +537,7 @@
- } /* for fl = first_feature .. NULL */
- /* #endif SENSORS_API_VERSION < 0x400 */
-
--#elif (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500)
-+#elif (SENSORS_API_VERSION >= 0x400)
- for (fl = first_feature; fl != NULL; fl = fl->next)
- {
- double value;
-@@ -576,7 +572,7 @@
-
- sensors_submit (plugin_instance, type, type_instance, value);
- } /* for fl = first_feature .. NULL */
--#endif /* (SENSORS_API_VERSION >= 0x400) && (SENSORS_API_VERSION < 0x500) */
-+#endif /* (SENSORS_API_VERSION >= 0x400) */
-
- return (0);
- } /* int sensors_read */
deleted file mode 100644
@@ -1,28 +0,0 @@
---- collectd-4.10.9/src/utils_mount.c~ 2018-10-23 12:16:24.979393842 +0000
-+++ collectd-4.10.9/src/utils_mount.c 2018-10-23 12:18:44.473984419 +0000
-@@ -21,20 +21,22 @@
- * Niki W. Waibel <niki.waibel@gmx.net>
- **/
-
-+#define _GNU_SOURCE
-+
- #if HAVE_CONFIG_H
- # include "config.h"
- #endif
-
- #include "common.h"
-+#include "plugin.h"
-+#include "utils_mount.h"
-+
- #if HAVE_XFS_XQM_H
- # include <xfs/xqm.h>
- #define XFS_SUPER_MAGIC_STR "XFSB"
- #define XFS_SUPER_MAGIC2_STR "BSFX"
- #endif
-
--#include "plugin.h"
--#include "utils_mount.h"
--
- #if HAVE_GETVFSSTAT
- # if HAVE_SYS_TYPES_H
- # include <sys/types.h>