KernelModuleUtils

public class KernelModuleUtils
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.KernelModuleUtils


概要

パブリック コンストラクタ

KernelModuleUtils()

パブリック メソッド

static String[] getDependentModules(String modName, String lsmodOutput)

指定されたモジュールが依存するモジュールの名前を返します。

static String getDisplayedModuleName(String fullPath)

読み込み後に表示されるモジュール名を返します。

static CommandResult installModule(ITestDevice device, String modulePath, String arg, long timeoutMs)

指定されたデバイスにカーネル モジュールをインストールします。

static String removeKoExtension(String s)

`.ko` 拡張子が存在する場合は削除します。

static CommandResult removeModuleWithDependency(ITestDevice device, String moduleName)

指定されたデバイスからカーネル モジュールと依存モジュールを削除します。

static CommandResult removeSingleModule(ITestDevice device, String moduleName)

指定されたデバイスからカーネル モジュールを削除します。

パブリック コンストラクタ

KernelModuleUtils

public KernelModuleUtils ()

パブリック メソッド

getDependentModules

public static String[] getDependentModules (String modName, 
                String lsmodOutput)

指定されたモジュールが依存するモジュールの名前を返します。

たとえば、指定されたモジュールが `kunit` で、`lsmod` の出力が次のようになっているとします。

$ lsmod
 Module        Size    Used by
 kunit_test    663552  0
 time_test     663558  0
 kunit         57344   15 kunit_test,time_test
 
このメソッドは、`kunit_test` と `time_test` を含む配列を返します。

パラメータ
modName String

lsmodOutput String

戻り値
String[]

getDisplayedModuleName

public static String getDisplayedModuleName (String fullPath)

読み込み後に表示されるモジュール名を返します。

たとえば、ファイル名と `lsmod` から返される名前の違いを確認してください。

$ insmod kunit.ko
 $ lsmod | grep kunit
 kunit 20480 0
 

パラメータ
fullPath String

戻り値
String

installModule

public static CommandResult installModule (ITestDevice device, 
                String modulePath, 
                String arg, 
                long timeoutMs)

指定されたデバイスにカーネル モジュールをインストールします。

パラメータ
device ITestDevice: モジュールをインストールするデバイス

modulePath String: インストールするモジュールのパス

arg String: インストール コマンドに渡す引数

timeoutMs long: タイムアウト(ミリ秒単位)

戻り値
CommandResult

例外
DeviceNotAvailableException デバイスが利用できない場合
TargetSetupError モジュールをインストールできない場合

removeKoExtension

public static String removeKoExtension (String s)

`.ko` 拡張子がある場合は削除

パラメータ
s String

戻り値
String

removeModuleWithDependency

public static CommandResult removeModuleWithDependency (ITestDevice device, 
                String moduleName)

指定されたデバイスからカーネル モジュールと依存モジュールを削除します。

このメソッドは、ターゲット カーネル モジュールをデバイスから削除しようとします。モジュールに依存関係がある場合、依存モジュールはターゲット モジュールの前にベスト エフォートで削除されます。

パラメータ
device ITestDevice: モジュールを削除するデバイス

moduleName String: 削除するモジュールの名前

戻り値
CommandResult

例外
DeviceNotAvailableException デバイスが利用できない場合

removeSingleModule

public static CommandResult removeSingleModule (ITestDevice device, 
                String moduleName)

指定されたデバイスからカーネル モジュールを削除します。

このメソッドは、ターゲット カーネル モジュールをデバイスから削除しようとします。依存関係のあるモジュールは削除されません。

パラメータ
device ITestDevice: モジュールを削除するデバイス

moduleName String: 削除するモジュールの名前

戻り値
CommandResult

例外
DeviceNotAvailableException デバイスが利用できない場合