Opened 7 years ago

Closed 12 months ago

Last modified 3 months ago

#10062 closed bug (not reproducible)

vnode related KDL / Pagefault in qemu

Reported by: kallisti5 Owned by: nobody
Priority: normal Milestone:
Component: System/Kernel Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description (last modified by kallisti5)

Encountered this KDL / Pagefault in a qemu emulated Haiku machine. Never seen it before pre-PM, so posting screenshot here (pagefault2.png)

Attachments (3)

pagefault.png (57.6 KB ) - added by kallisti5 7 years ago.
pagefault2.png (49.4 KB ) - added by kallisti5 7 years ago.
Got another page fault, similar issue, different backtrace.
pagefault3.png (60.4 KB ) - added by kallisti5 7 years ago.
another page fault, running a sync

Download all attachments as: .zip

Change History (16)

by kallisti5, 7 years ago

Attachment: pagefault.png added

by kallisti5, 7 years ago

Attachment: pagefault2.png added

Got another page fault, similar issue, different backtrace.

comment:1 by bonefish, 7 years ago

I don't see any similarity between the two stack traces. The second one looks like there's an invalid vnode pointer in the vnode hash table. The first lookup_vnode() argument looks incorrect, but maybe that's just a glitch in the stack trace code -- the last kernel_debugger_{loop,internal}() argument doesn't look correct either.

The first stack trace shows a userland page fault. Given that it comes from PyObject_Malloc(), I suppose it just accesses allocated but non-yet-mapped memory. So this is all just fine. Unfortunately the screenshot doesn't contain the panic message. I assume it is an assertion of some inline function vm_soft_fault() calls, since it doesn't call panic() and doesn't contain any assertions itself.

So, please open separate tickets for the issues. And also add the basic information like the Haiku revision, which gcc, details on the (virtual) hardware, and some info on what led up to the crash.

As a general hint, qemu has a -serial option which I would recommend to use always (I find -serial stdio quite convenient).

by kallisti5, 7 years ago

Attachment: pagefault3.png added

another page fault, running a sync

comment:2 by kallisti5, 7 years ago

Feel free to ignore the first screenshot. Didn't have stdio serial going, but the next boot will and I'll grab the output

comment:3 by kallisti5, 7 years ago

ok... got another page fault at boot (black screen)..

loaded driver /boot/system/add-ons/kernel/drivers/dev/net/ipro1000
vm_soft_fault: va 0xd3000000 not covered by area in address space
vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0xd3000000, ip 0x530119, write 1, user 1, thread 0x12f
vm_page_fault: thread "picasso" (303) in team "app_server" (303) tried to write address 0xd3000000, ip 0x530119 ("???" +0x530119)
debug_server: Thread 303 entered the debugger: Segment violation
ahci: ahci_supports_device
ahci: ahci_supports_device
[net/ipro1000/0] compat_open(0x2)
ifmedia_ioctl: switching lem to   Type: Ethernet
  SubType: autoselect
stack trace, current PC 0x530119  _ZNK11HWInterface12_CopyToFrontEPhmllll + 0x2d5:
  (0x62d53fa8)  0x530555  _ZN11HWInterface16_CopyBackToFrontER7BRegion + 0x85
  (0x62d54008)  0x50bc83  _ZN21AccelerantHWInterface16_CopyBackToFrontER7BRegion + 0xe3
  (0x62d54068)  0x531e85  _ZN11HWInterface15CopyBackToFrontERK5BRect + 0x213
  (0x62d54138)  0x52f890  _ZN11HWInterface10InvalidateERK5BRect + 0x2e
  (0x62d54158)  0x52a6f0  _ZN13DrawingEngine10FillRegionER7BRegionRK9rgb_color + 0x10a
  (0x62d541e8)  0x4bdb4b  _ZN7Desktop14_SetBackgroundER7BRegion + 0xb3
  (0x62d54248)  0x4c3387  _ZN7Desktop4InitEv + 0x2d1
  (0x62d54318)  0x4b7806  _ZN9AppServer14_CreateDesktopEjPKc + 0x52
  (0x62d54358)  0x4b7b77  _ZN9AppServer16_DispatchMessageElRN8BPrivate12LinkReceiverE + 0xf7
  (0x62d543b8)  0x4cc6c1  _ZN13MessageLooper14_MessageLooperEv + 0xbb
  (0x62d54508)  0x4cc5ff  _ZN13MessageLooper15_message_threadEPv + 0xf
  (0x62d54528)  0x4b77ac  _ZN9AppServer9RunLooperEv + 0x34
  (0x62d54548)  0x4b7fab  main + 0x5e
  (0x62d54578)  0x4b6e3c  _start + 0x50
  (0x62d545b0)  0x1d6ef98  runtime_loader + 0x122
/dev/net/ipro1000/0: media change, media 0x20 quality 1000 speed 1000000000
vm_soft_fault: va 0xd3000000 not covered by area in address space
vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0xd3000000, ip 0x80091f9d, write 1, user 0, thread 0x14d

qemu command:

qemu-system-i386 --usbdevice tablet -m 4096 -hda /dev/sdc --enable-kvm -smp 4 -serial stdio

OS:

hrev46154 x86  (gcc4)
Version 0, edited 7 years ago by kallisti5 (next)

comment:4 by diver, 7 years ago

Looks like #2539.

comment:5 by bonefish, 7 years ago

Yes the app server crash looks like #2539. pagefault3.png is yet another issue. Please open separate bug reports for the different issues.

comment:6 by kallisti5, 7 years ago

OK, lets focus on the page fault in pagefault2.png. Sorry for mixing them up in this ticket. As they occured within a few hours of each other on the same machine I thought they were all related.

comment:7 by kallisti5, 7 years ago

Description: modified (diff)
Summary: KDL / Pagefaultvnode related KDL / Pagefault in qemu

comment:8 by kallisti5, 7 years ago

Are we sure these panic's aren't related in some way? I just got another one with another random stack strace.. The only relation is they are all memory related.

comment:9 by pulkomandy, 5 years ago

The code in pagefault2.png was partially rewritten to resolve #9552. Does the new code crashes similarly or is the issue gone?

comment:10 by pulkomandy, 5 years ago

Milestone: R1/beta1R1

No answer since 2 years, removing from beta1 for now.

comment:11 by axeld, 3 years ago

Owner: changed from axeld to nobody
Status: newassigned

comment:12 by waddlesplash, 12 months ago

Resolution: not reproducible
Status: assignedclosed

comment:13 by nielx, 3 months ago

Milestone: R1

Remove milestone for tickets with status = closed and resolution != fixed

Note: See TracTickets for help on using tickets.