<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>34742</bug_id>
          
          <creation_ts>2010-02-09 00:32:04 -0800</creation_ts>
          <short_desc>[Qt] Optimize getCPUTime for Symbian</short_desc>
          <delta_ts>2010-02-26 11:51:04 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>S60 Hardware</rep_platform>
          <op_sys>S60 3rd edition</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>27065</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Janne Koskinen">koshuin</reporter>
          <assigned_to name="Janne Koskinen">koshuin</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>188917</commentid>
    <comment_count>0</comment_count>
    <who name="Janne Koskinen">koshuin</who>
    <bug_when>2010-02-09 00:32:04 -0800</bug_when>
    <thetext>Running tst_QWebPage::infiniteLoopJS() will never exit (testrun timeout is 1h) and unit test executable stops responding. In order to exit the phone has to be rebooted.
When running the same test on emulator it will pass. So for some reason javascript execution on HW is not stopped.
Implications of this test is , if failing, that any JS code getting stuck or taking long will block the running thread.

Test was run on Nokia 5800 Express Music, Qt and QtWebkit built for armv5 urel using RVCT 2.2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>191047</commentid>
    <comment_count>1</comment_count>
    <who name="Janne Koskinen">koshuin</who>
    <bug_when>2010-02-17 08:11:54 -0800</bug_when>
    <thetext>This issue is caused by bug in Open C 1.6 implementation of gettimeofday().
gtod precision seems to vary from min. 1sec to several minutes i.e. calling gtod several times in a row will return the same value.

This value is then used in TimeoutChecker getCPUTime() to calculate time spent running the script causing the script never to be interrupted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192880</commentid>
    <comment_count>2</comment_count>
      <attachid>49276</attachid>
    <who name="Janne Koskinen">koshuin</who>
    <bug_when>2010-02-23 04:46:59 -0800</bug_when>
    <thetext>Created attachment 49276
proposed fix for timeoutchecker.cpp

Patch contains a proper implementation of getCPUTime for Symbian. It works from Symbian 9.1 onwards i.e. S60 3rd edition and up as that is when GetCpuTime function was introduced.
Tested the the patch to run on Nokia N95 and Nokia 5800 Express Music. It is possible that some device doesn&apos;t implement the function or has it disabled, thus added assertion for debugging purposes to see if some device returns KErrNotSupported.

Also reported the gettimeofday -issue to Open C guys, so that will be fixed in future releases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192883</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-02-23 04:51:37 -0800</bug_when>
    <thetext>Attachment 49276 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
JavaScriptCore/runtime/TimeoutChecker.cpp:92:  Missing space after ,  [whitespace/comma] [3]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192887</commentid>
    <comment_count>4</comment_count>
      <attachid>49278</attachid>
    <who name="Janne Koskinen">koshuin</who>
    <bug_when>2010-02-23 05:01:10 -0800</bug_when>
    <thetext>Created attachment 49278
proposed fix for timeoutchecker.cpp style fixed

fixed style issue with ,</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192972</commentid>
    <comment_count>5</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2010-02-23 08:48:25 -0800</bug_when>
    <thetext>I changed the title to better reflect what this patch does. Approach looks good to me I think Symbian specific code is justified here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194189</commentid>
    <comment_count>6</comment_count>
      <attachid>49278</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-26 11:50:59 -0800</bug_when>
    <thetext>Comment on attachment 49278
proposed fix for timeoutchecker.cpp style fixed

Clearing flags on attachment: 49278

Committed r55296: &lt;http://trac.webkit.org/changeset/55296&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194190</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-02-26 11:51:04 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49276</attachid>
            <date>2010-02-23 04:46:59 -0800</date>
            <delta_ts>2010-02-23 05:01:10 -0800</delta_ts>
            <desc>proposed fix for timeoutchecker.cpp</desc>
            <filename>timeoutchecker.diff</filename>
            <type>text/plain</type>
            <size>1604</size>
            <attacher name="Janne Koskinen">koshuin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAxNmFlMGU2Li5iZTAyZWJiIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcg
