Opened 6 years ago

Closed 6 years ago

#14297 closed bug (fixed)

KDL: PANIC: vnode 3:2097166 already exists (node = 0xd2faa800, vnode->node = 0xd2fad518)!

Reported by: closequarters Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: System/Kernel Version: R1/Development
Keywords: Cc: axeld
Blocked By: #5262 Blocking:
Platform: All

Description (last modified by waddlesplash)

I've been experiencing some occasional crashes / KDLs while using QupZilla with my Intel Pro Wifi 4965. This is happening on a physical machine, a Lenovo T430 laptop. The crash is semi-random, but usually seems to be when QupZilla is connecting to a web site or I'm refreshing a page. Other internet apps like Vision don't run into this, so I think there's some sort of interaction between the Qt5 library and the network driver causing this.

Here's the relevant syslog snippet and I'll attach the full file to the ticket. Please let me know if there's other data I can provide

PANIC: vnode 3:2097166 already exists (node = 0xd2faa800, vnode->node = 0xd2fad518)!
Welcome to Kernel Debugging Land...
Thread 779 "QupZilla" running on CPU 2
stack trace for thread 779 "QupZilla"
    kernel stack: 0x807dc000 to 0x807e0000
      user stack: 0x71a0c000 to 0x72a0c000
frame               caller     <image>:function + offset
 0 807df988 (+  32) 8015065e   <kernel_x86> arch_debug_stack_trace + 0x12
 1 807df9a8 (+  16) 800aab33   <kernel_x86> stack_trace_trampoline(NULL) + 0x0b
 2 807df9b8 (+  12) 80141df2   <kernel_x86> arch_debug_call_with_fault_handler + 0x1b
 3 807df9c4 (+  48) 800ac65b   <kernel_x86> debug_call_with_fault_handler + 0x5b
 4 807df9f4 (+  64) 800aad4f   <kernel_x86> kernel_debugger_loop([34m0x80194d17[0m [36m"PANIC: "[0m, [34m0x801a2b00[0m [36m"vnode %ld:%lld already exists (node = %p, vnode->node = %p)!"[0m, [34m0x807dfaa0[0m [36m""[0m, int32: [34m2[0m) + 0x217
 5 807dfa34 (+  48) 800ab0cb   <kernel_x86> kernel_debugger_internal([34m0x80194d17[0m [36m"PANIC: "[0m, [34m0x801a2b00[0m [36m"vnode %ld:%lld already exists (node = %p, vnode->node = %p)!"[0m, [34m0x807dfaa0[0m [36m""[0m, int32: [34m2[0m) + 0x53
 6 807dfa64 (+  48) 800ac9e6   <kernel_x86> panic + 0x3a
 7 807dfa94 (+  80) 800fb0c9   <kernel_x86> new_vnode + 0x121
 8 807dfae4 (+  80) 817c28c1   <bfs> InodeAllocator<[32m0x807dfbcc[0m>::New(block_run*: [34m0x807dfb98[0m, uint32: [34m0x81a4[0m ([34m33188[0m), uint32: [34m0x0[0m ([34m0[0m), block_run&: [34m0x807dfba0[0m, fs_vnode_ops*: NULL, Inode*: [34m0x807dfba8[0m) + 0x185
 9 807dfb34 (+ 176) 817c9d55   <bfs> Inode<[32m0x807dfc44[0m>::Create(Transaction&: [34m0xd28fd258[0m, Inode*: [34m0x807dfdf4[0m, [34m0x81a4[0m [31m"<???>"[0m, int32: [34m834[0m, int32: [34m0[0m, uint32: [34m0x807dfc3f[0m, [34m0x807dfca0[0m, [34m0x807dfc40[0m, Inode*: NULL, fs_vnode_ops*: NULL, uint32: [34m0x0[0m ([34m0[0m)) + 0x425
10 807dfbe4 (+ 112) 817d41a6   <bfs> bfs_create(fs_volume*: [34m0x82befbd8[0m, fs_vnode*: [34m0xd28fe508[0m, [34m0x807dfdf4[0m [36m"qtsingleapp-QupZil-b880-0-lockfile"[0m, int32: [34m834[0m, int32: [34m420[0m, [34m0x807dfc9c[0m, [34m0x807dfca0[0m) + 0x142
11 807dfc54 (+ 352) 800fe564   <kernel_x86> create_vnode(vnode*: [34m0xd28fe508[0m, [34m0x807dfdf4[0m [36m"qtsingleapp-QupZil-b880-0-lockfile"[0m, int32: [34m578[0m, int32: [34m420[0m, [34mfalse[0m) + 0x1b8
12 807dfdb4 (+ 320) 800fea2e   <kernel_x86> file_create(int32: [34m-1[0m, [34m0xd2e7a040[0m [36m"/tmp"[0m, int32: [34m578[0m, int32: [34m420[0m, [34mfalse[0m) + 0x5a
13 807dfef4 (+  80) 80104ef0   <kernel_x86> _user_open + 0xc8
14 807dff44 (+ 100) 801449bf   <kernel_x86> handle_syscall + 0xdc
user iframe at 0x807dffa8 (end = 0x807e0000)
 eax 0x6b          ebx 0x14df84c      ecx 0x72a0af8c  edx 0x60ecc114
 esi 0x56a4bd4     edi 0x189924d0     ebp 0x72a0afa8  esp 0x807dffdc
 eip 0x60ecc114 eflags 0x203202  user esp 0x72a0af8c
 vector: 0x63, error code: 0x0
15 807dffa8 (+   0) 60ecc114   <commpage> commpage_syscall + 0x04
16 72a0afa8 (+ 112) 053ca68a   <libQt5Core.so.5> _ZNK13QFSFileEngine7ownerIdEN19QAbstractFileEngine9FileOwnerE (nearest) + 0x1ca
17 72a0b018 (+  96) 053ac5cd   <libQt5Core.so.5> QFSFileEngine<[32m0x1891bb48[0m>::open(QFlags<QIODevice::OpenModeFlag>: [34m0x23[0m) + 0x9d
18 72a0b078 (+  96) 05364016   <libQt5Core.so.5> QFile<[32m0x1925584c[0m>::open(QFlags<QIODevice::OpenModeFlag>: [34m0x3[0m) + 0x76
19 72a0b0d8 (+  64) 00e89b05   <libQupZilla.so.1> QtLP_Private::QtLockedFile<[32m0x1925584c[0m>::open(QFlags<QIODevice::OpenModeFlag>: [34m0x3[0m) + 0x25
20 72a0b118 (+ 144) 00e89f3a   <libQupZilla.so.1> QtLocalPeer::QtLocalPeer(QObject*: [34m0x19255838[0m, QString const&: [34m0x72a0b3b4[0m) + 0x3da
21 72a0b1a8 (+  80) 00e88bf5   <libQupZilla.so.1> QtSingleApplication<[32m0x72a0b3b4[0m>::sysInit(QString const&: [34m0x72a0b300[0m) + 0x35
22 72a0b1f8 (+  32) 00e88d5f   <libQupZilla.so.1> QtSingleApplication<[32m0x72a0b3b4[0m>::setAppId(QString const&: [34m0x72a0b300[0m) + 0x1f
23 72a0b218 (+ 272) 00ebd6e6   <libQupZilla.so.1> MainApplication::MainApplication(int&: [34m0x72a0b3b4[0m, char**: [34m0x72a0b450[0m) + 0x1266
24 72a0b328 (+ 272) 01645b4f   <QupZilla> main + 0x6cf
25 72a0b438 (+  64) 01645fc2   <QupZilla> _start + 0x52
26 72a0b478 (+  48) 01828e72   </boot/system/runtime_loader@0x01817000> <unknown> + 0x11e72
27 72a0b4a8 (+   0) 60ecc250   <commpage> commpage_thread_exit + 0x00
kdebug> continuebfs: New:221: General system error
[iprowifi4965] (iwn) iwn_intr: fatal firmware error
firmware error log:
  error type      = "UNKNOWN" (0x000022CE)
  program counter = 0x00024DD8
  source line     = 0x0000005E
  error data      = 0x000000FF0000005E
  branch link     = 0x00024DB800024DB8
  interrupt link  = 0x0000D6BE00000000
  time            = 1708921426
driver status:
  tx ring  0: qid=0  cur=9   queued=0  
  tx ring  1: qid=1  cur=0   queued=0  
  tx ring  2: qid=2  cur=0   queued=0  
  tx ring  3: qid=3  cur=4   queued=0  
  tx ring  4: qid=4  cur=0   queued=0  
  tx ring  5: qid=5  cur=0   queued=0  
bfs: InitCheck:325: Bad data
  tx ring  6: qid=6  cur=0   queued=0  
bfs:   tx ring  7: qid=7  cur=0   queued=0  
inode at 2633171 is already deleted!
  tx ring  8: qid=8  cur=0   queued=0  
  tx ring  9: qid=9  cur=1   queued=0  
  tx ring 10: qid=10 cur=0   queued=0  
  tx ring 11: qid=11 cur=0   queued=0  
  tx ring 12: qid=12 cur=0   queued=0  
  tx ring 13: qid=13 cur=0   queued=0  
  tx ring 14: qid=14 cur=0   queued=0  
  tx ring 15: qid=15 cur=0   queued=0  
  tx ring 16: qid=16 cur=0   queued=0  
  tx ring 17: qid=17 cur=0   queued=0  
  tx ring 18: qid=18 cur=0   queued=0  
  tx ring 19: qid=19 cur=0   queued=0  
  rx ring: cur=9
[iprowifi4965] (iwn) iwn_panicked: controller panicked, iv_state = 5; restarting

Attachments (1)

previous_syslog (271.6 KB ) - added by closequarters 6 years ago.
Syslog

Download all attachments as: .zip

Change History (8)

by closequarters, 6 years ago

Attachment: previous_syslog added

Syslog

comment:1 by closequarters, 6 years ago

Forgot to mention, I'm on hrev52124, gcc2

comment:2 by waddlesplash, 6 years ago

Component: Drivers/NetworkSystem/Kernel
Description: modified (diff)
Summary: QupZilla crash using Intel pro wifi 4965KDL: PANIC: vnode 3:2097166 already exists (node = 0xd2faa800, vnode->node = 0xd2fad518)!

The WiFi driver panic is separate but probably related; my guess is that the KDL occurs at some unforunate time when the driver is expected to handle interrupts within a few ms, and since the KDL occurs it has to wait multiple seconds, which it doesn't like.

comment:3 by waddlesplash, 6 years ago

Blocked By: 5262 added
Resolution: duplicate
Status: newclosed

comment:4 by waddlesplash, 6 years ago

Cc: axeld added
Keywords: wifi qupzilla removed
Resolution: duplicate
Status: closedreopened

Hmm, on further inspection, this one looks different than that: the message is the same, but this one is on file creation, not directory creation. But I'll CC axeld so he can make the final call.

comment:5 by waddlesplash, 6 years ago

It seems the backtrace in here is nearly identical to #5753, which was one of the ones supposedly fixed with hrev51061. So, not sure what's going on here.

comment:6 by closequarters, 6 years ago

I ran checkfs at waddlesplash's advice: Since then my system has been stable. Most of the repaired portions of the fs appear to be related to web browsing cache files

here is the checkfs output:

/dev/disk/scsi/0/1/0> checkfs /dev/disk/scsi/0/0/0/2
last_modified (inode = 7608), invalid b+tree
size (inode = 7641), invalid b+tree
bash_history (inode = 2097166), some blocks weren't allocated
mount_server (inode = 2099598), has blocks already set
RosterSettings (inode = 3145984), some blocks weren't allocated
settings (inode = 2629753), has blocks already set
WebpageIcons.db (inode = 6557249), some blocks weren't allocated
browsedata.db (inode = 6557239), has blocks already set, names don't match
settings.ini (inode = 6672063), some blocks weren't allocated
customlist.txt (inode = 7081042), some blocks weren't allocated
https_notifications.google.com_0.localstorage (inode = 7086821), some blocks weren't allocated, names don't match
https_www.google.com_0.localstorage (inode = 7086819), some blocks weren't allocated
Otter (inode = 2633171), has blocks already set
virtual-directories (inode = 3145854), has blocks already set
0110c227-0015-400a-b778-13f1f7191c99 (inode = 3670117), has blocks already set
Applications (inode = 3670120), has blocks already set
Demos (inode = 3670121), has blocks already set
Desktop applets (inode = 3670122), has blocks already set
Preferences (inode = 3670123), has blocks already set
registry.i586.bin (inode = 2099698), has blocks already set
Recreating broken index b+trees...
        79750 nodes checked,
        90 blocks not allocated,
        28 blocks already set,
        19 blocks could be freed

        files           68318
        directories     11434
        attributes      190
        attr. dirs      91
        indices         40

        direct block runs               79954 (4.69 GiB)
        indirect block runs             239 (in 9 array blocks, 6.23 GiB)
        double indirect block runs      0 (in 0 array blocks, 0 bytes)

comment:7 by waddlesplash, 6 years ago

Resolution: fixed
Status: reopenedclosed

Closing as fixed, then.

Note: See TracTickets for help on using tickets.