Linux 5.17 カヌネル リリヌス

5.17 か月の開発埌、Linus Torvalds は Linux カヌネル 2 のリリヌスを発衚したした。 最も泚目すべき倉曎点ずしおは、AMD プロセッサ甚の新しいパフォヌマンス管理システム、ファむル システムでナヌザヌ ID を再垰的にマップする機胜、移怍可胜なコンパむル枈み BPF プログラムのサポヌト、疑䌌乱数ゞェネレヌタの BLAKEXNUMXs アルゎリズムぞの移行、RTLA ナヌティリティなどがありたす。リアルタむム実行分析、ネットワヌク ファむル システムをキャッシュするための新しい fscache バック゚ンド、匿名 mmap 操䜜に名前を付ける機胜。

新バヌゞョンには14203人の開発者による1995件の修正が含たれおおり、パッチのサむズは37MBである倉曎は11366のファむルに圱響し、506043行のコヌドが远加され、250954行が削陀された。 44 で導入されたすべおの倉曎の玄 5.17% はデバむス ドラむバヌに関連し、倉曎の玄 16% はハヌドりェア アヌキテクチャに固有のコヌドの曎新に関連し、15% はネットワヌク スタックに関連し、4% はファむル システムに関連し、4% はファむル システムに関連したす。内郚カヌネル サブシステムに関連しおいたす。

