ret =kobject_add(&q->kobj, kobject_get(&dev->kobj),"%s","queue");if(ret <0) { blk_trace_remove_sysfs(dev);returnret; } kobject_uevent(&q->kobj, KOBJ_ADD);if(!q->request_fn)return0; ret = elv_register_queue(q);if(ret) { kobject_uevent(&q->kobj, KOBJ_REMOVE); kobj...
* kobject_init - 初始化一个kobject结构 * @kobj: 指向要初始化的kobject的指针 * @ktype: 指向该kobject 的ktype的指针 * * 该方法会正确的初始化一个kobject来保证它能够被传递给kobject_add() * 调用. * * 该功能被调用后,kobject必须通过调用kobject_put()来清理,而不是直接 * 调用kfree。来...
kobject_name(kobj),kobj); dump_stack(); return-EINVAL; } va_start(args,fmt); retval=kobject_add_varg(kobj,parent,fmt,args); va_end(args); returnretval; } staticintkobject_add_varg(structkobject*kobj,structkobject*parent, constchar*fmt,va_listvargs) { intretval; retval=kobj...
* kobject_init - 初始化一个kobject结构 * @kobj: 指向要初始化的kobject的指针 * @ktype: 指向该kobject 的ktype的指针 * * 该方法会正确的初始化一个kobject来保证它能够被传递给kobject_add() * 调用. * * 该功能被调用后,kobject必须通过调用kobject_put()来清理,而不是直接 * 调用kfree,来...
`name`:新创建的kobject的名字。 `parent`:新创建的kobject的父kobject。如果新创建的kobject没有父kobject,可以传递NULL。 函数返回一个指向新创建的kobject的指针,如果创建失败则返回NULL。 `kobject_create_and_add`函数首先使用`kobject_create`函数创建一个新的kobject,然后使用`kobject_add`函数将新创建的...
kobj = kobject_create(); if (!kobj) return NULL; retval = kobject_add(kobj, parent, "%s", name); if (retval) { printk(KERN_WARNING "%s: kobject_add error: %d\n", __func__, retval); kobject_put(kobj); kobj = NULL; ...
首先,该函数为 kobject 对象分配内存并初始化其引用计数和锁。然后,它将对象添加到内核对象树中,并将其链接到父 kobject。为了实现这一点,该函数调用 kobject_add 函数,并将其传递给 kobject 参数。最后,该函数返回 kobject 对象的指针,以便驱动程序可以使用它来访问该对象。 总之,kobject_init_and_add 函数...
name参数用于指定要创建的kobject对象的名称,parent参数用于指定要将新创建的kobject对象添加到的父级kobject对象。函数的返回值是一个指向新创建的kobject对象的指针,可以通过该指针来访问和操作新创建的kobject对象。 在使用kobject_create_and_add函数创建kobject对象时,需要注意如下几点: 1. kobject对象的名称应当...
而此基类就是kobject,但是C语言没有面向对象语法,这时候就需要将此基类(Kobject)嵌入到具体的结构体...
[ Upstream commit 4d0fe8c ] When I register a kset in the following way: static struct kset my_kset; kobject_set_name(&my_kset.kobj, "my_kset"); ret = kset_register(&my_kset); A null pointer dereference exception is occurred: [ 4453.568337] Unable to handle kernel NULL pointer der...