Weekly status for the week of the 17th to the 23rd of September.
Introduction
This past week, the entire LXD team was working together in Brussels.
Part of this was to focus on two features we’ve been working on, snapshots of custom storage volumes and the upcoming LXD projects feature.
The custom storage volume snapshots have now been merged and we’ve made some excellent progress on the LXD projects.
The rest of the code merged this week was primarily bugfixes, some performance improvements and a few minor feature additions.
Upcoming conferences and events
- All Systems Go - Berlin, Germany (September 28-30)
- Linux Security Summit Europe - Edinburgh, UK (October 22-24)
- Open Source Summit Europe - Edinburgh, UK (October 25-26)
- Linux Plumbers Conference - Vancouver, BC (November 13-15)
Ongoing projects
The list below is feature or refactoring work which will span several weeks/months and can’t be tied directly to a single Github issue or pull request.
- LXD projects
- Switching distribution building over to distrobuilder
- Various kernel work
- Stable release work for LXC, LXCFS and LXD
Upstream changes
The items listed below are highlights of the work which happened upstream over the past week and which will be included in the next release.
LXD
- Fixed storage volume URLs in API
- Added detection logic for ChromeOS
- Fixed an SRIOV issue on Intel
- Fixed argument parsing in new netns interface logic
- Fixed an issue with the netnsid check
- Fixed default NVIDIA hook options
- Updated the documentation to reflect correct storage volume API URLs
- Improved network information retrieval logic
- Added a new column to
lxc image list
to display the full image fingerprint - Removed leftover debug statement in netns_getifaddrs
- Made LXD behave on CGroupV2-only systems
LXC
- Added new scoping logic for CGroupV2
- Removed extra MS_BIND with sysfs:mixed
- Added a new
lxc_netns_get_nsid()
function - Removed shutdown of IPC socket in child
- Tightened some file permissions
- Made exec failures on attach return standard shell exit codes
- Added function to remove duplicated codes for set sockaddr
- Removed un-needed CGroup locking
- Fixed potential buffer overflow in conf handling
- Added a new
lxc_has_api_extension
function - Renamed internal references from
backgrounded
todaemonize
- Marked the CGroup functions with
__cgfsng_ops__
attribute - Renamed the
lxc.cgroup.keep
config option tolxc.cgroup.relative
- Add
-Wimplicit-fallthrough
to our build options - Fixed bad check for -Wimplicit-fallthrough
- Added new STRLITERALLEN() and STRARRAYLEN() macros
- Enabled more based hardening
- Added a netns_getifaddrs() implementation
- Fixed cgfsng to copy parent’s cpu settings for monitor too
- Fixed compiler
__attribute__((noreturn))
on bionic - Fixed stop to only freeze if freezer is available
- Fixed cgfsng to set errno to ENOENT on get_hierarchy()
LXCFS
- Nothing to report this week
Distrobuilder
- Nothing to report this week
Distribution work
This section is used to track the work done in downstream Linux distributions to ship the latest LXC, LXD and LXCFS as well as work to get various software to work properly inside containers.
Ubuntu
- Still waiting for 3.0.2 updates to hit -proposed for Ubuntu 18.04
Snap
- Tweaked lxd.migrate to ease migration of Ubuntu 18.10 users
- Fixed some socket activation issues in the edge channel
- Pinned libnvidia-container to a stable upstream release
- Released LXD 3.0.2 to the 3.0 track
- Released LXD 3.5 to the latest track