2013/12/25

Linux Integration Services v3.5 for Hyper-V のソース コード

RHEL および CentOS 向けの Linux Integration Services (LIS) for Hyper-V は rpm パッケージとして ISO イメージで提供されますが、LIS v3.4 まではソース コードも ISO イメージの中に入っていました。LIS v3.5 は ISO イメージではなく、次の場所で公開されています。

[URL] https://github.com/LIS/LIS3.5/

ソース コードを眺めるのは楽しいですね。いろいろ発見があります。
例えば、LIS v3.5 では、新たに仮想ファイバー チャネル アダプターがサポートされました。仮想ファイバー チャネルを構成できる環境なんて無いので確認できませんが、ソース コード storvsc_drv.c を見ると Fibre Channel HBAや FCHBA の文字やコードを確認できます。

SLES 11 SP3 以後のビルトイン ドライバーは対応しているのかどうか、SLES 11 SP3 のリリース ノートに書いていないのではっきりしません。SLES 11 SP3 や CentOS 6.5 のソース コードを見ると、LIS v3.5 と同様のコードが存在します。もしかしたら対応済みなのかもしれません。

以下の画面の左は CentOS 6.5 のビルトイン ドライバーのソース storvsc_drv.c。Fibre Channel HBA の文字があります。右は LIS v3.4 の ISO イメージから取り出した LIS v3.4 のソース storvsc_drv.c。Fibre Channel HBA 関連のコードはありません。


LIS v3.5 では動的メモリの ballooning (スタートアップ RAM と最小 RAM 間でのメモリの増減) がサポートされましたが、メモリの hot add はサポートしません。LIS v3.5 のソース コード hv_balloon.c を見ると、hot add のコードもちゃんとあります。動的メモリの ballooning と hot add の両方に対応した SLES 11 SP3 のソース hv_balloon.c と LIS v3.5 のソース コードを比較してみると、SLES 11 SP3 は static bool hot_add = true;、LIS v3.5 は static bool hot_add = false; の部分が違います (他にも違いはありますが)。LIS v3.5 では意図的に hot add が無効化されているようです。


0 件のコメント: