Bug#927785: pyparted: FTBFS randomly (Floating point exception)

2019-04-24 Thread Herbert Fortes
forwarded 927785 https://github.com/dcantrell/pyparted/issues/57
thanks

Sent debugging.txt file (Bernhard Übelacker file)



On 4/23/19 6:35 AM, Bernhard Übelacker wrote:
> Dear Maintainer,
> I just tried to find some more information.
> 
> I could reproduce the issue in a unstable amd64 VM
> on the second attempt.
> 
> It looks like in a garbage collector run a
> division by zero is triggered because we
> get there with sector_size==0.
> 
> If wanted I can forward the core file.
> 
> Kind regards,
> Bernhard
> 
> 
> 
> 1708gpt_alloc_metadata (PedDisk *disk)
> 1709{
> ...
> 1718  gptlength = ped_div_round_up (sizeof (GuidPartitionTableHeader_t),
> 1719disk->dev->sector_size);
> 
> 
> (gdb) bt
> #0  0x7fb67449e727 in ped_div_round_up (divisor=0, numerator=100) at 
> ../../../include/parted/natmath.h:130
> #1  gpt_alloc_metadata (disk=0x558890efb060) at 
> ../../../libparted/labels/gpt.c:1718
> #2  0x7fb67448851a in _disk_alloc_metadata (disk=0x558890efb060) at 
> ../../libparted/disk.c:1164
> #3  _disk_pop_update_mode (disk=0x558890efb060) at ../../libparted/disk.c:1164
> #4  0x7fb6744890b2 in ped_disk_delete_all 
> (disk=disk@entry=0x558890efb060) at ../../libparted/disk.c:2104
> #5  0x7fb67449dd59 in gpt_free (disk=0x558890efb060) at 
> ../../../libparted/labels/gpt.c:622
> #6  0x7fb674abee82 in ?? ()
> #7  0x7fb673c46348 in ?? ()
> #8  0x55888eb4b67b in dict_dealloc (mp=0x7fb673c46280) at 
> ../Objects/dictobject.c:1086
> #9  0x55888ebf8339 in subtype_clear (self= 0x7fb673bbaa10>) at ../Objects/typeobject.c:912
> #10 0x55888eb3860c in delete_garbage (old=0x55888eda25b0 
> , collectable=0x7ffd0ab2f4e0) at 
> ../Modules/gcmodule.c:817
> #11 collect (generation=2) at ../Modules/gcmodule.c:981
> #12 0x55888eb9fcaa in PyGC_Collect () at ../Modules/gcmodule.c:1439
> #13 0x55888eb9ef44 in Py_Finalize () at ../Python/pythonrun.c:455
> #14 0x55888ebc92c8 in Py_Exit (sts=0) at ../Python/pythonrun.c:1795
> #15 0x55888ebc6a8d in handle_system_exit () at ../Python/pythonrun.c:1160
> #16 0x55888ebc63b6 in PyErr_PrintEx (set_sys_last_vars=, 
> set_sys_last_vars=) at ../Python/pythonrun.c:1170
> #17 0x55888ebc527d in RunModule (module=, 
> set_argv0=) at ../Modules/main.c:199
> #18 0x55888eb2cea2 in Py_Main (argc=, argv=0x7ffd0ab2f888) 
> at ../Modules/main.c:592
> #19 0x7fb674bc209b in __libc_start_main (main=0x55888eb2ca90 , 
> argc=5, argv=0x7ffd0ab2f888, init=, fini=, 
> rtld_fini=, stack_end=0x7ffd0ab2f878) at 
> ../csu/libc-start.c:308
> #20 0x55888eb2c9ca in _start () at ../Modules/gcmodule.c:1003
> 



Bug#927785: pyparted: FTBFS randomly (Floating point exception)

2019-04-23 Thread Herbert Fortes
Hi,

Thanks Santiago and Bernhard!

On 4/23/19 6:35 AM, Bernhard Übelacker wrote:
> Dear Maintainer,
> I just tried to find some more information.
> 
> I could reproduce the issue in a unstable amd64 VM
> on the second attempt.
> 
> It looks like in a garbage collector run a
> division by zero is triggered because we
> get there with sector_size==0.
> 
> If wanted I can forward the core file.

It is a good idea.

I read the debugging.txt file. divisor 0 is there.
The message is better now:

"Program terminated with signal SIGFPE, Arithmetic exception."

I can nothing about it. Just send a report to upstream.



Regards,
Herbert

> 
> Kind regards,
> Bernhard
> 
> 
> 
> 1708gpt_alloc_metadata (PedDisk *disk)
> 1709{
> ...
> 1718  gptlength = ped_div_round_up (sizeof (GuidPartitionTableHeader_t),
> 1719disk->dev->sector_size);
> 
> 
> (gdb) bt
> #0  0x7fb67449e727 in ped_div_round_up (divisor=0, numerator=100) at 
> ../../../include/parted/natmath.h:130
> #1  gpt_alloc_metadata (disk=0x558890efb060) at 
> ../../../libparted/labels/gpt.c:1718
> #2  0x7fb67448851a in _disk_alloc_metadata (disk=0x558890efb060) at 
> ../../libparted/disk.c:1164
> #3  _disk_pop_update_mode (disk=0x558890efb060) at ../../libparted/disk.c:1164
> #4  0x7fb6744890b2 in ped_disk_delete_all 
> (disk=disk@entry=0x558890efb060) at ../../libparted/disk.c:2104
> #5  0x7fb67449dd59 in gpt_free (disk=0x558890efb060) at 
> ../../../libparted/labels/gpt.c:622
> #6  0x7fb674abee82 in ?? ()
> #7  0x7fb673c46348 in ?? ()
> #8  0x55888eb4b67b in dict_dealloc (mp=0x7fb673c46280) at 
> ../Objects/dictobject.c:1086
> #9  0x55888ebf8339 in subtype_clear (self= 0x7fb673bbaa10>) at ../Objects/typeobject.c:912
> #10 0x55888eb3860c in delete_garbage (old=0x55888eda25b0 
> , collectable=0x7ffd0ab2f4e0) at 
> ../Modules/gcmodule.c:817
> #11 collect (generation=2) at ../Modules/gcmodule.c:981
> #12 0x55888eb9fcaa in PyGC_Collect () at ../Modules/gcmodule.c:1439
> #13 0x55888eb9ef44 in Py_Finalize () at ../Python/pythonrun.c:455
> #14 0x55888ebc92c8 in Py_Exit (sts=0) at ../Python/pythonrun.c:1795
> #15 0x55888ebc6a8d in handle_system_exit () at ../Python/pythonrun.c:1160
> #16 0x55888ebc63b6 in PyErr_PrintEx (set_sys_last_vars=, 
> set_sys_last_vars=) at ../Python/pythonrun.c:1170
> #17 0x55888ebc527d in RunModule (module=, 
> set_argv0=) at ../Modules/main.c:199
> #18 0x55888eb2cea2 in Py_Main (argc=, argv=0x7ffd0ab2f888) 
> at ../Modules/main.c:592
> #19 0x7fb674bc209b in __libc_start_main (main=0x55888eb2ca90 , 
> argc=5, argv=0x7ffd0ab2f888, init=, fini=, 
> rtld_fini=, stack_end=0x7ffd0ab2f878) at 
> ../csu/libc-start.c:308
> #20 0x55888eb2c9ca in _start () at ../Modules/gcmodule.c:1003
> 



Bug#927785: pyparted: FTBFS randomly (Floating point exception)

2019-04-23 Thread Bernhard Übelacker
Dear Maintainer,
I just tried to find some more information.

I could reproduce the issue in a unstable amd64 VM
on the second attempt.

It looks like in a garbage collector run a
division by zero is triggered because we
get there with sector_size==0.

If wanted I can forward the core file.

Kind regards,
Bernhard



