]> git.ipfire.org Git - thirdparty/lxc.git/log
thirdparty/lxc.git
5 years agoapi-extensions: use correct headings 3290/head
Christian Brauner [Wed, 11 Mar 2020 15:05:13 +0000 (16:05 +0100)] 
api-extensions: use correct headings

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoapi-extensions: document "network_veth_router" api extension
Christian Brauner [Wed, 11 Mar 2020 15:03:09 +0000 (16:03 +0100)] 
api-extensions: document "network_veth_router" api extension

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoapi-extensions: reflow "seccomp_allow_nesting" api extension
Christian Brauner [Wed, 11 Mar 2020 15:02:14 +0000 (16:02 +0100)] 
api-extensions: reflow "seccomp_allow_nesting" api extension

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoapi-extensions: reflow "seccomp_notify" api extension
Christian Brauner [Wed, 11 Mar 2020 15:01:01 +0000 (16:01 +0100)] 
api-extensions: reflow "seccomp_notify" api extension

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoapi-extensions: reflow "cgroup2_devices" extensions
Christian Brauner [Wed, 11 Mar 2020 15:00:34 +0000 (16:00 +0100)] 
api-extensions: reflow "cgroup2_devices" extensions

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoapi-extensions: reflow "cgroup2" api extension
Christian Brauner [Wed, 11 Mar 2020 15:00:11 +0000 (16:00 +0100)] 
api-extensions: reflow "cgroup2" api extension

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoapi-extensions: add "pidfd" api extension
Christian Brauner [Wed, 11 Mar 2020 14:13:33 +0000 (15:13 +0100)] 
api-extensions: add "pidfd" api extension

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agolxccontainer: switch to pidfd polling when shutting down containers
Christian Brauner [Wed, 11 Mar 2020 14:05:45 +0000 (15:05 +0100)] 
lxccontainer: switch to pidfd polling when shutting down containers

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agolxccontainer: switch to pidfds whenever possible
Christian Brauner [Wed, 11 Mar 2020 13:36:58 +0000 (14:36 +0100)] 
lxccontainer: switch to pidfds whenever possible

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agostart: add ability to detect whether kernel supports pidfds
Christian Brauner [Wed, 11 Mar 2020 13:02:40 +0000 (14:02 +0100)] 
start: add ability to detect whether kernel supports pidfds

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agolxccontainer: add init_pidfd() API extension
Christian Brauner [Wed, 11 Mar 2020 12:11:07 +0000 (13:11 +0100)] 
lxccontainer: add init_pidfd() API extension

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: LXC_CMD_GET_INIT_PIDFD
Christian Brauner [Wed, 11 Mar 2020 12:01:17 +0000 (13:01 +0100)] 
commands: LXC_CMD_GET_INIT_PIDFD

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agolxccontainer.h: document seccomp_notify_fd()
Christian Brauner [Wed, 11 Mar 2020 12:04:18 +0000 (13:04 +0100)] 
lxccontainer.h: document seccomp_notify_fd()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: use LXC_CMD_REAP_CLIENT_FD in lxc_cmd_get_cgroup2_fd_callback()
Christian Brauner [Wed, 11 Mar 2020 11:57:22 +0000 (12:57 +0100)] 
commands: use LXC_CMD_REAP_CLIENT_FD in lxc_cmd_get_cgroup2_fd_callback()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: add ability to audit fd connection and cleanup path
Christian Brauner [Wed, 11 Mar 2020 11:02:10 +0000 (12:02 +0100)] 
commands: add ability to audit fd connection and cleanup path

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: simplify lxc_cmd_fd_cleanup() 3288/head
Christian Brauner [Wed, 11 Mar 2020 02:33:16 +0000 (03:33 +0100)] 
commands: simplify lxc_cmd_fd_cleanup()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3287 from brauner/2020-03-11/fixes
Stéphane Graber [Wed, 11 Mar 2020 02:23:35 +0000 (22:23 -0400)] 
Merge pull request #3287 from brauner/2020-03-11/fixes

fixes

