debcrafters-packages team mailing list archive
-
debcrafters-packages team
-
Mailing list archive
-
Message #03129
[Bug 2115636] Re: python-psutil 7.0.0-2 fails to build on ppc64el with util-linux 2.41-4ubuntu2
With some more debug information added, the following valgrind warning
is triggered in read_caches somewhere in this part:
```
if (id == -1)
id = mk_cache_id(cxt, cpu, buf, level);
ca = get_cache(cxt, buf, level, id);
if (!ca)
ca = add_cache(cxt, buf, level, id);
```
Probably in the add_cache() call.
```
==11853== Invalid read of size 8
==11853== at 0x190078: ??? (in /usr/bin/lscpu)
==11853== by 0x186D1B: ??? (in /usr/bin/lscpu)
==11853== by 0x4986C43: (below main) (libc_start_call_main.h:58)
==11853== Address 0x4c7a7c0 is 0 bytes inside a block of size 256 free'd
==11853== at 0x48A9A20: free (in /usr/libexec/valgrind/vgpreload_memcheck-ppc64le-linux.so)
==11853== by 0x4AA5307: __sched_cpufree (sched_cpufree.c:25)
==11853== by 0x18E387: ??? (in /usr/bin/lscpu)
==11853== by 0x18FE0F: ??? (in /usr/bin/lscpu)
==11853== by 0x186D1B: ??? (in /usr/bin/lscpu)
==11853== by 0x4986C43: (below main) (libc_start_call_main.h:58)
==11853== Block was alloc'd at
==11853== at 0x48A5698: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-ppc64le-linux.so)
==11853== by 0x4AA50A3: __sched_cpualloc (sched_cpualloc.c:25)
==11853== by 0x18E153: ??? (in /usr/bin/lscpu)
==11853== by 0x18FE0F: ??? (in /usr/bin/lscpu)
==11853== by 0x186D1B: ??? (in /usr/bin/lscpu)
==11853== by 0x4986C43: (below main) (libc_start_call_main.h:58)
```
The double free is tracked down to `free(c->sharedmap);` in
`lscpu_free_caches`:
```
==11853== Invalid free() / delete / delete[] / realloc()
==11853== at 0x48A9A20: free (in /usr/libexec/valgrind/vgpreload_memcheck-ppc64le-linux.so)
==11853== by 0x191263: ??? (in /usr/bin/lscpu)
==11853== by 0x1877E3: ??? (in /usr/bin/lscpu)
==11853== by 0x4986C43: (below main) (libc_start_call_main.h:58)
==11853== Address 0x4c7a7c0 is 0 bytes inside a block of size 256 free'd
==11853== at 0x48A9A20: free (in /usr/libexec/valgrind/vgpreload_memcheck-ppc64le-linux.so)
==11853== by 0x4AA5307: __sched_cpufree (sched_cpufree.c:25)
==11853== by 0x18E387: ??? (in /usr/bin/lscpu)
==11853== by 0x18FE0F: ??? (in /usr/bin/lscpu)
==11853== by 0x186D1B: ??? (in /usr/bin/lscpu)
==11853== by 0x4986C43: (below main) (libc_start_call_main.h:58)
==11853== Block was alloc'd at
==11853== at 0x48A5698: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-ppc64le-linux.so)
==11853== by 0x4AA50A3: __sched_cpualloc (sched_cpualloc.c:25)
==11853== by 0x18E153: ??? (in /usr/bin/lscpu)
==11853== by 0x18FE0F: ??? (in /usr/bin/lscpu)
==11853== by 0x186D1B: ??? (in /usr/bin/lscpu)
==11853== by 0x4986C43: (below main) (libc_start_call_main.h:58)
```
--
You received this bug notification because you are a member of
Debcrafters packages, which is subscribed to util-linux in Ubuntu.
https://bugs.launchpad.net/bugs/2115636
Title:
python-psutil 7.0.0-2 fails to build on ppc64el with util-linux
2.41-4ubuntu2
Status in python-psutil package in Ubuntu:
New
Status in util-linux package in Ubuntu:
New
Bug description:
python-psutil 7.0.0-2 fails to build on ppc64el:
```
=================================== FAILURES ===================================
_________________ TestSystemCPUCountLogical.test_against_lscpu _________________
self = <psutil.tests.test_linux.TestSystemCPUCountLogical
testMethod=test_against_lscpu>
@pytest.mark.skipif(
not shutil.which("lscpu"), reason="lscpu utility not available"
)
def test_against_lscpu(self):
> out = sh("lscpu -p")
psutil/tests/test_linux.py:683:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
psutil/tests/__init__.py:330: in wrapper
return fun(*args, **kwargs)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
cmd = ['lscpu', '-p']
kwds = {'creationflags': 0, 'stderr': -1, 'stdout': -1, 'universal_newlines': True}
flags = 0, p = <Popen: returncode: -6 args: ['lscpu', '-p']>, stdout = ''
stderr = 'free(): double free detected in tcache 2\n'
@_reap_children_on_err
def sh(cmd, **kwds):
"""Run cmd in a subprocess and return its output.
raises RuntimeError on error.
"""
# Prevents subprocess to open error dialogs in case of error.
flags = 0x8000000 if WINDOWS else 0
kwds.setdefault("stdout", subprocess.PIPE)
kwds.setdefault("stderr", subprocess.PIPE)
kwds.setdefault("universal_newlines", True)
kwds.setdefault("creationflags", flags)
if isinstance(cmd, str):
cmd = shlex.split(cmd)
p = subprocess.Popen(cmd, **kwds)
_subprocesses_started.add(p)
stdout, stderr = p.communicate(timeout=GLOBAL_TIMEOUT)
if p.returncode != 0:
> raise RuntimeError(stdout + stderr)
E RuntimeError: free(): double free detected in tcache 2
psutil/tests/__init__.py:497: RuntimeError
```
So `lscpu -p` fails with:
```
free(): double free detected in tcache 2
```
python-psutil 7.0.0-2 builds with util-linux 2.40.2-14ubuntu1 but
fails with this error with 2.41-4ubuntu2.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-psutil/+bug/2115636/+subscriptions
References