1708gpt_alloc_metadata (PedDisk *disk)
1709{
...
1718  gptlength = ped_div_round_up (sizeof (GuidPartitionTableHeader_t),
1719disk->dev->sector_size);


(gdb) bt
#0  0x7fb67449e727 in ped_div_round_up (divisor=0, numerator=100) at 
../../../include/parted/natmath.h:130
#1  gpt_alloc_metadata (disk=0x558890efb060) at 
../../../libparted/labels/gpt.c:1718
#2  0x7fb67448851a in _disk_alloc_metadata (disk=0x558890efb060) at 
../../libparted/disk.c:1164
#3  _disk_pop_update_mode (disk=0x558890efb060) at ../../libparted/disk.c:1164
#4  0x7fb6744890b2 in ped_disk_delete_all (disk=disk@entry=0x558890efb060) 
at ../../libparted/disk.c:2104
#5  0x7fb67449dd59 in gpt_free (disk=0x558890efb060) at 
../../../libparted/labels/gpt.c:622
#6  0x7fb674abee82 in ?? ()
#7  0x7fb673c46348 in ?? ()
#8  0x55888eb4b67b in dict_dealloc (mp=0x7fb673c46280) at 
../Objects/dictobject.c:1086
#9  0x55888ebf8339 in subtype_clear (self=) 
at ../Objects/typeobject.c:912
#10 0x55888eb3860c in delete_garbage (old=0x55888eda25b0 
, collectable=0x7ffd0ab2f4e0) at 
../Modules/gcmodule.c:817
#11 collect (generation=2) at ../Modules/gcmodule.c:981
#12 0x55888eb9fcaa in PyGC_Collect () at ../Modules/gcmodule.c:1439
#13 0x55888eb9ef44 in Py_Finalize () at ../Python/pythonrun.c:455
#14 0x55888ebc92c8 in Py_Exit (sts=0) at ../Python/pythonrun.c:1795
#15 0x55888ebc6a8d in handle_system_exit () at ../Python/pythonrun.c:1160
#16 0x55888ebc63b6 in PyErr_PrintEx (set_sys_last_vars=, 
set_sys_last_vars=) at ../Python/pythonrun.c:1170
#17 0x55888ebc527d in RunModule (module=, 
set_argv0=) at ../Modules/main.c:199
#18 0x55888eb2cea2 in Py_Main (argc=, argv=0x7ffd0ab2f888) 
at ../Modules/main.c:592
#19 0x7fb674bc209b in __libc_start_main (main=0x55888eb2ca90 , 
argc=5, argv=0x7ffd0ab2f888, init=, fini=, 
rtld_fini=, stack_end=0x7ffd0ab2f878) at ../csu/libc-start.c:308
#20 0x55888eb2c9ca in _start () at ../Modules/gcmodule.c:1003


# Buster amd64 qemu VM 2019-04-23


apt update
apt dist-upgrade


apt build-dep pyparted
apt install systemd-coredump fakeroot gdb python2.7-dbg libparted2-dbgsym


mkdir /home/benutzer/source/pyparted/orig -p
cd/home/benutzer/source/pyparted/orig
apt source pyparted
cd


mkdir /home/benutzer/source/libparted2/orig -p
cd/home/benutzer/source/libparted2/orig
apt source libparted2
cd


cd /home/benutzer/source/pyparted
cp -a orig try1
cd try1/pyparted-3.11.2
dpkg-buildpackage



#


Switched to unstable


dpkg-buildpackage
-> first attempt succeeded, second failed


...
runTest (tests.test_parted_device.DeviceWriteTestCase) ... skipped 
'Unimplemented test case.'
runTest (tests.test_parted_filesystem.FileSystemGetPedFileSystemTestCase) ... 
skipped 'Unimplemented test case.'
runTest (tests.test_parted_filesystem.FileSystemGetSetTestCase) ... skipped 
'Unimplemented test case.'
runTest (tests.test_parted_filesystem.FileSystemNewTestCase) ... skipped 
'Unimplemented test case.'
runTest (tests.test_parted_filesystem.FileSystemStrTestCase) ... skipped 
'Unimplemented test case.'

--
Ran 273 tests in 0.905s

