News¶
LXCFS 6.0 LTS リリースのお知らせ¶
1st of April 2024
はじめに ¶
LXCFS チームが LXCFS 6.0 LTS のリリースをお知らせします!
このリリースは、LXCFS 5.0 リリース以来 2 年の取り組みの結果で、LXCFS プロジェクトの 5 つ目の LTS リリースです。
ハイライト ¶
新しい --enable-cgroup
オプション ¶
LXCFS は、コンテナ向けに、仮想的な cgroupfs (v1) ツリーを提供できます。
この機能は cgroup namespace がカーネルに実装される前に実装されており、その機能がないカーネルでも、同様の機能を提供できます。
今では、サポートされているほとんどの Linux ディストリビューションは、すべて cgroup namespace をサポートするカーネルを提供しており、新しいディストリビューションのほとんどは cgroup v1 から(v2 に)切り替わっているので、この機能をデフォルトで有効にし続ける意味がありません。そのため、この機能は新しい起動時の引数である --enable-cgroup
で有効にするようになりました。
CPU の /sys/devices/system/cpu
での非マスク化 ¶
LXCFS 5.0 は、呼び出し元の cpuset で許可されている CPU をもとに、/sys/devices/system/cpu
のエントリーをフィルタリングするロジックが存在しました。この動作は、オフラインの CPU であっても /sys/devices/system/cpu
に表示される通常のシステムの動作を実際には反映していません。
このため、LXCFS 6.0 ではこのロジックを逆転し、オンライン・オフラインの CPU のリストを最新に保つようになっただけで、個々の CPU ディレクトリーにはすべてアクセス可能なままです。
すべての変更点 ¶
すべてのChangeLogを見る
- lxcfs_fuse: ensure lxcfs_fuse_compat.h is included after including fuse header
- tree-wide: remove struct stat argument from DIR_FILLER and make it static inline
- tree-wide: ensure that file information is set even with legacy fuse
- tests: add test for issue #522
- meson: Include documentation
- workflows: disable documentation generation
- sysfs: Don't incorrectly filter entries
- tests: Fix sysfs test
- utils: add and use opathdir()
- sysfs_fuse: fix indendation
- sysfs_fuse: generate file info for cpu
entries as well - meson: bump fuse version
- github: add fuse3 tests
- meson: handle fuse versions with buggy dt_type handling
- init/meson: Use libdir instead of hardcoded /lib path
- Query systemd system unit dir.
- support explicit fuse version choice
- github: Re-organize Github Actions
- tests: Skip sysfs test on older FUSE versions
- init: Fix install paths for sysvinit and openrc
- meson: Support multiple init systems
- meson: Syntax nit
- proc_fuse: extra space in /proc/stat
- util: remove doubled comment
- sysfs: correct file size of /sys/devices/system/cpu/online.
- sysfs: cleanup sys_devices_system_cpu_online_getsize
- cgroup v2: return cpuset cpu count when no quota is set
- re-initialize library after reload
- replace opathdir with opendir_flags
- github: Restrict permissions
- github: Validate target branch
- fix reinitialization with fuse3
- set oom_score_adj of lxcfs process to -1000
- init: respect --prefix when installing systemd unit files
- Fix build on ia64
- doc: guide for mount /sys/devices/system/cpu in docker demo
- utils: add safe_uint32() helper
- macro.h: add strnprintf macro
- utils: add get_task_personality helper
- cpuview: paththrough personality when reading cpuinfo
- cpuview: fix possible use-after-free in find_proc_stat_node
- github: make coverity workflow work with meson
- README: how to build with sanitizers
- cpuset_parse: check input string in cpuset_nexttok
- github: enable ASAN and UBSAN during PR tests
- lxcfs: explicitly enable direct_IO for libfuse3
- lxcfs: fix copypaste typo in error message
- /proc/stat: render physical cpu number in non-view mode
- sysfs: don't mask cpus in /sys/devices/system/cpu
- lxcfs: handle NULL path in lxcfs_releasedir/lxcfs_release
- cpuview: fix ABBA deadlock in find_proc_stat_node
- build: tools: keep trailing newline in jinja2 renderer
- Revert "init: respect --prefix when installing systemd unit files"
- proc: fix /proc/diskstats output format
- github: start using ubuntu-22.04 image
- github: remove ubuntu-18.04
- tests: adapt for cgroup2
- cpuview: resolve cpu cgroup path separately from cpuset the cgroup path is different in kubernetes with containerd runtime.
- lxcfs: preparation for FUSE_INTERRUPT support
- lxcfs: add fuse interruptible locks
- cpuview: start to use interruptible lock primitives
- github: Update for main branch
- proc_loadavg: fix ABBA deadlock between read/refresh
- proc: Fix /proc/cpuinfo not respecting personality
- proc_loadavg.c: Fix incompatible integer to pointer conversion
- cgroups: cleanup and remove unused cgroup2_devices code
- loadavg: make cleanup of start_loadavg
- cpuview: pass a correct argument to lxcfs_debug
- lxcfs: Add startup message
- proc: fix MemAvailable in /proc/meminfo to exclude tmpfs files
- systemd: mkdir -p the target mount dir
- typofix: fix incorrect printing in lxcfs help interface
- Add macro pivot&bpf for loongarch64
- lxc.mount.hook: Skip cpu sysfs logic if missing target
- sysfs: forbid write()
- lxcfs: introduce new option --enable-cgroup
- tests: use --enable-cgroup for tests
- github: workaround CI issue with ASAN
- Revert "github: workaround CI issue with ASAN"
- proc_fuse: Fix get_swap_info typo swtotal == 0 -> *swtotal == 0
- proc: Fix swap handling for cgroups v2 (can_use_swap)
- proc: Fix swap handling for cgroups v2 (zero limits)
- cgroup_utils: explicitly check for cgroup2 FDs in cgroup_walkup_to_root
サポートとアップグレード ¶
LXCFS 6.0 は 2029 年 6 月までサポートされる、最新の LTS リリースです。LXCFS 5.0 は、より遅いメンテナンスペースに変更され、重要なバグ修正とセキュリティ更新のみが提供されます。
LXCFS のユーザーはすべて、6.0 ブランチへのアップグレードを計画することを強くおすすめします。
今後のリリースについて ¶
ユーザーが新しい LXCFS の機能をより簡単に利用できるように、今後は LTS ではないリリースの作成を開始することにしました。計画している間隔は 6 ヶ月ごとで、LXCFS 6.1 は 10 月に予定されています。
この LTS ではないリリースでは、安定性、サポート、セキュリティメンテナンスに関する LTS の保証は受けられず、次のリリースが出るまでのみサポートされます。
本番環境のユーザーは LTS リリースを利用し続けたいと思うでしょう。
ダウンロード¶
- リリース tarball : lxcfs-6.0.0.tar.gz
- GPG シグネチャー : lxcfs-6.0.0.tar.gz.asc
コントリビューター ¶
LXCFS 6.0 は、合計 25 名のコントリビューターによってリリースしました。
LXCFS 5.0.4 LTS リリースのお知らせ¶
25th of July 2023
はじめに ¶
LXCFS チームが LXCFS 5.0.4 のリリースをお知らせします!
これは 2027 年 6 月までサポートされる LXCFS 5.0 の 4 回目のバグフィックスリリースです。
バグ修正 ¶
このリリースのいくつかのハイライトは次の通りです:
- /proc/diskstats の出力フォーマットの修正
- containerd で使用する場合の cpuset のパストラッキングの問題を修正
コミットの全リストは次の通りです(翻訳なし):
すべてのChangeLogを見る
- build: tools: keep trailing newline in jinja2 renderer
- Revert "init: respect --prefix when installing systemd unit files"
- proc: fix /proc/diskstats output format
- github: start using ubuntu-22.04 image
- github: remove ubuntu-18.04
- tests: adapt for cgroup2
- cpuview: resolve cpu cgroup path separately from cpuset the cgroup path is different in kubernetes with containerd runtime.
- github: Update for main branch
サポートとアップグレード ¶
LXCFS 5.0 ブランチは 2027 年 6 月までサポートされます。
stable のバグフィックスリリースでは、バグとセキュリティに関する問題に対する修正のみが行われますので、常に安全です。最新のバグフィックスリリースの状態を維持し、実行することをおすすめします。
ダウンロード ¶
- リリース tarball : lxcfs-5.0.4.tar.gz
- GPG シグネチャー : lxcfs-5.0.4.tar.gz.asc
LXCFS 5.0.3 LTS リリースのお知らせ¶
17th of January 2023
はじめに ¶
LXCFS チームが LXCFS 5.0.3 のリリースをお知らせします!
これは 2027 年 6 月までサポートされる LXCFS 5.0 の 3 回目のバグフィックスリリースです。
バグ修正 ¶
このリリースで対応、修正された主な項目は次の通りです:
- FUSE3 で実行した場合の VFS キャッシングの問題を修正
/sys/devices/system/cpu
フィルタリングの動作に関する問題をいくつか修正- ia64 でのビルドの問題を修正
/proc/cpuinfo
のパーソナリティをまたがるコンテンツを適切に扱うようにした
コミットの全リストは次の通りです(翻訳なし):
すべてのChangeLogを見る
- set oom_score_adj of lxcfs process to -1000
- init: respect --prefix when installing systemd unit files
- Fix build on ia64
- doc: guide for mount /sys/devices/system/cpu in docker demo
- utils: add safe_uint32() helper
- macro.h: add strnprintf macro
- utils: add get_task_personality helper
- cpuview: paththrough personality when reading cpuinfo
- cpuview: fix possible use-after-free in find_proc_stat_node
- github: make coverity workflow work with meson
- README: how to build with sanitizers
- cpuset_parse: check input string in cpuset_nexttok
- github: enable ASAN and UBSAN during PR tests
- lxcfs: explicitly enable direct_IO for libfuse3
- lxcfs: fix copypaste typo in error message
- /proc/stat: render physical cpu number in non-view mode
- sysfs: don't mask cpus in /sys/devices/system/cpu
- lxcfs: handle NULL path in lxcfs_releasedir/lxcfs_release
- cpuview: fix ABBA deadlock in find_proc_stat_nod
サポートとアップグレード ¶
LXCFS 5.0 ブランチは 2027 年 6 月までサポートされます。
stable のバグフィックスリリースでは、バグとセキュリティに関する問題に対する修正のみが行われますので、常に安全です。最新のバグフィックスリリースの状態を維持し、実行することをおすすめします。
ダウンロード ¶
- リリース tarball : lxcfs-5.0.3.tar.gz
- GPG シグネチャー : lxcfs-5.0.3.tar.gz.asc
LXCFS 5.0.2 LTS リリースのお知らせ¶
9th of August 2022
はじめに ¶
LXCFS チームが LXCFS 5.0.2 のリリースをお知らせします!
これは 2027 年 6 月までサポートされる LXCFS 5.0 の 2 回目のバグフィックスリリースです。
FUSE3 と同時に使用した場合に LXCFS 5.0.1 がクラッシュする重大な問題を修正しました。
バグ修正 ¶
このリリースで対応、修正された項目は次の通りです:
- FUSE3 上でロード・リロード中にクラッシュする問題の修正
コミットの全リストは次の通りです:
すべてのChangeLogを見る
- fuse3 での再初期化時の問題の修正
サポートとアップグレード ¶
LXCFS 5.0 ブランチは 2027 年 6 月までサポートされます。
stable のバグフィックスリリースでは、バグとセキュリティに関する問題に対する修正のみが行われますので、常に安全です。最新のバグフィックスリリースの状態を維持し、実行することをおすすめします。
ダウンロード ¶
- リリース tarball : lxcfs-5.0.2.tar.gz
- GPG シグネチャー : lxcfs-5.0.2.tar.gz.asc
LXCFS 5.0.1 LTS リリースのお知らせ¶
26th of July 2022
はじめに ¶
LXCFS チームが LXCFS 5.0.1 のリリースをお知らせします!
これは 2027 年 6 月までサポートされる LXCFS 5.0 の初めてのバグフィックスリリースです。
バグ修正 ¶
このリリースで対応、修正された主な項目は次の通りです:
- meson 移行に関連したさまざまな修正
- FUSE2 での /sys/devices/system/cpu の扱いの修正
- /proc/stat のフォーマットの問題の修正
- CPU 制限をしない cgroup を扱う際の cgroup2 の問題の修正
- ライブラリーのリロードロジックの修正
コミットの全リストは次の通りです(翻訳なし):
すべてのChangeLogを見る
- lxcfs_fuse: ensure lxcfs_fuse_compat.h is included after including fuse header
- tree-wide: remove struct stat argument from DIR_FILLER and make it static inline
- tree-wide: ensure that file information is set even with legacy fuse
- tests: add test for issue #522
- meson: Include documentation
- workflows: disable documentation generation
- sysfs: Don't incorrectly filter entries
- tests: Fix sysfs test
- utils: add and use opathdir()
- sysfs_fuse: fix indendation
- sysfs_fuse: generate file info for cpu
entries as well - meson: bump fuse version
- github: add fuse3 tests
- meson: handle fuse versions with buggy dt_type handling
- init/meson: Use libdir instead of hardcoded /lib path
- Query systemd system unit dir.
- support explicit fuse version choice
- github: Re-organize Github Actions
- tests: Skip sysfs test on older FUSE versions
- init: Fix install paths for sysvinit and openrc
- meson: Support multiple init systems
- meson: Syntax nit
- proc_fuse: extra space in /proc/stat
- util: remove doubled comment
- sysfs: correct file size of /sys/devices/system/cpu/online.
- sysfs: cleanup sys_devices_system_cpu_online_getsize
- cgroup v2: return cpuset cpu count when no quota is set
- re-initialize library after reload
- replace opathdir with opendir_flags
- github: Restrict permissions
- github: Validate target branch
サポートとアップグレード ¶
LXCFS 5.0 ブランチは 2027 年 6 月までサポートされます。
stable のバグフィックスリリースでは、バグとセキュリティに関する問題に対する修正のみが行われますので、常に安全です。最新のバグフィックスリリースの状態を維持し、実行することをおすすめします。
ダウンロード ¶
- リリース tarball : lxcfs-5.0.1.tar.gz
- GPG シグネチャー : lxcfs-5.0.1.tar.gz.asc
Older news¶
- 10th of March 2022
- 2nd of February 2022
- 19th of October 2021
- 17th of July 2021
- 6th of May 2021
- 8th of January 2021
- 19th of October 2020
- 3rd of August 2020
- 18th of June 2020
- 17th of April 2020
- 7th of April 2020
- 19th of March 2020
- 6th of March 2020
- 24th of July 2019
- 21st of June 2019
- 22nd of November 2018
- 21st of August 2018
- 5th of June 2018
- 26th of March 2018
- 19th of October 2017
- 11th of May 2017
- 23rd of January 2017
- 23rd of November 2016
- 5th of October 2016
- 15th of August 2016
- 28th of June 2016
- 16th of May 2016
- 31st of March 2016
- 29th of March 2016
- 21st of March 2016
- 21st of March 2016
- 17th of March 2016
- 14th of March 2016
- 11th of March 2016
- 7th of March 2016
- 24th of February 2016
- 24th of February 2016
- 19th of February 2016
- 9th of February 2016
- 4th of February 2016
- 26th of January 2016
- 8th of January 2016
- 7th of January 2016
- 7th of January 2016
- 25th of November 2015
- 17th of November 2015
- 26th of October 2015
- 3rd of September 2015
- 3rd of June 2015
- 7th of May 2015
- 3rd of April 2015
- 16th of February 2015
- 28th of January 2015
- 23rd of January 2015
- 21st of January 2015
- 20th of January 2015
- 9th of January 2015