LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Kernel (https://www.linuxquestions.org/questions/linux-kernel-70/)
-   -   network is very slow when loading any tcp module that I compiled (https://www.linuxquestions.org/questions/linux-kernel-70/network-is-very-slow-when-loading-any-tcp-module-that-i-compiled-759534/)

foofoo42 10-04-2009 01:28 AM

network is very slow when loading any tcp module that I compiled
 
I am out of ideas, spent a full day on this..

Here is situation:
- I have a quad-core amd64 server running centos 2.6.18-53
- When I download a file from it, I get a speed close to 1MB/s.
- then if I load alternate tcp modules (cubic, vegas, etc) I get a result close to that speed.
- I now want to do a few tweaks to a module (say tcp_cubic) so I downloaded the sources from centos for kernel 2.6.18-53.
- I compile the modules from source, using kernel config from my running centos (found under /boot). In theory these should be exactly same as the precompiled ones that come with the kernel.
- Then I try to load the newly compiled tcp_cubic, and the download is super slow! Like around 20KB/S.
- This is the same slowness issue for ANY tcp module I compiled.

I am sure that the correct architecture is selected in config:
Code:

CONFIG_X86_64=y
CONFIG_64BIT=y
CONFIG_X86=y

Also after compiling, the file type is correct 64bits:
Code:

/lib/modules/2.6.18-53.el5/kernel/net/ipv4/tcp_cubic.ko: ELF 64-bit LSB relocatable, AMD x86-64, version 1 (SYSV), not stripped
When running the download, top does not show any kind of suspicious activity, cpu is low, no error in dmesg.
I did a packet capture and it does not show any retransmission or error.

The only thing I can think of is some kind of timer/scheduler issue.
Anyone knows if there can be some incompatibility there between a running kernel and modules?
I really need your help!
FooFoo

foofoo42 10-04-2009 02:16 PM

problem solved
 
Turns out - I was using redhat kernel sources incorrectly.
I had downloaded the correct sources but rushed to compile the sources from inside folder, instead of using the rpmbuild command.
The rpmbuild applied a whole bunch of patches to bring sources to the right state.
After compiling the generated sources, tcp modules behave correctly.

I am still surprised that tcp would be so broken (slow) with older sources.
Maybe some kind of incompatibility in interface was introduced..
Foofoo


All times are GMT -5. The time now is 11:25 AM.