OK (skipped=118)
Floating point exception (core dumped)
E: pybuild pybuild:341: test: plugin distutils failed with: exit code=136: cd 
/home/benutzer/source/pyparted/try1/pyparted-3.11.2/.pybuild/cpython2_2.7_parted/build;
 python2.7 -m unittest discover -v 
dh_auto_test: pybuild --test -i python{version} -p 2.7 returned exit code 13
make: *** [debian/rules:9: build] Fehler 25
dpkg-buildpackage: Fehler: Unterprozess debian/rules build lieferte Exitstatus 2






dmesg:
[  568.228710] traps: python2.7[15867] trap divide error ip:7fb67449e727 
sp:7ffd0ab2f360 error:0 in libparted.so.2.0.1[7fb674482000+2c000]


root@debian:~# coredumpctl list
TIMEPID   UID   GID SIG COREFILE  EXE
Tue 2019-04-23 10:45:12 CEST  15867  1000  1000   8 present   /usr/bin/python2.7


root@debian:~# coredumpctl gdb 15867
   PID: 15867 (python2.7)
   UID: 1000 (benutzer)
   GID: 1000 (benutzer)
Signal: 8 (FPE)
 Timestamp: Tue 2019-04-23 10:45:12 CEST (2min 45s ago)
  Command Line: python2.7 -m unittest discover -v
Executable: /usr/bin/python2.7
 Control Group: /user.slice/user-1000.slice/session-3.scope
  Unit: session-3.scope
 Slice: user-1000.slice
   Session: 3
 Owner UID: 1000 (benutzer)
   Boot ID: 04731d72fe444b5c8567e7172ad9cf8a
Machine ID: 32f43b50ac8c4b21941bc0b02f8e7811
  Hostname: debian
   Storage: 
/var/lib/systemd

Bug#927785: pyparted: FTBFS randomly (Floating point exception)

2019-04-23 Thread Santiago Vila
Package: src:pyparted
Version: 3.11.2-10
Severity: important
Tags: ftbfs

Dear maintainer:

I tried to build this package in sid but it failed:


[...]
 debian/rules build-indep
dh build-indep --buildsystem pybuild --with python2,python3
   dh_update_autotools_config -i -O--buildsystem=pybuild
   dh_autoreconf -i -O--buildsystem=pybuild
   dh_auto_configure -i -O--buildsystem=pybuild
I: pybuild base:217: python2.7 setup.py config 
running config
I: pybuild base:217: python3.7 setup.py config 
running config
   dh_auto_build -i -O--buildsystem=pybuild
I: pybuild base:217: /usr/bin/python setup.py build 
running build
running build_py
creating /<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/partition.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/disk.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/cachedlist.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/decorators.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/constraint.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/__init__.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/geometry.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/filesystem.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/alignment.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
copying src/parted/device.py -> 
/<>/.pybuild/cpython2_2.7_parted/build/parted
running build_ext
building '_ped' extension
creating build
creating build/temp.linux-amd64-2.7
creating build/temp.linux-amd64-2.7/src
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/_pedmodule.c -o 
build/temp.linux-amd64-2.7/src/_pedmodule.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/convert.c -o 
build/temp.linux-amd64-2.7/src/convert.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pyconstraint.c -o 
build/temp.linux-amd64-2.7/src/pyconstraint.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pydevice.c -o 
build/temp.linux-amd64-2.7/src/pydevice.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pydisk.c -o 
build/temp.linux-amd64-2.7/src/pydisk.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pyfilesys.c -o 
build/temp.linux-amd64-2.7/src/pyfilesys.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pygeom.c -o 
build/temp.linux-amd64-2.7/src/pygeom.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pynatmath.c -o 
build/temp.linux-amd64-2.7/src/pynatmath.o
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes 
-fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<>=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -DPYPARTED_VERSION="3.11.2" -Iinclude 
-I/usr/include/python2.7 -c src/pytimer.c -o 
build/temp.linux-amd64-2.7/src/pytimer.o
x86_64-linux-gnu-gcc -pthread