5 years agocommands_utils: fix command socket hashing 3287/head
Christian Brauner [Wed, 11 Mar 2020 01:59:36 +0000 (02:59 +0100)] 
commands_utils: fix command socket hashing

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoaf_unix: fix return value
Christian Brauner [Wed, 11 Mar 2020 01:35:51 +0000 (02:35 +0100)] 
af_unix: fix return value

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agostart: cleanup file descriptor closing
Christian Brauner [Wed, 11 Mar 2020 00:56:44 +0000 (01:56 +0100)] 
start: cleanup file descriptor closing

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3286 from brauner/2020-03-10/fixes
Stéphane Graber [Tue, 10 Mar 2020 22:03:17 +0000 (18:03 -0400)] 
Merge pull request #3286 from brauner/2020-03-10/fixes

commands: make sure to always close the client fd

5 years agocommands: make sure to always close the client fd 3286/head
Christian Brauner [Tue, 10 Mar 2020 21:33:00 +0000 (22:33 +0100)] 
commands: make sure to always close the client fd

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3285 from brauner/2020-03-10/fixes
Stéphane Graber [Tue, 10 Mar 2020 21:05:00 +0000 (17:05 -0400)] 
Merge pull request #3285 from brauner/2020-03-10/fixes

bugfixes

5 years agocommands: improve state client cleanup 3285/head
Christian Brauner [Tue, 10 Mar 2020 20:46:25 +0000 (21:46 +0100)] 
commands: improve state client cleanup

Improves: ebbca8529732 ("commands_utils: fix socket leak when adding state client")
Cc: Matthias Hardt <matthias.hardt@gmail.com>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: switch to pid_t to send around pid
Christian Brauner [Tue, 10 Mar 2020 20:35:25 +0000 (21:35 +0100)] 
commands: switch to pid_t to send around pid

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3283 from brauner/2020-03-10/fixes
Stéphane Graber [Tue, 10 Mar 2020 19:21:09 +0000 (15:21 -0400)] 
Merge pull request #3283 from brauner/2020-03-10/fixes

bugfixes

5 years agoshare_ns: improve error handling
Christian Brauner [Tue, 10 Mar 2020 16:52:35 +0000 (17:52 +0100)] 
share_ns: improve error handling

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoshare_ns: improve error handling 3283/head
Christian Brauner [Tue, 10 Mar 2020 16:52:35 +0000 (17:52 +0100)] 
share_ns: improve error handling

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agofile_utils: handle libcs without fmemopen()
Christian Brauner [Tue, 10 Mar 2020 16:41:50 +0000 (17:41 +0100)] 
file_utils: handle libcs without fmemopen()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocgroups: cleanup
Christian Brauner [Tue, 10 Mar 2020 16:07:33 +0000 (17:07 +0100)] 
cgroups: cleanup

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocgfsng: use __do_free_string_list all over
Christian Brauner [Tue, 10 Mar 2020 15:33:15 +0000 (16:33 +0100)] 
cgfsng: use __do_free_string_list all over

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agofile_utils: include stdio.h for fmemopen()
Christian Brauner [Tue, 10 Mar 2020 15:23:27 +0000 (16:23 +0100)] 
file_utils: include stdio.h for fmemopen()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agotests/share_ns: always call pthread_exit()
Christian Brauner [Tue, 10 Mar 2020 15:23:11 +0000 (16:23 +0100)] 
tests/share_ns: always call pthread_exit()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3282 from brauner/2020-03-10/fixes
Stéphane Graber [Tue, 10 Mar 2020 15:23:36 +0000 (11:23 -0400)] 
Merge pull request #3282 from brauner/2020-03-10/fixes

memory_utils: remove unneeded inclusion of mntent.h

5 years agomemory_utils: remove unneeded inclusion of mntent.h 3282/head
Christian Brauner [Tue, 10 Mar 2020 15:08:06 +0000 (16:08 +0100)] 
memory_utils: remove unneeded inclusion of mntent.h

Fixes: Android
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3281 from brauner/2020-03-10/fixes
Stéphane Graber [Tue, 10 Mar 2020 14:03:06 +0000 (10:03 -0400)] 
Merge pull request #3281 from brauner/2020-03-10/fixes

tree-wide: cleanup

