diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..58bfacc --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/realtime-setup-2.2.tar.bz2 diff --git a/.realtime-setup.metadata b/.realtime-setup.metadata new file mode 100644 index 0000000..27e4a7e --- /dev/null +++ b/.realtime-setup.metadata @@ -0,0 +1 @@ +9d09c9489468a250c6e7bae3ea840a0a12d54f79 SOURCES/realtime-setup-2.2.tar.bz2 diff --git a/SPECS/realtime-setup.spec b/SPECS/realtime-setup.spec new file mode 100644 index 0000000..96387ec --- /dev/null +++ b/SPECS/realtime-setup.spec @@ -0,0 +1,355 @@ +Name: realtime-setup +Version: 2.2 +Release: 5%{?dist} +License: GPLv2 +Summary: Setup RT/low-latency environment details +Source0: https://jcwillia.fedorapeople.org/realtime-setup-%{version}.tar.bz2 +URL: https://gitlab.com/rt-linux-tools/realtime-setup.git + +BuildRequires: gcc +BuildRequires: make +BuildRequires: systemd +BuildRequires: systemd-rpm-macros +BuildRequires: annobin +Requires: pam +Requires: kexec-tools +Requires: tuna +Requires: tuned +Requires: tuned-profiles-realtime +Requires: systemd + +# disable generation of debuginfo packages for this package +# the only executable from this package is realtime-entsk and it's not really +# something that requires debugging. +%global debug_package %{nil} + +%description +Configure details useful for low-latency environments. + +Installation of this package results in: + - creation of a realtime group + - adds realtime limits configuration for PAM + - adds udev specific rules for threaded irqs and /dev/rtc access + - adds /usr/bin/slub_cpu_partial_off to turn off cpu_partials in SLUB + - adds net-socket timestamp static key daemon (realtime-entsk) + +The slub_cpu_partial_off script is used to turn off the SLUB slab allocator's +use of cpu-partials, which has been known to create latency-spikes. + +The realtime-entsk program is a workaround for latency spikes caused when the +network stack enables hardware timestamping and activates a static key. The +realtime-entsk progam is activated by the systemd service included and merely +enables the timestamp static key and pauses, effectively activating the static +key and never exiting, so no deactivation/activation sequences will be seen. + +Neither the slub script or realtime-entsk are active by default. + + +%prep +%setup -q + + +%build +%make_build CFLAGS="%{build_cflags} -D_GNU_SOURCE" all + +%install +%make_install DEST=%{buildroot} install + +%post +/usr/sbin/groupadd -f -g 71 realtime + +%preun +%systemd_preun realtime-setup.service + +%files +%config(noreplace) %{_sysconfdir}/security/limits.d/realtime.conf +%config(noreplace) %{_sysconfdir}/udev/rules.d/99-rhel-rt.rules +%config(noreplace) %{_sysconfdir}/sysconfig/realtime-setup +%{_bindir}/slub_cpu_partial_off +%{_sbindir}/realtime-entsk +%{_sbindir}/kernel-is-rt +%{_unitdir}/realtime-setup.service +%{_bindir}/realtime-setup +%{_unitdir}/realtime-entsk.service +%license gpl-2.0.txt + +%changelog +* Mon Jan 17 2022 John Kacur - 2.2-5 +- Rebuild for rhel-9.0 +Resolves: rhbz#2041542 + +* Tue Aug 10 2021 Mohan Boddu - 2.2-4 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Wed May 26 2021 Clark Williams - 2.2-3 +- pidfile error from renaming. Resolves rhbz##1891048 + +* Thu May 20 2021 Clark Williams - 2.2-2 +- Cgroupv2 fix. Resolves rhbz#1891048 + +* Wed May 19 2021 Clark Williams - 2.2-1 +- Fix realtime-entsk.service using wrong image. Resolves rhbz#1891048 + +* Fri May 14 2021 Clark Williams - 2.1-4 +- Sync RHEL 9 and Fedora versions + +* Fri Apr 16 2021 Mohan Boddu - 2.1-3 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Wed Jan 27 2021 Fedora Release Engineering - 2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Mar 27 2019 Clark Williams 2.1.1 +- build for RHEL 8.1.0 +- added OSCI gating test framework +Resolves: rhbz#1682427 + +* Tue Oct 23 2018 Clark Williams 2.0.10 +- rebuild to see if build-id continues to appear in the rpm + +* Mon Sep 24 2018 Clark Williams 2.0.9 +- fix annocheck static source analysis errors +Resolves: rhbz#1619407 + +* Fri Sep 14 2018 Clark Williams 2.0.8 +- fix some coverity complaints about shell scripts +Resolves: rhbz#1619407 + +* Fri Sep 14 2018 Clark Williams 2.0.7 +- strip rt-entsk executable on installation +Resolves: rhbz#1619407 + +* Fri Aug 24 2018 Clark Williams 2.0.6 +- check for open failure to make coverity happy +Resolves: rhbz#1619407 + +* Fri Aug 24 2018 Clark Williams 2.0.5 +- move pidfile write to after daemonize in rt-entsk +Resolves: rhbz#1619407 + +* Wed Aug 22 2018 Clark Williams 2.0.4 +- add logic to write a pid file in rt-entsk (keep systemd happy) +Resolves: rhbz#1619407 + +* Wed Aug 22 2018 Clark Williams 2.0.3 +- sync with rhel-7.6 build +Resolves: rhbz#1619407 + +* Wed Aug 22 2018 Clark Williams 2.0.2 +- fix installation of rt-entsk +Resolves: rhbz#1619407 + +* Mon Aug 20 2018 Clark Williams 2.0.1 +- build for RHEL 8.0.0 +- add rt-entsk program for forcing network timestamps enabled +Resolves: rhbz#1619407 + +* Wed Aug 08 2018 Clark Williams 1.59-8 +- remove libcgroup requirement +- remove comment about irqbalance + +* Fri Jun 01 2018 Luis Claudio R. Goncalves 1.59-7 +- rt-setup no longer rrequires rtctl (1585198) +Resolves: rhbz#1585198 + +* Tue Jul 05 2016 John Kacur - 1.59-5 +- Rebuild for rhel-7.3 +Resolves: rhbz#1341783 + +* Tue Jun 14 2016 John Kacur - 1.59-3 +- Fix some spelling mistakes in the comments in rhel-rt.rules +- Add udev rules to allow the realtime group to access msr and cpuid registers +Resolves: rhbz#1341783 + +* Fri Jul 10 2015 Clark Williams - 1.59-2 +- removed post-install script that disables irqbalance (1203764) +- fixed typo in requires for tuned-profiles-realtime (1241936) + +* Thu Jul 2 2015 Clark Williams - 1.59-1 +- added tuned and tuna dependencies, removed sqlite (1203764) + +* Mon Dec 29 2014 Luis Claudio R. Goncalves - 1.58-2 +- fixed rt-setup shell script called on startup (1162769) +- removed the unnecessary mrg-rt-firmware logic (1162769) + +* Fri Dec 26 2014 Luis Claudio R. Goncalves - 1.58-1 +- make startup logic work with systemd (1162769) +- product name cleanup (1173312) + +* Fri Nov 28 2014 Luis Claudio R. Goncalves - 1.57-6 +- remove a reference to mrg-rt-release from initscript (1162766) + +* Mon Nov 24 2014 Luis Claudio R. Goncalves - 1.57-5 +- move kernel-is-rt from /sbin to /usr/sbin (1151563) + +* Tue Nov 18 2014 Luis Claudio R. Goncalves - 1.57-4 +- remove the database used by mrg-rt-release (1162766) + +* Tue Nov 11 2014 Luis Claudio R. Goncalves - 1.57-3 +- remove mrg-rt-release (1162766) + +* Tue Nov 04 2014 Luis Claudio R. Goncalves - 1.57-2 +- remove the old dracut rules from RHEL6 (1160440) + +* Wed Oct 29 2014 Clark Williams - 1.57-1 +- added mrg-2.5.8 release to mrg-rt-release database + +* Tue Sep 30 2014 Luis Claudio R. Goncalves - 1.56-2 +- added mrg-2.5.7 release to mrg-rt-release database + +* Wed Aug 20 2014 Clark Williams - 1.56-1 +- added mrg-2.5.6 release to mrg-rt-release database +- removed dracut rule that caused problems when adding firmware to initramfs + +* Fri Jul 25 2014 Clark Williams - 1.55-8 +- added mrg-2.5.2 and mrg-2.5.4 releases to mrg-rt-release database + +* Tue Jun 10 2014 John Kacur - 1.55-7 +- udev: Add udev rule to give group realtime write access to cpu_dma_latency + +* Mon Apr 28 2014 Luis Claudio R. Goncalves - 1.55-6 +- Added mrg-2.5 GA data to the mrg-rt-release database + +* Wed Apr 09 2014 Luis Claudio R. Goncalves - 1.55-5 +- Added mrg-2.4.6 data to the mrg-rt-release database + +* Fri Mar 28 2014 Luis Claudio R. Goncalves - 1.55-4 +- Trim the kernel version when read from uname -rt + +* Tue Feb 18 2014 Luis Claudio R. Goncalves - 1.55-3 +- Added mrg-2.4.5 data to the mrg-rt-release database + +* Wed Jan 22 2014 Luis Claudio R. Goncalves - 1.55-2 +- Added mrg-2.4.3 data to the mrg-rt-release database + +* Tue Dec 10 2013 Clark Williams - 1.55-1 +- First common build for RHEL7 and RHEL6 + +* Thu Nov 28 2013 Luis Claudio R. Goncalves 1.54-2 +- Enhanced update-mrg-rt-release + +* Thu Nov 28 2013 Luis Claudio R. Goncalves 1.54-1 +- Update mrg-rt-release on every boot [848433] + +* Thu Aug 29 2013 Luis Claudio R. Goncalves - 1.53-4 +- add /lib/firmware/$(uname -r) to dracut firmware search path (998920) +- ensure rt-firmware files are on udev firmware search path (998920) + +* Thu Aug 22 2013 Luis Claudio R. Goncalves - 1.53-3 +- removed the dracut config file + +* Tue Aug 20 2013 Luis Claudio R. Goncalves - 1.53-2 +- added configuration file for dracut (998920) +- fixed macro usage on the specfile + +* Thu Apr 25 2013 Clark Williams - 1.53-1 +- turn off cgroup mounting logic +- added Requires for libcgroup + +* Tue Apr 2 2013 Clark Williams - 1.52-1 +- added script slub_cpu_partial_off +- added cgroups to /etc/sysconfig/rt-setup + +* Wed Mar 27 2013 Clark Williams - 1.51-1 +- added code to turn off SLUB cpu_partial at startup + +* Mon Nov 12 2012 Luis Claudio R. Goncalves - 1.50-1 +- rt-setup-kdump: use mrg-2.x as the kdump kernel [868446] [868442] [868329] +- rt-setup-kdump: simplified the script and added --rhel option + +* Tue Mar 6 2012 Clark Williams - 1.11-1 +- removed %%post logic that disables bandwidth limiting [BZ# 791371] +- changed rtprio from 100 to 99 in realtime.conf + +* Thu Oct 13 2011 Clark Williams - 1.10-1 +- fixed thinko by removing firmware download logic + +* Tue Oct 11 2011 Clark Williams - 1.9-1 +- added sysconfig and init script for handling cgroup mounting +- changed script kernel-is-rt to use /sys/kernel/realtime + +* Wed May 11 2011 Clark Williams - 1.8-1 +- simplified mrg-rt-firmware.rules to fix boot time hang on + large core machines (BZ# 698481) + +* Fri Feb 11 2011 Luis Claudio R. Goncalves - 1.7-4 +- Normalized the RHEL6 firmware path search (due to uname -r changes) + +* Thu May 27 2010 John Kacur - 1.7-2 +- set kernel.hung_task_panic=0 (off) by default +- set kernel.hung_task_timeout_secs=600 by default +- used sysctl to set sched_rt_runtime_us at install time, not just boot time + +* Tue May 18 2010 Clark Williams - 1.7-1 +- removed requirement for kernel-rt (circular dependency) +- cleaned up mrg-rt-firmware.rules (added commas between all key/value pairs) + +* Wed Nov 25 2009 Luis Claudio R. Goncalves - 1.6-3 +- rt-setup-kdump: configure kdump on all MRG kernel flavors +- rt-setup-kdump: fix a log entry that was too verbose + +* Wed Nov 25 2009 Luis Claudio R. Goncalves - 1.6-2 +- rt-setup-kdump treats MRG v1 and v2 kernels accordingly (BZ# 517529) + +* Mon Nov 2 2009 Clark Williams - 1.6-1 +- removed "@16" specifier from rt-setup-kdump script (BZ# 517529) + +* Tue Sep 1 2009 Clark Williams - 1.5-2 +- fixed path mismatches reported by Vernon Maury + +* Wed Aug 26 2009 Clark Williams - 1.5-1 +- add udev rules and scripts for handling driver firmware download + +* Thu Jul 9 2009 Clark Williams - 1.4-1 +- blow away rtctl udev rule (compatibility problem with RHEL + version of udev) +- update /dev/rtc udev rule to use PROGRAM rather than SYMLINK + +* Tue Jul 7 2009 Clark Williams - 1.3-1 +- added udev rules file to address: + - BZ 510121 hwclock & /dev/rtc broken in rt-kernel + - BZ 466929 udev rule for hotplug rtctl + +* Thu May 21 2009 Clark Williams - 1.2-1 +- added post section to edit /etc/sysctl.conf and add the + kernel.sched_rt_runtime_us parameter = -1 line to disable + the RT scheduler bandwith limiter + +* Tue Jul 15 2008 Clark Williams - 1.1-6 +- fixed rt-setup-kdump to handle incorrect arguments (BZ 455536) +- added help argument to rt-setup-kdump + +* Fri Jun 13 2008 Luis Claudio R. Goncalves - 1.1-5 +- rt-setup-kdump now touches /etc/grub.conf only when requested + +* Tue Jun 03 2008 Luis Claudio R. Goncalves - 1.1-4 +- /usr/bin/rt-setup-kdump had wrong permissions +- changed rt-setup-kdump: added a few tests for reserved memory and for the + absence of /etc/sysconfig/kdump +- now rt-setup requires kexec-tools + +* Mon May 12 2008 Luis Claudio R. Goncalves - 1.1-3 +- disables irqbalance as it may hurt determinism in RT +- installs rt-setup-kdump in /usr/bin + +* Tue Apr 22 2008 Clark Williams - 1.1-2 +- removed sed script to edit kdump config file (using updated + kexec-tools instead) + +* Mon Apr 21 2008 Clark Williams - 1.1-1 +- removed --args-linux from /etc/sysconfig/kdump (BZ# 432378) +- changed BuildArch to noarch + +* Thu Feb 07 2008 Luis Claudio R. Goncalves - 1.0-3 +- BZ:399591 - Fixed spec issues pointed by Jeremy Katz +- BZ:399591 - @realtime has gid=71. +- FIXES: BZ399591 + +* Thu Aug 02 2007 Luis Claudio R. Goncalves - 1.0-2 +- Fixed package description + +* Mon Jul 30 2007 Luis Claudio R. Goncalves - 1.0-1 +- Initial packaging +- Requires all the basic packages for RT +- Requires support for limits.d and no realtime.conf present in PAM package