News

LXCFS 2.0.8 release announcement 19th of October 2017

This is the eigth bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • bindings: Add mountpoint for unified hierarchy
  • bindings: Calculate uptime via proc//stat
  • bindings: Revert virtualization of 'btime' field due to regressions in ps
  • doc: Update README
  • init: Add cgroupfs-mount to Should-Start/Stop sysvinit LSB headers
  • lib: Add common fallback dlopen for liblxcfs.so
  • lib: Fix the installation directory for liblxcfs to ${libdir}/lxcfs
  • pam: Add a 'all' option for -c
  • pam: Chown cgroup.procs file on unified hierarchy
  • pam: Report back when we find a unified hierarchy
  • tests: Fix invalid comparison
  • uptime: Fix a problem with subsequent reads

LXCFS 2.0.7 release announcement 11th of May 2017

This is the seventh bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Remove unused variable
  • Also check next variable for NULL on cg_rmdir
  • virtualize the 'btime' field of /proc/stat
  • cleanup: return false instead of NULL as bool
  • Limit memswlimit by TotalSwap
  • pam_cgfs: remove dead assignment
  • pam_cgfs: return created directly
  • pam_cgfs: make sure that **p is not NULL
  • bindings: Want space for ints? Call sizeof(int)!
  • pam_cgfs: make trim() safer
  • pam_cgfs: error out on failure in cgv2_init()
  • pam_cgfs: remove dead assignment
  • bindings: implement guest nice
  • bindings: increase reserved buffer size a little

LXCFS 2.0.6 release announcement 23rd of January 2017

This is the sixth bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Fix swap values with nested cgroups
  • tests: Fix run on ppc64el
  • Fix wrong scanning of memory.stat

LXCFS 2.0.5 release announcement 23rd of November 2016

This is the fifth bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Add Documentation key to systemd unit
  • bindings: allow getattr on O_WRONLY files
  • bindings: remove noop check
  • fix Active/Inactive /proc/meminfo
  • macro: add header for shared macros
  • pam_cgfs: reimplement and add cgroupfs v2 support
  • pam_cgfs: re-use cgroups that already belong to us
  • pam_cgfs: handle cgroupfs v1 cpuset controller
  • pam_cgfs: improve logging
  • cgroups: handle non-existent isolcpus file

LXCFS 2.0.4 release announcement 5th of October 2016

This is the fourth bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Fix test_reload for lxcfs chroot
  • Virtualize more of the meminfo fields
  • pam: fix race in cgroup creation
  • meminfo: don't show negative swapfree
  • bindings: improve debugging
  • bindings: use openat fd for fstatat(), unlinkat()
  • bindings: close open fds on error
  • bindings: grant access to /var/lib/lxcfs
  • bindings: enable access to /var/lib/lxcfs/cgroup
  • bindings: allow access to /var/lib/lxcfs/proc
  • lxcfs, bindings: show "." and ".." dir entries
  • lxcfs: better fs behavior on /var/lib/lxcfs
  • bindings: non functional changes
  • bindings: set errno in pick_controller_from_path()
  • bindings: more consistent fs behavior
  • add pld linux support
  • don't use argv[0] in usage output
  • bindings: revert cgroup check
  • bindings: improve returned errnos
  • bindings: make rmdir behave more consistently
  • libtool: do not link lxcfs against liblxcfs
  • bindings, lxcfs: improve debugging
  • bindings: fix debug macro
  • autotools: add -avoid-version
  • bindings: restore original working directory
  • bindings: add function to check fs type
  • bindings: agnostic naming
  • bindings: use chroot() on ramfs
  • bindings: fix type weirdness with statfs f_type
  • bindings: make pivot_enter() contain all its code

LXCFS 2.0.3 release announcement 15th of August 2016

This is the third bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Skip empty entries under /proc/self/cgroup
  • Setup and use a minimal chroot and mount namespace for cgroup mounts
  • Code cleanup and minor refactoring

LXCFS 2.0.2 release announcement 28th of June 2016

This is the second bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Don't build pam/ when --with-pamdir=none
  • libpam_cgfs: Don't create new path if we are under /user.slice/user-$uid.slice

LXCFS 2.0.1 release announcement 16th of May 2016

This is the first bugfix release for LXCFS 2.0.

This includes the following bugfixes:

  • Fix cpuinfo on s390x.
  • Use recursive cgroup values in diskstats.
  • Allow traversal (rx) to controller directories.
  • Fix do_mount_cgroups() crash on failure.
  • Better error handling in a number of path processing functions.
  • Better error handling in swap calculation.

LXCFS 2.0.0 release announcement 31st of March 2016

  • We are happy to release version 2.0.0 of lxcfs.

LXCFS 2.0.0.rc9 release announcement 29st of March 2016

  • This is the ninth release candidate for 2.0.0
  • This guards against potential double-releasing of fuse file info.

LXCFS 2.0.0.rc8 release announcement 21st of March 2016

  • This is the eight release candidate for 2.0.0
  • This implements access(2) which is required by the lxcfs cgfsng driver.

LXCFS 2.0.0.rc7 release announcement 21st of March 2016

  • This is the seventh release candidate for 2.0.0
  • This includes some important fixes to the upstart jobs and mount hooks
  • Makes the reload handler async-safe, and a few more posix compliancy fixes.

LXCFS 2.0.0.rc6 release announcement 17th of March 2016

  • This is the sixth release candidate for 2.0.0
  • Adds support for the systemd cgroup naming scheme used in 14.04.

LXCFS 2.0.0.rc5 release announcement 14th of March 2016

  • This is the fifth release candidate for 2.0.0
  • Fixes libpam-cgfs mis-chowning systemd cgroups when running (for instance) 'sudo'.

