[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [Bug 179955] KDE print dialog loads very slowly
From:       Kunshan Wang <wks1986 () gmail ! com>
Date:       2012-11-12 4:27:40
Message-ID: bug-179955-17878-N8MyzTwDES () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=179955

Kunshan Wang <wks1986@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |wks1986@gmail.com

--- Comment #18 from Kunshan Wang <wks1986@gmail.com> ---
I have this problem, too.

Distribution: Ubuntu 12.10
cups: 1.6.1
Qt: 4.8.3
KDE: 4.9.2
Okular: 0.15.2
kate: 3.9.2

Configurations:
In /etc/cups/client.conf, I configured cups to use a server (real hostname
replaced):
ServerName foo.bar.baz

In /etc/cups/cupsd.conf, I added this line (the same host as above)
BrowsePoll foo.bar.baz

On the server foo.bar.baz, there are 25 printers.

The Problem:

Invoking the "Print..." item from the file menu of any KDE application
(including kate and Okular) causes the application to freeze up.

But non-kde applications can print without problem. Evince, for example, opens
its printing dialog as soon as the file->print menu item is invoked. Then its
dialog refreshes the status of the printers periodically.

Here is a stack trace of Okular from GDB while Okular is frozen for printing:

======CUT HERE=========
(gdb) backtrace
#0  0x00007ffff5217303 in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007fffdb5c54a3 in _httpWait () from
/usr/lib/x86_64-linux-gnu/libcups.so.2
#2  0x00007fffdb5c5e0e in httpRead2 () from
/usr/lib/x86_64-linux-gnu/libcups.so.2
#3  0x00007fffdb5c61a0 in httpFlush () from
/usr/lib/x86_64-linux-gnu/libcups.so.2
#4  0x00007fffdb5e1319 in cupsDoIORequest () from
/usr/lib/x86_64-linux-gnu/libcups.so.2
#5  0x00007fffdb5e72e9 in cupsGetDefault2 () from
/usr/lib/x86_64-linux-gnu/libcups.so.2
#6  0x00007fffdb5bb4b3 in cupsGetDests2 () from
/usr/lib/x86_64-linux-gnu/libcups.so.2
#7  0x00007ffff67e1437 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#8  0x00007ffff67e15f5 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#9  0x00007ffff673bb9a in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#10 0x00007ffff6750d36 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#11 0x00007ffff675290f in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#12 0x00007ffff6754f3d in QPrinter::init(QPrinter::PrinterMode) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#13 0x00007ffff67556f8 in QPrinter::QPrinter(QPrinter::PrinterMode) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#14 0x00007fffe66ab30c in ?? () from /usr/lib/kde4/okularpart.so
#15 0x00007fffe66abf5a in ?? () from /usr/lib/kde4/okularpart.so
#16 0x00007ffff5bf9f5f in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007ffff65c0a32 in QAction::triggered(bool) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#18 0x00007ffff65c0c20 in QAction::activate(QAction::ActionEvent) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007ffff69ff3d3 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007ffff6a056b9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007ffff7388090 in KMenu::mouseReleaseEvent(QMouseEvent*) () from
/usr/lib/libkdeui.so.5
#22 0x00007ffff6616850 in QWidget::event(QEvent*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#23 0x00007ffff6a0696b in QMenu::event(QEvent*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#24 0x00007ffff65c6e9c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007ffff65cbb6b in QApplication::notify(QObject*, QEvent*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007ffff72cf1d6 in KApplication::notify(QObject*, QEvent*) () from
/usr/lib/libkdeui.so.5
#27 0x00007ffff5be456e in QCoreApplication::notifyInternal(QObject*, QEvent*)
() from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#28 0x00007ffff65c7cd3 in QApplicationPrivate::sendMouseEvent(QWidget*,
QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool)
    () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#29 0x00007ffff664541c in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007ffff664444f in QApplication::x11ProcessEvent(_XEvent*) () from
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#31 0x00007ffff666bfa2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007ffff1e16ab5 in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007ffff1e16de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007ffff1e16ea4 in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007ffff5c12bf6 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x00007ffff666bc1e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#37 0x00007ffff5be32bf in
QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#38 0x00007ffff5be3548 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#39 0x00007ffff5be8708 in QCoreApplication::exec() () from
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#40 0x00000000004079ce in ?? ()
#41 0x00007ffff515076d in __libc_start_main () from
/lib/x86_64-linux-gnu/libc.so.6
#42 0x00000000004081fd in _start ()
========CUT HERE=============

I captured the IPP traffic using Wireshark. Okular, though frozen after asked
to print, still communicates with the server periodically using IPP. The most
frequently sent operations are 0x4002 (CUPS-Get-Printers). 0x4001
(CUPS-Get-Default) and 0x000b (Get-Printer-Attributes) are also used.

-- 
You are receiving this mail because:
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic