[Python-modules-team] Bug#1000255: mpv: autopkgtest failures

Sebastian Ramacher sramacher at debian.org
Tue Nov 23 20:22:03 GMT 2021


Control: reassign -1 src:python-mpv 0.5.2-1
Control: forwarded -1 https://github.com/jaseg/python-mpv/issues/187

On 2021-11-21 23:21:24, Sebastian Ramacher wrote:
> Control: tags -1 help
> 
> On 2021-11-20 09:34:37 +0100, Gianfranco Costamagna wrote:
> > Source: mpv
> > Version: 0.34.0-1
> > Severity: serious
> > 
> > 
> > Hello, the last version 0.34.0 is regressed on arm64 armhf and probably other architectures.
> > 
> > Look, e.g.
> > https://ci.debian.net/data/autopkgtest/testing/arm64/p/python-mpv/16812363/log.gz
> > 
> > (Reading database ... 16518 files and directories currently installed.)
> > Removing autopkgtest-satdep (0) ...
> > autopkgtest [18:11:22]: test unittests: [-----------------------
> > === python3.9 ===
> > ................................Segmentation fault
> > autopkgtest [18:11:43]: test unittests: -----------------------]
> > autopkgtest [18:11:43]: test unittests:  - - - - - - - - - - results - - - - - - - - - -
> > unittests            FAIL non-zero exit status 139
> > autopkgtest [18:11:43]: @@@@@@@@@@@@@@@@@@@@ summary
> > unittests            FAIL non-zero exit status 139
> > 
> > I don't know which update triggered the regression, if the program itself or something else in the toolchain.
> > 
> > Can you please have a look?
> > 
> > https://ci.debian.net/packages/p/python-mpv/testing/arm64/
> 
> The failing test is test_write. It crashes due to an infinte recursion
> in libx11-6's XPutImage which calls PutSubImage:
> 
> #0  0xf4f3e31c in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:878
> #1  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #2  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #3  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #4  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #5  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #6  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #7  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #8  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #9  0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #10 0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #11 0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #12 0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #13 0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> #14 0xf4f3e7a4 in PutSubImage (dpy=dpy at entry=0x5776b8, d=d at entry=2097154, gc=gc at entry=0x5a01e0, image=image at entry=0x5a2ca8, req_xoffset=0, 
>     req_yoffset=req_yoffset at entry=0, x=0, y=y at entry=0, req_width=2096928, req_height=req_height at entry=1, dest_bits_per_pixel=dest_bits_per_pixel at entry=32, 
>     dest_scanline_pad=dest_scanline_pad at entry=32) at ../../src/PutImage.c:920
> 
> and so on. I have no idea why that's happening, so any help is welcome.
> CCing the ARM porters and the libx11 maintainer for input.

After debugging this issue some more, I think that python-mpv'S
test_write is flaky. As it has list of properties that may cause issues
and are to be skipped while testing, this list will need to be extended.

Cheers
-- 
Sebastian Ramacher



More information about the Python-modules-team mailing list