Closed Bug 882588 Opened 11 years ago Closed 10 years ago

Intermittent test_app_permissions.html |Assertion failure: (*(uint32_t*)(table->entryStore + ((uint32_t)1 << (32 - (table)->hashShift)) * table->entrySize)) > 0, at pldhash.cpp:668

Categories

(Core :: DOM: Device Interfaces, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: cbook, Unassigned)

Details

(Keywords: assertion, intermittent-failure)

https://tbpl.mozilla.org/php/getParsedLog.php?id=24096376&tree=Mozilla-Inbound

Rev4 MacOSX Snow Leopard 10.6 mozilla-inbound debug test mochitest-other on 2013-06-13 00:37:08 PDT for push d5917b4a5479

slave: talos-r4-snow-020

00:43:16     INFO -  Assertion failure: (*(uint32_t*)(table->entryStore + ((uint32_t)1 << (32 - (table)->hashShift)) * table->entrySize)) > 0, at pldhash.cpp:668
00:43:16     INFO -  3863 INFO TEST-PASS | chrome://mochitests/content/chrome/dom/devicestorage/test/test_app_permissions.html | Should be able to get request
00:43:18  WARNING -  TEST-UNEXPECTED-FAIL | chrome://mochitests/content/chrome/dom/devicestorage/test/test_app_permissions.html | Exited with code 1 during test run
00:43:18     INFO -  INFO | automation.py | Application ran for: 0:04:26.562528
00:43:18     INFO -  INFO | zombiecheck | Reading PID log: /var/folders/Hs/HsDn6a9SG8idoIya6p9mtE+++TI/-Tmp-/tmpvN9gIhpidlog
00:43:35  WARNING -  PROCESS-CRASH | chrome://mochitests/content/chrome/dom/devicestorage/test/test_app_permissions.html | application crashed [@ PL_DHashTableOperate]
00:43:35     INFO -  Crash dump filename: /var/folders/Hs/HsDn6a9SG8idoIya6p9mtE+++TI/-Tmp-/tmp9DlBoI/minidumps/74E5A397-39E4-4153-BBEB-A5E95C2DB900.dmp
00:43:35     INFO -  Operating system: Mac OS X
00:43:35     INFO -                    10.6.8 10K549
00:43:35     INFO -  CPU: amd64
00:43:35     INFO -       family 6 model 23 stepping 10
00:43:35     INFO -       2 CPUs
00:43:35     INFO -  Crash reason:  EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
00:43:35     INFO -  Crash address: 0x0
00:43:35     INFO -  Thread 30 (crashed)
00:43:35     INFO -   0  XUL!PL_DHashTableOperate [pldhash.cpp:d5917b4a5479 : 573 + 0x0]
00:43:35     INFO -      rbx = 0x00007fff707122f8   r12 = 0x000000008318033c
00:43:35     INFO -      r13 = 0x000000008318033c   r14 = 0x00000001040b6ade
00:43:35     INFO -      r15 = 0x00000001068747a8   rip = 0x000000010335e847
00:43:35     INFO -      rsp = 0x000000010c980a30   rbp = 0x000000010c980a60
00:43:35     INFO -      Found by: given as instruction pointer in context
00:43:35     INFO -   1  XUL!PREF_GetBoolPref [prefapi.cpp:d5917b4a5479 : 724 + 0x10]
00:43:35     INFO -      rip = 0x0000000101b33a00   rsp = 0x000000010c980a70
00:43:35     INFO -      rbp = 0x000000010c980a80
00:43:35     INFO -      Found by: stack scanning
00:43:35     INFO -   2  XUL!DeviceStorageFile::GetRootDirectoryForType(nsAString_internal const&, nsAString_internal const&, nsIFile**) [Preferences.h:d5917b4a5479 : 108 + 0xf]
00:43:35     INFO -      rip = 0x000000010252c4a7   rsp = 0x000000010c980a90
00:43:35     INFO -      rbp = 0x000000010c980b10
00:43:35     INFO -      Found by: stack scanning
00:43:35     INFO -   3  XUL!nsAString_internal::Assign(unsigned short const*, unsigned int, mozilla::fallible_t const&) [nsCharTraits.h:d5917b4a5479 : 168 + 0xd]
00:43:35     INFO -      rip = 0x00000001033e4234   rsp = 0x000000010c980ac0
00:43:35     INFO -      rbp = 0x000000010c980b10
00:43:35     INFO -      Found by: stack scanning
00:43:35     INFO -   4  XUL!DeviceStorageFile::Init() [nsDeviceStorage.cpp:d5917b4a5479 : 547 + 0xa]
00:43:35     INFO -      rip = 0x000000010252ba35   rsp = 0x000000010c980b20
00:43:35     INFO -      rbp = 0x000000010c980b40
00:43:35     INFO -      Found by: stack scanning
00:43:35     INFO -   5  XUL!DeviceStorageFile::DeviceStorageFile(nsAString_internal const&, nsAString_internal const&, nsAString_internal const&, nsAString_internal const&) [nsDeviceStorage.cpp:d5917b4a5479 : 483 + 0x7]
00:43:35     INFO -      rip = 0x000000010252b98d   rsp = 0x000000010c980b50
00:43:35     INFO -      rbp = 0x000000010c980b80
00:43:35     INFO -      Found by: stack scanning
00:43:35     INFO -   6  XUL!DeviceStorageFile::collectFilesInternal(nsTArray<nsRefPtr<DeviceStorageFile> >&, long long, nsAString_internal&) [nsDeviceStorage.cpp:d5917b4a5479 : 489 + 0x1b]
00:43:35     INFO -      rip = 0x000000010252d947   rsp = 0x000000010c980b90
00:43:35     INFO -      rbp = 0x000000010c980cf0
00:43:35     INFO -      Found by: stack scanning

