Announcement

Collapse
No announcement yet.

Too much work at interrupt

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Too much work at interrupt

    Hello,

    - PROBLEM :
    Firefox browser is responding very slowly. Lots of write access to my hard disk.


    - INFORMATIONS :
    This message appears hundreds of times in /var/log/messages or in the output of the command 'dmesg' :
    "...eth1: Too much work at interrupt, status=0x0000ffff..."

    As we can see it concerns here eth1 and it's my Via Rhine network card :

    Code:
    # ethtool -i eth1
    driver: via-rhine
    version: 1.4.3
    firmware-version:
    bus-info: 0000:03:06.0
    (you need to install ethtool package to have the 'ethtool' command)


    - SOLUTION :
    After searching the web I didn't find anything suitable for me so I checked the via-rhine.c driver source code (you gotta love linux just for this to be possible) and seen this :
    Code:
     if (debug > 4)
      ...
       printk(KERN_WARNING "%s: Too much work at interrupt, "status=%#8.8x.\n", dev->name, intr_status);
    For those who don't understand this : RTFM

    I listed the via_rhine kernel module like this :
    Code:
    # lsmod|grep rhine
    via_rhine              30216  0
    mii                    13440  1 via_rhine
    I then check the available options of this kernel module :
    Code:
    # modinfo via_rhine
    filename:       /lib/modules/2.6.27-9-generic/kernel/drivers/net/via-rhine.ko
    license:        GPL
    description:    VIA Rhine PCI Fast Ethernet driver
    author:         Donald Becker
    srcversion:     01169DC67D56C4FB8DAE9F7
    alias:          pci:v00001106d00003053sv*sd*bc*sc*i*
    alias:          pci:v00001106d00003106sv*sd*bc*sc*i*
    alias:          pci:v00001106d00003065sv*sd*bc*sc*i*
    alias:          pci:v00001106d00003043sv*sd*bc*sc*i*
    depends:        mii
    vermagic:       2.6.27-9-generic SMP mod_unload modversions 586
    parm:           max_interrupt_work:VIA Rhine maximum events handled per interrupt (int)
    parm:           debug:VIA Rhine debug level (0-7) (int)
    parm:           rx_copybreak:VIA Rhine copy breakpoint for copy-only-tiny-frames (int)
    parm:           avoid_D3:Avoid power state D3 (work-around for broken BIOSes) (bool)
    The line "parm:           debug:VIA Rhine debug level (0-7) (int)" means we can pass the option "debug" to the via_rhine kernel module, specifying an integer between 0 and 7.


    To make this option permanent we can append this to the file /etc/modprobe.d/options :
    Code:
    # do not show any via_rhine kernel module debug messages 
    options via_rhine debug=0

    Then reboot your machine and it solved the problem (at least for me).


    - CONFIG :
    *kernel : 2.6.27-9-generic
    *distro : Kubuntu 8.10
    *cpu : Intel(R) Pentium(R) 4 CPU 3.40GHz


    P.S : I tried to be as "newbie friendly" as I could
    P.P.S : My first week on Kubuntu in 12 years of linux experience and to me : debian is the best linux distro, kde is the most user friendly user interface, and I plan to code in C++ with Qt4 so Kubuntu is suitable for that (though to me KDE should have less visible bugs and a better theme manager)
    P.P.P.S : My last experience was the gentoo+gnome world
Working...
X