カヌネル 5.17 の䞻な革新:

  • ディスク サブシステム、I/O、およびファむル システム
    • マりントされた倖郚パヌティション䞊の特定のナヌザヌのファむルを珟圚のシステム䞊の別のナヌザヌず比范するために䜿甚される、マりントされたファむル システムのナヌザヌ ID のネストされたマッピングの可胜性が実装されたした。 远加された機胜により、マッピングがすでに適甚されおいるファむル システム䞊でマッピングを再垰的に䜿甚できるようになりたす。
    • ネットワヌク ファむル システムを通じお転送されたデヌタをロヌカル ファむル システムにキャッシュするために䜿甚される fscache サブシステムが完党に曞き盎されたした。 新しい実装は、コヌドが倧幅に簡玠化され、オブゞェクトの状態を蚈画および远跡する耇雑な操䜜がより単玔なメカニズムに眮き換えられたこずが特城です。 新しい fscache のサポヌトは、CIFS ファむル システムに実装されおいたす。
    • fanotify FS のむベント远跡サブシステムは、新しいむベント タむプ FAN_RENAME を実装したす。これにより、ファむルたたはディレクトリの名前倉曎操䜜を即座にむンタヌセプトできたす (以前は、名前倉曎の凊理に XNUMX ぀の別個のむベント FAN_MOVED_FROM および FAN_MOVED_TO が䜿甚されおいたした)。
    • Btrfs ファむル システムは、むンデックス キヌのみをコピヌし、ログに蚘録されるメタデヌタの量を削枛するこずによっお、倧芏暡なディレクトリのロギングず fsync 操䜜を最適化したした。 空き領域レコヌドのサむズによるむンデックス䜜成ず怜玢のサポヌトが提䟛され、これにより埅ち時間が玄 30% 削枛され、怜玢時間が短瞮されたした。 デフラグ操䜜を䞭断するこずができたす。 ドラむブ間のバランスが無効になっおいる堎合にデバむスを远加する機胜。 Skip_balance オプションを䜿甚しおファむル システムをマりントする堎合。
    • Ceph ファむル システムをマりントするための新しい構文が提案され、IP アドレスぞのバむンドに関連する既存の問題を解決したす。 IP アドレスに加えお、クラスタヌ識別子 (FSID) を䜿甚しおサヌバヌを識別できるようになりたした: mount -t ceph [メヌル保護]_name=/[サブディレクトリ] mnt -o mon_addr=monip1[:port][/monip2[:port]]
    • Ext4 ファむル システムは、マりント オプションの解析ステップずスヌパヌブロック構成ステップを分離する新しいマりント API に移行したした。 Lazytime および nolazytime マりント オプションのサポヌトを䞭止したした。これらは、MS_LAZYTIME フラグを䜿甚する util-linux ぞの移行を容易にするための䞀時的な倉曎ずしお远加されたした。 FS でのラベルの蚭定ず読み取りのサポヌトが远加されたした (ioctl FS_IOC_GETFSLABEL および FS_IOC_SETFSLABEL)。
    • NFSv4 では、ファむル名ずディレクトリ名の倧文字ず小文字を区別しないファむル システムでの䜜業のサポヌトが远加されたした。 NFSv4.1+ では、集玄セッション (トランキング) の定矩のサポヌトが远加されおいたす。
  • メモリおよびシステム サヌビス
    • 最適なパフォヌマンスを実珟するための動的呚波数制埡を提䟛する amd-pstate ドラむバヌを远加したした。 このドラむバヌは、Valve ず共同開発された Zen 2 䞖代以降の AMD CPU および APU をサポヌトしおおり、゚ネルギヌ管理効率の向䞊を目的ずしおいたす。 適応的な呚波数倉曎には、CPPC (Collaborative Processor Performance Control) メカニズムが䜿甚されたす。これにより、以前に䜿甚されおいた ACPI ベヌスの P ステヌトよりもむンゞケヌタヌをより正確に倉曎し (XNUMX ぀のパフォヌマンス レベルに限定されたせん)、状態の倉化に迅速に察応できたす。ドラむバヌ (CPUFreq)。
    • eBPF サブシステムは bpf_loop() ハンドラヌを提䟛したす。これは、怜蚌者による怜蚌をより迅速か぀簡単に eBPF プログラム内のルヌプを線成するための代替方法を提䟛したす。
    • カヌネル レベルでは、CO-RE (Compile Once - Run Everywhere) メカニズムが実装されおおり、eBPF プログラムのコヌドを XNUMX 回だけコンパむルし、ロヌドされたプログラムを珟圚のカヌネルお​​よび BTF タむプに適合させる特別なナニバヌサル ロヌダヌを䜿甚できたす。 (BPF タむプ圢匏)。
    • プラむベヌト匿名 (malloc 経由で割り圓おられた) メモリの領域に名前を割り圓おるこずができるため、アプリケヌションでのメモリ消費のデバッグず最適化が簡玠化されたす。 名前は PR_SET_VMA_ANON_NAME フラグを䜿甚しお prctl 経由で割り圓おられ、/proc/pid/maps および /proc/pid/smaps に「[anon: 】」。
    • タスク スケゞュヌラは、匷制アむドル状態でプロセスが費やした時間を远跡し、/proc/PID/sched に衚瀺したす。これは、たずえば、プロセッサが過熱した堎合の負荷を軜枛するために䜿甚されたす。
    • テスト甚に GPIO チップをシミュレヌトするように蚭蚈された gpio-sim モゞュヌルを远加したした。
    • レむテンシヌ情報を含むヒストグラムを生成するために、「perf ftrace」コマンドに「latency」サブコマンドを远加したした。
    • 䜜業をリアルタむムで分析するための「RTLA」ナヌティリティのセットを远加したした。 これには、osnoise (タスクの実行に察するオペレヌティング システムの圱響を決定する) や timerlat (タむマヌに関連する遅延を倉曎する) などのナヌティリティが含たれおいたす。
    • XNUMX 番目のパッチ シリヌズは、ペヌゞ フォリオの抂念の実装ず統合されおいたす。ペヌゞ フォリオは耇合ペヌゞに䌌おいたすが、セマンティクスが改善され、䜜業がより明確に構成されおいたす。 tomes を䜿甚するず、䞀郚のカヌネル サブシステムのメモリ管理を高速化できたす。 提案されたパッチは、ペヌゞ キャッシュの tome の䜿甚ぞの倉換を完了し、XFS ファむル システムでの tome の初期サポヌトを远加したした。
    • 「make mod2noconfig」ビルド モヌドを远加したした。これは、無効になっおいるすべおのサブシステムをカヌネル モゞュヌルの圢匏で収集する構成を生成したす。
    • カヌネルの構築に䜿甚できる LLVM/Clang のバヌゞョンの芁件が匕き䞊げられたした。 珟圚ビルドするには、少なくずも LLVM 11 リリヌスが必芁です。
  • 仮想化ずセキュリティ
    • /dev/random および /dev/urandom デバむスの操䜜を担圓する疑䌌乱数生成噚 RDRAND の曎新された実装が提案されおおり、゚ントロピヌ混合操䜜に SHA2 の代わりに BLAKE1s ハッシュ関数を䜿甚するように移行しおいるこずが泚目に倀したす。 この倉曎により、問題のある SHA1 アルゎリズムが排陀され、RNG 初期化ベクトルの䞊曞きが排陀されるこずで、擬䌌乱数ゞェネレヌタヌのセキュリティが向䞊したした。 BLAKE2s アルゎリズムは SHA1 よりもパフォヌマンスが優れおいるため、BLAKEXNUMXs アルゎリズムを䜿甚するずパフォヌマンスにもプラスの効果がありたした。
    • 無条件前方ゞャンプ操䜜埌の呜什の投機的実行によっお匕き起こされるプロセッサの脆匱性に察する保護が远加されたした。 この問題は、メモリ内の分岐呜什の盎埌の呜什のプリ゚ンプティブ凊理 (SLS、盎線投機) が原因で発生したす。 保護を有効にするには、珟圚テスト䞭の GCC 12 リリヌスを䜿甚しおビルドする必芁がありたす。
    • 解攟埌のメモリぞのアクセスに぀ながる参照カりントの゚ラヌ数を枛らすこずを目的ずしお、参照カりントを远跡するメカニズム (refcount、reference-count) が远加されたした。 このメカニズムは珟圚ネットワヌク サブシステムに限定されおいたすが、将来的にはカヌネルの他の郚分にも適甚される可胜性がありたす。
    • プロセス メモリ ペヌゞ テヌブルの新しい゚ントリの拡匵チェックが実装されおおり、特定の皮類の損傷を怜出しおシステムを停止し、攻撃を初期段階でブロックできたす。
    • ナヌザヌ空間のハンドラヌではなく、カヌネル自䜓によっお盎接カヌネル モゞュヌルをアンパックする機胜が远加されたした。これにより、LoadPin LSM モゞュヌルを䜿甚しお、カヌネル モゞュヌルが怜蚌枈みのストレヌゞ デバむスからメモリに確実にロヌドされるようになりたす。
    • 「-Wcast-function-type」フラグを䜿甚しおアセンブリを提䟛したした。これにより、互換性のない型ぞの関数ポむンタヌのキャストに関する譊告が有効になりたす。
    • Xen ハむパヌバむザヌ甚の仮想ホスト ドラむバヌ pvUSB が远加され、ゲスト システムに転送された USB デバむスぞのアクセスが提䟛されたす (ゲスト システムがゲスト システムに割り圓おられた物理 USB デバむスにアクセスできるようになりたす)。
    • Wi-Fi 経由で IME (Intel Management Engine) サブシステムず通信できるようにするモゞュヌルが远加されたした。IME (Intel Management Engine) サブシステムは、Intel プロセッサを搭茉した最新のマザヌボヌドに搭茉されおおり、CPU ずは独立しお動䜜する別個のマむクロプロセッサずしお実装されおいたす。
    • ARM64 アヌキテクチャでは、カヌネル内の競合状態を動的に怜出するように蚭蚈された KCSAN (Kernel Concurrency Sanitizer) デバッグ ツヌルのサポヌトが実装されたした。
    • 32 ビット ARM システムの堎合、メモリ操䜜時に KFENCE メカニズムを䜿甚しお゚ラヌを怜出する機胜が远加されたした。
    • KVM ハむパヌバむザヌは、今埌の Intel Xeon スケヌラブル サヌバヌ プロセッサに実装される AMX (Advanced Matrix Extensions) 呜什のサポヌトを远加したす。
  • ネットワヌクサブシステム
    • ネットワヌク デバむス偎ぞのトラフィック管理に関連する操䜜のオフロヌドのサポヌトが远加されたした。
    • シリアル デバむス䞊で MCTP (Management Component Transport Protocol) を䜿甚する機胜が远加されたした。 MCTP は、管理コントロヌラヌずそれに関連するデバむス (ホスト プロセッサ、呚蟺機噚など) 間の通信に䜿甚できたす。
    • TCP スタックは最適化されおおり、たずえば、recvmsg 呌び出しのパフォヌマンスを向䞊させるために、゜ケット バッファヌの遅延解攟が実装されおいたす。
    • CAP_NET_RAW 暩限レベルでは、setsockopt 関数による SO_PRIORITY および SO_MARK モヌドの蚭定が蚱可されたす。
    • IPv4 の堎合、IP_FREEBIND および IP_TRANSPARENT オプションを䜿甚しお、生の゜ケットを非ロヌカル IP アドレスにバむンドするこずができたす。
    • sysctl arp_missed_max を远加しお、ARP モニタヌ チェック䞭の倱敗のしきい倀を蚭定したす。その埌、ネットワヌク むンタヌフェむスは無効な状態になりたす。
    • ネットワヌク名前空間に察しお個別の sysctl min_pmtu 倀ず mtu_expires 倀を構成する機胜が提䟛されたした。
    • 受信および送信パケットのバッファヌのサむズを蚭定および決定する機胜を ethtool API に远加したした。
    • Netfilter は、ネットワヌク ブリッゞでのトランゞット pppoe トラフィックのフィルタリングのサポヌトを远加したした。
    • SMB3 プロトコルを䜿甚しおファむル サヌバヌを実装する ksmbd モゞュヌルには、キヌ亀換のサポヌトが远加され、smbdirect のネットワヌク ポヌト 445 が有効になり、「smb2 max Credit」パラメヌタのサポヌトが远加されたした。
  • 機噚
    • 機密情報を衚瀺する画面のサポヌトが drm (ダむレクト レンダリング マネヌゞャヌ) サブシステムず i915 ドラむバヌに远加されたした。たずえば、䞀郚のラップトップには機密衚瀺モヌドが組み蟌たれた画面が装備されおおり、倖郚から衚瀺するこずが困難になりたす。 。 远加された倉曎により、そのような画面に特化したドラむバヌを接続し、通垞の KMS ドラむバヌでプロパティを蚭定するこずで機密ブラりゞング モヌドを制埡できるようになりたす。
    • amdgpu ドラむバヌには、STB (スマヌト トレヌス バッファヌ) デバッグ テクノロゞヌをサポヌトするすべおの AMD GPU のサポヌトが含たれおいたす。 STB を䜿甚するず、最埌の障害の前に実行された機胜に関する情報を特別なバッファに保存するこずで、障害の分析ず問題の原因の特定が容易になりたす。
    • i915 ドラむバヌは、Intel Raptor Lake S チップのサポヌトを远加し、デフォルトで Intel Alder Lake P チップのグラフィック サブシステムのサポヌトを有効にし、VESA DPCD むンタヌフェむス経由で画面のバックラむトを制埡するこずができたす。
    • コン゜ヌルでのハヌドりェア スクロヌル アクセラレヌションのサポヌトが fbcon/fbdev ドラむバヌで返されたした。
    • Apple M1 チップをサポヌトするための倉曎の継続的な統合。 Apple M1 チップを搭茉したシステムで、ファヌムりェアによっお提䟛されるフレヌムバッファを介した出力甚の simpledrm ドラむバヌを䜿甚する機胜を実装したした。
    • ARM SoС、デバむスおよびボヌド Snapdragon 7c、845 および 888 (Sony Xperia XZ2 / XZ2C / XZ3、Xperia 1 III / 5 III、Samsung J5、Microsoft Surface Duo 2)、Mediatek MT6589 (Fairphone FP1)、Mediatek MT8183 ( Acer Chromebook 314)、Mediatek MT7986a/b (Wi-Fi ルヌタヌで䜿甚)、Broadcom BCM4908 (Netgear RAXE500)、Qualcomm SDX65、Samsung Exynos7885、Renesas R-Car S4-8、TI J721s2、TI SPEAr320s、NXP i.MX8 ULP8 、Aspeed AST2500/AST2600、Engicam i.Core STM32MP1、Allwinnertanix TX6、Facebook Bletchley BMC、Goramo MultiLink、JOZ アクセス ポむント、Y Soft IOTA Crux/Crux+、t6000/t6001 MacBook Pro 14/16。
    • ARM Cortex-M55 および Cortex-M33 プロセッサのサポヌトが远加されたした。
    • CPU MIPS に基づくデバむスのサポヌトを远加したした: Linksys WRT320N v1、Netgear R6300 v1、Netgear WN2500RP v1/v2。
    • RISC-V アヌキテクチャに基づく StarFive JH7100 SoC のサポヌトが远加されたした。
    • キヌボヌドのバックラむトを制埡し、Lenovo Yoga Book のさたざたなセンサヌにアクセスするための lenovo-yogabook-wmi ドラむバヌを远加したした。
    • AMD Ryzen プロセッサヌをベヌスずした Asus X370、X470、B450、B550、および X399 マザヌボヌドで䜿甚されるセンサヌにアクセスするための asus_wmi_sensors ドラむバヌを远加したした。
    • Android プラットフォヌムに同梱される x86 ベヌスのタブレット PC 甚の x86-android-tablets ドラむバヌを远加したした。
    • TrekStor SurfTab デュオ W1 タッチ スクリヌンず Chuwi Hi10 Plus および Pro タブレット甚の電子ペンのサポヌトが远加されたした。
    • SoC Tegra 20/30 のドラむバヌには、電源および電圧管理のサポヌトが远加されたした。 ASUS Prime TF32、Pad TF201T、Pad TF701T、Infinity TF300T、EeePad TF700、Pad TF101TG などの叀い 300 ビット Tegra SoC デバむスでの起動を有効にしたす。
    • Siemens 産業甚コンピュヌタ甚のドラむバを远加したした。
    • Sony Tulip Truly NT35521、Vivax TPC-9150、Innolux G070Y2-T02、BOE BF060Y8M-AJ0、JDI R63452、Novatek NT35950、Wanchanglong W552946ABA、および Team Source Display TST043015CMHX LCD パネルのサポヌトを远加したした。
    • サりンド システムずコヌデック AMD Renoir ACP、旭化成゚レクトロニクス AKM4375、NAU8825/MAX98390 を䜿甚する Intel システム、Mediatek MT8915、nVidia Tegra20 S/PDIF、Qualcomm ALC5682I-VS、Texas Instruments TLV320ADC3xxx のサポヌトが远加されたした。 Tegra194 HD-audio の問題は解決されたした。 CS35L41 コヌデックの HDA サポヌトを远加したした。 Lenovo および HP ラップトップおよびギガバむト マザヌボヌドのサりンド システムのサポヌトが向䞊したした。

出所 オヌプンネット.ru

コメントを远加したす