从OVS源码如何跳转到引用了linux内核函数的定义

博主在看Open vSwitch源代码时,发现很多函数无法跳转,如'free_percpu'函数、'-ENODEV'变量,它们是Linux内核里的定义。为解决此问题,博主下载了Linux 4.4版本内核,将其include位置添加到编辑器配置中,之后可实现相关变量的跳转。

最近开始看Open vSwitch(OVS)的源代码,用编辑器新建好工程并且rebuild,发现还是有很多函数无法跳转。例如:"free_percpu"这个函数,"-ENODEV"这个变量,搜索后发现它们都是linux内核里面的定义,不能跳转过去看下具体啥作用还是挺不习惯,一个个搜又很费劲,想要把这个问题给解决了。

首先去https://mirrors.edge.kernel.org/pub/下载了linux内核,我用的比较多的是Ubuntu16.04,所以下载了linux 4.4的版本,解压后,把linux源码的include所在的位置添加到编辑器的配置中,添加的方式其实和添加VS的include目录是一样的。以我用的souce insight为例,添加的方式为"Options->Sysbol Lookups->Import Symbols in Current Project...",设置完如下图所示:

同样,从上图的下框可以看到,添加完include目录以后,已经可以在下面的导航框里看到关于刚刚提到的"-ENODEV"的定义,跳转过去可以发现,这个变量确实是定义在linux内核中的变量。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值