On 2014-11-19 3:38 AM, xingzhou...@gmail.com wrote:
===========================
The problem we have:
===========================
Our product leverage XULRunner 10.0.6.esr Version as embedded browser core, currently, it 
seems that we are encountering the problem highlighted in bug "Bug 710176 - Socket 
transport service thread pegs the CPU spinning to send data on a SSL socket that is 
blocking waiting for certificate validation to finish" within our product. This is 
causing our users on Mac to have a poor user experience since when the CPU Spikes to 
100%+, the CPU keeps spinning while Embedded Browser couldn't open any web pages any 
more(no content will rendering anymore), seems like the network completely hangs while 
the UI still responsive.

We have got the Sample file of our product while the CPU spikes, and in the 
process sample file, we found a lot of XULRunner threads(such as 
nsSocketTransportService, nsSSLThread, nsSSLIOLayerPoll...) are working..

We have also using XCode's Instruments tool to look at which thread is spinning 
the CPU, and the results as showed below, XULRunner's nsSSLThread::requestPoll() 
-> nsSocketTransportService::Poll() takes much of the CPU time.. the symptom is 
that if XULRunner enter a potential loop between nsSSLIOLayerPoll() and 
nsSSLThread::requestPoll() which spinning on the CPU and starving everything else, 
this might leads to a complete hang of any networking, but the UI is responsive, 
which means that when the CPU spikes, you can still open another browser tab, but 
you can not loading any pages from then unless you restart the client..

=======================
The help that we need:
=======================
We have done a great deal of research on this problem, but have not found a 
solidly reproducible case which also seems to be the case with Bug 71076. We 
are leveraging 10.0.6esr version of XULrunner and determined that the problem 
was addressed in version 12. However in this version a lot of changes to the 
network service related code were made, it is not easy for us to backport the 
Bug710176 patch to XULRunner10.0.6.esr since we are not the XULRunner experts.

Specifically we are looking for the following help:
(1)Identification of the specific changes made to address bug 71076, plus 
guidance on how to backport that to 10.06esr.
(2)Is there a test case specifically identified which we could use to confirm 
the backport was successful.
(3)Any suggestions on further regression testing that should be done to ensure 
there are no unexpected side effects applying a patch to the earlier build.


Great thanks for your kindly help in advance.


Maybe you can try the versions which landed on mozilla-beta (which was version 11 at the time); they might be closer to the ESR code you're using: https://bugzilla.mozilla.org/show_bug.cgi?id=710176#c73
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to