5 years agocgroups: fix memory leak and simplify code 3281/head
Christian Brauner [Tue, 10 Mar 2020 13:44:59 +0000 (14:44 +0100)] 
cgroups: fix memory leak and simplify code

Closes #3252.
Reported-by: LiFeng <lifeng68@huawei.com>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agotests/share_ns: bugfixes
Christian Brauner [Tue, 10 Mar 2020 12:11:00 +0000 (13:11 +0100)] 
tests/share_ns: bugfixes

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoconf: cleanup
Christian Brauner [Tue, 10 Mar 2020 11:57:00 +0000 (12:57 +0100)] 
conf: cleanup

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands_utils: cleanup
Christian Brauner [Tue, 10 Mar 2020 10:36:04 +0000 (11:36 +0100)] 
commands_utils: cleanup

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: cleanup
Christian Brauner [Tue, 10 Mar 2020 10:31:07 +0000 (11:31 +0100)] 
commands: cleanup

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3279 from brauner/2020-03-04/improvements
Stéphane Graber [Tue, 10 Mar 2020 03:38:53 +0000 (23:38 -0400)] 
Merge pull request #3279 from brauner/2020-03-04/improvements

bugfixes

5 years agotree-wide: more cleanup macros 3279/head
Christian Brauner [Mon, 9 Mar 2020 09:59:14 +0000 (10:59 +0100)] 
tree-wide: more cleanup macros

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agolxccontainer: increase cleanup macro usage
Christian Brauner [Mon, 9 Mar 2020 13:55:12 +0000 (14:55 +0100)] 
lxccontainer: increase cleanup macro usage

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoautotools: fix lxc-init build with clang-10
Christian Brauner [Mon, 9 Mar 2020 13:38:46 +0000 (14:38 +0100)] 
autotools: fix lxc-init build with clang-10

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agotree-wide: improve logging
Christian Brauner [Mon, 9 Mar 2020 09:59:14 +0000 (10:59 +0100)] 
tree-wide: improve logging

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agotree-wide: make files cloexec whenever possible
Christian Brauner [Mon, 9 Mar 2020 09:18:55 +0000 (10:18 +0100)] 
tree-wide: make files cloexec whenever possible

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: cleanup various helpers
Christian Brauner [Mon, 9 Mar 2020 09:17:55 +0000 (10:17 +0100)] 
attach: cleanup various helpers

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: use logging helpers when handling no new privileges
Christian Brauner [Mon, 9 Mar 2020 09:14:34 +0000 (10:14 +0100)] 
attach: use logging helpers when handling no new privileges

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: use cleanup macros and logging helpers when fetching seccomp
Christian Brauner [Mon, 9 Mar 2020 09:12:44 +0000 (10:12 +0100)] 
attach: use cleanup macros and logging helpers when fetching seccomp

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: use LXC_INVALID_{G,U}ID macros
Christian Brauner [Mon, 9 Mar 2020 09:08:37 +0000 (10:08 +0100)] 
attach: use LXC_INVALID_{G,U}ID macros

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: use cleanup macros in lxc_attach_getpwshell()
Christian Brauner [Mon, 9 Mar 2020 09:06:50 +0000 (10:06 +0100)] 
attach: use cleanup macros in lxc_attach_getpwshell()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: fix fd leak
Christian Brauner [Mon, 9 Mar 2020 09:05:25 +0000 (10:05 +0100)] 
attach: fix fd leak

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoattach: cleanup
Christian Brauner [Thu, 5 Mar 2020 09:03:38 +0000 (10:03 +0100)] 
attach: cleanup

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocgroup2_devices: fix logic error
Christian Brauner [Mon, 9 Mar 2020 13:33:16 +0000 (14:33 +0100)] 
cgroup2_devices: fix logic error

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agocommands: remove unused variables
Christian Brauner [Mon, 9 Mar 2020 13:33:04 +0000 (14:33 +0100)] 
commands: remove unused variables

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3280 from Piscolero/state_client_socket_leak_fix
Christian Brauner [Mon, 9 Mar 2020 20:02:26 +0000 (21:02 +0100)] 
Merge pull request #3280 from Piscolero/state_client_socket_leak_fix

