Closed
Bug 863534
Opened 12 years ago
Closed 6 years ago
crash in PKIX_List_GetItem
Categories
(NSS :: Libraries, defect)
NSS
Libraries
Tracking
(b2g18 affected, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 affected)
RESOLVED
WORKSFORME
People
(Reporter: briansmith, Unassigned)
References
Details
(Keywords: crash, perf)
Crash Data
+++ This bug was initially created as a clone of Bug #787155 +++
Possible a race condition in the libpkix cert cache. I worked around this on B2G by disabling Gecko's usage of libpkix. But, this occurs on other platforms (relatively rarely) and so it should be fixed.
https://crash-stats.mozilla.com/report/index/bp-e781b49c-7333-40be-85bc-f40c72121215
[2] https://crash-stats.mozilla.com/report/list?signature=PKIX_List_GetItem
This bug was filed from the Socorro interface and is
report bp-3e9ed381-d082-4f27-9c6d-926a22120828 .
=============================================================
0 nss3.dll PKIX_List_GetItem security/nss/lib/libpkix/pkix/util/pkix_list.c:1553
1 nss3.dll pkix_CacheCert_Lookup security/nss/lib/libpkix/pkix/util/pkix_tools.c:1072
2 nss3.dll pkix_Build_GatherCerts security/nss/lib/libpkix/pkix/top/pkix_build.c:1800
3 nss3.dll pkix_BuildForwardDepthFirstSearch security/nss/lib/libpkix/pkix/top/pkix_build.c:2377
4 nss3.dll pkix_Build_InitiateBuildChain security/nss/lib/libpkix/pkix/top/pkix_build.c:3615
5 nss3.dll PKIX_BuildChain security/nss/lib/libpkix/pkix/top/pkix_build.c:3786
6 nss3.dll CERT_PKIXVerifyCert security/nss/lib/certhigh/certvfypkix.c:2204
7 xul.dll nsNSSCertificate::hasValidEVOidTag security/manager/ssl/src/nsIdentityChecking.cpp:1189
8 xul.dll nsNSSCertificate::getValidEVOidTag security/manager/ssl/src/nsIdentityChecking.cpp:1224
9 xul.dll nsNSSCertificate::GetIsExtendedValidation security/manager/ssl/src/nsIdentityChecking.cpp:1250
firefox bp-ece0c31e-cdad-48fc-aa94-41dbf2120803
crashes in all releases of the past year. and all OS
nothing especially useful in any of the crash comments afaict.
Reporter | ||
Updated•12 years ago
|
Priority: P1 → --
Comment 1•12 years ago
|
||
Looks like a ref-counting ordering issue
PKIX_PL_HashTable_Remove gives up the lock before decrementing the reference count of the item.
http://mxr.mozilla.org/nss/source/lib/libpkix/pkix_pl_nss/system/pkix_pl_hashtable.c#312
Whereas PKIX_PL_HashTable_Lookup properly increments the ref-count under the lock
http://mxr.mozilla.org/nss/source/lib/libpkix/pkix_pl_nss/system/pkix_pl_hashtable.c#373
It seems like line 310, http://mxr.mozilla.org/nss/source/lib/libpkix/pkix_pl_nss/system/pkix_pl_hashtable.c#310 , is entirely incorrect, given the code on 320/322 that handles unlocking.
Brian, do you want to just nuke 310 and see if that works for you?
Comment 2•12 years ago
|
||
Er, n/m, I missed that pkix_pl_PrimHashTable_Remove is transferring ownership back to the caller, so the fact that it's done outside of the lock should be fine.
Reporter | ||
Comment 3•12 years ago
|
||
Removing blocking-b2g flag because there is a wallpaper fix in bug 787155.
blocking-b2g: tef+ → ---
Whiteboard: [tbird crash][b2g-crash][eta:2013-04-19][madrid]
Comment 4•6 years ago
|
||
Closing because no crashes reported for 12 weeks.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•