Go to file
x00456305 0c097c000e use policy prior to the default values
Currently user-defined policies against non-PCI devices' interrupts
are not working properly.

For example, when trying to set "balance_level=core" for a non-PCI
device interrupt which is classified as "other", will result in
the level of "package" because overrided in add_new_irq().

This patch fixes this by restricting irq info initializations in
add_one_irq_to_db(), which requires a change on its parameters.

Signed-off-by: Shuang Xia <xiashuang1@huawei.com>
Signed-off-by: Yun Wu <wuyun.wu@huawei.com>
2019-07-11 16:48:04 +08:00
misc fix socket path creation 2019-01-14 09:58:52 -05:00
tests Add make check targets 2018-05-14 14:14:02 -04:00
ui Fix string truncation issues detected by GCC 8 2019-02-19 14:04:48 +05:30
.gitignore irqbalance: Misc build enhancements 2012-03-26 10:19:00 -04:00
.travis.yml Dump the log to the console 2018-05-14 14:27:03 -04:00
activate.c remove affinity_hint infrastructure 2016-04-26 14:55:55 -04:00
AUTHORS Add autotools scripts to irqbalance 2009-09-01 15:50:39 +00:00
autogen.sh Make sure the m4 directory is created in autogen.sh 2012-06-20 11:45:37 -04:00
bitmap.c import __bitmap_parselist from Linux kernel 2015-03-12 17:47:00 -04:00
bitmap.h import __bitmap_parselist from Linux kernel 2015-03-12 17:47:00 -04:00
classify.c use policy prior to the default values 2019-07-11 16:48:04 +08:00
configure.ac Update configure.ac to print latest version 2018-10-27 05:36:59 -04:00
constants.h Compute load in nanoseconds 2013-02-18 14:08:57 -05:00
COPYING Adding missing configure files 2009-10-02 18:22:21 +00:00
cpumask.h fix cpulist_parse definition to match bitmap_parselist and kernel 2015-03-12 17:47:00 -04:00
cputree.c fix balancing when numa information isn't available 2019-02-26 09:35:38 -05:00
irqbalance.1 Remove a duplicated word in manpage 2019-03-25 20:03:14 +08:00
irqbalance.c Fix string truncation issues detected by GCC 8 2019-02-19 14:04:48 +05:30
irqbalance.h fix socket path creation 2019-01-14 09:58:52 -05:00
irqlist.c Fix min_load to pick actual min load across all objects 2017-11-15 07:33:47 -05:00
Makefile.am Add make check targets 2018-05-14 14:14:02 -04:00
non-atomic.h initial import 2006-12-09 15:59:16 +00:00
numa.c Fix ambiguous parsing of *node* entries in /sys. 2018-10-18 11:30:34 -07:00
placement.c fix balancing when numa information isn't available 2019-02-26 09:35:38 -05:00
procinterrupts.c Fix typo in procinterrupts 2019-04-08 06:59:43 -04:00
README.md Adding Travis bagde 2017-08-04 13:32:29 +02:00
types.h Types: clean out unused variables from irq_info struct 2017-08-08 14:35:31 -04:00

What is Irqbalance

Irqbalance is a daemon to help balance the cpu load generated by interrupts across all of a systems cpus. Irqbalance identifies the highest volume interrupt sources, and isolates them to a single unique cpu, so that load is spread as much as possible over an entire processor set, while minimizing cache miss rates for irq handlers.

Building and Installing Build Status

./autogen.sh
./configure [options]
make
make install

Developing Irqbalance

Irqbalance is currently hosted on github, and so developers are welcome to use the issue/pull request/etc infrastructure found there. However, most development discussions take place on the irqbalance mailing list, which can be subscribed to at: http://lists.infradead.org/mailman/listinfo/irqbalance

New Developers are encouraged to use this mailing list to discuss ideas and propose patches.

Bug reporting

When something goes wrong, feel free to send us bugreport by one of the ways described above. Your report should include:

  • Irqbalance version you've been using (or commit hash)
  • /proc/interrupts output
  • irqbalance --debug output
  • content of smp_affinity files - can be obtained by e.g.: $ for i in $(seq 0 300); do grep . /proc/irq/$i/smp_affinity /dev/null 2>/dev/null; done
  • your hw hierarchy - e.g. lstopo-no-graphics output