<?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>62480</bug_id>
          
          <creation_ts>2011-06-10 14:46:40 -0700</creation_ts>
          <short_desc>WebKit2: improve first page load speed by adding API to launch WebProcess earlier</short_desc>
          <delta_ts>2011-06-11 13:35:19 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Stephanie Lewis">slewis</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>slewis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>418934</commentid>
    <comment_count>0</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2011-06-10 14:46:40 -0700</bug_when>
    <thetext>The first page load takes longer on WebKit2 because we have to wait for the WebProcess to launch.  Add API to launch it preemptively if we&apos;d like.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>418935</commentid>
    <comment_count>1</comment_count>
      <attachid>96793</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2011-06-10 14:49:58 -0700</bug_when>
    <thetext>Created attachment 96793
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>419099</commentid>
    <comment_count>2</comment_count>
      <attachid>96793</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-06-10 18:15:53 -0700</bug_when>
    <thetext>Comment on attachment 96793
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=96793&amp;action=review

&gt; Source/WebKit2/UIProcess/API/C/WKContext.cpp:104
&gt; +    toImpl(contextRef)-&gt;ensureWebProcess();

This should call a function on WebContext that matches the suffix of the API function call and the logic should be in WebContext.

&gt; Source/WebKit2/UIProcess/API/C/WKContext.h:116
&gt; +WK_EXPORT void WKContextLaunchInjectedBundle(WKContextRef context);

This isn&apos;t a good name for this.  How about WKContextWarmInitialProcess(...).  I also think this should go in WKContextPrivate.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>419126</commentid>
    <comment_count>3</comment_count>
      <attachid>96836</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2011-06-10 19:17:10 -0700</bug_when>
    <thetext>Created attachment 96836
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>419240</commentid>
    <comment_count>4</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2011-06-11 13:32:58 -0700</bug_when>
    <thetext>committed  http://trac.webkit.org/projects/webkit/changeset/88607</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>419241</commentid>
    <comment_count>5</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2011-06-11 13:35:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/9593960&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96793</attachid>
            <date>2011-06-10 14:49:58 -0700</date>
            <delta_ts>2011-06-10 19:17:10 -0700</delta_ts>
            <desc>patch</desc>
            <filename>launchInjectedBundle.txt</filename>
            <type>text/plain</type>
            <size>2139</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDg4NTY4KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDYtMTAgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTYyNDgwCisgICAgICAgIHBhcnQgb2YgPHJkYXI6Ly9wcm9ibGVtLzg2NzUxNzc+CisgICAg
ICAgIEFkZCBBUEkgdG8gbGF1bmNoIHRoZSBXZWJQcm9jZXNzLiAgTGF1bmNoaW5nIGl0IGVhcmxp
ZXIgY2FuIHNhdmUgdGltZSAKKyAgICAgICAgd2hlbiBsb2FkaW5nIHRoZSBmaXJzdCBwYWdlLgor
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHA6CisgICAgICAgIChXS0Nv
bnRleHRMYXVuY2hJbmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dL
Q29udGV4dC5oOgorCiAyMDExLTA2LTEwICBSeXVhbiBDaG9pICA8cnl1YW4uY2hvaUBzYW1zdW5n
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4K
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCShy
ZXZpc2lvbiA4ODM5MCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRl
eHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05OSw2ICs5OSwxMSBAQCB2b2lkIFdLQ29udGV4dFBv
c3RNZXNzYWdlVG9JbmplY3RlZEJ1bmRsCiAgICAgdG9JbXBsKGNvbnRleHRSZWYpLT5wb3N0TWVz
c2FnZVRvSW5qZWN0ZWRCdW5kbGUodG9JbXBsKG1lc3NhZ2VOYW1lUmVmKS0+c3RyaW5nKCksIHRv
SW1wbChtZXNzYWdlQm9keVJlZikpOwogfQogCit2b2lkIFdLQ29udGV4dExhdW5jaEluamVjdGVk
QnVuZGxlKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQoreworICAgIHRvSW1wbChjb250ZXh0UmVm
KS0+ZW5zdXJlV2ViUHJvY2VzcygpOworfQorCiB2b2lkIFdLQ29udGV4dEdldEdsb2JhbFN0YXRp
c3RpY3MoV0tDb250ZXh0U3RhdGlzdGljcyogc3RhdGlzdGljcykKIHsKICAgICBjb25zdCBXZWJD
b250ZXh0OjpTdGF0aXN0aWNzJiB3ZWJDb250ZXh0U3RhdGlzdGljcyA9IFdlYkNvbnRleHQ6OnN0
YXRpc3RpY3MoKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRl
eHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250
ZXh0LmgJKHJldmlzaW9uIDg4MzkwKQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTMsNiArMTEzLDcgQEAgV0tfRVhQT1JU
IFdLRG93bmxvYWRSZWYgV0tDb250ZXh0RG93bmxvYQogCiBXS19FWFBPUlQgdm9pZCBXS0NvbnRl
eHRTZXRJbml0aWFsaXphdGlvblVzZXJEYXRhRm9ySW5qZWN0ZWRCdW5kbGUoV0tDb250ZXh0UmVm
IGNvbnRleHQsIFdLVHlwZVJlZiB1c2VyRGF0YSk7CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRQ
b3N0TWVzc2FnZVRvSW5qZWN0ZWRCdW5kbGUoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdLU3RyaW5n
UmVmIG1lc3NhZ2VOYW1lLCBXS1R5cGVSZWYgbWVzc2FnZUJvZHkpOworV0tfRVhQT1JUIHZvaWQg
V0tDb250ZXh0TGF1bmNoSW5qZWN0ZWRCdW5kbGUoV0tDb250ZXh0UmVmIGNvbnRleHQpOwogCiBX
S19FWFBPUlQgdm9pZCBXS0NvbnRleHRBZGRWaXNpdGVkTGluayhXS0NvbnRleHRSZWYgY29udGV4
dCwgV0tTdHJpbmdSZWYgdmlzaXRlZFVSTCk7CiAK
</data>
<flag name="review"
          id="90577"
          type_id="1"
          status="-"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96836</attachid>
            <date>2011-06-10 19:17:10 -0700</date>
            <delta_ts>2011-06-10 19:19:02 -0700</delta_ts>
            <desc>patch</desc>
            <filename>WarmWebProcess.txt</filename>
            <type>text/plain</type>
            <size>2913</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDg4NTg5KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDYtMTAgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTYyNDgwCisgICAgICAgIHBhcnQgb2YgPHJkYXI6Ly9wcm9ibGVtLzg2NzUxNzc+CisgICAg
