Opened 15 years ago

Closed 15 years ago

#5228 closed bug (fixed)

PANIC: Invalid concurrent access to page 0x82c204d0 (start), currently accessed by: 43926

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

Description

I got this panic while doing a scheduling_recorder run of jam -qj2. Still have it in the kernel debugger if you want me to investigate more details:

Welcome to Kernel Debugging Land...
Thread 43926 "bfs_shell" running on CPU 1
kdebug>   bt
stack trace for thread 43926 "bfs_shell"
    kernel stack: 0xd0982000 to 0xd0986000
      user stack: 0x7efef000 to 0x7ffef000
frame               caller     <image>:function + offset
 0 d09856c8 (+  32) 8006f8b1   <kernel_x86> invoke_command_trampoline(void*: 0xd0985748) + 0x0015
 1 d09856e8 (+  12) 800df6d7   <kernel_x86>:arch_debug_call_with_fault_handler + 0x001b
 2 d09856f4 (+  48) 8006d792   <kernel_x86>:debug_call_with_fault_handler + 0x0051
 3 d0985724 (+  64) 8006fc5a   <kernel_x86>:invoke_debugger_command + 0x00bb
 4 d0985764 (+  48) 8006fd77   <kernel_x86> invoke_pipe_segment(debugger_command_pipe*: 0x80135624, int32: 0, char*: NULL) + 0x0083
 5 d0985794 (+  32) 8006fe3f   <kernel_x86>:invoke_debugger_command_pipe + 0x008b
 6 d09857b4 (+ 128) 80073bde   <kernel_x86> ExpressionParser<0xd0985884>::_ParseCommandPipe(int&: 0xd0985880) + 0x0aae
 7 d0985834 (+  48) 800763a7   <kernel_x86> ExpressionParser<0xd0985884>::EvaluateCommand(char const*: 0x80135620 "  bt", int&: 0xd0985880) + 0x06df
 8 d0985864 (+ 192) 80076520   <kernel_x86>:evaluate_debug_command + 0x0084
 9 d0985924 (+  96) 8006e6e2   <kernel_x86> kernel_debugger_internal(char const*: 0x4027 "<???>", int32: -795321936) + 0x03a7
10 d0985984 (+  16) 8006e843   <kernel_x86>:kernel_debugger + 0x0019
11 d0985994 (+ 160) 8006e91d   <kernel_x86>:panic + 0x002a
12 d0985a34 (+  80) 800cb590   <kernel_x86>:vm_page_schedule_write_page_range + 0x0165
13 d0985a84 (+  64) 800403ac   <kernel_x86> reserve_pages(file_cache_ref*: 0x8013ef8c, uint32: 0x1000001, false) + 0x00a1
14 d0985ac4 (+ 480) 80041270   <kernel_x86> write_to_cache(file_cache_ref*: 0xddee7118, void*: NULL, int64: 67268608, int32: 2048, uint32: 0x181520f8, uint32: 0x0 (0), true, uint32: 0x1 (1), uint32: 0x0 (0)) + 0x03ad
15 d0985ca4 (+ 176) 80041e85   <kernel_x86> cache_io(void*: 0x4027800, void*: NULL, int64: -3415875657193414408, uint32: 0x1 (1), unsigned long*: 0x1, true) + 0x053c
16 d0985d54 (+  96) 80041fbe   <kernel_x86>:file_cache_write + 0x00d3
17 d0985db4 (+ 112) 808094ff   <bfs> Inode<0xed5a17f8>::WriteAt(Transaction&: 0xd0985e74, int64: 67270656, unsigned char const*: 0x181520f8, unsigned long*: 0xd0985f30) + 0x030d
18 d0985e24 (+ 112) 80815ed1   <bfs> bfs_write(fs_volume*: 0xccd7e758, fs_vnode*: 0xed48a83c, void*: 0x812bce9c, int64: 67270656, void const*: 0x181520f8, unsigned long*: 0xd0985f30) + 0x00ca
19 d0985e94 (+  64) 800a6f06   <kernel_x86> file_write(file_descriptor*: 0x81231640, int64: 67270656, void const*: 0x181520f8, unsigned long*: 0xd0985f30) + 0x0053
20 d0985ed4 (+  80) 8009e91f   <kernel_x86> common_user_io(int32: 404037880, int64: 4294969344, void*: 0xcd43d800, uint32: 0xd0985fa8, true) + 0x0109
21 d0985f24 (+  32) 8009e9bb   <kernel_x86>:_user_write + 0x001c
22 d0985f44 (+ 100) 800dfcc1   <kernel_x86>:handle_syscall + 0x00be
user iframe at 0xd0985fa8 (end = 0xd0986000)
 eax 0x85           ebx 0x3c14e8        ecx 0x7ffee50c   edx 0xffff0114
 esi 0x800          edi 0x4             ebp 0x7ffee538   esp 0xd0985fdc
 eip 0xffff0114  eflags 0x216      user esp 0x7ffee50c
 vector: 0x63, error code: 0x0
