我有一个嵌入式系统,我已经为硬盘控制器开发了一个设备驱动程序。当我使用insmod插入驱动程序时,我收到以下错误。
警告:在fs / sysfs / dir.c:455 sysfs_add_one + 0xb0 / 0xdc() sysfs:无法创建重复的文件名'/ block / xsa'
Call Trace:
[<c00040ac>] microblaze_unwind+0x54/0x78
[<c0003db8>] show_stack+0x120/0x158
[<c0003df8>] dump_stack+0x8/0x20
[<c000fd40>] warn_slowpath_common+0x80/0xbc
[<c000fe08>] warn_slowpath_fmt+0x28/0x40
[<c00d51dc>] sysfs_add_one+0xa4/0xdc
[<c00d5cd4>] create_dir+0x80/0x100
[<c00d5fa0>] sysfs_create_dir+0x138/0x16c
[<c01586cc>] kobject_add_internal+0xc4/0x1dc
[<c0158920>] kobject_add_varg+0x4c/0x78
[<c0158e88>] kobject_add+0x68/0x80
[<c0187420>] device_add+0xac/0x56c
[<c014da98>] register_disk+0x48/0x1b8
[<c014e014>] add_disk+0x110/0x2c8
[<c805c7c4>] bean_of_probe+0x25c/0x324 [bean]
[<c018b9d0>] platform_drv_probe+0xc/0x24
[<c018a2c4>] driver_probe_device+0xe0/0x1b8
[<c018a61c>] __driver_attach+0x68/0xb4
[<c01890d4>] bus_for_each_dev+0x50/0xa8
[<c018a080>] driver_attach+0x18/0x30
[<c0189bac>] bus_add_driver+0xc4/0x2a0
[<c018aad8>] driver_register+0xf0/0x1ac
[<c018bd00>] platform_driver_register+0x58/0x70
[<c805e050>] bean_init+0x50/0xbc [bean]
[<c00002f4>] do_one_initcall+0x11c/0x220
[<c0047504>] sys_init_module+0x84/0x200
SYSCALL
--- [结束追踪56a543209f1c03c6] --- 对于带有-EEXIST的xsa,kobject_add_internal失败,请勿尝试在同一目录中注册具有相同名称的内容。 内核堆栈:
据我所知,它正在尝试使用已注册到紧凑型闪存卡的名称xsa。我的问题是内核如何决定应该使用的名称?如果有人可以帮助我,因为我刚开始使用Linux。
由于
乔恩