完善kobj_type结构体

1、实现kobj_type的release函数

#include<linux/module.h>
#include<linux/init.h>
#include<linux/kernel.h>
#include<linux/kobject.h>
#include<linux/slab.h>

static void dynamic_kobj_release(struct kobject *kobj);
struct my_kobject 
{
   
     struct kobject kobj;
     int value;
};
struct my_kobject  *my_kobject01;

static struct kobj_type mytype = {
   
	.release	= dynamic_kobj_release,
	//.sysfs_ops	= &kobj_sysfs_ops,
};


static void dynamic_kobj_release(struct kobject *kobj)
{
   
	struct my_kobject* my_kobj = container_of(kobj, struct my_kobject, kobj);
     printk("kobject: (%p): %s\n", kobj, __func__);
	kfree(my_kobj);
}

static int my_kobject_init(void)
{
   
     int ret;

     my_kobject01 = kzalloc(sizeof(struct my_kobject),GFP_KERNEL);
     ret = kobject_init_and_add(&my_kobject01->kobj,&mytype,NULL,"%s","my_kobject01");

     return 0;
}

static void 

相关推荐

  1. 完善kobj_type结构

    2024-07-11 05:00:06       21 阅读
  2. 结 构

    2024-07-11 05:00:06       53 阅读
  3. 结构数组,完成宠物信息登记管理。

    2024-07-11 05:00:06       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 05:00:06       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 05:00:06       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 05:00:06       58 阅读
  4. Python语言-面向对象

    2024-07-11 05:00:06       69 阅读

热门阅读

  1. 【C++中resize和reserve的区别】

    2024-07-11 05:00:06       22 阅读
  2. 音频基础知识

    2024-07-11 05:00:06       24 阅读
  3. SQL 索引

    2024-07-11 05:00:06       20 阅读
  4. docker自定义镜像

    2024-07-11 05:00:06       19 阅读
  5. IDEA Plugins 网络异常解决办法

    2024-07-11 05:00:06       17 阅读
  6. python3记录拨号光纤公网IP

    2024-07-11 05:00:06       19 阅读
  7. uniapp小程序使用webview 嵌套 vue 项目

    2024-07-11 05:00:06       24 阅读
  8. iOS 开发中,异步渲染和异步绘制

    2024-07-11 05:00:06       19 阅读
  9. 请求被中止: 未能创建 SSL/TLS 安全通道

    2024-07-11 05:00:06       22 阅读
  10. 【LeetCode】字母异位词分组

    2024-07-11 05:00:06       21 阅读
  11. mybatis-plus树递归结构

    2024-07-11 05:00:06       22 阅读