[X2go-Dev] X2Go printing crash [was: libssh, nagle, and performance issues]
John A. Sullivan III
jsullivan at opensourcedevel.com
Wed Sep 21 22:55:49 CEST 2011
On Tue, 2011-09-20 at 20:15 +0200, Mike Gabriel wrote:
> Hi John,
>
> On Di 20 Sep 2011 18:27:24 CEST "Jhn A. Sullivan III" wrote:
>
> > <snip>
> > I doubt it as the problem is one the client side and not the server
> > side. All our changes were to the server. This is in the Squeeze
> > client and not Windows - John
>
> 1.
> Does the problem disappear with the latest x2goclient (built today
> around 4pm CEST).
>
> 2.
> Can you send me the ,,printing'' config file in ~/.x2goclient?
>
> 3.
> Can you send me /etc/cups/printers.conf?
>
> Thanks,
> Mike
<snip>
Just tried. It still crashes. Here is /etc/cups/printers.conf:
# Printer configuration file for CUPS v1.4.4
# Written by cupsd
# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING
<DefaultPrinter HP_2605dn>
Info HP2605dn
Location Kennebunk
MakeModel HP Color LaserJet 2605dn Foomatic/Postscript
DeviceURI socket://192.168.223.99:9100
State Idle
StateTime 1311624159
Type 8400924
Filter application/vnd.cups-raw 0 -
Filter application/vnd.cups-postscript 100 foomatic-rip
Filter application/vnd.cups-pdf 0 foomatic-rip
Accepting Yes
Shared No
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>
and here is .x2goclient/printing:
[General]
showdialog=true
pdfview=false
[print]
startcmd=false
command=lpr
stdin=false
ps=false
[view]
open=true
command=kpdf
[CUPS]
defaultprinter=HP_2605dn
options\HP2605="Duplex=DuplexTumble", "HPColorSmart=Manual",
"ColorModel=Gray1200x1200dpi"
options\HP2605dn="Duplex=DuplexNoTumble",
"CMAndResolution=Gray600x600dpi"
options\HP_2605dn="Duplex=DuplexNoTumble"
I took an strace but it does not reveal a lot. Here are pertinent
sections from the end of x2gotrace.3420:
time(NULL) = 1316637069
time(NULL) = 1316637069
recv(29, "-hold-until-default\0\7no-hold!\0\24j"..., 2048, 0) = 2048
time(NULL) = 1316637069
recv(29, "utionD\0\0\0\5sidesD\0\30job-hold-until"..., 2048, 0) = 2048
time(NULL) = 1316637069
recv(29, "\4\0\0\0&#\0\0\0\4\0\0@\1#\0\0\0\4\0\0@\2#\0\0\0\4\0\0@\3"...,
448, 0) = 448
time(NULL) = 1316637069
open("/etc/cups/lpoptions", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
file or directory)
access("/home/jsullivan/.cups/lpoptions", F_OK) = -1 ENOENT (No such
file or directory)
open("/home/jsullivan/.lpoptions", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No
such file or directory)
stat64("/home/jsullivan/.x2goclient/printing", {st_mode=S_IFREG|0755,
st_size=369, ...}) = 0
open("/home/jsullivan/.x2goclient/printing", O_RDONLY|O_LARGEFILE|
O_CLOEXEC) = 31
fcntl64(31, F_SETFD, FD_CLOEXEC) = 0
fstat64(31, {st_mode=S_IFREG|0755, st_size=369, ...}) = 0
close(31) = 0
stat64("/home/jsullivan/.x2goclient/printing", {st_mode=S_IFREG|0755,
st_size=369, ...}) = 0
stat64("/home/jsullivan/.x2goclient/printing", {st_mode=S_IFREG|0755,
st_size=369, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3519, ...}) = 0
stat64("/etc/cups/ppd/HP_2605dn.ppd", {st_mode=S_IFREG|0644,
st_size=9953, ...}) = 0
gettimeofday({1316637069, 848633}, NULL) = 0
symlink("/etc/cups/ppd/HP_2605dn.ppd", "/tmp/4e7a498dcf2f9") = 0
open("/tmp/4e7a498dcf2f9", O_RDONLY|O_LARGEFILE) = 31
fcntl64(31, F_GETFD) = 0
fcntl64(31, F_SETFD, FD_CLOEXEC) = 0
read(31, "*PPD-Adobe: \"4.3\"\n*%\n*% For info"..., 4096) = 4096
read(31, "\n*PageRegion Letter/US Letter: \""..., 4096) = 4096
read(31, "Standard \"(001.004S)\" Standard R"..., 4096) = 1761
read(31, "", 4096) = 0
read(31, "", 4096) = 0
close(31) = 0
unlink("/tmp/4e7a498dcf2f9") = 0
stat64("/home/jsullivan/.x2goclient/printing", {st_mode=S_IFREG|0755,
st_size=369, ...}) = 0
open("/home/jsullivan/.x2goclient/printing", O_RDONLY|O_LARGEFILE|
O_CLOEXEC) = 31
fcntl64(31, F_SETFD, FD_CLOEXEC) = 0
fstat64(31, {st_mode=S_IFREG|0755, st_size=369, ...}) = 0
close(31) = 0
stat64("/home/jsullivan/.x2goclient/printing", {st_mode=S_IFREG|0755,
st_size=369, ...}) = 0
stat64("/home/jsullivan/.x2goclient/printing", {st_mode=S_IFREG|0755,
st_size=369, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3519, ...}) = 0
time(NULL) = 1316637070
time(NULL) = 1316637070
.
.
.
.
time(NULL) = 1316637071
time(NULL) = 1316637071
clock_gettime(CLOCK_MONOTONIC, {709, 441819023}) = 0
select(13, [12], NULL, NULL, {0, 0}) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {709, 444143062}) = 0
open("/home/jsullivan/.x2go/S-jasiii-53-1316636661_stDKDE_dp24/spool",
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 31
statfs("/home/jsullivan/.x2go/S-jasiii-53-1316636661_stDKDE_dp24/spool",
{f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=12812451,
f_bfree=11505345, f_bavail=11375175, f_f
getdents(31, /* 3 entries */, 32768) = 76
stat64("/home/jsullivan/.x2go/S-jasiii-53-1316636661_stDKDE_dp24/spool/.", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
stat64("/home/jsullivan/.x2go/S-jasiii-53-1316636661_stDKDE_dp24/spool/13008-jasiii-cupsjob13904.pdf", {st_mode=S_IFREG|0644, st_size=23397, ...}) = 0
getdents(31, /* 0 entries */, 32768) = 0
close(31) = 0
stat64("/home/jsullivan/.x2go/S-jasiii-53-1316636661_stDKDE_dp24/spool/..", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
clock_gettime(CLOCK_MONOTONIC, {709, 729349572}) = 0
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7,
revents=POLLOUT}])
writev(7, [{"\224\7\2\0\0\22\200\3\22\0\n\0\377\21\200\3[\1\0\0[\1\0\0
\10\21\200\3\20\0\0\0"..., 96}, {NULL, 0}, {"", 0}], 3) = 96
read(7, "\34\0\335b\377\21\200\3[\1\0\0\234\324\n\0\0\0\0\0\0\0\0\0\0\0
\0\0\0\0\0\0"..., 4096) = 704
read(7, 0x9bede30, 4096) = -1 EAGAIN (Resource
temporarily unavailable)
read(7, 0x9bede30, 4096) = -1 EAGAIN (Resource
temporarily unavailable)
munmap(0xb5b82000, 65932) = 0
munmap(0xb5ab5000, 633604) = 0
munmap(0xb5aa6000, 58716) = 0
munmap(0xb5894000, 584396) = 0
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7,
revents=POLLOUT}])
writev(7, [{"\224\7\2\0\31\0\200\3\22\0\n\0\30\0\200\3[\1\0\0[\1\0\0\10
\21\200\3\20\0\0\0"..., 3372}, {NULL, 0}, {"", 0}], 3) = 3372
poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
read(7, "\34\0\345b\30\0\200\3[\1\0\0N\325\n\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0"..., 4096) = 1376
read(7, 0x9bede30, 4096) = -1 EAGAIN (Resource
temporarily unavailable)
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7,
revents=POLLIN|POLLOUT}])
read(7, "\26\0\201du\1\200\1u\1\200\1\0\0\0\0\0\0\0\0t\0\36\0\0\0\0\0\0
\0\0\0", 4096) = 32
writev(7, [{"O\7\2\0\1\0\200\3<\0\2\0\0\0\200\3.\1\2\0\5\0\200\3+\21\1
\0", 28}, {NULL, 0}, {"", 0}], 3) = 28
poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
read(7, "\1\1\205d\0\0\0\0\6\0`\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0", 4096) = 32
read(7, 0x9bede30, 4096) = -1 EAGAIN (Resource
temporarily unavailable)
close(7) = 0
write(8, "\1\v\1\0\1\0\0\0\0\0\0\0\0\0\0\0", 16) = 16
close(8) = 0
open("/proc/stat", O_RDONLY|O_CLOEXEC) = 7
read(7, "cpu 53876 11825 26767 40263 127"..., 8192) = 2875
close(7) = 0
write(6, "@", 1) = 1
close(6) = 0
close(5) = 0
rt_sigaction(SIGCHLD, {SIG_DFL, [], SA_NOCLDSTOP}, {0xb68cc3b0, [],
SA_NOCLDSTOP}, 8) = 0
exit_group(0) = ?
I tried to intercept it with ddd but that didn't work. Interestingly,
its messages were that the program closed normally as if x2goprinting is
invoking a close event. I'll see what I can do to get this to run from
a debugger but it is a showstopping bug for us - John
More information about the x2go-dev
mailing list