KernelModuleUtils

public class KernelModuleUtils
extends Object

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


Résumé

Constructeurs publics

KernelModuleUtils()

Méthodes publiques

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

Renvoie les noms des modules dont dépend le module donné.

static String getDisplayedModuleName(String fullPath)

Renvoie le nom du module tel qu'il s'affiche après le chargement.

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

Installe un module de noyau sur l'appareil donné.

static String removeKoExtension(String s)

Supprime l'extension `.ko` si elle est présente.

static CommandResult removeModuleWithDependency(ITestDevice device, String moduleName)

Supprime un module de noyau et les modules dépendants de l'appareil donné.

static CommandResult removeSingleModule(ITestDevice device, String moduleName)

Supprime un module de noyau de l'appareil donné.

Constructeurs publics

KernelModuleUtils

public KernelModuleUtils ()

Méthodes publiques

getDependentModules

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

Renvoie les noms des modules dont dépend le module donné.

Par exemple, si le module donné est `kunit` et que la sortie `lsmod` est la suivante :

$ lsmod
 Module        Size    Used by
 kunit_test    663552  0
 time_test     663558  0
 kunit         57344   15 kunit_test,time_test
 
Cette méthode renvoie un tableau contenant `kunit_test` et `time_test`.

Paramètres
modName String

lsmodOutput String

Renvoie
String[]

getDisplayedModuleName

public static String getDisplayedModuleName (String fullPath)

Renvoie le nom du module tel qu'il s'affiche après le chargement.

Par exemple, notez la différence entre le nom de fichier et celui renvoyé par `lsmod`:

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

Paramètres
fullPath String

Renvoie
String

installModule

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

Installe un module de noyau sur l'appareil donné.

Paramètres
device ITestDevice : appareil sur lequel installer le module

modulePath String : chemin d'accès au module à installer

arg String : argument à transmettre à la commande d'installation

timeoutMs long : délai d'attente en millisecondes

Renvoie
CommandResult

Génère
DeviceNotAvailableException si l'appareil n'est pas disponible
TargetSetupError si le module ne peut pas être installé

removeKoExtension

public static String removeKoExtension (String s)

Supprime l'extension `.ko` si elle est présente.

Paramètres
s String

Renvoie
String

removeModuleWithDependency

public static CommandResult removeModuleWithDependency (ITestDevice device, 
                String moduleName)

Supprime un module de noyau et les modules dépendants de l'appareil donné.

Cette méthode tente de supprimer le module de noyau cible de l'appareil. Si le module a des dépendances, ces modules dépendants sont supprimés avant le module cible avec le meilleur effort.

Paramètres
device ITestDevice : appareil duquel supprimer le module

moduleName String : nom du module à supprimer

Renvoie
CommandResult

Génère
DeviceNotAvailableException si l'appareil n'est pas disponible

removeSingleModule

public static CommandResult removeSingleModule (ITestDevice device, 
                String moduleName)

Supprime un module de noyau de l'appareil donné.

Cette méthode tente de supprimer le module de noyau cible de l'appareil. Aucun module dépendant n'est supprimé.

Paramètres
device ITestDevice : appareil duquel supprimer le module

moduleName String : nom du module à supprimer

Renvoie
CommandResult

Génère
DeviceNotAvailableException si l'appareil n'est pas disponible