commands_utils: fix socket leak when adding state client

5 years agocommands_utils: fix socket leak when adding state client 3280/head
Matthias Hardt [Mon, 9 Mar 2020 18:58:22 +0000 (19:58 +0100)] 
commands_utils: fix socket leak when adding state client

If lxc_add_state_client() is called with the container already being in the desired state the client fd will never be closed and is leaking. This is due to setting stay_connected in lxc_cmd for LXC_CMD_ADD_STATE_CLIENT. If the desired state isn't already achieved the client fd will later be closed by calling lxc_cmd_fd_cleanup() but in the other case the client configuration isn't added to the handlers
state clients. So the client fd has to be closed explicitely.

This is simply tested by starting container A and calling lxc-wait -n A -s RUNNING.

Signed-off-by: Matthias Hardt <matthias.hardt@gmail.com>
5 years agoRevert "commands_utils: fix socket leak in when adding state client"
Matthias Hardt [Mon, 9 Mar 2020 18:42:55 +0000 (19:42 +0100)] 
Revert "commands_utils: fix socket leak in when adding state client"

This reverts commit d7aa5552448680c8ff7c4af8c19ea5dbd678e946.

Signed-off-by: Matthias Hardt <matthias.hardt@gmail.com>
5 years agoRevert "commands_utils: indicate taking ownership of state_client_fd in"
Matthias Hardt [Mon, 9 Mar 2020 18:42:53 +0000 (19:42 +0100)] 
Revert "commands_utils: indicate taking ownership of state_client_fd in"

This reverts commit cd0dc360ce740ba302dacc3dc70c6b20b2a5f794.

Signed-off-by: Matthias Hardt <matthias.hardt@gmail.com>
5 years agocommands_utils: indicate taking ownership of state_client_fd in
Matthias Hardt [Mon, 9 Mar 2020 15:12:28 +0000 (16:12 +0100)] 
commands_utils: indicate taking ownership of state_client_fd in
lxc_add_state_client()

Signed-off-by: Matthias Hardt <matthias.hardt@gmail.com>
5 years agocommands_utils: fix socket leak in when adding state client
Matthias Hardt [Mon, 9 Mar 2020 14:53:11 +0000 (15:53 +0100)] 
commands_utils: fix socket leak in when adding state client

If lxc_add_state_client() is called with the container already being in
the desired state the client fd will never be closed and is leaking.
This due to setting stay_connected in lxc_cmd for
LXC_CMD_ADD_STATE_CLIENT. If the desired state isn't already achieved
the client fd will later be closed by calling lxc_cmd_fd_cleanup() but
in the other case the client configuration isn't added to the handlers
state clients. So the client fd has to be closed explicitely.

This is simply tested by starting container A and calling lxc-wait -n A
-s RUNNING.

Signed-off-by: Matthias Hardt <matthias.hardt@gmail.com>
5 years agoaf_unix: cleanup
Christian Brauner [Wed, 4 Mar 2020 14:21:18 +0000 (15:21 +0100)] 
af_unix: cleanup

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3278 from tomponline/tp-proxy-sleep
Christian Brauner [Sun, 8 Mar 2020 19:43:09 +0000 (20:43 +0100)] 
Merge pull request #3278 from tomponline/tp-proxy-sleep

network: Adds short sleep between veth setup and neighbour proxy add

5 years agoMerge pull request #3277 from tomponline/tp-router-netlink
Christian Brauner [Sun, 8 Mar 2020 19:31:43 +0000 (20:31 +0100)] 
Merge pull request #3277 from tomponline/tp-router-netlink

network: Uses netlink for IP neighbour proxy management

5 years agonetwork: Adds short sleep between veth setup and neighbour proxy add 3278/head
Thomas Parrott [Sun, 8 Mar 2020 18:28:44 +0000 (18:28 +0000)] 
network: Adds short sleep between veth setup and neighbour proxy add

There is an intermittent issue, experienced on at least Ubuntu 18.04 (5.3.0-40-generic) and Alpine 3.11 (5.4.12-1-virt) when using the router network interface type that causes the IP proxy neighbour entries on the host side of the veth pair to not be created.