23 d0985fa8 (+   0) ffff0114   <commpage>:commpage_syscall + 0x0004
24 7ffee538 (+  64) 00244625   <bfs_shell>:fssh_write_pos + 0x0055
25 7ffee578 (+  96) 00238671   <bfs_shell>:_ZN7FSShell11block_cacheD2Ev (nearest) + 0x0581
26 7ffee5d8 (+  80) 00239044   <bfs_shell>:fssh_block_cache_sync_etc + 0x0084
27 7ffee628 (+ 224) 0021f6e6   <bfs_shell> Inode<0x18031920>::Sync() + 0x04ca
28 7ffee708 (+  32) 0022e791   <bfs_shell>:_Z23bfs_create_special_nodeP14fssh_fs_volumeP13fssh_fs_vnodePKcS2_jjS2_Px (nearest) + 0x0708
29 7ffee728 (+  48) 00245ab7   <bfs_shell>:fssh_acquire_vnode (nearest) + 0x0347
30 7ffee758 (+  32) 00245bb2   <bfs_shell>:fssh_acquire_vnode (nearest) + 0x0442
31 7ffee778 (+  32) 0023d6d9   <bfs_shell> FSShell<0x18026bc0>::put_fd(FSShell::file_descriptor*: 0x1) + 0x0099
32 7ffee798 (+  48) 0023d989   <bfs_shell> FSShell<0x00000001>::_kern_close(int32: 2488332) + 0x0099
33 7ffee7c8 (+  48) 0024d910   <bfs_shell> FSShell::GuestFile::~GuestFile() + 0x0090
34 7ffee7f8 (+1168) 0023ac85   <bfs_shell>:__fssh_swap_int16 (nearest) + 0x04d5
35 7ffeec88 (+ 432) 0023be3c   <bfs_shell> FSShell<0x00000012>::command_cp(int32: 408970256, char const* const*: 0x18023178) + 0x082c
36 7ffeee38 (+  32) 00232f79   <bfs_shell> FSShell::Command<0x18023178>::Do(int32: 18, char const* const*: 0x18606410) + 0x0029
37 7ffeee58 (+ 272) 00236726   <bfs_shell>:main + 0x0946
38 7ffeef68 (+  52) 00212afd   <bfs_shell>:_start + 0x0051
39 7ffeef9c (+  64) 001052c3   </boot/system/runtime_loader@0x00100000>:unknown + 0x52c3
40 7ffeefdc (+   0) 7ffeefec   1622435:bfs_shell_main_stack@0x7efef000 + 0xffffec
kdebug>

PAGE: 0x82c204d0
queue_next,prev: 0x00000000, 0x825e8a9c
physical_number: 3cc1c
cache:           0xed481e00
cache_offset:    16423
cache_next:      0x827e062c
type:            0
state:           busy
wired_count:     0
usage_count:     2
busy_writing:    0
accessor:        43926
area mappings:


CACHE 0xed481e00:
  ref_count:    174
  source:       0x00000000
  type:         vnode
  virtual_base: 0x0
  virtual_end:  0xc000000
  temporary:    0
  scan_skip:    0
  lock:         0xed481e54
  lock.holder:  43926
  areas:
  consumers:
  pages:
        25532 in cache

rw lock 0xed481e54:
  name:            VMCache
  holder:          43926
  count:           0xcccccc00
  active readers   -22468
  pending readers  -4792
  owner count:     0x0
  flags:           0xddee7118
  waiting threads:


Attachments (1)

vm_cache_trace_dump.txt (16.4 KB ) - added by anevilyak 15 years ago.
Trace dump

Download all attachments as: .zip

Change History (6)

comment:1 by anevilyak, 15 years ago

Summary: PANIC: PANIC: Invalid concurrent access to page 0x82c204d0 (start), currently accessed by: 43926PANIC: Invalid concurrent access to page 0x82c204d0 (start), currently accessed by: 43926

comment:2 by anevilyak, 15 years ago

Oops, just realized that's a mutex not an rwlock...

mutex 0xed481e54:
  name:            VMCache
  flags:           0x0
  holder:          43926
  waiting threads:

Also, I have vm cache tracing enabled on this build with stack trace = 5...anything you want me to extract?

comment:3 by anevilyak, 15 years ago

If of interest:

1792166. [ 43787] 3406174375: vm cache create: -> cache: 0xed481e00
1792167. [ 43787] 3406174377: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 4096
1792168. [ 43787] 3406174378: vm cache insert area: cache: 0xed481e00, area: 0xed56e640
1793837. [ 43787] 3406252856: vm cache remove area: cache: 0xed481e00, area: 0xed56e640
1793838. [ 43787] 3406252857: vm cache delete: cache: 0xed481e00
1795113. [ 43789] 3406280255: vm cache create: -> cache: 0xed481e00
1795115. [ 43789] 3406280257: vm cache insert area: cache: 0xed481e00, area: 0x813e6f50
1795116. [ 43789] 3406280258: vm cache add consumer: cache: 0xed4c0100, consumer: 0xed481e00
1795205. [ 43791] 3406281357: vm cache merge with consumer: cache: 0xed4c0100, consumer: 0xed481e00
1795465. [ 43790] 3406285118: vm cache merge with consumer: cache: 0xed453200, consumer: 0xed481e00
1809009. [ 43789] 3407558001: vm cache remove area: cache: 0xed481e00, area: 0x813e6f50
1809010. [ 43789] 3407558002: vm cache delete: cache: 0xed481e00
1818295. [ 43807] 3408143680: vm cache create: -> cache: 0xed481e00
1818296. [ 43807] 3408143681: vm cache add consumer: cache: 0xed604900, consumer: 0xed481e00
1818297. [ 43807] 3408143682: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 200704
1818298. [ 43807] 3408143683: vm cache insert area: cache: 0xed481e00, area: 0xed56ebe0
1818496. [ 43808] 3408144965: vm cache remove area: cache: 0xed481e00, area: 0xed56ebe0
1818497. [ 43808] 3408144966: vm cache delete: cache: 0xed481e00
1818498. [ 43808] 3408144967: vm cache remove consumer: cache: 0xed604900, consumer: 0xed481e00
1821373. [ 43808] 3408555505: vm cache create: -> cache: 0xed481e00
1821374. [ 43808] 3408555510: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 1048576
1821375. [ 43808] 3408555515: vm cache insert area: cache: 0xed481e00, area: 0xed59e0f0
1822088. [ 43808] 3408727812: vm cache remove area: cache: 0xed481e00, area: 0xed59e0f0
1822089. [ 43808] 3408727813: vm cache delete: cache: 0xed481e00
1825387. [ 43813] 3408806762: vm cache create: -> cache: 0xed481e00
1825388. [ 43813] 3408806762: vm cache add consumer: cache: 0xec9e5700, consumer: 0xed481e00
1825389. [ 43813] 3408806763: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 802816
1825390. [ 43813] 3408806765: vm cache insert area: cache: 0xed481e00, area: 0xed56e960
1825744. [ 43815] 3408811717: vm cache remove area: cache: 0xed481e00, area: 0xed56e960
1825745. [ 43815] 3408811719: vm cache delete: cache: 0xed481e00
1825746. [ 43815] 3408811720: vm cache remove consumer: cache: 0xec9e5700, consumer: 0xed481e00
1828552. [ 43814] 3408889357: vm cache create: -> cache: 0xed481e00
1828553. [ 43814] 3408889363: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 1048576
1828554. [ 43814] 3408889366: vm cache insert area: cache: 0xed481e00, area: 0xed56edc0
1852926. [ 43814] 3411879035: vm cache remove area: cache: 0xed481e00, area: 0xed56edc0
1852927. [ 43814] 3411879036: vm cache delete: cache: 0xed481e00
1857940. [ 43834] 3412211224: vm cache create: -> cache: 0xed481e00
1857942. [ 43834] 3412211226: vm cache insert area: cache: 0xed481e00, area: 0xed56ed20
1857943. [ 43834] 3412211227: vm cache add consumer: cache: 0xed4c0580, consumer: 0xed481e00
1858171. [ 43836] 3412215067: vm cache merge with consumer: cache: 0xed4c0580, consumer: 0xed481e00
1863147. [ 43834] 3412748688: vm cache remove area: cache: 0xed481e00, area: 0xed56ed20
1863148. [ 43834] 3412748689: vm cache delete: cache: 0xed481e00
1863149. [ 43834] 3412748694: vm cache remove consumer: cache: 0x812e0480, consumer: 0xed481e00
1864913. [ 43838] 3412778909: vm cache create: -> cache: 0xed481e00
1864914. [ 43838] 3412778910: vm cache add consumer: cache: 0xec9a2280, consumer: 0xed481e00
1864915. [ 43838] 3412778911: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 200704
1864916. [ 43838] 3412778912: vm cache insert area: cache: 0xed481e00, area: 0xed56e230
1865117. [ 43841] 3412781286: vm cache remove area: cache: 0xed481e00, area: 0xed56e230
1865118. [ 43841] 3412781288: vm cache delete: cache: 0xed481e00
1865119. [ 43841] 3412781288: vm cache remove consumer: cache: 0xec9a2280, consumer: 0xed481e00
1867973. [ 43839] 3412883612: vm cache create: -> cache: 0xed481e00
1867974. [ 43839] 3412883618: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 1048576
1867975. [ 43839] 3412883623: vm cache insert area: cache: 0xed481e00, area: 0xed56eb90
1872863. [ 43839] 3413480132: vm cache remove area: cache: 0xed481e00, area: 0xed56eb90
1872864. [ 43839] 3413480133: vm cache delete: cache: 0xed481e00
1874689. [ 43848] 3413528925: vm cache create: -> cache: 0xed481e00
1874690. [ 43848] 3413528926: vm cache add consumer: cache: 0xccdda480, consumer: 0xed481e00
1874691. [ 43848] 3413528927: vm cache set min commitment: cache: 0xed481e00, commitment: 0 -> 8192
1874692. [ 43848] 3413528929: vm cache insert area: cache: 0xed481e00, area: 0xed56ea50
1882828. [ 43848] 3413876543: vm cache remove area: cache: 0xed481e00, area: 0xed56ea50
1882829. [ 43848] 3413876545: vm cache delete: cache: 0xed481e00
1882830. [ 43848] 3413876548: vm cache remove consumer: cache: 0xccdda480, consumer: 0xed481e00
1883042. [  8941] 3413880114: vm cache create: -> cache: 0xed481e00
1883044. [  8941] 3413880116: vm cache insert area: cache: 0xed481e00, area: 0x8129d050
1883045. [  8941] 3413880117: vm cache add consumer: cache: 0xed626300, consumer: 0xed481e00
1883231. [ 43855] 3413889289: vm cache merge with consumer: cache: 0xed626300, consumer: 0xed481e00
1886217. [  8941] 3414018768: vm cache add consumer: cache: 0xed481e00, consumer: 0xec9fac00
1886221. [  8941] 3414018773: vm cache remove area: cache: 0xed481e00, area: 0x8129d050
1886223. [  8941] 3414018775: vm cache add consumer: cache: 0xed481e00, consumer: 0xec9fa700
1886334. [ 43858] 3414027108: vm cache remove consumer: cache: 0xed481e00, consumer: 0xec9fac00
1886335. [ 43858] 3414027110: vm cache merge with consumer: cache: 0xed481e00, consumer: 0xec9fa700
1886336. [ 43858] 3414027116: vm cache delete: cache: 0xed481e00
1887714. [ 43859] 3414053788: vm cache create: -> cache: 0xed481e00
1887716. [ 43859] 3414053790: vm cache insert area: cache: 0xed481e00, area: 0xec86d640
1887717. [ 43859] 3414053791: vm cache add consumer: cache: 0xed7c6b00, consumer: 0xed481e00
1887943. [ 43861] 3414058296: vm cache merge with consumer: cache: 0xed7c6b00, consumer: 0xed481e00
1890975. [ 43859] 3414435642: vm cache remove area: cache: 0xed481e00, area: 0xec86d640
1890976. [ 43859] 3414435643: vm cache delete: cache: 0xed481e00
1890977. [ 43859] 3414435648: vm cache remove consumer: cache: 0x812e0480, consumer: 0xed481e00
1895292. [ 43865] 3414665133: vm cache create: -> cache: 0xed481e00
1895294. [ 43865] 3414665136: vm cache insert area: cache: 0xed481e00, area: 0xec86d870
1895295. [ 43865] 3414665137: vm cache add consumer: cache: 0xed4c0e00, consumer: 0xed481e00

comment:4 by anevilyak, 15 years ago

Just realized that dump was incomplete...attaching a full one.

by anevilyak, 15 years ago

Attachment: vm_cache_trace_dump.txt added

Trace dump

comment:5 by bonefish, 15 years ago

Resolution: fixed
Status: newclosed

That was only misplaced debug code. Fixed in hrev34980.

Note: See TracTickets for help on using tickets.