Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: pu

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

It turns out that #796893 makes cpuset effectively useless in stable.  I
have updated an existing quilt patch from a patch in the (now mostly
dead) upstream issue tracker.  I have already uploaded 1.5.6-5 into
unstable to fix the bug there.  The debdiff for the proposed update to
stable is attached.  Here is the diffstat:

 changelog                                                        |    6 +
 patches/02_prefix_in_case_filesystem_has_its_own_namespace.patch |   45 
++++++++--
 2 files changed, 44 insertions(+), 7 deletions(-)

Regards,

- -Roberto

- -- System Information:
Debian Release: 7.9
  APT prefers oldstable-updates
  APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBCAAGBQJWHdZ9AAoJECzXeF7dp7IPLZwP/1oIUNHuqrQiOvO+5pamEfto
6gZiBZaGes0TwLv0qAEJ1o1qLcOV/lsRqKcbHo9F6bFO6JKeA805l7WYW+lhauWD
PGhxogImME32EK0qmpae+FvKnXv90F/RzZnacCb9zYq8IHyUYW7IA565dizQ+E7r
Kad6sWCeqxSGYnnqej5i3cAeSrJPcPwq8fcYlqbYRFZpAe9lJiePZfi7//m2MUYD
fbY94GVOEfdt/PQLADa/DRgmvREwh9lglNwMcX5HFia6kKJhrcu559h+kIRVfgaD
GkTVDrvVF2OslE5zDto+xc1a3XEQXqJn1nvTklRv0GVC4CAEGXtLZx/EsQQ2Rsna
sE/AATpCmVeZL+aDEstt5IbCI34bqthEA9SDz01Vo8tIo/K6DmgnY1Bd+iDXN3xz
w3ssLVizyLq7vMy946+8G3ucy46cyLSeT14CYcn28JD/KwKdc+rS8H+aheCh5U0r
qJSHiDzJI10f/JNn7+db6qM7x9+ls9dbYdblM5x5EBEsf8ZFxX4wYpsMU7GnAGvI
YiuD19TAQWubhFWmSyzrut35tW7IqPR3DNWsCUUxdH7J93WXqED7NRprZBVJPP2H
Hwy26mDHlFU8/B48SwuBOrZj4TN0DPdiaw9X/zB1NCwFIXz9vULP0LjOvmqyPnpN
+Oo9VNDbP1hccUUdrntd
=jxoF
-----END PGP SIGNATURE-----
diff -Nru cpuset-1.5.6/debian/changelog cpuset-1.5.6/debian/changelog
--- cpuset-1.5.6/debian/changelog	2014-03-09 18:16:04.000000000 -0400
+++ cpuset-1.5.6/debian/changelog	2015-10-13 23:47:17.000000000 -0400
@@ -1,3 +1,9 @@
+cpuset (1.5.6-4+deb8u1) jessie; urgency=high
+
+  * Update filesystem namespace prefix patch (Closes: #796893)
+
+ -- Roberto C. Sanchez <robe...@connexer.com>  Tue, 13 Oct 2015 23:46:35 -0400
+
 cpuset (1.5.6-4) unstable; urgency=low
 
   * Update Standards-Version to 3.9.5 (no changes)
diff -Nru cpuset-1.5.6/debian/patches/02_prefix_in_case_filesystem_has_its_own_namespace.patch cpuset-1.5.6/debian/patches/02_prefix_in_case_filesystem_has_its_own_namespace.patch
--- cpuset-1.5.6/debian/patches/02_prefix_in_case_filesystem_has_its_own_namespace.patch	2014-03-09 18:16:04.000000000 -0400
+++ cpuset-1.5.6/debian/patches/02_prefix_in_case_filesystem_has_its_own_namespace.patch	2015-10-13 23:47:17.000000000 -0400
@@ -1,7 +1,7 @@
 Author: Roberto C. Sanchez <robe...@connexer.com>
 Description: Account for filesystem namespace having its own prefix.  The updated file was downloaded from here: http://code.google.com/p/cpuset/issues/detail?id=10
---- cpuset.hg.orig/cpuset/cset.py
-+++ cpuset.hg/cpuset/cset.py
+--- cpuset.git.orig/cpuset/cset.py
++++ cpuset.git/cpuset/cset.py
 @@ -32,10 +32,13 @@
  class CpuSet(object):
      # sets is a class variable dict that keeps track of all 
@@ -17,7 +17,33 @@
  
      def __init__(self, path=None):
          log.debug("initializing CpuSet")
-@@ -104,12 +107,18 @@
+@@ -47,7 +50,16 @@
+             log.debug("finding all cpusets")
+             path = self.locate_cpusets()
+             CpuSet.basepath = path
+-            log.debug("creating root node at %s", path)
++            if not os.access(path + '/cpus', os.F_OK):
++                log.debug(path + "/cpus doesn't exist, trying to add the cpuset. prefix")
++                CpuSet.prefix = 'cpuset.'
++                if not os.access(path + '/cpuset.cpus', os.F_OK):
++                    # definitely not a cpuset directory
++                    str = '%s is not a cpuset directory' % (path)
++                    log.error(str)
++                    raise CpusetException(str)
++
++            log.debug("creating root node at %s with prefix '%s'", path, CpuSet.prefix)
+             self.__root = True
+             self.name = 'root'
+             self.path = '/'
+@@ -56,6 +68,7 @@
+                 del CpuSet.sets
+                 CpuSet.sets = {}
+             CpuSet.sets[self.path] = self
++
+             # bottom-up search otherwise links will not exist
+             log.debug("starting bottom-up discovery walk...")
+             for dir, dirs, files in os.walk(path, topdown=False):
+@@ -104,12 +117,18 @@
                  log.debug("the cpuset %s already exists, skipping", path)
                  self = CpuSet.sets[path]  # questionable....
                  return
@@ -41,7 +67,7 @@
              self.__root = False
              self.read_cpuset(path)
              CpuSet.sets[path] = self
-@@ -158,36 +167,36 @@
+@@ -158,36 +177,36 @@
          raise AttributeError, "deletion of properties not allowed"
  
      def getcpus(self): 
@@ -84,7 +110,7 @@
          if newval:
              f.write('1')
          else:
-@@ -197,14 +206,14 @@
+@@ -197,14 +216,14 @@
                               "CPU exclusive flag")
  
      def getmemxlsv(self): 
@@ -101,7 +127,7 @@
          if newval:
              f.write('1')
          else:
-@@ -214,6 +223,7 @@
+@@ -214,6 +233,7 @@
                               "Memory exclusive flag")
  
      def gettasks(self):
@@ -109,7 +135,7 @@
          f = file(CpuSet.basepath+self.path+"/tasks")
          lst = []
          for task in f: lst.append(task[:-1])
-@@ -229,6 +239,7 @@
+@@ -229,6 +249,7 @@
              prog = False
          for task in tasklist:
              try:
@@ -117,3 +143,8 @@
                  f = file(CpuSet.basepath+self.path+"/tasks",'w')
                  f.write(task)
                  f.close()
+@@ -513,4 +534,3 @@
+         print 'Found "cantfindmenoway??!? -> ', node
+     except CpusetException, err:
+         print 'Caught exeption for non-existant set (correctly)-> ', err
+-

Reply via email to