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

זריקות
TargetSetupError אם אי אפשר להתקין את המודול
DeviceNotAvailableException אם המכשיר לא זמין

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 אם המכשיר לא זמין