ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
July 17th, 2024 | 10:00am-11:55am SGT (UTC+8) | Online

Wireshark-bugs: [Wireshark-bugs] [Bug 12955] Interface list issues after system sleep/resume (du

Date: Tue, 27 Sep 2016 17:25:20 +0000

Comment # 1 on bug 12955 from
After only a few (2-3) suspend cycles I noticed an increased CPU usage.
Attaching a debugger shows 308 interfaces:

$ gdb -q -p `pidof wireshark` -ex b\ InterfaceTree::updateStatistics -ex c
...
Thread 1 "wireshark" hit Breakpoint 1, InterfaceTree::updateStatistics
(this=0x6060001003a0)
    at /tmp/wireshark/ui/qt/interface_tree.cpp:316
316         if (!stat_cache_) {
(gdb) next
321         if (!stat_cache_) return;
(gdb) 
323         QTreeWidgetItemIterator iter(this);
(gdb) 
324         while (*iter) {
(gdb) 
327             for (if_idx = 0; if_idx < global_capture_opts.all_ifaces->len;
if_idx++) {
(gdb) p global_capture_opts.all_ifaces->len
$1 = 308

This Wireshark binary is ASAN-instrumented and runs with
LSAN_OPTIONS=fast_unwind_on_malloc=0 set, this slows malloc a lot which can be
seen in the perf trace (percentages are accounting cycles):
98% InterfaceTree::updateStatistics
 + 50% QString constructor
   + 48% __sanitizer::BufferedStackTrace::SlowUnwindStack
 + 42% ~QString
   + 41% __sanitizer::BufferedStackTrace::SlowUnwindStack


You are receiving this mail because:
  • You are watching all bug changes.