使用命令行参数设置内核模块数组的第 i 个值

使用命令行参数设置内核模块数组的第 i 个值

arraymod.c给定一个具有以下数组声明的内核模块:

static int myintArray[2] = { -1, -1 };
static int arr_argc = 0;
module_param_array(myintArray, int, &arr_argc, 0000);
MODULE_PARM_DESC(myintArray, "An array of integers");

我知道它将myintArray被初始化为[-1, -1]

插入模块时,我可以执行以下操作:

sudo insmod arraymod.ko myintArray=5       // myintArray=[5,-1]
sudo insmod arraymod.ko myintArray=5,11    // myintArray=[5,11]

有没有什么方法可以设置任意位置而不设置其余位置?就像是

sudo insmod arraymod.ko myintArray[1]=12 // myintArray=[-1,12]

相关内容