19.5. バグ修正
ld
リンカーは正しい動的実行可能ファイルを生成します。
以前は、
ld
リンカーは正しい動的実行可能ファイルの作成に失敗し、64 ビット ARM アーキテクチャー上の Go 言語コンパイラーによって呼び出さ れる
ときに終了していました。リンカーが更新され、コピーの再配置が正しく処理されるようになりました。その結果、上記の状況でリンカーが失敗することはなくなりました。(BZ#1430743)
ld
リンカーは、定数データに対して正しい動的再配置を生成します。
以前は、
ld
リンカーは、ライブラリーと 64 ビット ARM アーキテクチャー上の実行可能ファイルの間で共有される定数データに対して、誤った種類の動的再配置を生成していました。その結果、生成された実行可能ファイルはリソースを無駄に消費し、共有データにアクセスすると予期せず終了してしまいました。リンカーが更新され、正しい動的再配置が生成されるようになり、前述の問題は発生しなくなりました。(BZ#1452170)
qrwlock
が 64 ビット ARM システムで有効になりました
この更新では、64 ビット ARM システム用の
qrwlock
キュー型読み取り/書き込みロックが導入されています。このメカニズムを実装すると、グローバルタスクロックをめぐって競合する複数の CPU を公平に処理できるようになり、パフォーマンスが向上し、ロック不足が防止されます。この変更により、Red Hat Bugzilla #1454844 で追跡されている既知の問題も解決されます。この問題は以前のリリースに存在し、高負荷時にソフトロックアップを引き起こす原因でした。
以前のバージョンの Red Hat Enterprise Linux 7 for ARM 用に (kernel-alt パッケージに対して) ビルドされたカーネルモジュールは、更新されたカーネルに対して再ビルドする必要があることに注意してください。
CMA
はデフォルトで無効になっています
メモリーが 1G 以下に制限されている 64 ビット ARM Red Hat Enterprise Linux システムでは、連続メモリーアロケータ (CMA) が大量のメモリーを消費するため、カーネルの残りの部分に十分なメモリーが残りません。その結果、カーネルまたは Linux の共有メモリー (SHM)(/dev/shm) などの特定のユーザー空間アプリケーションでメモリー不足 (OOM) 状態が発生することがありました。
Red Hat Enterprise Linux カーネルの
CMA
サポートは、すべてのアーキテクチャーでデフォルトで無効になり、CMA によって
OOM が発生しなくなりました。(BZ# 1519317)