Bug 225313 - Irqbalance simply exists without any error
Irqbalance simply exists without any error
Product: Fedora
Classification: Fedora
Component: irqbalance (Show other bugs)
x86_64 Linux
medium Severity medium
: ---
: ---
Assigned To: Neil Horman
Depends On:
  Show dependency treegraph
Reported: 2007-01-29 16:43 EST by Vladimir Mosgalin
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-02-21 08:39:48 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
irqbalance under strace (42.17 KB, text/plain)
2007-01-30 07:34 EST, Vladimir Mosgalin
no flags Details

  None (edit)
Description Vladimir Mosgalin 2007-01-29 16:43:16 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv: Gecko/20061208 Firefox/

Description of problem:
After upgrading from stock irqbalance-1.13-4.fc6.x86_64 to irqbalance-0.55-2.fc6.x86_64 in updates it completely stopped working. IRQs are not balanced, and irqbalance exits very soon after starting. It doesn't even try to rebalance anything, just quits without any warning or error.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Execute /sbin/service irqbalance start or run /usr/sbin/irqbalance directly

Actual Results:
ps aux | grep irqbalance shows that irqbalance has started. After a while, no irqbalance is running. /proc/interrupts shows that no irqs are balanced.

Running /sbin/irqbalance --debug produces output:

$ sudo /usr/sbin/irqbalance --debug
Package 0:  cpu mask is 00000003 (workload 0)
        Cache domain 0: cpu mask is 00000003  (workload 0) 
                CPU number 1  (workload 0)
                CPU number 0  (workload 0)

[no output for some seconds]

Interrupt 16 (class ethernet) has workload 306 
Interrupt 0 (class timer) has workload 2002 
Interrupt 8 (class timer) has workload 0 
Interrupt 19 (class storage) has workload 189 
Interrupt 18 (class storage) has workload 104 
Interrupt 23 (class legacy) has workload 0 
Interrupt 21 (class legacy) has workload 0 
Interrupt 12 (class legacy) has workload 0 
Interrupt 9 (class legacy) has workload 0 
Interrupt 7 (class legacy) has workload 0 
Interrupt 1 (class legacy) has workload 0 

[no output for some seconds]

IRQ delta is 3217 
Package 0:  cpu mask is 00000003 (workload 13080)
        Cache domain 0: cpu mask is 00000003  (workload 13080) 
                CPU number 1  (workload 12085)
                  Interrupt 16 (ethernet/1448) 
                  Interrupt 18 (storage/494) 
                  Interrupt 21 (legacy/0) 
                  Interrupt 9 (legacy/0) 
                  Interrupt 1 (legacy/0) 
                CPU number 0  (workload 11133)
                  Interrupt 19 (storage/991) 
                  Interrupt 23 (legacy/0) 
                  Interrupt 12 (legacy/0) 
                  Interrupt 7 (legacy/0) 


Expected Results:
Irqbalance should keep on running and balancing irqs. Downgrading to irqbalance-1.13 solves this problem.

Additional info:
Comment 1 Neil Horman 2007-01-29 17:02:37 EST
are you running with selinux enabled?  if so you need to update your selinux
targeted policy to reflect the new fileset that irqbalance accesses.
Comment 2 Vladimir Mosgalin 2007-01-29 17:25:32 EST
I have latest selinux packages (selinux-policy-2.4.6-27.fc6.noarch), and selinux
is disabled anyway ;)
Comment 3 Neil Horman 2007-01-30 07:29:48 EST
then please run the above command under strace and attach the output file, as I
can run irqbalance here without it ever exiting
Comment 4 Vladimir Mosgalin 2007-01-30 07:34:50 EST
Created attachment 146912 [details]
irqbalance under strace

Here it its.
Comment 5 Arjan van de Ven 2007-02-21 07:53:05 EST
you appear to have only 1 physical cpu; in that case irqbalancing has only very
limited impact, and irqbalance just sets up a static balance and then exits as
explicit policy... 
(it can't do much good so it stops spending resources)
Comment 6 Vladimir Mosgalin 2007-02-21 07:56:38 EST
Well I do have only one physical cpu, but it's dual-core... (Core 2 Duo).
Doesn't that count as two separate ones?
Comment 7 Neil Horman 2007-02-21 08:39:48 EST
not under the new irqbalance, no.  IIRC, caches are shared in that configuration
meaning that irq's can be serviced on either core without cache line misses.
Comment 8 Vladimir Mosgalin 2007-02-21 08:47:09 EST
That's right (L1 caches are not shared, L2 cache is shared). However, doesn't
that mean that irq should be balanced without any fear of cache misses?

If current behavior is desired, so be it. I don't really care whether interrupts
are balanced or not.

Note You need to log in before you can comment on or make changes to this bug.