NFS
とを通じてデバイスからAndroidを起動しようとしましたTFTP
。 Androidシステムが起動するまで、すべてが順調に進んでいました。ネットワークパラメータの問題、接続の中断、および起動停止
[ 60.881134] nfs: server 128.247.77.158 not responding, still trying
私は次のmountコマンドにパラメータを追加することにしました。背景、インテリア、ハード。システム起動前にこのパラメータを設定できますか?それともカーネルコード(どこか)でフラグを変更する必要がありますか?ここ)?
ベストアンサー1
私の問題に対する解決策を見つけました。 Android が起動すると、すべてのルールが更新されます。system/netd/RouteController.cpp
ファイル関数でこれを行うコードを見つけましたint flushRules()
。この関数を実行するコードをブロックすると、緩いNFS接続に関するメッセージは表示されなくなります。
// Returns 0 on success or negative errno on failure.
WARN_UNUSED_RESULT int flushRules() {
return 0;//TODO workaround of NFS parameters reset
for (size_t i = 0; i < ARRAY_SIZE(IP_VERSIONS); ++i) {
const char* argv[] = {
IP_PATH,
IP_VERSIONS[i],
"rule",
"flush",
};
if (android_fork_execvp(ARRAY_SIZE(argv), const_cast<char**>(argv), NULL, false, false)) {
ALOGE("failed to flush rules");
return -EREMOTEIO;
}
}
return 0;
}
これで、Androidシステムは期待どおりにNFSを使用して起動します。