Bug#927785: pyparted: FTBFS randomly (Floating point exception)
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)
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)
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)
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