Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何阅读LXR?_Linux_Lxr - Fatal编程技术网

Linux 如何阅读LXR?

Linux 如何阅读LXR?,linux,lxr,Linux,Lxr,我想读一些Linux内核源代码,我找到了LXR。 这很好,但有时当我点击一些函数时,比如“kfree”,我会看到: 使用ld“链接”时,必须没有冲突。所以问题是:如何确定哪一个是唯一的??? 我认为gcc+makefile是解决方案,但我不知道怎么做 谢谢 1。 如果您对内核有一些隐含的了解,您会注意到kfree是slub、slab或slob的一部分。查看内核配置时,您可能会注意到dfefault使用了slub分配器。所以你得出结论-正确答案是mm/slub.c:3334 二, 这里是另一个l

我想读一些Linux内核源代码,我找到了LXR。 这很好,但有时当我点击一些函数时,比如“kfree”,我会看到:

使用ld“链接”时,必须没有冲突。所以问题是:如何确定哪一个是唯一的??? 我认为gcc+makefile是解决方案,但我不知道怎么做

谢谢

1。 如果您对内核有一些隐含的了解,您会注意到kfree是slub、slab或slob的一部分。查看内核配置时,您可能会注意到dfefault使用了slub分配器。所以你得出结论-正确答案是mm/slub.c:3334

二,


这里是另一个linux交叉参考搜索,可能有更详细的信息

如您所见,有些是预处理器定义,有些是函数。要知道哪一个是正确的,您可以查看配置选项,通常在内核的.config文件中

nm -a ./vmlinux | grep kfree
ffffffff81151bd0 T kfree
addr2line -e ./vmlinux 0xffffffff81151bd0
/home/alexhoppus/Desktop/linux/mm/slub.c:3335