我正在尝试创建一个指向Linux内核模块中文件的符号链接。使用以下代码,我在sys/kernel
中创建了一个目录,然后在该目录中创建了一个文件:
// Create the base directory in sys/kernel
if (!(pmd_kobjSysKernelDir =
kobject_create_and_add(PMD_DRIVER_NAME, kernel_kobj)))
return -ENODEV;
if ((retVal = sysfs_create_file(
pmd_kobjSysKernelDir, &dev_attr_sysfs.attr)))
{
dev_err(&client->dev,
"couldn't create %s file \n", dev_attr_sysfs.attr.name);
return retVal;
}
现在我正在尝试创建一个文件的符号链接,由dev_attr_sysfs
结构表示。问题是,我只发现了sysfs_create_link
函数,它似乎只能创建目录符号链接(我认为)。有没有办法使用它来创建文件的符号链接?如果没有,还有其他专用功能吗?
你可以直接打电话给sys_symlink
或sys_symlinkat
。或者最好查看实现文件fs/namei.c
。