Translated message

A translation of this page exists in English.

Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

DIF/DIX (別名 PI) はどのような機能ですか? Red Hat のサポート対象ですか?

Solution Unverified - Updated -

Environment

  • Red Hat Enterprise Linux

Issue

  • DIF/DIX (別名 PI) はどのような機能ですか? Red Hat のサポート対象ですか?

Resolution

DIF は、SCSI 仕様に最近追加された新機能です。一般的に使用される 512 バイトのディスクブロックのサイズを、512 から 520 に増やします。追加のバイトは、Data Integrity Field (DIF) から成ります。基本的には、HBA が、書き込み時のデータブロックの checksum 値を計算して、DIF に保存します。ストレージデバイスは、受け取り時の checksum を確認し、データと checksum を保存します。読み込み時、ストレージデバイスと、受信する HBA が checksum を確認します。

Data Integrity Extension (DIX) により、このデータ整合性の確認をより上位のスタックにて実施させます。アプリケーションは checksum を計算して HBA に渡し、512 バイトのデータブロックに追加されます。これにより、徹底したデータ整合性チェックが提供されます。

一部のベンダーでは、Protection Information (PI) が DIF/DIX 機能に当たります。Linux の DIF/DIX では、書き込みキューに入るときに、メモリ管理システムがデータバッファーを変更するという問題があります。メモリ管理システムは、この問題が発生した時に、I/O が成功した後にダーティとマークされたページを保持し続けていくようにする必要があります。メモリ管理システムが、checksum が計算されてから書き込みが行われるまでの間にバッファーでデータを変更すると、checksum テストと書き込みに失敗するため、ファイルシステムが読み取り専用となるなどの問題が発生します。

この問題に対処するため、Red Hat Enterprise Linux 6 を使用している場合は、以下の点に注意する必要があります。DIF/DIX ハードウェアの checksum 機能は、O_DIRECT I/O を排他的に実行するアプリケーションに限定して使用してください。これらのアプリケーションは、raw ブロックデバイス、または O_DIRECT モードでの XFS ファイルシステムを使用できます。XFS は、特定の割り当て操作が行われている際に、バッファーされた I/O にフォールバックしない唯一のファイルシステムです。O_DIRECT I/O および DIF/DIX ハードウェアで使用するために設計されたアプリケーションだけが、この機能を有効にします。

DIF/DIX は、RHEL 6.0 におけるテクニカルプレビューになります。このサポート対象となるドライバーと hba の組み合わせは、現在 Emulex lpfc および LSI mpt2sas の 2 つになります。これをサポートするストレージベンダーも少なく、現在は Netapp Engenio FC RAID アレイと、特定の Hitachi SAS ディスクだけとなります。ただし、この機能をサポートするストレージベンダーが今後増えることが予想されます。

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments