<?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>133762</bug_id>
          
          <creation_ts>2014-06-11 13:54:37 -0700</creation_ts>
          <short_desc>[Win] Avoid deadlock with AVFoundation</short_desc>
          <delta_ts>2014-06-11 14:45:34 -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>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1014892</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-11 13:54:37 -0700</bug_when>
    <thetext>If WebKit is allowed to loop various kinds of media content for long periods of time, we sometimes run into a deadlock between AVFoundationCF and the AVFWrapper mutex used to protect individual AVF playback instances.

This deadlock happens because in some cases a notification will trigger on the main thread, which will immediately begin executing handler content without releasing the AVFWrapper container mutex used to prevent deleting AVFWrapper instances while they are still being used.

For Windows, we should tell WebKit to always invoke these handlers asynchronously so that we do not encounter this deadlock.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1014903</commentid>
    <comment_count>1</comment_count>
      <attachid>232901</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-11 14:03:20 -0700</bug_when>
    <thetext>Created attachment 232901
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1014905</commentid>
    <comment_count>2</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-11 14:04:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/17128248&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1014924</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-11 14:41:28 -0700</bug_when>
    <thetext>Note: The EWS error is due to a problem on the build machine, not this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1014929</commentid>
    <comment_count>4</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-11 14:45:34 -0700</bug_when>
    <thetext>Committed r169842: &lt;http://trac.webkit.org/changeset/169842&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232901</attachid>
            <date>2014-06-11 14:03:20 -0700</date>
            <delta_ts>2014-06-11 14:08:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133762-20140611140301.patch</filename>
            <type>text/plain</type>
            <size>1780</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2OTgyOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE0LTA2LTExICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEF2b2lkIGRlYWRs
b2NrIHdpdGggQVZGb3VuZGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMzM3NjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBbHdheXMgaW52b2tlIG91ciBub3RpZmljYXRpb25zIGFzeW5jaHJvbm91
c2x5IHNvIHRoYXQgd2UgZG8gbm90CisgICAgICAgIGV4ZWN1dGUgbG9uZy1ydW5uaW5nIGNvZGUg
d2hpbGUgaG9sZGluZyB0aGUgQVZGV3JhcHBlciBtYXAgbXV0ZXgKKyAgICAgICAgbG9jay4gQVZG
b3VuZGF0aW9uQ0YgY2FsbGJhY2tzIGNhbiBkZWFkbG9jayBpZiB3ZSBjYWxsIGludG8gQVZGCisg
ICAgICAgIHdoaWxlIGhvbGRpbmcgdGhpcyBsb2NrLgorCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6c2NoZWR1
bGVNYWluVGhyZWFkTm90aWZpY2F0aW9uKToKKwogMjAxNC0wNi0xMSAgQW5kcmVhcyBLbGluZyAg
PGFrbGluZ0BhcHBsZS5jb20+CiAKICAgICAgICAgRG9uJ3QgZm9yY2UgQ2hhcmFjdGVyRGF0YSB0
byBvdmVycmlkZSBnZXRPd25Qcm9wZXJ0eVNsb3QuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAkocmV2aXNpb24gMTY5
ODI5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc5Miw3
ICs3OTIsMTEgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OnNjaAogICAg
IC8vIHNvIGFsd2F5cyBnbyB0aHJvdWdoIHRoZSBxdWV1ZSBiZWNhdXNlIG5vdGlmaWNhdGlvbnMg
aGFwcGVuIG9uIGRpZmZlcmVudCB0aHJlYWRzLgogICAgIG1fcXVldWVkTm90aWZpY2F0aW9ucy5h
cHBlbmQobm90aWZpY2F0aW9uKTsKIAorI2lmIE9TKFdJTkRPV1MpCisgICAgYm9vbCBkZWxheURp
c3BhdGNoID0gdHJ1ZTsKKyNlbHNlCiAgICAgYm9vbCBkZWxheURpc3BhdGNoID0gbV9kZWxheUNh
bGxiYWNrcyB8fCAhaXNNYWluVGhyZWFkKCk7CisjZW5kaWYKICAgICBpZiAoZGVsYXlEaXNwYXRj
aCAmJiAhbV9tYWluVGhyZWFkQ2FsbFBlbmRpbmcpIHsKICAgICAgICAgbV9tYWluVGhyZWFkQ2Fs
bFBlbmRpbmcgPSB0cnVlOwogICAgICAgICBjYWxsT25NYWluVGhyZWFkKG1haW5UaHJlYWRDYWxs
YmFjaywgdGhpcyk7Cg==
</data>
<flag name="review"
          id="257397"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
      

    </bug>

</bugzilla>