- 论坛徽章:
- 0
|
谢谢楼上的提示,已经解决了没有定义的问题。
可是我把编译好的模块insmod到内核里去调试,发现mkdir没有创建目录,而是返回出错。
我的程序如下:
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/syscalls.h>
#include <asm/unistd.h>
#define __NR_mkdir1 __NR_mkdir
int errno;
static inline _syscall2(long, mkdir1, char *, s, int, mode);
static int __init test_int(void)
{
printk("init\n");
int fd = 0;
printk("%d\n", fd);
fd = mkdir1("tmp/asdf", S_IRWXU);
printk("%d\n", fd);
if(fd<0)
printk("invoke sys_make error\n");
return 0;
}
static void __exit test_exit(void)
{
printk("exit\n");
}
module_init(test_int);
module_exit(test_exit); |
|