Skip to content

Commit

Permalink
lxc: add missing deps
Browse files Browse the repository at this point in the history
Note - this PR is dependent on openwrt/openwrt#17553

Several deps are missing based the output of lxc-checkconfig shown below
before this commit is applied.

CONFIG_IP_NF_TARGET_MASQUERADE and CONFIG_IP6_NF_TARGET_MASQUERADE are
only needed for lxc-net which we do not package.

% lxc-checkconfig | grep missing
Cgroup device: missing
CONFIG_IP_NF_TARGET_MASQUERADE: missing
CONFIG_IP6_NF_TARGET_MASQUERADE: missing
CONFIG_NETFILTER_XT_TARGET_CHECKSUM: missing
FUSE (for use with lxcfs): missing
checkpoint restore: missing
CONFIG_UNIX_DIAG: missing
CONFIG_INET_DIAG: missing
CONFIG_PACKET_DIAG: missing
CONFIG_NETLINK_DIAG: missing

Additionally, two new patches have been added which remove checks for
options that OpenWrt currently does not package and can serve are
false positives for missing items from our kernel config, namely:
lxc-net and lxc-checkpoint

After applying this commit, below is the output showing that the kernel
config[1] should pass all tests for functionality:

% CONFIG=config ./lxc-checkconfig
LXC version 6.0.3

--- Namespaces ---
Namespaces: enabled
Utsname namespace: enabled
Ipc namespace: enabled
Pid namespace: enabled
User namespace: enabled
Network namespace: enabled
Namespace limits:
  cgroup: 383849
  ipc: 383849
  mnt: 383849
  net: 383849
  pid: 383849
  time: 383849
  user: 383849
  uts: 383849

--- Control groups ---
Cgroups: enabled
Cgroup namespace: enabled
Cgroup v1 mount points:
Cgroup v2 mount points:
 - /sys/fs/cgroup
Cgroup device: enabled
Cgroup sched: enabled
Cgroup cpu account: enabled
Cgroup memory controller: enabled
Cgroup cpuset: enabled

--- Misc ---
Veth pair device: enabled, loaded
Macvlan: enabled, not loaded
Vlan: enabled, not loaded
Bridges: enabled, loaded
Advanced netfilter: enabled, loaded
CONFIG_NETFILTER_XT_TARGET_CHECKSUM: enabled, not loaded
CONFIG_NETFILTER_XT_MATCH_COMMENT: enabled, loaded

--- Checkpoint/Restore ---
checkpoint restore: missing
CONFIG_FHANDLE: enabled
CONFIG_EVENTFD: enabled
CONFIG_EPOLL: enabled
CONFIG_UNIX_DIAG: enabled
CONFIG_INET_DIAG: enabled
CONFIG_PACKET_DIAG: enabled
CONFIG_NETLINK_DIAG: enabled
File capabilities: enabled

1. Generated on 23-Feb-2025 running bcm27xx/bcm2712 on r28869+1

Signed-off-by: John Audia <[email protected]>
  • Loading branch information
graysky2 committed Feb 23, 2025
1 parent fd686a3 commit b25f665
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 0 deletions.
6 changes: 6 additions & 0 deletions utils/lxc/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ config LXC_KERNEL_OPTIONS
select KERNEL_NAMESPACES
select KERNEL_DEVPTS_MULTIPLE_INSTANCES
select KERNEL_POSIX_MQUEUE
select KERNEL_CGROUP_DEVICE
select KERNEL_CGROUP_SCHED
select KERNEL_FAIR_GROUP_SCHED
select KERNEL_RT_GROUP_SCHED
Expand All @@ -16,6 +17,7 @@ config LXC_KERNEL_OPTIONS
select KERNEL_MEMCG_KMEM
select KERNEL_CPUSETS
select PACKAGE_kmod-ikconfig
select PACKAGE_kmod-unix-diag
help
Select needed kernel options for LXC related utilities. Options
include cgroups, namespaces and other miscellaneous options. These
Expand Down Expand Up @@ -50,6 +52,10 @@ config LXC_NETWORKING
default n
select PACKAGE_kmod-veth
select PACKAGE_kmod-macvlan
select PACKAGE_kmod-inet-diag
select PACKAGE_kmod-ipt-checksum
select PACKAGE_kmod-netlink-diag
select PACKAGE_kmod-packet-diag
help
Enable "veth pair device" and "macvlan"

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
--- a/src/lxc/cmd/lxc-checkconfig.in
+++ b/src/lxc/cmd/lxc-checkconfig.in
@@ -256,9 +256,6 @@ printf "CONFIG_NETFILTER_XT_MATCH_COMMEN
echo

echo "
---- Checkpoint/Restore ---"
-printf "checkpoint restore: " && is_enabled CONFIG_CHECKPOINT_RESTORE
-echo
printf "CONFIG_FHANDLE: " && is_enabled CONFIG_FHANDLE
echo
printf "CONFIG_EVENTFD: " && is_enabled CONFIG_EVENTFD

0 comments on commit b25f665

Please sign in to comment.