LXCFS 2.0.0.rc4 release announcement 11th of March 2016

  • This is the fourth release candidate for 2.0.0
  • Fix from stgraber to the mount hook and upstart job.

LXCFS 2.0.0.rc3 release announcement 7th of March 2016

  • This is the third release candidate for 2.0.0
  • Fixes in this release:
    • Not mounting lxcfs procfiles when /sys/fs/cgroup is not mounted in container.
    • Occasional corrupted output in free -m.

LXCFS 2.0.0.rc2 release announcement 24th of February 2016

  • This is the second release candidate for 2.0.0
  • This adds the previously missing config/ directory to the release tarball.

LXCFS 2.0.0.rc1 release announcement 24th of February 2016

  • This is the first release candidate for 2.0.0
  • This adds sysvinit, upstart and systemd jobs.

LXCFS 2.0.0.beta2 release announcement 19th of February 2016

  • Fix a bug causing PAM module to hang if there are unmounted controllers
  • Avoid a rare but not impossible bug due to a faulty glibc assert when forking a pid after setns.

LXCFS 2.0.0.beta1 release announcement 9th of February 2016

  • Add support for /proc/swaps
  • Create or chown systemd cgroups if asked
  • Move liblxcfs.so to /usr/lib/lxcfs.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.18 release announcement 4th of February 2016

  • Support restarting lxcfs in most cases, by moving most functionality into a library which is reloaded on SIGUSR1

Downloads

The release tarballs can be found on our download page.

LXCFS 0.17 release announcement 26th of January 2016

  • Add a PAM module
  • Allow users to see all cgroup directories under their init's.
  • Use a task's init process' cgroup usage+limits to virtualize procfiles, rather than the task's own limits.
  • Improve swap accounting

Downloads

The release tarballs can be found on our download page.

LXCFS 0.16 release announcement 8th of January 2016

Bugfix release.

  • This provides a fix for the memory allocation bugs in the last two releases.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.15 release announcement 7th of January 2016

Bugfix release.

  • Fixing a critical memory allocation bug which makes 0.14 unusable.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.14 release announcement 7th of January 2016

  • Listen to hint from lxc regarding cgroup namespaces.
  • Several important bugfixes in code introduced during the switch from libnih.
  • Fix to swap usage reporting.
  • Fix overly strict visibility checks for tasks in root cgroup.
  • Many fixes to the tests.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.13 release announcement 25th of November 2015

Bugfix release.

  • This fixes several bugs which prevented newer systemd-based containers from starting, and some more general bugs.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.12 release announcement 17th of November 2015

Critical bug/security fix update for LXCFS.

  • This fixes two critical CVEs.
  • Also switches to using cgroup filesystem natively instead of using cgmanager, resulting in dramatic speedup.
  • Several improvements in uptime, cpuinfo, and meminfo virtualization
  • Enable tests at code checkin
  • Set FUSE attr caching to half a second, and ship lxc stop hook to wait half a second before reboot.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.11 release announcement 26th of October 2015

  • Switch from libnih and dbus to glib and GDbus. Since these are thread-safe, enable threading by default.
  • Support newer systemd which places itself into init.scope.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.10 release announcement 3rd of September 2015

Bugfix release.

  • Detect libnih threading support and use when available.
  • Fix threading issues related to DBus.
  • Handle missing memory cgroup.
  • Turn off threading globally because of problems with libdbus.
  • Tweak lxcfs mounts to better accommodate systemd.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.9 release announcement 3rd of June 2015

Bugfix release.

  • Fixes from Michael McCracken to fix lxcfs crashes

Downloads

The release tarballs can be found on our download page.

LXCFS 0.8 release announcement 7th of May 2015

  • Use direct io
  • Cache file and dir open work and re-use at read/write
  • Force the fuse options we need (especially threading)
  • Fix some errors in the manpage
  • Fix handling of cpusets
  • Some fixes for the lxc hook

Downloads

The release tarballs can be found on our download page.

LXCFS 0.7 release announcement 3rd of April 2015

Bugfix release.

  • Support for /proc/diskstats.
  • Fixes a few bugs that were causing hangs.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.6 release announcement 16th of February 2015

Bugfix release.

  • Fixes some memory and fd leaks.
  • Fixes cpu-average in /proc/stat.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.5 release announcement 28th of January 2015

Bugfix release.

This tweaks configure.ac to detect cgmanager version and tweak the LXC hook.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.4 release announcement 23rd of January 2015

Critical bug/security fix update for LXCFS.

Prior versions of LXCFS would replace the host's /proc with the container's when a read to /proc/uptime was done on a system with / mounted rshared (default on systemd).

This release includes ONLY this bugfix and should be immediately deployed by anyone currently using lxcfs.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.3 release announcement 21st of January 2015

This release is identical to 0.2 except for a fixed installation path of the LXC configuration file.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.2 release announcement 20th of January 2015

Packager-friendly release of LXCFS 0.2.

This release now installs /usr/share/lxcfs/lxc.mount.hook and /usr/share/lxc/common.conf.d/00-lxcfs.conf which when combined with LXC 1.1 will automatically enable lxcfs for all containers.

Additionally this release also includes some fixes to the testsuite.

Downloads

The release tarballs can be found on our download page.

LXCFS 0.1 release announcement 9th of January 2015

This is the initial LXCFS release.

It offers a basic cgroupfs-like interface which writes through CGManager as well as cgroup-ified versions of the cpuinfo, meminfo, stat and uptime proc files.

Note that as the first release of LXCFS, things can still be very rough and we would advice against using this in production.

Downloads

The release tarballs can be found on our download page.