Control: notfound -1 c2esp/27-4 Control: affects -1 c2esp Control: found -1 ghostscript/9.28~~rc1~dfsg-1 Control: retitle -1 gs segfaults in c2esp filter chain
Hi Paul,
thanks for the detailed report.
Le jeudi, 12 septembre 2019, 19.27:46 h CEST Paul Gevers a écrit :
> Dear maintainers,
>
> With a recent upload of ghostscript the autopkgtest of c2esp timeouts
> [1] in testing when that autopkgtest is run with the binary packages of
> ghostscript from unstable. It passes when run with only packages from
> testing. In tabular form:
> pass fail
> ghostscript from testing 9.28~~rc2~dfsg-1
> c2esp from testing 27-4
> all others from testing from testing
>
> The autopkgtest of c2esp also times out in unstable since the upload of
> ghostscript.
>
> Due to the nature of this issue, I filed this bug report against both
> packages. Can you please investigate the situation and reassign the bug
> to the right package?
Sure. So…
It fails with the c2espC filter only, the c2esp filter seems fine. It asks for
the following filter chain to process a PDF file such as
/usr/share/cups/data/form_russian.pdf:
/usr/lib/cups/filter/pdftopdf
/usr/lib/cups/filter/gstoraster
/usr/lib/cups/filter/c2espC
In this chain, from the CUPS logs:
/usr/lib/cups/filter/gstoraster stopped with status 1
And from my kernel log:
Sep 21 09:10:37 gyllingar kernel: [ 9755.656484] gs[10134]: segfault at
7f93b77ea000 ip 00007f93b91b0e2a sp 00007ffe368515e0 error 4 in
libgs.so.9.28[7f93b9135000+367000]
Sep 21 09:10:37 gyllingar kernel: [ 9755.656492] Code: 01 48 8d 5c 44 42 31 c0
8b 94 24 10 01 00 00 45 31 f6 85 d2 0f 8e ce 01 00 00 66 0f 1f 44 00 00 48 8b
44 24 18 44 89 74 24 38 <42> 0f b7 34 70 89 f0 8d 50 01 81 e2 fe 00 00 00 0f 85
b0 00 00 00
… but I can't manage to reproduce this failure by manually running the
filters. :( But when I go through cups, the ghostscript segfault is
repeatable. So it really seems like a ghostscript bug.
The corresponding lines from cups' error log are the following:
D [21/Sep/2019:09:20:30 +0200] [Job 2201] Ghostscript using Any-Part-of-Pixel
method to fill paths.
D [21/Sep/2019:09:20:30 +0200] [Job 2201] Ghostscript command line: gs -dQUIET
-dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -dNOMEDIAATTRS -dShowAcroForm
-sstdout=%stderr -sOutputFile=%stdout -sDEVICE=cups -r600x600
-dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=842 -dcupsBitsPerColor=8
-dcupsColorOrder=0 -dcupsColorSpace=4 -scupsPageSizeName=A4
-I/usr/share/cups/fonts -c \'<</.HWMargins[3.000000 3.000000 3.000000 3.000000]
/Margins[0 0]>>setpagedevice\' -f -_
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[0]=\"CUPS_CACHEDIR=/var/cache/cups\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[1]=\"CUPS_DATADIR=/usr/share/cups\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[2]=\"CUPS_DOCROOT=/usr/share/cups/doc-root\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[3]=\"CUPS_FONTPATH=/usr/share/cups/fonts\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[4]=\"CUPS_REQUESTROOT=/var/spool/cups\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[5]=\"CUPS_SERVERBIN=/usr/lib/cups\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[6]=\"CUPS_SERVERROOT=/etc/cups\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[7]=\"CUPS_STATEDIR=/run/cups\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[8]=\"HOME=/var/spool/cups/tmp\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[9]=\"PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[10]=\"SERVER_ADMIN=root@gyllingar\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[11]=\"SOFTWARE=CUPS/2.3.0\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[12]=\"USER=root\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[13]=\"CUPS_MAX_MESSAGE=2047\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[14]=\"CUPS_SERVER=/var/run/cups/cups.sock\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[15]=\"CUPS_ENCRYPTION=IfRequested\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[16]=\"IPP_PORT=631\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[17]=\"CHARSET=utf-8\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[18]=\"LANG=fr_CH.UTF-8\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[19]=\"PPD=/etc/cups/ppd/test-printer0.ppd\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[20]=\"RIP_MAX_CACHE=128m\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[21]=\"CONTENT_TYPE=application/pdf\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[22]=\"DEVICE_URI=file:///dev/null\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[23]=\"PRINTER_INFO=test-printer0\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[24]=\"PRINTER_LOCATION=\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[25]=\"PRINTER=test-printer0\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[26]=\"PRINTER_STATE_REASONS=none\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[27]=\"CUPS_FILETYPE=document\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201]
envp[28]=\"FINAL_CONTENT_TYPE=application/vnd.cups-raster\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] envp[29]=\"AUTH_INFO_REQUIRED=none\"
D [21/Sep/2019:09:20:30 +0200] [Job 2201] Start rendering...
D [21/Sep/2019:09:20:30 +0200] [Job 2201] Set job-printer-state-message to
"Start rendering...", current level=INFO
D [21/Sep/2019:09:20:30 +0200] [Job 2201] Processing page 1...
D [21/Sep/2019:09:20:30 +0200] [Job 2201] Set job-printer-state-message to
"Processing page 1...", current level=INFO
D [21/Sep/2019:09:20:31 +0200] [Job 2201] PID 11684
(/usr/lib/cups/filter/gstoraster) stopped with status 1.
Using snapshot.debian.org:
* ghostscript 9.27~dfsg-3.1 works
* ghostscript 9.28~~rc1~dfsg-1 and all the later versions segfault
So…
There's clearly a regression in ghostscript 9.28 that started segfaulting in
the c2esp filter chain. But I can't manage to reproduce it outside of the
"cups + c2esp + cups-filters (gstoraster) + ghostscript" environment.
Brian; Till: any idea?
Cheers,
Didier
signature.asc
Description: This is a digitally signed message part.
