Unnamed repository
Go to file
Xunlei Pang 2040103bd7 kdumpctl: sanity check of nr_cpus for x86_64 in case running out of vectors
Check the number of cpus for x86_64 kdump kernel to boot with.
We met an issue on x86_64: kdump runs out of vectors with the
default "nr_cpus=1", when requesting tons of irqs.

This patch detects such situation and warns users about the risk.

The total number of vectors percpu is 256 defined by x86 architecture.
The available vectors can be allocated to io devices percpu starts
from FIRST_EXTERNAL_VECTOR(see kernel code), and some high-numbered
ones are consumed by some system interrupts. As a result, the vectors
for io device are within [FIRST_EXTERNAL_VECTOR, FIRST_SYSTEM_VECTOR),
with one known exception, 0x80 within the range is reserved specially
as the syscall vector.

FIRST_EXTERNAL_VECTOR is invariably 32, while FIRST_SYSTEM_VECTOR can
vary between different kernel versions. E.g. FIRST_SYSTEM_VECTOR gets
0xef(with CONFIG_X86_LOCAL_APIC on)for linux-4.10, that is 17 vectors
reserved, considering it may increase in the future and the special
vectors, we use a flexible variance and assume there are 32 reserved
from FIRST_EXTERNAL_VECTOR. Then the max vectors for device interrupts
percpu is: (256-32)-32=192, we acquire the number N of device interrupts
from /proc/irq/, then the number of minimal cpus required is calculated:
(N + 192 - 1) / 192

Signed-off-by: Xunlei Pang <xlpang@redhat.com>
Acked-by: Pratyush Anand <panand@redhat.com>
Acked-by: Dave Young <dyoung@redhat.com>
2017-01-23 15:52:24 +08:00
anaconda-addon Rename the subpackage kdump-anaconda-addon 2014-05-22 18:32:43 +08:00
.gitignore .gitignore: Update to make it more generic 2016-05-16 10:15:01 +08:00
98-kexec.rules udev-rules: Restart kdump service on cpu ADD/REMOVE events 2014-09-15 21:55:07 +08:00
README README: Add a README file 2014-04-02 10:45:36 +08:00
dracut-kdump-capture.service Introduce kdump capture service 2014-08-05 13:13:32 +08:00
dracut-kdump-emergency.service kdump-emergency.service: executable uses absolute path 2014-08-28 13:05:56 +08:00
dracut-kdump-error-handler.service Introduce kdump error handling service 2014-08-05 13:13:32 +08:00
dracut-kdump-error-handler.sh Revert "execute kdump_post after do_default_action" 2015-04-08 15:50:16 +08:00
dracut-kdump.sh dracut-kdump: use POSIX shell syntax 2016-11-28 10:41:15 +08:00
dracut-module-setup.sh rename function kdump_to_udev_name 2016-11-28 10:41:22 +08:00
dracut-monitor_dd_progress monitor-dd-progress fix 2013-06-25 16:45:59 +08:00
fadump-howto.txt kdump: Add firmware-assisted dump howto document 2014-07-28 13:03:51 +08:00
kdump-dep-generator.sh kdump-dep-generator: Add kdump service dependencies on the fly 2014-04-17 11:27:31 +08:00
kdump-in-cluster-environment.txt Add fence_kdump support for generic clusters 2014-04-03 14:43:06 +08:00
kdump-lib-initramfs.sh use "systemctl reboot -f" for reboot action 2015-12-11 15:20:54 +08:00
kdump-lib.sh drop dracut duplicate functions 2016-11-28 10:41:22 +08:00
kdump.conf Correct two typos in kdumpctl and kdump.conf 2016-11-28 10:41:05 +08:00
kdump.conf.5 kdump.conf man page fixes 2016-07-20 10:09:41 +08:00
kdump.service make kdump work when kernel crash after shutdown 2015-06-03 21:10:34 +08:00
kdump.sysconfig Remove kernel param "quiet" from kdump kernel cmdline 2015-12-11 15:18:31 +08:00
kdump.sysconfig.i386 Remove kernel param "quiet" from kdump kernel cmdline 2015-12-11 15:18:31 +08:00
kdump.sysconfig.ppc64 Remove kernel param "quiet" from kdump kernel cmdline 2015-12-11 15:18:31 +08:00
kdump.sysconfig.ppc64le Remove kernel param "quiet" from kdump kernel cmdline 2015-12-11 15:18:31 +08:00
kdump.sysconfig.s390x Remove kernel param "quiet" from kdump kernel cmdline 2015-12-11 15:18:31 +08:00
kdump.sysconfig.x86_64 Remove kernel param "quiet" from kdump kernel cmdline 2015-12-11 15:18:31 +08:00
kdumpctl kdumpctl: sanity check of nr_cpus for x86_64 in case running out of vectors 2017-01-23 15:52:24 +08:00
kdumpctl.8 kdumpctl: Add man page for kdumpctl 2015-08-19 14:15:34 +08:00
kexec-kdump-howto.txt kexec-kdump-howto: Add doc about the special mount information via "dracut_args" 2016-08-26 14:03:48 +08:00
kexec-tools-2.0.3-disable-kexec-test.patch Disable kexec_test 2012-01-21 16:56:07 +08:00
kexec-tools.spec Release 2.0.14-3 2017-01-04 15:00:49 +08:00
live-image-kdump-howto.txt Documentation: step by step guide on confiuring kdump in live images 2016-11-11 10:56:11 +08:00
mkdumprd use --hostonly-i18n for dracut 2017-01-23 15:50:47 +08:00
mkdumprd.8 Remove comma which is redundant 2013-02-16 15:19:41 +08:00
rhcrashkernel-param rhcrashkernel-param: echo crashkernel=auto for rhel7 2012-08-20 15:01:47 +08:00
sources Rebase makedumpfile 1.6.1 2017-01-04 14:58:56 +08:00
zanata-notes.txt Add a notes for zanata process 2012-12-05 01:23:09 -05:00

README

Adding a patch to kexec-tools
=============================
There is a mailing list kexec@lists.fedoraproject.org where all the dicussion
related to fedora kexec-tools happen. All the patches are posted there for
inclusion and committed to kexec-tools after review.

So if you want your patches to be included in fedora kexec-tools package,
post these to kexec@lists.fedoraproject.org.

One can subscribe to list and browse through archives here.

https://admin.fedoraproject.org/mailman/listinfo/kexec