Skipping 3136 lines...

00:43:36     INFO -  0x7fff86aa1000 - 0x7fff86ab5fff  libGL.dylib  ???
00:43:36     INFO -  0x7fff86af6000 - 0x7fff86b7bfff  PrintCore  ???
00:43:36     INFO -  0x7fff86b7c000 - 0x7fff86bfafff  CoreText  ???
00:43:36     INFO -  0x7fff86e65000 - 0x7fff8766ffff  libBLAS.dylib  ???
00:43:36     INFO -  0x7fff87670000 - 0x7fff879a4fff  CarbonCore  ???
00:43:36     INFO -  0x7fff879a5000 - 0x7fff87a62fff  OSServices  ???
00:43:36     INFO -  0x7fff87af3000 - 0x7fff87d35fff  AddressBook  ???
00:43:36     INFO -  0x7fff87d97000 - 0x7fff87eccfff  AudioToolbox  ???
00:43:36     INFO -  0x7fff87ecd000 - 0x7fff885c9fff  CoreGraphics  ???
00:43:36     INFO -  0x7fff88605000 - 0x7fff8861bfff  libbsm.0.dylib  ???
00:43:36     INFO -  0x7fff88657000 - 0x7fff88659fff  ExceptionHandling  ???
00:43:36     INFO -  0x7fff88661000 - 0x7fff886f1fff  SearchKit  ???
00:43:36     INFO -  0x7fff886f2000 - 0x7fff88733fff  CoreMedia  ???
00:43:36     INFO -  0x7fff88734000 - 0x7fff8912efff  AppKit  ???
00:43:36     INFO -  0x7fff8918a000 - 0x7fff8919bfff  DSObjCWrappers  ???
00:43:36     INFO -  0x7fff8919c000 - 0x7fff891b3fff  ImageCapture  ???
00:43:36     INFO -  0x7fff891b4000 - 0x7fff89207fff  HIServices  ???
00:43:36     INFO -  0x7fff89208000 - 0x7fff8937ffff  CoreFoundation  ???
00:43:36     INFO -  0x7fff89380000 - 0x7fff89385fff  CommonPanels  ???
00:43:36     INFO -  0x7fff89409000 - 0x7fff89452fff  libGLU.dylib  ???
00:43:36     INFO -  0x7fff894c0000 - 0x7fff8953dfff  Backup  ???
00:43:36     INFO -  0x7fff8953e000 - 0x7fff89612fff  CFNetwork  ???
00:43:36     INFO -  0x7fff89613000 - 0x7fff89638fff  CoreVideo  ???
00:43:36     INFO -  0x7fff8967a000 - 0x7fff89680fff  IOSurface  ???
00:43:36     INFO -  0x7fff896a2000 - 0x7fff896b1fff  NetFS  ???
00:43:36     INFO -  0x7fff896b2000 - 0x7fff896b3fff  liblangid.dylib  ???
00:43:36     INFO -  0x7fff896b4000 - 0x7fff896b9fff  libGIF.dylib  ???
00:43:36     INFO -  0x7fff896ba000 - 0x7fff8979ffff  DesktopServicesPriv  ???
00:43:36     INFO -  0x7fff897a0000 - 0x7fff897affff  OpenGL  ???
00:43:36     INFO -  0x7fff897b0000 - 0x7fff89871fff  ColorSync  ???
00:43:36     INFO -  0x7fff89872000 - 0x7fff89872fff  CoreServices  ???
00:43:36     INFO -  mozcrash INFO | Saved dump as /Users/cltbld/talos-slave/test/build/../minidumps/74E5A397-39E4-4153-BBEB-A5E95C2DB900.dmp
00:43:36     INFO -  Saved dump as /Users/cltbld/talos-slave/test/build/../minidumps/74E5A397-39E4-4153-BBEB-A5E95C2DB900.dmp
0
Something macro-expanded the assertion badly; this is really MOZ_ASSERT(RECURSION_LEVEL(table_) > 0).

In general, this is a sign of either (a) un-threadsafe use of pldhash or (b) a missing call to PL_DHashMarkTableImmutable, which would change what the assertions check (since it's ok to race reading a read-only table).

In this case, it looks like the stack shows access to prefs off the main thread, via an API that doesn't have an assertion in it to catch that.
Assignee: general → nobody
Component: JavaScript Engine → DOM: Device Interfaces
Closing bugs where TBPLbot has previously commented, but have now not been modified for >3 months & do not contain the whiteboard strings for disabled/annotated tests or use the keyword leave-open. Filter on: mass-intermittent-bug-closure-2014-07
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.