linux_dsm_epyc7002/kernel/irq
Mike Travis 4b060420a5 bitmap, irq: add smp_affinity_list interface to /proc/irq
Manually adjusting the smp_affinity for IRQ's becomes unwieldy when the
cpu count is large.

Setting smp affinity to cpus 256 to 263 would be:

	echo 000000ff,00000000,00000000,00000000,00000000,00000000,00000000,00000000 > smp_affinity

instead of:

	echo 256-263 > smp_affinity_list

Think about what it looks like for cpus around say, 4088 to 4095.

We already have many alternate "list" interfaces:

/sys/devices/system/cpu/cpuX/indexY/shared_cpu_list
/sys/devices/system/cpu/cpuX/topology/thread_siblings_list
/sys/devices/system/cpu/cpuX/topology/core_siblings_list
/sys/devices/system/node/nodeX/cpulist
/sys/devices/pci***/***/local_cpulist

Add a companion interface, smp_affinity_list to use cpu lists instead of
cpu maps.  This conforms to other companion interfaces where both a map
and a list interface exists.

This required adding a bitmap_parselist_user() function in a manner
similar to the bitmap_parse_user() function.

[akpm@linux-foundation.org: make __bitmap_parselist() static]
Signed-off-by: Mike Travis <travis@sgi.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jack Steiner <steiner@sgi.com>
Cc: Lee Schermerhorn <lee.schermerhorn@hp.com>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-05-25 08:39:45 -07:00
..
autoprobe.c genirq: Remove compat code 2011-03-29 14:48:19 +02:00
chip.c irq: Export functions to allow modular irq drivers 2011-05-18 14:59:08 +02:00
debug.h genirq: Support per-IRQ thread disabling. 2011-04-23 15:56:24 +02:00
devres.c devres/irq: Fix devm_irq_match comment 2010-02-11 16:01:02 +01:00
dummychip.c genirq: Remove compat code 2011-03-29 14:48:19 +02:00
generic-chip.c genirq: Add chip suspend and resume callbacks 2011-04-23 15:56:24 +02:00
handle.c genirq: Remove compat code 2011-03-29 14:48:19 +02:00
internals.h genirq: Remove compat code 2011-03-29 14:48:19 +02:00
irqdesc.c irq: Export functions to allow modular irq drivers 2011-05-18 14:59:08 +02:00
Kconfig genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP 2011-05-02 18:16:22 +02:00
Makefile genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP 2011-05-02 18:16:22 +02:00
manage.c genirq: Support per-IRQ thread disabling. 2011-04-23 15:56:24 +02:00
migration.c Fix common misspellings 2011-03-31 11:26:23 -03:00
pm.c genirq: Add chip flag to force mask on suspend 2011-03-12 11:12:58 +01:00
proc.c bitmap, irq: add smp_affinity_list interface to /proc/irq 2011-05-25 08:39:45 -07:00
resend.c genirq: Remove compat code 2011-03-29 14:48:19 +02:00
settings.h genirq: Support per-IRQ thread disabling. 2011-04-23 15:56:24 +02:00
spurious.c genirq: Remove compat code 2011-03-29 14:48:19 +02:00