ICAgIEFkZCBBUEkgdG8gbGF1bmNoIHRoZSBXZWJQcm9jZXNzLiAgTGF1bmNoaW5nIGl0IGVhcmxp
ZXIgY2FuIHNhdmUgdGltZSAKKyAgICAgICAgd2hlbiBsb2FkaW5nIHRoZSBmaXJzdCBwYWdlLgor
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHA6CisgICAgICAgIChXS0Nv
bnRleHRXYXJtSW5pdGlhbFByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0Nv
bnRleHRQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJDb250ZXh0Ojp3YXJtSW5pdGlhbFByb2Nlc3MpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJDb250ZXh0Lmg6CisKIDIwMTEtMDYtMTAgIEFuZGVycyBDYXJsc3NvbiAg
PGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJ
bmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcAkocmV2aXNpb24gODgz
OTApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI2MCw2ICsyNjAsMTEgQEAgdm9pZCBXZWJDb250ZXh0OjplbnN1cmVXZWJQcm9j
ZXNzKCkKICAgICBtX3BlbmRpbmdNZXNzYWdlc1RvUG9zdFRvSW5qZWN0ZWRCdW5kbGUuY2xlYXIo
KTsKIH0KIAordm9pZCBXZWJDb250ZXh0Ojp3YXJtSW5pdGlhbFByb2Nlc3MoKSAgCit7CisgICAg
ZW5zdXJlV2ViUHJvY2VzcygpOworfQorCiB2b2lkIFdlYkNvbnRleHQ6OmVuYWJsZVByb2Nlc3NU
ZXJtaW5hdGlvbigpCiB7CiAgICAgbV9wcm9jZXNzVGVybWluYXRpb25FbmFibGVkID0gdHJ1ZTsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaAkocmV2aXNpb24gODgzOTAp
CisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0xNjUsNiArMTY1LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0TG9jYWxTdG9yYWdlRGly
ZWN0b3J5KGNvbnN0IFN0cmluZyYgZGlyKSB7IG1fb3ZlcnJpZGVMb2NhbFN0b3JhZ2VEaXJlY3Rv
cnkgPSBkaXI7IH0KIAogICAgIHZvaWQgZW5zdXJlV2ViUHJvY2VzcygpOworICAgIHZvaWQgd2Fy
bUluaXRpYWxQcm9jZXNzKCk7CiAKICAgICBib29sIHNob3VsZFRlcm1pbmF0ZShXZWJQcm9jZXNz
UHJveHkqKTsKIApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29u
dGV4dC5jcHAJKHJldmlzaW9uIDg4MzkwKQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLQ29udGV4dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzMiwzICsyMzIsOSBAQCB2b2lk
IF9XS0NvbnRleHRTZXRIVFRQUGlwZWxpbmluZ0VuYWJsZWQoCiB7CiAgICAgdG9JbXBsKGNvbnRl
eHRSZWYpLT5zZXRIVFRQUGlwZWxpbmluZ0VuYWJsZWQoZW5hYmxlZCk7CiB9CisKK3ZvaWQgV0tD
b250ZXh0V2FybUluaXRpYWxQcm9jZXNzKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQoreworICAg
IHRvSW1wbChjb250ZXh0UmVmKS0+d2FybUluaXRpYWxQcm9jZXNzKCk7Cit9CisKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaAko
cmV2aXNpb24gODgzOTApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250
ZXh0UHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC02Nyw2ICs2Nyw4IEBAIFdLX0VYUE9SVCB2
b2lkIFdLQ29udGV4dERpc2FibGVQcm9jZXNzVGUKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dEVu
YWJsZVByb2Nlc3NUZXJtaW5hdGlvbihXS0NvbnRleHRSZWYgY29udGV4dCk7CiAKIFdLX0VYUE9S
VCB2b2lkIF9XS0NvbnRleHRTZXRIVFRQUGlwZWxpbmluZ0VuYWJsZWQoV0tDb250ZXh0UmVmIGNv
bnRleHQsIGJvb2wgZW5hYmxlZCk7CisgICAgCitXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRXYXJt
SW5pdGlhbFByb2Nlc3MoV0tDb250ZXh0UmVmIGNvbnRleHQpOwogCiAjaWZkZWYgX19jcGx1c3Bs
dXMKIH0K
</data>
<flag name="review"
          id="90626"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>