# # spec file for package cpuset (Version 1.5.0) # # Copyright (c) 2008-2009 Novell, Inc. Waltham, MA, USA # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: cpuset Version: 1.5.0 Release: 1 License: GPL v2 only BuildRoot: %{_tmppath}/%{name}-%{version}-build Url: http://developer.novell.com/wiki/index.php/Cpuset Group: System/Management Summary: Allows manipluation of cpusets on system and provides higher level functions Source: %{name}-%{version}.tar.gz BuildRequires: python-devel %if 0%{?suse_version} > 0 %py_requires %endif %{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %description Cpuset is a Python application to make using the cpusets facilities in the Linux kernel easier. The actual included command is called cset and it allows manipulation of cpusets on system and provides higher level functions such as implementation and control of a basic CPU shielding setup. Authors: -------- Alex Tsariounov %prep %setup %build CFLAGS="%{optflags}" \ %{__python} setup.py build #make doc ->not yet, asciidoc is missing... %install # Install binaries, but do not install docs via setup.py %{__python} setup.py install --root=%{buildroot} --prefix=%{_prefix} --install-data=/eraseme %{__rm} -rf %{buildroot}/eraseme # Install documentation %{__mkdir_p} %{buildroot}/%{_defaultdocdir}/cpuset %{__cp} NEWS README INSTALL AUTHORS COPYING %{buildroot}/%{_defaultdocdir}/cpuset/ %{__mkdir_p} %{buildroot}/%{_mandir}/man1 cd doc %{__gzip} *.1 %{__cp} *.1.gz %{buildroot}/%{_mandir}/man1 %{__cp} *.txt %{buildroot}/%{_defaultdocdir}/cpuset/ %{__mkdir} %{buildroot}/%{_defaultdocdir}/cpuset/html %{__cp} *.html %{buildroot}/%{_defaultdocdir}/cpuset/html/ %clean %{__rm} -rf %{buildroot} %files %defattr(-,root,root) %{_bindir}/cset %{python_sitelib}/* %{_mandir}/man1/* %{_defaultdocdir}/* %changelog * Sat Feb 07 2009 alext@suse.de - Update so svn 221, release 1.5.0 - Fix bug #1: Origination cpuset not accepted for process move... - Fix bug #2: Proc move from set to set does not recognize... - Fix bug #3: Interspersed arguments do not work - Fix bug #4: Add policy and priority to proc output list - Fix bug #5: Add ability to move all threads in a process container wi. - Fix bug #6: The -a option for set listing should be the default - Fix bug #7: Add destination cpuset for the proc move command - Fix bug #8: Let leading slash for nested cpuset spec be optional - Fix bug #9: Rearrange info output some, include machine readable output - Fix bug #10: Add a recursive cpuset delete with option - Fix bug #11: Add a configuration file - Fix bug #12: Add hex mask output for cpuset definition spec (cpuspec) - Fix bug #13: Add cpuset rename option to set command - Fix bug #21: Create shield shortcuts - Changed behavior of shield command, now it behaves more like the proc move command: -s or -u needs a -p to shield or unshield, however, the shortcut of shield pidspec still works. - Fixed exception when using cset with pipes - Fixed set list behavior if --set was specified but not --list - Added error message if proc list command does not specify a set - Fixed exception if proc is used with -l and -s - Location for cpuset filesystem mount can be specified in config file - Changed proc option -a/--all to --force only - Updated copyrights, URLs and documentation - Added spec file to svn which is used in build service - Cleaned up status output for clarity and consistency - Additional minor corner case bug fixes included * Thu Dec 04 2008 alext@suse.de - Updated spec file to build on many distros * Tue Sep 02 2008 alext@suse.de - Update to svn version 135, release 1.04 - Fixes bnc#422324 - Cset tool fails when cpu offlined * Fri Jul 18 2008 alext@suse.de - Update to svn version 133, release 1.03 - Remove class variable CpuSet.sets dictionary when CpuSet object (re)initialized. If you use cset as a library, then since the class var did not get zeroed out, old sets were found on cset.rescan() which broke the data structure. - Fixes bnc#410636 * Tue Jun 10 2008 alext@suse.de - Update to svn version 126, release 1.02 - Fix bug in new cpuset mount detection code * Tue Jun 10 2008 alext@suse.de - Update to svn version 122, release 1.01 - Fix community reported bug of not seeing cpuset filesystem mounted if running control groups (cgroups) - Remove need to mount cpuset filesystem if only executing help - Fix traceback if giving list of sets to list procs command * Fri May 30 2008 alext@suse.de - Update to svn version 117, release 1.0 - Addition of man pages and html docs * Fri May 09 2008 alext@suse.de - Update to svn revision 104, release 0.9.1 - Fix bug #388958 - Add files README and COPYING to rpm * Thu May 01 2008 alext@suse.de - Update to svn version 102, release 0.9 - Added -k/--kthread to proc move command to move kernel threads - Kernel threads are not moved automatically for generic move unless -k is also used - If kernel threads are not unbound, then both -k and -a is necessary - Improved information output for why tasks are moved or not - FYI: previous release 0.8 was svn revision 96 * Wed Apr 23 2008 alext@suse.de - Fixed bug #380819 - Fixed incorrect test for unbound task for shield; affects kernel thread shielding - Change proc -l to always output long listing of tasks in specified cpuset since set -l will output summary - Removed text re recommending 2.6.22 - Added correct source url - Added check for existing subsets for set --delete command - Switched to Novell Outerforge for svn: http://developer.novell.com/wiki/index.php/Cpuset * Thu Apr 03 2008 alext@suse.de - Update to svn version 143, release 0.7 - First fully functional release: commands shield, set and proc work. - Updated online docs. - Known issues: - irq threads not moved for -kon for shield command - odd messages output from OS when incorrect cpusets commands issued - missing documentation: man pages and tutorial * Thu Mar 20 2008 alext@suse.de - Update to svn version 127, release 0.6 - Added --user/--group for exec options for the shield and proc commands. Cset still needs to be root in order to manipulate cpusets, but you can exec other processes as different users. - Removed explicit check for root uid. Now all permissions checks are implicit. - Changed proc/--run to proc/--exec to match shield. - Shield/unshield commands now only move tasks from unshield to shield or shield to unshield, and leave tasks in the root cpuset alone, unless the --force option is specified. - Added clearer output feedback. * Tue Mar 18 2008 alext@suse.de - Update to svn version 116, release 0.5 - Fixes to cset/proc command for moving tasks. - More cset/set code, but set still not 100%%. * Fri Mar 14 2008 alext@suse.de - Update to svn version 109, release 0.4 - The proc command is fully functional. The set command has documentation and revised options. The mem command has been removed. * Wed Mar 12 2008 alext@suse.de - Update to svn version 89, release 0.3 - Incorporate feedback for shield supercommand from initial 0.2 release. * Fri Feb 15 2008 alext@suse.de - Update to version 0.2, svn version 77. - The shield supercommand is fully functional. Other commands are not yet implemented. * Thu Jan 24 2008 alext@suse.de - Remove error in abuild for including generic doc directory in list of files * Wed Jan 23 2008 alext@suse.de - Changed --record to --record-rpm to fix build. * Tue Jan 15 2008 alext@suse.de - Initial submission to autobuild, pdb entry exists. - Currently not functional, version set to 0.1.