在内核模块中为文件创建符号链接

问题描述 投票:2回答:1

我正在尝试创建一个指向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函数,它似乎只能创建目录符号链接(我认为)。有没有办法使用它来创建文件的符号链接?如果没有,还有其他专用功能吗?

linux kernel driver sysfs
1个回答
0
投票

你可以直接打电话给sys_symlinksys_symlinkat。或者最好查看实现文件fs/namei.c

© www.soinside.com 2019 - 2024. All rights reserved.