The `ip neigh add proxy` command returns without an error, however by the time the network up hook has started the IP neighbour proxy entries are no longer there (if they ever were).

I've also tested this using netlink rather than the ip command to add and both are equally affected.

Adding a short sleep between setting up the veth pair and adding the proxy entries appears to fix it.

Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
5 years agonetwork: Uses netlink for IP neighbour proxy management 3277/head
Thomas Parrott [Sun, 8 Mar 2020 17:48:01 +0000 (17:48 +0000)] 
network: Uses netlink for IP neighbour proxy management

Removes need for ip command when managing IP neighbour proxies.

Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
5 years agoMerge pull request #3275 from brauner/2020-03-05/api_extension
Stéphane Graber [Thu, 5 Mar 2020 10:36:38 +0000 (11:36 +0100)] 
Merge pull request #3275 from brauner/2020-03-05/api_extension

utils: only move_fd() when fdopen() has been successful

5 years agoutils: only move_fd() when fdopen() has been successful 3275/head
Christian Brauner [Thu, 5 Mar 2020 10:14:24 +0000 (11:14 +0100)] 
utils: only move_fd() when fdopen() has been successful

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3274 from brauner/2020-03-05/api_extension
Stéphane Graber [Thu, 5 Mar 2020 09:36:40 +0000 (10:36 +0100)] 
Merge pull request #3274 from brauner/2020-03-05/api_extension

fixes

5 years agoapi-extensions: document cgroup2_devices and cgroup2 api extensions 3274/head
Christian Brauner [Thu, 5 Mar 2020 09:02:12 +0000 (10:02 +0100)] 
api-extensions: document cgroup2_devices and cgroup2 api extensions

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3272 from ffontaine/master
Christian Brauner [Sat, 29 Feb 2020 02:35:04 +0000 (03:35 +0100)] 
Merge pull request #3272 from ffontaine/master

src/lxc/raw_syscalls.c: fix sparc assembly

5 years agosrc/lxc/raw_syscalls.c: fix sparc assembly 3272/head
Fabrice Fontaine [Fri, 28 Feb 2020 16:35:42 +0000 (17:35 +0100)] 
src/lxc/raw_syscalls.c: fix sparc assembly

Build of lxc 3.2.1 fails with ultrasparc on:

raw_syscalls.c: In function ‘lxc_raw_clone’:
raw_syscalls.c:66:3: error: invalid 'asm': invalid operand output code
   asm volatile(
   ^~~

Issue has been added with commit
b52e8e68a61866da2af86e85905ec850f8a8b7fc which added %g1 instead of %%g1

Fixes:
 - http://autobuild.buildroot.org/results/17c2319850f02f24da6fbef9656c07f86fdc5a3a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
5 years agoMerge pull request #3271 from brauner/2020-02-28/support_cgroup_pattern_2
Stéphane Graber [Fri, 28 Feb 2020 11:36:30 +0000 (12:36 +0100)] 
Merge pull request #3271 from brauner/2020-02-28/support_cgroup_pattern_2

cgroups: honor lxc.cgroup.pattern if set explicitly II

5 years agocgroups: honor lxc.cgroup.pattern if set explicitly II 3271/head
Christian Brauner [Thu, 27 Feb 2020 22:02:31 +0000 (23:02 +0100)] 
cgroups: honor lxc.cgroup.pattern if set explicitly II

Link: https://discuss.linuxcontainers.org/t/lxc-cgroup-pattern-is-not-being-honored
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3270 from brauner/2020-02-27/support_cgroup_pattern
Stéphane Graber [Fri, 28 Feb 2020 11:08:13 +0000 (12:08 +0100)] 
Merge pull request #3270 from brauner/2020-02-27/support_cgroup_pattern

cgroups: honor lxc.cgroup.pattern if set explicitly

5 years agocgroups: honor lxc.cgroup.pattern if set explicitly 3270/head
Christian Brauner [Thu, 27 Feb 2020 22:02:31 +0000 (23:02 +0100)] 
cgroups: honor lxc.cgroup.pattern if set explicitly

Link: https://discuss.linuxcontainers.org/t/lxc-cgroup-pattern-is-not-being-honored
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3268 from brauner/2020-02-25/cgroups
Stéphane Graber [Tue, 25 Feb 2020 19:34:18 +0000 (20:34 +0100)] 
Merge pull request #3268 from brauner/2020-02-25/cgroups

cgroups: remove unused method and cleanup cgroup_exit()

5 years agocgroups: remove unused method and cleanup cgroup_exit() 3268/head
Christian Brauner [Tue, 25 Feb 2020 12:36:51 +0000 (13:36 +0100)] 
cgroups: remove unused method and cleanup cgroup_exit()

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3265 from brauner/2020-02-13/fix_setgroups
Stéphane Graber [Thu, 13 Feb 2020 00:10:31 +0000 (01:10 +0100)] 
Merge pull request #3265 from brauner/2020-02-13/fix_setgroups

tree-wide: improve setgroups() dropping

5 years agotree-wide: improve setgroups() dropping 3265/head
Christian Brauner [Wed, 12 Feb 2020 23:16:15 +0000 (00:16 +0100)] 
tree-wide: improve setgroups() dropping

Drop groups before we change to userns root.

Reported-by: Teddy Reed <teddy.reed@gmail.com>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3264 from tych0/fix-leak
Christian Brauner [Mon, 10 Feb 2020 17:06:39 +0000 (18:06 +0100)] 
Merge pull request #3264 from tych0/fix-leak

lxclock: fix a small memory leak

5 years agolxclock: fix a small memory leak 3264/head
Tycho Andersen [Mon, 10 Feb 2020 15:14:33 +0000 (08:14 -0700)] 
lxclock: fix a small memory leak

if (!name), we allocate an unnamed semaphore, but if we then fail to
allocate/create the lock, we don't free this semaphore, and we just leak
it.

Signed-off-by: Tycho Andersen <tycho@tycho.ws>
5 years agoMerge pull request #3261 from blenk92/fix-parse-config
Christian Brauner [Wed, 5 Feb 2020 18:49:48 +0000 (19:49 +0100)] 
Merge pull request #3261 from blenk92/fix-parse-config

container.conf: Fix parsing of config options:

5 years agocontainer.conf: Document that order is important in config_jump_table 3261/head
Maximilian Blenk [Wed, 5 Feb 2020 18:25:53 +0000 (19:25 +0100)] 
container.conf: Document that order is important in config_jump_table

Add a comment that documents that more specific options of a
namespace have to be added above more generic options in
config_jump_table.

Signed-off-by: Maximilian Blenk <Maximilian.Blenk@bmw.de>
5 years agocontainer.conf: Fix option ordering in config_jump_table
Maximilian Blenk [Wed, 5 Feb 2020 18:19:05 +0000 (19:19 +0100)] 
container.conf: Fix option ordering in config_jump_table

Currently lxc.selinux.context.keyring is placed after
lxc.selinux.context in config_jump_table. This entails that if
lxc.selinux.context.keyring is specified, lxc.selinux.context will be
matched to that option. This commit places the
lxc.selinux.context.keyring before lxc.selinux.context

Signed-off-by: Maximilian Blenk <Maximilian.Blenk@bmw.de>
5 years agocontainer.conf: Fix off by 2 in option parsing
Maximilian Blenk [Wed, 5 Feb 2020 18:17:51 +0000 (19:17 +0100)] 
container.conf: Fix off by 2 in option parsing

This commit fixes a off by 2 in config option parsing
(due to missing parenthesis). The error occurs if for instance
lxc.net.0.type is parsed. In that case, the .0 is removed from the
string. However, due to the missing parenthesis, the null terminating
character is off by two which means the modified config option would
be lxc.net.typepe instead of lxc.net.type.

Signed-off-by: Maximilian Blenk <Maximilian.Blenk@bmw.de>
5 years agoMerge pull request #3260 from blenk92/add-keyring-option
Christian Brauner [Fri, 31 Jan 2020 14:56:54 +0000 (15:56 +0100)] 
Merge pull request #3260 from blenk92/add-keyring-option

Add keyring option

5 years agodoc: Add doc for keyring options 3260/head
Maximilian Blenk [Wed, 29 Jan 2020 17:10:38 +0000 (18:10 +0100)] 
doc: Add doc for keyring options

Signed-off-by: Maximilian Blenk <Maximilian.Blenk@bmw.de>
5 years agocontainer.conf: Add option to disable session keyring creation
Maximilian Blenk [Thu, 30 Jan 2020 18:21:10 +0000 (19:21 +0100)] 
container.conf: Add option to disable session keyring creation

lxc set's up a new session keyring for every container by default.
There might be valid use-cases where this is not wanted / needed
(e.g. systemd by default creates a new session keyring anyway).

Signed-off-by: Maximilian Blenk <Maximilian.Blenk@bmw.de>
5 years agocontainer.conf: Add option to set keyring SELinux context
Maximilian Blenk [Wed, 29 Jan 2020 16:09:50 +0000 (17:09 +0100)] 
container.conf: Add option to set keyring SELinux context

lxc set's up a new session keyring for every container by default.
If executed on an SELinux enabled system, by default, the keyring
inherits the label of the creating process. If executed with the
currently available SELinux policy, this means that the keyring
is labeled with the lxc_t type. Applications inside the container,
however, might expect that the keyring is labeled with a certain
context (and will fail to access the keyring if it's not explicitly
allowed in the global policy). This patch introduces the config
option lxc.selinux.context.keyring which enables to specify the
label of the newly created keyring. That is, the keyring can be
labeled with the label expected by the started application.

Signed-off-by: Maximilian Blenk <Maximilian.Blenk@bmw.de>
5 years agoMerge pull request #3259 from chobostar/fix_default_cgroup_pattern
Christian Brauner [Mon, 27 Jan 2020 13:11:12 +0000 (14:11 +0100)] 
Merge pull request #3259 from chobostar/fix_default_cgroup_pattern

cgroups: fix default cgroup pattern

5 years agocgroups: fix default cgroup pattern 3259/head
Kirill Petrov [Mon, 27 Jan 2020 08:51:36 +0000 (11:51 +0300)] 
cgroups: fix default cgroup pattern

Signed-off-by: Kirill Petrov <yakutskkirill@mail.ru>
5 years agoMerge pull request #3255 from brauner/2020-01-16/fix_monitor_hang
Stéphane Graber [Fri, 17 Jan 2020 13:18:10 +0000 (08:18 -0500)] 
Merge pull request #3255 from brauner/2020-01-16/fix_monitor_hang

start: fix container killing logic

5 years agostart: fix container killing logic 3255/head
Christian Brauner [Thu, 16 Jan 2020 17:02:35 +0000 (18:02 +0100)] 
start: fix container killing logic

We need to account for the case where pidfd's are not supported by the kernel
in question.

Closes: #3254
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
5 years agoMerge pull request #3253 from tomponline/tp-network-mtu
Christian Brauner [Wed, 15 Jan 2020 10:15:13 +0000 (11:15 +0100)] 
Merge pull request #3253 from tomponline/tp-network-mtu

network: Restore fixed MTU functionality

5 years agonetwork: Restore fixed MTU functionality 3253/head
Thomas Parrott [Wed, 15 Jan 2020 09:33:31 +0000 (09:33 +0000)] 
network: Restore fixed MTU functionality

If MTU setting is provided in network device config then always use it rather than inheriting from the link device.

Affected both bridge and router veth modes.

Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
5 years agoMerge pull request #3251 from brauner/master
Stéphane Graber [Tue, 14 Jan 2020 14:58:33 +0000 (09:58 -0500)] 
Merge pull request #3251 from brauner/master

test: increase timeout for api reboot tests

5 years agoMerge pull request #3250 from lifeng68/fix_lxc
Christian Brauner [Tue, 14 Jan 2020 13:11:53 +0000 (14:11 +0100)] 
Merge pull request #3250 from lifeng68/fix_lxc

cgroup.c: fix memory leak at cgroup init failed

5 years agotest: increase timeout for api reboot tests 3251/head
Christian Brauner [Tue, 14 Jan 2020 12:50:45 +0000 (13:50 +0100)] 
test: increase timeout for api reboot tests

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>