我在使用我的Ubuntu Linux内核正确编译这个特定的内核补丁时遇到了一些麻烦。
有问题的补丁来自一个名为SCST的软件,它是Linux的iSCSI目标。当我运行patch -p1 < put_page_callback-2.6.32.patch
时补丁加载正常,但是当我编译时,我得到大约一个小时左右,然后失败并返回这些错误。
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:63: error: redefinition of '__kcrctab_net_get_page_callback'
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:14: note: previous definition of '__kcrctab_net_get_page_callback' was here
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:63: error: redefinition of '__kstrtab_net_get_page_callback'
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:14: note: previous definition of '__kstrtab_net_get_page_callback' was here
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:63: error: redefinition of '__ksymtab_net_get_page_callback'
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:14: note: previous definition of '__ksymtab_net_get_page_callback' was here
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:66: error: redefinition of '__kcrctab_net_put_page_callback'
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:17: note: previous definition of '__kcrctab_net_put_page_callback' was here
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:66: error: redefinition of '__kstrtab_net_put_page_callback'
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:17: note: previous definition of '__kstrtab_net_put_page_callback' was here
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:66: error: redefinition of '__ksymtab_net_put_page_callback'
/root/d1/development/kernel/lucid/source/net/ipv4/tcp_zero_copy.c:17: note: previous definition of '__ksymtab_net_put_page_callback' was here
我绝对不知道发生了什么事。我不是一个内核开发者,我只是想获得这个补丁和另一个工作正常的scst_exec_req_fifo-2.6.32.patch
。所以我可以让这个iSCSI目标全速运行。
知道我能做什么吗?
**更新**
我正在遵循https://help.ubuntu.com/community/Kernel/Compile的规定。更具体地说,该页面上的链接转到http://blog.avirtualhome.com/2010/05/05/how-to-compile-a-ubuntu-lucid-kernel/。
我已经使用这些说明做了一些编译,我的问题是我忘了应用补丁或补丁没有采取,但到目前为止他们总是完成。这个新补丁的东西搞砸了。
至于为什么iSCSI目标正在弄乱网络部分,它显然与网络性能有关。当我编译没有补丁的目标软件时,它抱怨性能不会很好。目标网站为http://scst.sourceforge.net/index.html
答案 0 :(得分:0)
从kernel.org获取适当的内核版本后,您应该遵循标准的内核编译方法
以下是按顺序执行的步骤
您现在应该在启动选项中看到新内核,它应该(希望)启动。