Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 225313 - Irqbalance simply exists without any error
Summary: Irqbalance simply exists without any error
Alias: None
Product: Fedora
Classification: Fedora
Component: irqbalance
Version: 6
Hardware: x86_64
OS: Linux
Target Milestone: ---
Assignee: Neil Horman
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2007-01-29 21:43 UTC by Vladimir Mosgalin
Modified: 2007-11-30 22:11 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2007-02-21 13:39:48 UTC

Attachments (Terms of Use)
irqbalance under strace (deleted)
2007-01-30 12:34 UTC, Vladimir Mosgalin
no flags Details

Description Vladimir Mosgalin 2007-01-29 21:43:16 UTC
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 22:02:37 UTC
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 22:25:32 UTC
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 12:29:48 UTC
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 12:34:50 UTC
Created attachment 146912 [details]
irqbalance under strace

Here it its.

Comment 5 Arjan van de Ven 2007-02-21 12:53:05 UTC
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 12:56:38 UTC
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 13:39:48 UTC
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 13:47:09 UTC
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.