问题描述
- 请教linux内核模块指针的问题
- 我在一个内核模块中写了下面一段代码,编译没问题,执行时报错(oops)好像是指针的问题,只要不在while循环中给j赋值就没问题,不知何故,第一次做内核模块,不知道内核态指针是不是还有什么特殊用法,求教
i = *hash_number + 1;
j = 0;
while ((i % HASH_MAX_REGIONS) != hash_number) {
if (dmc->access_stats[i].region_number != region_number) {
if (dmc->access_stats[i].Te == 0 && flag == 0) {
flag = 1;
j = i;
}
i++;
} else {
j = i;
break;
}}if (i == *hash_number && flag < 0) return -1;else *hash_number = j;
时间: 2024-10-26 05:54:21