QEAKKzIwMTAtMDItMjMgIEphbm5lIEtvc2tpbmVuICA8amFubmUucC5rb3NraW5lbkBkaWdpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0
XSBTeW1iaWFuIHNwZWNpZmljIGdldENQVVRpbWUgaW1wbGVtZXRhdGlvbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzQ3NDIKKworICAgICAgICBEZWZh
dWx0IGltcGxlbWVudGF0aW9uIGRvZXNuJ3Qgd29yayBvbiBTeW1iaWFuIGRldmljZXMuCisgICAg
ICAgIFRoaXMgY2hhbmdlIGFkZHMgYSBwcm9wZXIgaW1wbGVtZW50YXRpb24gYnkKKyAgICAgICAg
YXNraW5nIHRocmVhZCBleGVjdXRpb24gdGltZSBmcm9tIHRoZSBjdXJyZW50IHRocmVhZC4KKwor
ICAgICAgICAqIHJ1bnRpbWUvVGltZW91dENoZWNrZXIuY3BwOgorICAgICAgICAoSlNDOjpnZXRD
UFVUaW1lKToKKwogMjAxMC0wMi0yMiAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFmZnJhaXhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBh
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGltZW91dENoZWNrZXIuY3BwIGIvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UaW1lb3V0Q2hlY2tlci5jcHAKaW5kZXggMjUwZmRhZi4uMjliYjQ3MSAxMDA2
NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UaW1lb3V0Q2hlY2tlci5jcHAKKysrIGIv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UaW1lb3V0Q2hlY2tlci5jcHAKQEAgLTg0LDYgKzg0LDEz
IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgZ2V0Q1BVVGltZSgpCiAgICAgR2V0VGhyZWFkVGlt
ZXMoR2V0Q3VycmVudFRocmVhZCgpLCAmY3JlYXRpb25UaW1lLCAmZXhpdFRpbWUsICZrZXJuZWxU
aW1lLmZpbGVUaW1lLCAmdXNlclRpbWUuZmlsZVRpbWUpOwogICAgIAogICAgIHJldHVybiB1c2Vy
VGltZS5maWxlVGltZUFzTG9uZyAvIDEwMDAwICsga2VybmVsVGltZS5maWxlVGltZUFzTG9uZyAv
IDEwMDAwOworI2VsaWYgT1MoU1lNQklBTikKKyAgICBSVGhyZWFkIGN1cnJlbnQ7CisgICAgVFRp
bWVJbnRlcnZhbE1pY3JvU2Vjb25kcyBjcHVUaW1lOworCisgICAgVEludCBlcnIgPSBjdXJyZW50
LkdldENwdVRpbWUoY3B1VGltZSk7CisgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShlcnIgPT0gS0Vy
ck5vbmUsIkdldENwdVRpbWUgZmFpbGVkIHdpdGggJWQiLGVycik7CisgICAgcmV0dXJuIGNwdVRp
bWUuSW50NjQoKSAvIDEwMDA7CiAjZWxpZiBQTEFURk9STShCUkVXTVApCiAgICAgLy8gVGhpcyBm
dW5jdGlvbiByZXR1cm5zIGEgY29udGludW91c2x5IGFuZCBsaW5lYXJseSBpbmNyZWFzaW5nIG1p
bGxpc2Vjb25kCiAgICAgLy8gdGltZXIgZnJvbSB0aGUgdGltZSB0aGUgZGV2aWNlIHdhcyBwb3dl
cmVkIG9uLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49278</attachid>
            <date>2010-02-23 05:01:10 -0800</date>
            <delta_ts>2010-02-26 11:50:59 -0800</delta_ts>
            <desc>proposed fix for timeoutchecker.cpp style fixed</desc>
            <filename>timeoutchecker.diff</filename>
            <type>text/plain</type>
            <size>1606</size>
            <attacher name="Janne Koskinen">koshuin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAxNmFlMGU2Li5iZTAyZWJiIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcg
QEAKKzIwMTAtMDItMjMgIEphbm5lIEtvc2tpbmVuICA8amFubmUucC5rb3NraW5lbkBkaWdpYS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0
XSBTeW1iaWFuIHNwZWNpZmljIGdldENQVVRpbWUgaW1wbGVtZXRhdGlvbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzQ3NDIKKworICAgICAgICBEZWZh
dWx0IGltcGxlbWVudGF0aW9uIGRvZXNuJ3Qgd29yayBvbiBTeW1iaWFuIGRldmljZXMuCisgICAg
ICAgIFRoaXMgY2hhbmdlIGFkZHMgYSBwcm9wZXIgaW1wbGVtZW50YXRpb24gYnkKKyAgICAgICAg
YXNraW5nIHRocmVhZCBleGVjdXRpb24gdGltZSBmcm9tIHRoZSBjdXJyZW50IHRocmVhZC4KKwor
ICAgICAgICAqIHJ1bnRpbWUvVGltZW91dENoZWNrZXIuY3BwOgorICAgICAgICAoSlNDOjpnZXRD
UFVUaW1lKToKKwogMjAxMC0wMi0yMiAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFmZnJhaXhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBh
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGltZW91dENoZWNrZXIuY3BwIGIvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9UaW1lb3V0Q2hlY2tlci5jcHAKaW5kZXggMjUwZmRhZi4uMjliYjQ3MSAxMDA2
NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UaW1lb3V0Q2hlY2tlci5jcHAKKysrIGIv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9UaW1lb3V0Q2hlY2tlci5jcHAKQEAgLTg0LDYgKzg0LDEz
IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgZ2V0Q1BVVGltZSgpCiAgICAgR2V0VGhyZWFkVGlt
ZXMoR2V0Q3VycmVudFRocmVhZCgpLCAmY3JlYXRpb25UaW1lLCAmZXhpdFRpbWUsICZrZXJuZWxU
aW1lLmZpbGVUaW1lLCAmdXNlclRpbWUuZmlsZVRpbWUpOwogICAgIAogICAgIHJldHVybiB1c2Vy
VGltZS5maWxlVGltZUFzTG9uZyAvIDEwMDAwICsga2VybmVsVGltZS5maWxlVGltZUFzTG9uZyAv
IDEwMDAwOworI2VsaWYgT1MoU1lNQklBTikKKyAgICBSVGhyZWFkIGN1cnJlbnQ7CisgICAgVFRp
bWVJbnRlcnZhbE1pY3JvU2Vjb25kcyBjcHVUaW1lOworCisgICAgVEludCBlcnIgPSBjdXJyZW50
LkdldENwdVRpbWUoY3B1VGltZSk7CisgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShlcnIgPT0gS0Vy
ck5vbmUsICJHZXRDcHVUaW1lIGZhaWxlZCB3aXRoICVkIiwgZXJyKTsKKyAgICByZXR1cm4gY3B1
VGltZS5JbnQ2NCgpIC8gMTAwMDsKICNlbGlmIFBMQVRGT1JNKEJSRVdNUCkKICAgICAvLyBUaGlz
IGZ1bmN0aW9uIHJldHVybnMgYSBjb250aW51b3VzbHkgYW5kIGxpbmVhcmx5IGluY3JlYXNpbmcg
bWlsbGlzZWNvbmQKICAgICAvLyB0aW1lciBmcm9tIHRoZSB0aW1lIHRoZSBkZXZpY2Ugd2FzIHBv
d2VyZWQgb24uCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>