首页 > 其他分享 >MODULE_DEVICE_TABLE

MODULE_DEVICE_TABLE

时间:2023-04-12 22:55:46浏览次数:28  
标签:__ stringify name int attribute MODULE DEVICE TABLE

__attribute__((alias(__stringify(A))))   设置函数、变量的别名

#include <stdio.h>
#define __stringify_1(x...) #x
#define __stringify(x...)   __stringify_1(x)

void a(int n) __attribute__((alias(__stringify(A))));
//void sys_socket(int n) __attribute__((alias("SyS_socket")));

void A(int num)
{
    printf("%d\n", num);
}

int main(void)
{
    a(1);
}

 

驱动程序里经常看到MODULE_DEVICE_TABLE这个宏定义,一般用于动态加载驱动也就是热插拔的时候使用

#define MODULE_DEVICE_TABLE(type, name)                    \
extern typeof(name) __mod_##type##__##name##_device_table        \
  __attribute__ ((unused, alias(__stringify(name))))

 

在编译时,从所有驱动程序中提取此信息,并创建一个设备表。

插入设备时,内核会引用设备表,并且如果找到与添加设备的设备/供应商ID匹配的条目,则将加载驱动

 

标签:__,stringify,name,int,attribute,MODULE,DEVICE,TABLE
From: https://www.cnblogs.com/god-of-death/p/17311640.html

相关文章

  • 最新版本 Stable Diffusion 开源 AI 绘画工具之图生图进阶篇
    (✨目录)......
  • QTableWidget获取列(行)索引方法
    //获取指定的列索引集合QList<int>QcViewBaseForm::getSelectedColumns(QTableWidget*tableWidget){QList<int>selectedColumns;QList<QTableWidgetSelectionRange>selectedRanges=tableWidget->selectedRanges();for(autorange:selec......
  • Look-up table使用
    今天做光伏系统仿真的时候想使用looktable模块导入辐射数据,于是有以下随笔。使用命令Ir=xlsread('gaoyuhour.xlsx');创建LookupTable变量mylookuptable=Simulink.LookupTable;   可以看到LookupTable变量有很多属性,这里我们主要用到Breakpoints和Table属性,Breakpo......
  • 网络框架重构之路plain2.0(c++23 without module) 综述
    最近互联网行业一片哀叹,这是受到三年影响的后遗症,许多的公司也未能挺过寒冬,一些外资也开始撤出市场,因此许多的IT从业人员加入失业的行列,而且由于公司较少导致许多人求职进度缓慢,很不幸本人也是其中之一。自从参加工作以来,一直都是忙忙碌碌,开始总认为工作只是为了更好的生活,但是一......
  • RELATED和RELATEDTABLE
    RELATEDRELATED是列函数,返回一个列,前提是需要两张表之间有关联关系两张表Sheet1和CATEGORYSORT,用过CATEGORY关联  在表Sheet1中新增列:RELATED=RELATED('CATEGORYSORT'[CATEGORY]) 计算结果:  RELATEDTABLERELATEDTABLE是表函数,返回一张表,功能是通过一张表......
  • 在英特尔 CPU 上加速 Stable Diffusion 推理
    前一段时间,我们向大家介绍了最新一代的英特尔至强CPU(代号SapphireRapids),包括其用于加速深度学习的新硬件特性,以及如何使用它们来加速自然语言transformer模型的分布式微调和推理。本文将向你展示在SapphireRapidsCPU上加速StableDiffusion模型推理的各种技术......
  • AIGC教程:如何使用Stable Diffusion生成风格化游戏物品和图标
    GameLook报道/随着生成型AI的能力提升,越来越多的开发者开始尝试用StableDiffusion提升自己的研发效率。在RPG游戏的制作当中,数量庞大的游戏内物品是非常耗时且费力的部分,装备、道具、药剂等物品可能数以千计,从概念设计到最终放到游戏里的资源,可能耗费很长时间和......
  • Jmeter 启动时报错:Not able to find Java executable or version. Please check your
    安装java环境,cmd窗口中执行java-version可以看到java的版本信息。双击jmeter启动文件,报错:NotabletofindJavaexecutableorversion.PleasecheckyourJavainstallation解决办法:在启动文件jmeter.bat中添加java的环境信息SETJAVA_HOME=D:\Ksoftware\openjdk-19.0.2_w......
  • 报错信息:Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables
    一、报错提示   二、原因对关闭防火墙执行开启/关闭操作之后,没有重启docker服务三、解决办法方式一:重启docker服务systemctlrestartdocker方式二:若不想重启docker服务,则修改网络模式将docker的网络模式network_mode由映射改为host模式 ......
  • vue3 el-table-column 修改时间格式
    根据element文档说明,el-table中的el-table-column是可以使用formatter格式化时间的。  先添加绑定函数formatter <el-table-columnprop="createdTimeFormat":formatter="dateFormat"label="日期"width="170"></el-table-column> 新建格式......