Christian Brauner
6bc4165d3c
start: simplify startup synchronization
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:58:01 +02:00
Christian Brauner
8945dad0dd
start: reorder START_SYNC_POST_CONFIGURE
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:27:58 +02:00
Christian Brauner
46a3bf0778
start: use barrier instead of wake/wait pair
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:27:58 +02:00
Christian Brauner
2df612d422
conf: use explicit signage in bit field
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:27:58 +02:00
Christian Brauner
111ed96e9c
conf: move file descriptor synchronization with parent into single function
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:27:58 +02:00
Christian Brauner
493ae3fe7e
conf: move file descriptor synchronization with child into single function
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:27:58 +02:00
Christian Brauner
98db769c83
cgroups: rework check whether legacy hierarchy is writable
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-21 17:27:58 +02:00
Stéphane Graber
ddd51bd187
Merge pull request #3846 from brauner/2021-05-19.fixes
...
conf: fix mount option parsing
2021-05-19 14:09:14 -04:00
Christian Brauner
380fcc0863
conf: fix mount option parsing
...
Fixes: Coverity 1484906
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 17:38:20 +02:00
Stéphane Graber
e2e70bd5a2
Merge pull request #3843 from brauner/2021-05-17.idmapped.lxc.mount.entry
...
conf: support idmapped lxc.mount.entry entries
2021-05-19 09:55:26 -04:00
Christian Brauner
df5e747dc9
confile: free mount data
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 14:21:52 +02:00
Christian Brauner
5a782dca99
conf: add sequence when setting up idmapped mounts
...
Make sure we catch any weird behavior.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 14:21:52 +02:00
Christian Brauner
1b82d72144
conf: support idmapped lxc.mount.entry entries
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-19 14:21:51 +02:00
Christian Brauner
966dad2494
Merge pull request #3844 from CecilHarvey/master
...
Skip rootfs pinning for read-only file system.
2021-05-18 21:37:14 +02:00
Wei Mingzhi
e859a5ee2c
Skip rootfs pinning for read-only file system.
...
Signed-off-by: Wei Mingzhi <weimingzhi@baidu.com>
2021-05-18 20:37:52 +08:00
Christian Brauner
1e4bce2c14
conf: rename struct mount_opt flag member s/flag/legacy_flag/
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-17 12:44:20 +02:00
Christian Brauner
d94eb39059
tree-wide: s/parse_mntopts/parse_mntopts_legacy/
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-17 12:40:08 +02:00
Stéphane Graber
73936a0d5c
Merge pull request #3842 from brauner/2021-05-14.fixes
...
start: move idmapped mount setup later
2021-05-14 13:49:18 -04:00
Christian Brauner
e4564b7ef9
start: move idmapped mount setup later
...
At the prior location we we're placed between sending and receiving
networking information over the data socket causing the startup to fail.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-14 19:00:14 +02:00
Stéphane Graber
5b70f02efc
Merge pull request #3840 from brauner/2021-05-12.fixes.rootfs
...
conf: fix containers without rootfs
2021-05-12 09:03:33 -04:00
Christian Brauner
c119f0185b
conf: tweak rootfs handling
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-12 10:23:55 +02:00
Christian Brauner
f6c5aab0c0
conf: don't unmount procfs and sysfs
...
Fixes : #3838
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-12 10:23:51 +02:00
Christian Brauner
89606dfb31
conf: allow xdev when setting up /dev
...
Fixes : #3838
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-12 10:23:14 +02:00
Stéphane Graber
3bd21f4e39
Merge pull request #3837 from brauner/2021-05-10.fixes.cgroup
...
cgroups: clean up cgroup_ops on initialization error
2021-05-11 08:51:27 -04:00
Christian Brauner
e3d78fdc8c
cgroups: clean up cgroup_ops on initialization error
...
Fixes : #3836
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-11 09:05:03 +02:00
Stéphane Graber
fb6991e5e7
Merge pull request #3826 from brauner/2021-05-04.fuzz.cgroup
...
oss-fuzz: add basic cgroup_init()/cgroup_exit() fuzzing
2021-05-10 12:12:56 -04:00
Stéphane Graber
bff268e79a
Merge pull request #3834 from brauner/2021-05-10.fixes
...
tests: fix lxc-test-arch-parse for make dist
2021-05-10 11:25:51 -04:00
Christian Brauner
4fb70d07da
tests: fix lxc-test-arch-parse for make dist
...
Fixes: https://jenkins.linuxcontainers.org/job/lxc-build-tarballs/2762/console
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-10 17:13:10 +02:00
Stéphane Graber
ccd43350da
Merge pull request #3833 from brauner/2021-05-09.fixes
...
confile: re-add aarch64 architecture
2021-05-09 13:03:17 -04:00
Christian Brauner
90658f1604
tests: add tests for supported architectures
...
Ensure that we detect all supported architectures and don't regress
recognizing them.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-09 16:26:53 +02:00
Christian Brauner
cae2b16fda
confile: re-add aarch64 architecture
...
Apparenty we dropped this when we cleaned up architecture handling.
Fixes : #3832
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-09 15:45:42 +02:00
Christian Brauner
1910c22889
Merge pull request #3831 from sjuxax/zfs-fix
...
Skip rootfs pinning for ZFS roots.
2021-05-09 14:28:23 +02:00
Jeff Cook
0dd4788a84
Reflow ZFS check to follow the style of the overlayfs return.
...
Per https://github.com/lxc/lxc/pull/3831#discussion_r628865713
Signed-off-by: Jeff Cook <jeff@jeffcook.io>
2021-05-09 05:40:17 -06:00
Jeff Cook
4bc6ecbfb7
Skip rootfs pinning for ZFS roots.
...
Signed-off-by: Jeff Cook <jeff@jeffcook.io>
2021-05-08 21:18:54 -06:00
Stéphane Graber
5b508c3713
Merge pull request #3829 from brauner/2021-05-07.fixes
...
doc: document new idmap= option for lxc.rootfs.options
2021-05-07 11:52:05 -04:00
Christian Brauner
1852be9048
doc: document new idmap= option for lxc.rootfs.options
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-07 17:27:06 +02:00
Stéphane Graber
ce86ae557a
Merge pull request #3827 from brauner/2021-05-06.cap_setfcap
...
conf: handle kernels with CAP_SETFCAP
2021-05-06 12:42:23 -04:00
Christian Brauner
86c780115a
conf: handle kernels with CAP_SETFCAP
...
LXC is being very clever and sometimes maps the caller's uid into the
child userns. This means that the caller can technically write fscaps
that are valid in the ancestor userns (which can be a security issue in
some scenarios) so newer kernels require CAP_SETFCAP to do this. Until
newuidmap/newgidmap are updated to account for this simply write the
mapping directly in this case.
Cc: stable-4.0
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-06 18:16:45 +02:00
Christian Brauner
7495196098
oss-fuzz: add basic cgroup_init()/cgroup_exit() fuzzing
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 18:47:13 +02:00
Stéphane Graber
78af4d9c90
Merge pull request #3825 from brauner/2021-05-04.fixes
...
lxc.arch fixes
2021-05-04 10:54:52 -04:00
Christian Brauner
3a88181962
attach: introduce explicit personality macro
...
Introduce LXC_ATTACH_DETECT_PERSONALITY to make it explicit what is
happening instead of using -1.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 16:16:36 +02:00
Christian Brauner
64a04c848a
conf: add personality_t
...
Catch errors in personality handling better.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 16:09:48 +02:00
Christian Brauner
7fd384d11b
attach_options: unbreak header
...
In a moment of idioticity I switch -1 with 0xffffffff in the header
definition but we use -1 to autodetect.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:43:38 +02:00
Christian Brauner
7c43fa56e7
conf: rework lxc_config_parse_arch()
...
Fix architecture parsing. So far we couldn't really differ between "want
default architecture" and "failed to parse requested architecture"
because the -1 return value means both. Fix this by using the return
value only to indicate success or failure and return the parsed
personality in a return argument.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:28:49 +02:00
Christian Brauner
9c601e1f99
conf: tweak setup_personality()
...
Use the dedicated LXC_ARCH_UNCHANGED macro everywhere instead of relying
on -1 being correct.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:28:48 +02:00
Christian Brauner
3860899204
tree-wide: make personality codepaths unconditional
...
Now that we have the infra to make personality handling unconitional
remove the ifndefs everywhere.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:27:44 +02:00
Christian Brauner
3857c4ebf0
syscalls: wrap personality syscall if undefined
...
There's no need to making personality handling conditional as it has
been around for such a long time that only weird systems wouldn't have
support for it. And especially if the user requested a specific
personality to be set but the system doesn't support the personality
syscall we should loudly fail instead of moving on.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:15:28 +02:00
Christian Brauner
1d74176da2
commands: log at debug not info level when receiving file descriptors
...
Don't spam the logs because we do receive a lot of file descriptors.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:15:08 +02:00
Christian Brauner
5f2a6ec4e1
confile: make per_name struct static
...
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2021-05-04 15:14:09 +02:00
Christian Brauner
13723cb9e5
Merge pull request #3823 from evverx/gcc-11-workaround
...
string_utils: get around GCC-11 false positives
2021-05-04 05:10:35 +02:00