You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
2.3 KiB
49 lines
2.3 KiB
From 6df5513d294ae368f2a09fb47917e11048347885 Mon Sep 17 00:00:00 2001 |
|
From: Lennart Poettering <lennart@poettering.net> |
|
Date: Wed, 22 Apr 2015 13:50:56 +0200 |
|
Subject: [PATCH] kmod-setup: load ip_tables kmod at boot |
|
|
|
The module is currently no auto-loadable (and this is unlikely to change |
|
anytime soon, given it's API is via getsockopt/setsockopt). It is needed |
|
by networkd and nspawn currently. |
|
|
|
Users who really don't like the module to be loaded have the option to |
|
blacklist it still, or not compile it at all. But for all others this |
|
should make things work out-of-the-box. |
|
|
|
(cherry picked from commit 1d3087978a8ee23107cb64aa55ca97aefe9531e2) |
|
|
|
Cherry-picked from: f801bf8 |
|
Resolves: #1222517 |
|
--- |
|
src/core/kmod-setup.c | 11 +++++++---- |
|
1 file changed, 7 insertions(+), 4 deletions(-) |
|
|
|
diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c |
|
index c0a05b97aa..97f3b9b34a 100644 |
|
--- a/src/core/kmod-setup.c |
|
+++ b/src/core/kmod-setup.c |
|
@@ -63,16 +63,19 @@ int kmod_setup(void) { |
|
bool (*condition_fn)(void); |
|
} kmod_table[] = { |
|
/* auto-loading on use doesn't work before udev is up */ |
|
- { "autofs4", "/sys/class/misc/autofs", true, NULL }, |
|
+ { "autofs4", "/sys/class/misc/autofs", true, NULL }, |
|
|
|
/* early configure of ::1 on the loopback device */ |
|
- { "ipv6", "/sys/module/ipv6", true, NULL }, |
|
+ { "ipv6", "/sys/module/ipv6", true, NULL }, |
|
|
|
/* this should never be a module */ |
|
- { "unix", "/proc/net/unix", true, NULL }, |
|
+ { "unix", "/proc/net/unix", true, NULL }, |
|
|
|
/* IPC is needed before we bring up any other services */ |
|
- { "kdbus", "/sys/fs/kdbus", false, cmdline_check_kdbus }, |
|
+ { "kdbus", "/sys/fs/kdbus", false, cmdline_check_kdbus }, |
|
+ |
|
+ /* netfilter is needed by networkd, nspawn among others, and cannot be autoloaded */ |
|
+ { "ip_tables", "/proc/net/ip_tables_names", false, NULL }, |
|
}; |
|
struct kmod_ctx *ctx = NULL; |
|
unsigned int i;
|
|
|