没有CONFIG_STRICT_DEVMEM标志

时间:2016-08-24 00:38:38

标签: c linux linux-kernel linux-device-driver

我试图编译mem.c模块并禁用CONFIG_STRICT_DEVMEM。我们的想法是拥有一个模块,允许我访问1MB以上/dev/mem的地址空间。为什么?我正在进行一些需要访问此内存空间的测试。

我将mem.c复制到我的主目录中,删除了具有访问限制的代码并对其进行了编译。但是,我收到以下警告:

WARNING: "kmsg_fops" [/home/user/projects/new_mem/mem.ko] undefined!
WARNING: "tty_init" [/home/user/projects/new_mem/mem.ko] undefined!
WARNING: "phys_mem_access_prot" [/home/user/projects/new_mem/mem.ko] undefined!
WARNING: "xlate_dev_mem_ptr" [/home/user/projects/new_mem/mem.ko] undefined!
WARNING: "devmem_is_allowed" [/home/user/projects/new_mem/mem.ko] undefined!
WARNING: "splice_from_pipe" [/home/user/projects/new_mem/mem.ko] undefined!
WARNING: "shmem_zero_setup" [/home/user/projects/new_mem/mem.ko] undefined!
make[1]: Leaving directory `/usr/src/linux-headers-4.4.0-34-generic'

我的问题是:

我是否真的必须编译定义了这些函数的每个模块,或者还有其他方法可以执行此操作?那有什么呢?

我需要的是编译代码以便能够访问/dev/mem,我真的不需要所有其他模块。如果没有从mem.c删除不必要的代码,还有其他方法可以删除此代码吗?

感谢任何帮助。

0 个答案:

没有答案