<?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>29959</bug_id>
          
          <creation_ts>2009-10-01 06:08:19 -0700</creation_ts>
          <short_desc>[GTK] QoS support in the video sink</short_desc>
          <delta_ts>2009-10-09 12:37:52 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Philippe Normand">pnormand</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>slomo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>151520</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2009-10-01 06:08:19 -0700</bug_when>
    <thetext>As slomo suggested, VideoSinkGStreamer.cpp should really implement QoS. If the idle
callback is called too late it should simply drop the frame. (&quot;too late&quot;
can be calculated from buffer timestamp, the sinks clock and the buffer
duration or framerate).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151524</commentid>
    <comment_count>1</comment_count>
    <who name="Sebastian Dröge (slomo)">slomo</who>
    <bug_when>2009-10-01 06:17:36 -0700</bug_when>
    <thetext>Too late is (IIRC)

element&apos;s base time + buffer time + buffer duration &gt;= element&apos;s clock time</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152259</commentid>
    <comment_count>2</comment_count>
      <attachid>40621</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2009-10-05 04:25:55 -0700</bug_when>
    <thetext>Created attachment 40621
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152261</commentid>
    <comment_count>3</comment_count>
    <who name="Sebastian Dröge (slomo)">slomo</who>
    <bug_when>2009-10-05 04:28:59 -0700</bug_when>
    <thetext>Patch looks good to me but as said on IRC it&apos;s only a start, on top of this QoS as I&apos;ve explained on IRC.

This for now, will make playback go smoother and make sure that audio/video are displayed in sync.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152346</commentid>
    <comment_count>4</comment_count>
      <attachid>40640</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2009-10-05 10:39:28 -0700</bug_when>
    <thetext>Created attachment 40640
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153561</commentid>
    <comment_count>5</comment_count>
      <attachid>40640</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-10-08 16:27:52 -0700</bug_when>
    <thetext>Comment on attachment 40640
updated patch

Awesome stuff, and I&apos;m happy to see the real fix for the race condition happening! What do you think of moving this sink to WebKit/gtk/webkit/ like we did with soup-dialog, by the way? The synchronization and object life time handling look OK to me, I have just a couple nitpicks:

&gt; +    // use HIGH_IDLE+20 priority, like Gtk+ for redrawing operations
&gt; +    priv-&gt;timeout_id = g_timeout_add_full(G_PRIORITY_HIGH_IDLE + 20, 0,
&gt; +                                          webkit_video_sink_timeout_func,
&gt; +                                          gst_object_ref(sink),
&gt; +                                          (GDestroyNotify) gst_object_unref);

Additional space on the cast, and I suggest a normal sentence in the comment, with capital U and period =).

&gt;  
&gt;  static void
&gt; -webkit_video_sink_finalize(GObject* object)
&gt; +_unlock_buffer_mutex(WebKitVideoSinkPrivate* priv)
&gt; +{
&gt; +
&gt; +    g_mutex_lock(priv-&gt;buffer_mutex);
&gt; +

There seems to be an unnecessary line at the start of this function. Also, I don&apos;t think we use this _name pattern anywhere else, so I&apos;d suggest just dropping the underscore here. You are already declaring it static, which should be enough.

Thanks for your work on this!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153638</commentid>
    <comment_count>6</comment_count>
      <attachid>40939</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2009-10-09 02:28:06 -0700</bug_when>
    <thetext>Created attachment 40939
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153640</commentid>
    <comment_count>7</comment_count>
    <who name="Sebastian Dröge (slomo)">slomo</who>
    <bug_when>2009-10-09 02:41:00 -0700</bug_when>
    <thetext>In the timeout callback, no need to get the timeout id. But set the timeout id to 0 in the callback after taking the mutex!

When unblocking the buffer waiting, you also want to remove the timeout if the id is != 0.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153641</commentid>
    <comment_count>8</comment_count>
    <who name="Sebastian Dröge (slomo)">slomo</who>
    <bug_when>2009-10-09 02:49:21 -0700</bug_when>
    <thetext>Oh, and you want to make the video sink a subclass of GstVideoSink. This will actually set up the QoS/lateness logic in GstBaseSink, suitable for video:

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstvideosink.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153643</commentid>
    <comment_count>9</comment_count>
      <attachid>40940</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2009-10-09 03:43:39 -0700</bug_when>
    <thetext>Created attachment 40940
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153731</commentid>
    <comment_count>10</comment_count>
      <attachid>40940</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-10-09 12:15:08 -0700</bug_when>
    <thetext>Comment on attachment 40940
updated patch

Thanks. And thanks to slomo for the meat of the review =).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153735</commentid>
    <comment_count>11</comment_count>
      <attachid>40940</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-09 12:37:48 -0700</bug_when>
    <thetext>Comment on attachment 40940
updated patch

Clearing flags on attachment: 40940

Committed r49401: &lt;http://trac.webkit.org/changeset/49401&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>153736</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-09 12:37:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40621</attachid>
            <date>2009-10-05 04:25:55 -0700</date>
            <delta_ts>2009-10-05 10:39:28 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-sink-replace-the-idle-with-a-timeout.patch</filename>
            <type>text/plain</type>
            <size>6873</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSBmYzEwZGI0Nzk1YjQ1YTU3NWJlZjUwNGNlNWY1Yjg0NDA5Yjk5MTRkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBGcmksIDIgT2N0IDIwMDkgMTE6MDk6MTIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBz
aW5rOiByZXBsYWNlIHRoZSBpZGxlIHdpdGggYSB0aW1lb3V0CgotLS0KIFdlYkNvcmUvQ2hhbmdl
TG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxOSArKysrKwogLi4uL3Bs
YXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwICAgfCAgIDc0ICsrKysr
KysrKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDcwIGluc2VydGlvbnMoKyksIDIzIGRl
bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggNDZhNDM5Yi4uODVhMTExYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAwOS0xMC0wNSAg
UGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTI5OTU5CisgICAgICAgIFtHVEtdIFFvUyBzdXBwb3J0IGluIHRoZSB2
aWRlbyBzaW5rCisKKyAgICAgICAgUmVwbGFjZSB0aGUgaWRsZSB3aXRoIGEgdGltZW91dCBmdW5j
dGlvbiBpbiB0aGUgc2luay4gQWxsb3dzCisgICAgICAgIHNtb290aGVyIHZpZGVvIHBsYXliYWNr
LiBUaGlzIHBhdGNoIGFsc28gYWRkcyBiYXNpYyBRb1Mgc3VwcG9ydAorICAgICAgICBidXQgd2Ug
d2lsbCBpbXByb3ZlIHRoaW5ncyBvbiB0aGF0IGZyb250IHByb2dyZXNzaXZlbHkuCisKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAgICAg
ICAgKHdlYmtpdF92aWRlb19zaW5rX2luaXQpOgorICAgICAgICAod2Via2l0X3ZpZGVvX3Npbmtf
dGltZW91dF9mdW5jKToKKyAgICAgICAgKGRlc3Ryb3lfdGltZW91dF9kYXRhKToKKyAgICAgICAg
KHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcik6CisgICAgICAgICh3ZWJraXRfdmlkZW9fc2lua19k
aXNwb3NlKToKKyAgICAgICAgKHdlYmtpdF92aWRlb19zaW5rX3N0b3ApOgorCiAyMDA5LTEwLTA0
ICBCcmlhbiBXZWluc3RlaW4gIDxid2VpbnN0ZWluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBUaW1vdGh5IEhhdGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcAppbmRleCBiYjI2OWNkLi45MmJjZmJlIDEw
MDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFt
ZXIuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL1ZpZGVvU2lua0dTdHJl
YW1lci5jcHAKQEAgLTY1LDcgKzY1LDYgQEAgc3RhdGljIGd1aW50IHdlYmtpdF92aWRlb19zaW5r
X3NpZ25hbHNbTEFTVF9TSUdOQUxdID0geyAwLCB9OwogCiBzdHJ1Y3QgX1dlYktpdFZpZGVvU2lu
a1ByaXZhdGUgewogICAgIGNhaXJvX3N1cmZhY2VfdCogc3VyZmFjZTsKLSAgICBHQXN5bmNRdWV1
ZSogYXN5bmNfcXVldWU7CiAgICAgZ2Jvb2xlYW4gcmdiX29yZGVyaW5nOwogICAgIGludCB3aWR0
aDsKICAgICBpbnQgaGVpZ2h0OwpAQCAtNzMsNiArNzIsMTQgQEAgc3RydWN0IF9XZWJLaXRWaWRl
b1NpbmtQcml2YXRlIHsKICAgICBpbnQgZnBzX2Q7CiAgICAgaW50IHBhcl9uOwogICAgIGludCBw
YXJfZDsKKyAgICBHQXN5bmNRdWV1ZSogdGltZW91dF9pZHNfYXN5bmNfcXVldWU7Cit9OworCit0
eXBlZGVmIHN0cnVjdCBfVGltZW91dERhdGEgVGltZW91dERhdGE7CisKK3N0cnVjdCBfVGltZW91
dERhdGEgeworICAgIFdlYktpdFZpZGVvU2luayogc2luazsKKyAgICBHc3RCdWZmZXIqIGJ1ZmZl
cjsKIH07CiAKICNkZWZpbmUgX2RvX2luaXQoYmxhKSBcCkBAIC0xMDIsMjUgKzEwOSwyNiBAQCB3
ZWJraXRfdmlkZW9fc2lua19pbml0KFdlYktpdFZpZGVvU2luayogc2luaywgV2ViS2l0VmlkZW9T
aW5rQ2xhc3MqIGtsYXNzKQogICAgIFdlYktpdFZpZGVvU2lua1ByaXZhdGUqIHByaXY7CiAKICAg
ICBzaW5rLT5wcml2ID0gcHJpdiA9IEdfVFlQRV9JTlNUQU5DRV9HRVRfUFJJVkFURShzaW5rLCBX
RUJLSVRfVFlQRV9WSURFT19TSU5LLCBXZWJLaXRWaWRlb1NpbmtQcml2YXRlKTsKLSAgICBwcml2
LT5hc3luY19xdWV1ZSA9IGdfYXN5bmNfcXVldWVfbmV3KCk7CisgICAgcHJpdi0+dGltZW91dF9p
ZHNfYXN5bmNfcXVldWUgPSBnX2FzeW5jX3F1ZXVlX25ldygpOworICAgIGdfb2JqZWN0X3NldChz
aW5rLCAicmVuZGVyLWRlbGF5IiwgMTAwICogR1NUX01TRUNPTkQsIDApOwogfQogCiBzdGF0aWMg
Z2Jvb2xlYW4KLXdlYmtpdF92aWRlb19zaW5rX2lkbGVfZnVuYyhncG9pbnRlciBkYXRhKQord2Vi
a2l0X3ZpZGVvX3NpbmtfdGltZW91dF9mdW5jKGdwb2ludGVyIGRhdGEpCiB7Ci0gICAgV2ViS2l0
VmlkZW9TaW5rKiBzaW5rID0gcmVpbnRlcnByZXRfY2FzdDxXZWJLaXRWaWRlb1NpbmsqPihkYXRh
KTsKKyAgICBUaW1lb3V0RGF0YSogdGltZW91dF9kYXRhID0gcmVpbnRlcnByZXRfY2FzdDxUaW1l
b3V0RGF0YSo+KGRhdGEpOworICAgIFdlYktpdFZpZGVvU2luayogc2luayA9IHRpbWVvdXRfZGF0
YS0+c2luazsKICAgICBXZWJLaXRWaWRlb1NpbmtQcml2YXRlKiBwcml2ID0gc2luay0+cHJpdjsK
LSAgICBHc3RCdWZmZXIqIGJ1ZmZlcjsKKyAgICBHc3RCdWZmZXIqIGJ1ZmZlciA9IHRpbWVvdXRf
ZGF0YS0+YnVmZmVyOworICAgIGd1aW50IHRpbWVvdXRfaWQ7CiAgICAgR3N0Q2FwcyogY2FwczsK
ICAgICBHc3RWaWRlb0Zvcm1hdCogZm9ybWF0OwogICAgIGdpbnQgcGFyX24sIHBhcl9kOwogICAg
IGdmbG9hdCBwYXI7CiAgICAgZ2ludCBid2lkdGgsIGJoZWlnaHQ7CiAKLSAgICBpZiAoIXByaXYt
PmFzeW5jX3F1ZXVlKQotICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgZ19yZXR1cm5fdmFsX2lm
X2ZhaWwocHJpdi0+dGltZW91dF9pZHNfYXN5bmNfcXVldWUsIEZBTFNFKTsKIAotICAgIGJ1ZmZl
ciA9IChHc3RCdWZmZXIqKWdfYXN5bmNfcXVldWVfdHJ5X3BvcChwcml2LT5hc3luY19xdWV1ZSk7
CiAgICAgaWYgKCFidWZmZXIgfHwgR19VTkxJS0VMWSghR1NUX0lTX0JVRkZFUihidWZmZXIpKSkK
ICAgICAgICAgcmV0dXJuIEZBTFNFOwogCkBAIC0xMzYsNyArMTQ0LDYgQEAgd2Via2l0X3ZpZGVv
X3NpbmtfaWRsZV9mdW5jKGdwb2ludGVyIGRhdGEpCiAKICAgICBwYXIgPSAoZ2Zsb2F0KSBwYXJf
biAvIChnZmxvYXQpIHBhcl9kOwogCi0gICAgLy8gVE9ETzogY29uc2lkZXIgcHJpdi0+cmdiX29y
ZGVyaW5nPwogICAgIGNhaXJvX3N1cmZhY2VfdCogc3JjID0gY2Fpcm9faW1hZ2Vfc3VyZmFjZV9j
cmVhdGVfZm9yX2RhdGEoR1NUX0JVRkZFUl9EQVRBKGJ1ZmZlciksCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDQUlST19GT1JN
QVRfUkdCMjQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBid2lkdGgsIGJoZWlnaHQsCkBAIC0xNTEsMjMgKzE1OCw0NSBAQCB3
ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMoZ3BvaW50ZXIgZGF0YSkKICAgICBjYWlyb19yZWN0
YW5nbGUoY3IsIDAsIDAsIHByaXYtPndpZHRoLCBwcml2LT5oZWlnaHQpOwogICAgIGNhaXJvX2Zp
bGwoY3IpOwogICAgIGNhaXJvX2Rlc3Ryb3koY3IpOwotICAgIGdzdF9idWZmZXJfdW5yZWYoYnVm
ZmVyKTsKLSAgICBnX2FzeW5jX3F1ZXVlX3VucmVmKHByaXYtPmFzeW5jX3F1ZXVlKTsKKworICAg
IHRpbWVvdXRfaWQgPSBHUE9JTlRFUl9UT19VSU5UKGdfYXN5bmNfcXVldWVfdHJ5X3BvcChwcml2
LT50aW1lb3V0X2lkc19hc3luY19xdWV1ZSkpOworICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKHRp
bWVvdXRfaWQgPiAwLCBGQUxTRSk7CisgICAgZ19zb3VyY2VfcmVtb3ZlKHRpbWVvdXRfaWQpOwog
CiAgICAgZ19zaWduYWxfZW1pdChzaW5rLCB3ZWJraXRfdmlkZW9fc2lua19zaWduYWxzW1JFUEFJ
TlRfUkVRVUVTVEVEXSwgMCk7CiAKICAgICByZXR1cm4gRkFMU0U7CiB9CiAKK3N0YXRpYyB2b2lk
CitkZXN0cm95X3RpbWVvdXRfZGF0YShncG9pbnRlciBkYXRhKQoreworICAgIFRpbWVvdXREYXRh
KiB0aW1lb3V0X2RhdGEgPSByZWludGVycHJldF9jYXN0PFRpbWVvdXREYXRhKj4oZGF0YSk7Cisg
ICAgV2ViS2l0VmlkZW9TaW5rKiBzaW5rID0gdGltZW91dF9kYXRhLT5zaW5rOworICAgIFdlYktp
dFZpZGVvU2lua1ByaXZhdGUqIHByaXYgPSBzaW5rLT5wcml2OworCisgICAgZ3N0X2J1ZmZlcl91
bnJlZih0aW1lb3V0X2RhdGEtPmJ1ZmZlcik7CisgICAgZ19zbGljZV9mcmVlKFRpbWVvdXREYXRh
LCB0aW1lb3V0X2RhdGEpOworICAgIGdfYXN5bmNfcXVldWVfdW5yZWYocHJpdi0+dGltZW91dF9p
ZHNfYXN5bmNfcXVldWUpOworfQorCiBzdGF0aWMgR3N0Rmxvd1JldHVybgogd2Via2l0X3ZpZGVv
X3NpbmtfcmVuZGVyKEdzdEJhc2VTaW5rKiBic2luaywgR3N0QnVmZmVyKiBidWZmZXIpCiB7CiAg
ICAgV2ViS2l0VmlkZW9TaW5rKiBzaW5rID0gV0VCS0lUX1ZJREVPX1NJTksoYnNpbmspOwogICAg
IFdlYktpdFZpZGVvU2lua1ByaXZhdGUqIHByaXYgPSBzaW5rLT5wcml2OworICAgIFRpbWVvdXRE
YXRhKiBkYXRhID0gZ19zbGljZV9uZXcoVGltZW91dERhdGEpOworCisgICAgZGF0YS0+c2luayA9
IHNpbms7CisgICAgZGF0YS0+YnVmZmVyID0gZ3N0X2J1ZmZlcl9yZWYoYnVmZmVyKTsKKworICAg
IC8vIHVzZSBISUdIX0lETEUrMjAgcHJpb3JpdHksIGxpa2UgR3RrKyBmb3IgcmVkcmF3aW5nIG9w
ZXJhdGlvbnMKKyAgICBndWludCB0aW1lb3V0X2lkID0gZ190aW1lb3V0X2FkZF9mdWxsKEdfUFJJ
T1JJVFlfSElHSF9JRExFICsgMjAsIDEwMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHdlYmtpdF92aWRlb19zaW5rX3RpbWVvdXRfZnVuYywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEsIGRlc3Ryb3lfdGltZW91dF9kYXRh
KTsKKyAgICBnX2FzeW5jX3F1ZXVlX3JlZihwcml2LT50aW1lb3V0X2lkc19hc3luY19xdWV1ZSk7
CisgICAgZ19hc3luY19xdWV1ZV9wdXNoKHByaXYtPnRpbWVvdXRfaWRzX2FzeW5jX3F1ZXVlLCBH
VUlOVF9UT19QT0lOVEVSKHRpbWVvdXRfaWQpKTsKIAotICAgIGdfYXN5bmNfcXVldWVfcmVmKHBy
aXYtPmFzeW5jX3F1ZXVlKTsKLSAgICBnX2FzeW5jX3F1ZXVlX3B1c2gocHJpdi0+YXN5bmNfcXVl
dWUsIGdzdF9idWZmZXJfcmVmKGJ1ZmZlcikpOwotICAgIGdfaWRsZV9hZGRfZnVsbChHX1BSSU9S
SVRZX0hJR0hfSURMRSwgd2Via2l0X3ZpZGVvX3NpbmtfaWRsZV9mdW5jLCBzaW5rLCAwKTsKIAog
ICAgIHJldHVybiBHU1RfRkxPV19PSzsKIH0KQEAgLTIyNSw5ICsyNTQsOSBAQCB3ZWJraXRfdmlk
ZW9fc2lua19kaXNwb3NlKEdPYmplY3QqIG9iamVjdCkKICAgICAgICAgcHJpdi0+c3VyZmFjZSA9
IDA7CiAgICAgfQogCi0gICAgaWYgKHByaXYtPmFzeW5jX3F1ZXVlKSB7Ci0gICAgICAgIGdfYXN5
bmNfcXVldWVfdW5yZWYocHJpdi0+YXN5bmNfcXVldWUpOwotICAgICAgICBwcml2LT5hc3luY19x
dWV1ZSA9IDA7CisgICAgaWYgKHByaXYtPnRpbWVvdXRfaWRzX2FzeW5jX3F1ZXVlKSB7CisgICAg
ICAgIGdfYXN5bmNfcXVldWVfdW5yZWYocHJpdi0+dGltZW91dF9pZHNfYXN5bmNfcXVldWUpOwor
ICAgICAgICBwcml2LT50aW1lb3V0X2lkc19hc3luY19xdWV1ZSA9IDA7CiAgICAgfQogCiAgICAg
R19PQkpFQ1RfQ0xBU1MocGFyZW50X2NsYXNzKS0+ZGlzcG9zZShvYmplY3QpOwpAQCAtMjc3LDE1
ICszMDYsMTQgQEAgd2Via2l0X3ZpZGVvX3Npbmtfc3RvcChHc3RCYXNlU2luayogYmFzZV9zaW5r
KQogewogICAgIFdlYktpdFZpZGVvU2lua1ByaXZhdGUqIHByaXYgPSBXRUJLSVRfVklERU9fU0lO
SyhiYXNlX3NpbmspLT5wcml2OwogCi0gICAgZ19hc3luY19xdWV1ZV9sb2NrKHByaXYtPmFzeW5j
X3F1ZXVlKTsKKyAgICBnX2FzeW5jX3F1ZXVlX2xvY2socHJpdi0+dGltZW91dF9pZHNfYXN5bmNf
cXVldWUpOwogCiAgICAgLyogUmVtb3ZlIGFsbCByZW1haW5pbmcgb2JqZWN0cyBmcm9tIHRoZSBx
dWV1ZSAqLwotICAgIHdoaWxlIChHc3RCdWZmZXIqIGJ1ZmZlciA9IChHc3RCdWZmZXIqKWdfYXN5
bmNfcXVldWVfdHJ5X3BvcF91bmxvY2tlZChwcml2LT5hc3luY19xdWV1ZSkpCi0gICAgICAgIGdz
dF9idWZmZXJfdW5yZWYoYnVmZmVyKTsKLQotICAgIGdfYXN5bmNfcXVldWVfdW5sb2NrKHByaXYt
PmFzeW5jX3F1ZXVlKTsKKyAgICB3aGlsZSAoZ3VpbnQgdGltZW91dF9pZCA9IEdQT0lOVEVSX1RP
X1VJTlQoXAorICAgICAgICAgICAgICAgZ19hc3luY19xdWV1ZV90cnlfcG9wX3VubG9ja2VkKHBy
aXYtPnRpbWVvdXRfaWRzX2FzeW5jX3F1ZXVlKSkpCisgICAgICAgIGdfc291cmNlX3JlbW92ZSh0
aW1lb3V0X2lkKTsKIAotICAgIGdfaWRsZV9yZW1vdmVfYnlfZGF0YShiYXNlX3NpbmspOworICAg
IGdfYXN5bmNfcXVldWVfdW5sb2NrKHByaXYtPnRpbWVvdXRfaWRzX2FzeW5jX3F1ZXVlKTsKIAog
ICAgIHJldHVybiBUUlVFOwogfQotLSAKMS42LjAuNAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40640</attachid>
            <date>2009-10-05 10:39:28 -0700</date>
            <delta_ts>2009-10-09 02:28:06 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>0001-sink-replace-the-idle-with-a-timeout.patch</filename>
            <type>text/plain</type>
            <size>10219</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSBhYTMzNDA2NzJjMWZjNzEwNjcxYjg1YzNlZTBmNTQ3ZmVkY2ZlMGFjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBGcmksIDIgT2N0IDIwMDkgMTE6MDk6MTIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBz
aW5rOiByZXBsYWNlIHRoZSBpZGxlIHdpdGggYSB0aW1lb3V0CgotLS0KIFdlYkNvcmUvQ2hhbmdl
TG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyNiArKysrKysKIC4uLi9n
cmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcCAgIHwgICAyMCArLS0t
LQogLi4uL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwICAgfCAg
IDkxICsrKysrKysrKysrKystLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgOTAgaW5zZXJ0aW9ucygr
KSwgNDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCA4YjA3MTkzLi4wZWNkZWI1IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDA5
LTEwLTA1ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbR1RLXSBRb1Mgc3VwcG9y
dCBpbiB0aGUgdmlkZW8gc2luaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjk5NTkKKworICAgICAgICBSZW1vdmVkIHRoZSBhc3luYyBidWZmZXIgcXVl
dWUgZnJvbSB0aGUgc2luay4gU3luY2hyb25pemUgdGhlCisgICAgICAgIHJlbmRlciBtZXRob2Qg
b2YgdGhlIHNpbmsgdXNpbmcgYSBnX3RpbWVvdXRfYWRkKCkgY29tYmluZWQgd2l0aCBhCisgICAg
ICAgIGdjb25kIHRyaWdnZXJlZCB3aGVuIHRoZSBidWZmZXIgaGFzIGJlZW4gcmVuZGVyZWQuCisg
ICAgICAgIEFsc28gZml4ZWQgdGhlIHZpZGVvIHNpbmsgcmVmZXJlbmNlIGhhbmRsaW5nIGluIHRo
ZSBwbGF5ZXIsIG5vdworICAgICAgICB0aGF0IHRoZSBpZGxlIGlzIG5vdCB0aGVyZSBhbnltb3Jl
IHRvIG1lc3MgdXAgdGhpbmdzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBs
YXllclByaXZhdGU6On5NZWRpYVBsYXllclByaXZhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXJQcml2YXRlOjpjcmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKHdlYmtpdF92aWRl
b19zaW5rX2luaXQpOgorICAgICAgICAod2Via2l0X3ZpZGVvX3NpbmtfdGltZW91dF9mdW5jKToK
KyAgICAgICAgKHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcik6CisgICAgICAgICh3ZWJraXRfdmlk
ZW9fc2lua19kaXNwb3NlKToKKyAgICAgICAgKF91bmxvY2tfYnVmZmVyX211dGV4KToKKyAgICAg
ICAgKHdlYmtpdF92aWRlb19zaW5rX3VubG9jayk6CisgICAgICAgICh3ZWJraXRfdmlkZW9fc2lu
a19zdG9wKToKKyAgICAgICAgKHdlYmtpdF92aWRlb19zaW5rX2NsYXNzX2luaXQpOgorCiAyMDA5
LTEwLTA1ICBKYWt1YiBXaWVjem9yZWsgIDxmYXcyMTdAZ21haWwuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2d0ay9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAppbmRl
eCA2NWM2NGI0Li5hYjU0Mjg2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2d0ay9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTE1OCwx
MiArMTU4LDYgQEAgTWVkaWFQbGF5ZXJQcml2YXRlOjpNZWRpYVBsYXllclByaXZhdGUoTWVkaWFQ
bGF5ZXIqIHBsYXllcikKICAgICBtX3N1cmZhY2UgPSBjYWlyb19pbWFnZV9zdXJmYWNlX2NyZWF0
ZShDQUlST19GT1JNQVRfQVJHQjMyLCA2NDAsIDQ4MCk7CiB9CiAKLXN0YXRpYyBnYm9vbGVhbiBp
ZGxlVW5yZWYoZ3BvaW50ZXIgZGF0YSkKLXsKLSAgICBnX29iamVjdF91bnJlZihyZWludGVycHJl
dF9jYXN0PEdPYmplY3QqPihkYXRhKSk7Ci0gICAgcmV0dXJuIEZBTFNFOwotfQotCiBNZWRpYVBs
YXllclByaXZhdGU6On5NZWRpYVBsYXllclByaXZhdGUoKQogewogICAgIGlmIChtX3N1cmZhY2Up
CkBAIC0xNzQsMTUgKzE2OCw4IEBAIE1lZGlhUGxheWVyUHJpdmF0ZTo6fk1lZGlhUGxheWVyUHJp
dmF0ZSgpCiAgICAgICAgIGdzdF9vYmplY3RfdW5yZWYoR1NUX09CSkVDVChtX3BsYXlCaW4pKTsK
ICAgICB9CiAKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGZpbmQgYSBiZXR0ZXIgd2F5IHRvIGhh
bmRsZSB0aGUgbGlmZXRpbWUgb2YgdGhpcyBvYmplY3Q7IHRoaXMgaXMKLSAgICAvLyBuZWVkZWQg
YmVjYXVzZSB0aGUgb2JqZWN0IGlzIHNvbWV0aW1lcyBiZWluZyBkZXN0cm95ZWQgaW5iZXR3ZWVu
IGEgY2FsbCB0bwotICAgIC8vIHdlYmtpdF92aWRlb19zaW5rX3JlbmRlciwgYW5kIHRoZSBpZGxl
IGl0IHNjaGVkdWxlcy4gQWRkaW5nIGEgcmVmIGluCi0gICAgLy8gd2Via2l0X3ZpZGVvX3Npbmtf
cmVuZGVyIHRoYXQgd291bGQgYmUgYmFsYW5jZWQgYnkgdGhlIGlkbGUgaXMgbm90IGFuIG9wdGlv
biwKLSAgICAvLyBiZWNhdXNlIGluIHNvbWUgY2FzZXMgdGhlIGRlc3RydWN0aW9uIG9mIHRoZSBz
aW5rIG1heSBoYXBwZW4gaW4gdGltZSBmb3IgdGhlIGlkbGUKLSAgICAvLyB0byBiZSByZW1vdmVk
IGZyb20gdGhlIHF1ZXVlLCBzbyBpdCBtYXkgbm90IHJ1bi4gSXQgd291bGQgYWxzbyBjYXVzZSBs
b3RzIG9mIHJlZgotICAgIC8vIGNvdW50aW5nIGNodXJuIChyZW5kZXIvaWRsZSBhcmUgY2FsbGVk
IG1hbnkgdGltZXMpLiBUaGlzIGlzIGFuIHVnbHkgcmFjZS4KICAgICBpZiAobV92aWRlb1Npbmsp
IHsKLSAgICAgICAgZ19pZGxlX2FkZChpZGxlVW5yZWYsIG1fdmlkZW9TaW5rKTsKKyAgICAgICAg
Z19vYmplY3RfdW5yZWYobV92aWRlb1NpbmspOwogICAgICAgICBtX3ZpZGVvU2luayA9IDA7CiAg
ICAgfQogfQpAQCAtODE1LDEwICs4MDIsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZTo6Y3Jl
YXRlR1NUUGxheUJpbihTdHJpbmcgdXJsKQogCiAgICAgbV92aWRlb1NpbmsgPSB3ZWJraXRfdmlk
ZW9fc2lua19uZXcobV9zdXJmYWNlKTsKIAotICAgIC8vIFRoaXMgcmVmIGlzIHRvIHByb3RlY3Qg
dGhlIHNpbmsgZnJvbSBiZWluZyBkZXN0cm95ZWQgYmVmb3JlIHdlIHN0b3AgdGhlIGlkbGUgaXQK
LSAgICAvLyBjcmVhdGVzIGludGVybmFsbHkuIFNlZSB0aGUgY29tbWVudCBpbiB+TWVkaWFQbGF5
ZXJQcml2YXRlLgotICAgIGdfb2JqZWN0X3JlZihtX3ZpZGVvU2luayk7Ci0KKyAgICBnX29iamVj
dF9yZWZfc2luayhtX3ZpZGVvU2luayk7CiAgICAgZ19vYmplY3Rfc2V0KG1fcGxheUJpbiwgInZp
ZGVvLXNpbmsiLCBtX3ZpZGVvU2luaywgTlVMTCk7CiAKICAgICBnX3NpZ25hbF9jb25uZWN0KG1f
dmlkZW9TaW5rLCAicmVwYWludC1yZXF1ZXN0ZWQiLCBHX0NBTExCQUNLKG1lZGlhUGxheWVyUHJp
dmF0ZVJlcGFpbnRDYWxsYmFjayksIHRoaXMpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3RrL1ZpZGVvU2lua0dTdHJlYW1lci5jcHAKaW5kZXggYmIyNjljZC4uYzc2NThh
YiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvVmlkZW9TaW5rR1N0
cmVhbWVyLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtH
U3RyZWFtZXIuY3BwCkBAIC02NSw3ICs2NSw2IEBAIHN0YXRpYyBndWludCB3ZWJraXRfdmlkZW9f
c2lua19zaWduYWxzW0xBU1RfU0lHTkFMXSA9IHsgMCwgfTsKIAogc3RydWN0IF9XZWJLaXRWaWRl
b1NpbmtQcml2YXRlIHsKICAgICBjYWlyb19zdXJmYWNlX3QqIHN1cmZhY2U7Ci0gICAgR0FzeW5j
UXVldWUqIGFzeW5jX3F1ZXVlOwogICAgIGdib29sZWFuIHJnYl9vcmRlcmluZzsKICAgICBpbnQg
d2lkdGg7CiAgICAgaW50IGhlaWdodDsKQEAgLTczLDYgKzcyLDEwIEBAIHN0cnVjdCBfV2ViS2l0
VmlkZW9TaW5rUHJpdmF0ZSB7CiAgICAgaW50IGZwc19kOwogICAgIGludCBwYXJfbjsKICAgICBp
bnQgcGFyX2Q7CisgICAgR3N0QnVmZmVyKiBidWZmZXI7CisgICAgZ3VpbnQgdGltZW91dF9pZDsK
KyAgICBHTXV0ZXgqIGJ1ZmZlcl9tdXRleDsKKyAgICBHQ29uZCogZGF0YV9jb25kOwogfTsKIAog
I2RlZmluZSBfZG9faW5pdChibGEpIFwKQEAgLTEwMiwzMiArMTA1LDM5IEBAIHdlYmtpdF92aWRl
b19zaW5rX2luaXQoV2ViS2l0VmlkZW9TaW5rKiBzaW5rLCBXZWJLaXRWaWRlb1NpbmtDbGFzcyog
a2xhc3MpCiAgICAgV2ViS2l0VmlkZW9TaW5rUHJpdmF0ZSogcHJpdjsKIAogICAgIHNpbmstPnBy
aXYgPSBwcml2ID0gR19UWVBFX0lOU1RBTkNFX0dFVF9QUklWQVRFKHNpbmssIFdFQktJVF9UWVBF
X1ZJREVPX1NJTkssIFdlYktpdFZpZGVvU2lua1ByaXZhdGUpOwotICAgIHByaXYtPmFzeW5jX3F1
ZXVlID0gZ19hc3luY19xdWV1ZV9uZXcoKTsKKyAgICBwcml2LT5kYXRhX2NvbmQgPSBnX2NvbmRf
bmV3KCk7CisgICAgcHJpdi0+YnVmZmVyX211dGV4ID0gZ19tdXRleF9uZXcoKTsKIH0KIAogc3Rh
dGljIGdib29sZWFuCi13ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMoZ3BvaW50ZXIgZGF0YSkK
K3dlYmtpdF92aWRlb19zaW5rX3RpbWVvdXRfZnVuYyhncG9pbnRlciBkYXRhKQogewogICAgIFdl
YktpdFZpZGVvU2luayogc2luayA9IHJlaW50ZXJwcmV0X2Nhc3Q8V2ViS2l0VmlkZW9TaW5rKj4o
ZGF0YSk7CiAgICAgV2ViS2l0VmlkZW9TaW5rUHJpdmF0ZSogcHJpdiA9IHNpbmstPnByaXY7CiAg
ICAgR3N0QnVmZmVyKiBidWZmZXI7CiAgICAgR3N0Q2FwcyogY2FwczsKICAgICBHc3RWaWRlb0Zv
cm1hdCogZm9ybWF0OworICAgIGd1aW50IHRpbWVvdXRfaWQ7CiAgICAgZ2ludCBwYXJfbiwgcGFy
X2Q7CiAgICAgZ2Zsb2F0IHBhcjsKICAgICBnaW50IGJ3aWR0aCwgYmhlaWdodDsKIAotICAgIGlm
ICghcHJpdi0+YXN5bmNfcXVldWUpCi0gICAgICAgIHJldHVybiBGQUxTRTsKKyAgICBnX211dGV4
X2xvY2socHJpdi0+YnVmZmVyX211dGV4KTsKKyAgICBidWZmZXIgPSBwcml2LT5idWZmZXI7Cisg
ICAgdGltZW91dF9pZCA9IHByaXYtPnRpbWVvdXRfaWQ7CiAKLSAgICBidWZmZXIgPSAoR3N0QnVm
ZmVyKilnX2FzeW5jX3F1ZXVlX3RyeV9wb3AocHJpdi0+YXN5bmNfcXVldWUpOwotICAgIGlmICgh
YnVmZmVyIHx8IEdfVU5MSUtFTFkoIUdTVF9JU19CVUZGRVIoYnVmZmVyKSkpCisgICAgaWYgKCFi
dWZmZXIgfHwgR19VTkxJS0VMWSghR1NUX0lTX0JVRkZFUihidWZmZXIpKSkgeworICAgICAgICBn
X2NvbmRfc2lnbmFsKHByaXYtPmRhdGFfY29uZCk7CisgICAgICAgIGdfbXV0ZXhfdW5sb2NrKHBy
aXYtPmJ1ZmZlcl9tdXRleCk7CiAgICAgICAgIHJldHVybiBGQUxTRTsKKyAgICB9CiAKICAgICBj
YXBzID0gR1NUX0JVRkZFUl9DQVBTKGJ1ZmZlcik7CiAgICAgaWYgKCFnc3RfdmlkZW9fZm9ybWF0
X3BhcnNlX2NhcHMoY2FwcywgZm9ybWF0LCAmYndpZHRoLCAmYmhlaWdodCkpIHsKICAgICAgICAg
R1NUX0VSUk9SX09CSkVDVChzaW5rLCAiVW5rbm93biB2aWRlbyBmb3JtYXQgaW4gYnVmZmVyIGNh
cHMgJyVzJyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgZ3N0X2NhcHNfdG9fc3RyaW5nKGNh
cHMpKTsKKyAgICAgICAgZ19jb25kX3NpZ25hbChwcml2LT5kYXRhX2NvbmQpOworICAgICAgICBn
X211dGV4X3VubG9jayhwcml2LT5idWZmZXJfbXV0ZXgpOwogICAgICAgICByZXR1cm4gRkFMU0U7
CiAgICAgfQogCkBAIC0xMzYsNyArMTQ2LDYgQEAgd2Via2l0X3ZpZGVvX3NpbmtfaWRsZV9mdW5j
KGdwb2ludGVyIGRhdGEpCiAKICAgICBwYXIgPSAoZ2Zsb2F0KSBwYXJfbiAvIChnZmxvYXQpIHBh
cl9kOwogCi0gICAgLy8gVE9ETzogY29uc2lkZXIgcHJpdi0+cmdiX29yZGVyaW5nPwogICAgIGNh
aXJvX3N1cmZhY2VfdCogc3JjID0gY2Fpcm9faW1hZ2Vfc3VyZmFjZV9jcmVhdGVfZm9yX2RhdGEo
R1NUX0JVRkZFUl9EQVRBKGJ1ZmZlciksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDQUlST19GT1JNQVRfUkdCMjQsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBid2lkdGgsIGJoZWlnaHQsCkBAIC0xNTEsMTAgKzE2MCwxMyBAQCB3ZWJraXRfdmlkZW9fc2lu
a19pZGxlX2Z1bmMoZ3BvaW50ZXIgZGF0YSkKICAgICBjYWlyb19yZWN0YW5nbGUoY3IsIDAsIDAs
IHByaXYtPndpZHRoLCBwcml2LT5oZWlnaHQpOwogICAgIGNhaXJvX2ZpbGwoY3IpOwogICAgIGNh
aXJvX2Rlc3Ryb3koY3IpOworCiAgICAgZ3N0X2J1ZmZlcl91bnJlZihidWZmZXIpOwotICAgIGdf
YXN5bmNfcXVldWVfdW5yZWYocHJpdi0+YXN5bmNfcXVldWUpOworICAgIHByaXYtPmJ1ZmZlciA9
IDA7CiAKICAgICBnX3NpZ25hbF9lbWl0KHNpbmssIHdlYmtpdF92aWRlb19zaW5rX3NpZ25hbHNb
UkVQQUlOVF9SRVFVRVNURURdLCAwKTsKKyAgICBnX2NvbmRfc2lnbmFsKHByaXYtPmRhdGFfY29u
ZCk7CisgICAgZ19tdXRleF91bmxvY2socHJpdi0+YnVmZmVyX211dGV4KTsKIAogICAgIHJldHVy
biBGQUxTRTsKIH0KQEAgLTE2NSwxMCArMTc3LDE3IEBAIHdlYmtpdF92aWRlb19zaW5rX3JlbmRl
cihHc3RCYXNlU2luayogYnNpbmssIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgIFdlYktpdFZpZGVv
U2luayogc2luayA9IFdFQktJVF9WSURFT19TSU5LKGJzaW5rKTsKICAgICBXZWJLaXRWaWRlb1Np
bmtQcml2YXRlKiBwcml2ID0gc2luay0+cHJpdjsKIAotICAgIGdfYXN5bmNfcXVldWVfcmVmKHBy
aXYtPmFzeW5jX3F1ZXVlKTsKLSAgICBnX2FzeW5jX3F1ZXVlX3B1c2gocHJpdi0+YXN5bmNfcXVl
dWUsIGdzdF9idWZmZXJfcmVmKGJ1ZmZlcikpOwotICAgIGdfaWRsZV9hZGRfZnVsbChHX1BSSU9S
SVRZX0hJR0hfSURMRSwgd2Via2l0X3ZpZGVvX3NpbmtfaWRsZV9mdW5jLCBzaW5rLCAwKTsKKyAg
ICBnX211dGV4X2xvY2socHJpdi0+YnVmZmVyX211dGV4KTsKKyAgICBwcml2LT5idWZmZXIgPSBn
c3RfYnVmZmVyX3JlZihidWZmZXIpOworCisgICAgLy8gdXNlIEhJR0hfSURMRSsyMCBwcmlvcml0
eSwgbGlrZSBHdGsrIGZvciByZWRyYXdpbmcgb3BlcmF0aW9ucworICAgIHByaXYtPnRpbWVvdXRf
aWQgPSBnX3RpbWVvdXRfYWRkX2Z1bGwoR19QUklPUklUWV9ISUdIX0lETEUgKyAyMCwgMCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdlYmtpdF92aWRlb19zaW5r
X3RpbWVvdXRfZnVuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGdzdF9vYmplY3RfcmVmKHNpbmspLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKEdEZXN0cm95Tm90aWZ5KSBnc3Rfb2JqZWN0X3VucmVmKTsKIAorICAgIGdfY29u
ZF93YWl0KHByaXYtPmRhdGFfY29uZCwgcHJpdi0+YnVmZmVyX211dGV4KTsKKyAgICBnX211dGV4
X3VubG9jayhwcml2LT5idWZmZXJfbXV0ZXgpOwogICAgIHJldHVybiBHU1RfRkxPV19PSzsKIH0K
IApAQCAtMjI1LDE4ICsyNDQsNDIgQEAgd2Via2l0X3ZpZGVvX3NpbmtfZGlzcG9zZShHT2JqZWN0
KiBvYmplY3QpCiAgICAgICAgIHByaXYtPnN1cmZhY2UgPSAwOwogICAgIH0KIAotICAgIGlmIChw
cml2LT5hc3luY19xdWV1ZSkgewotICAgICAgICBnX2FzeW5jX3F1ZXVlX3VucmVmKHByaXYtPmFz
eW5jX3F1ZXVlKTsKLSAgICAgICAgcHJpdi0+YXN5bmNfcXVldWUgPSAwOworICAgIGlmIChwcml2
LT5kYXRhX2NvbmQpIHsKKyAgICAgICAgZ19jb25kX2ZyZWUocHJpdi0+ZGF0YV9jb25kKTsKKyAg
ICAgICAgcHJpdi0+ZGF0YV9jb25kID0gMDsKKyAgICB9CisKKyAgICBpZiAocHJpdi0+YnVmZmVy
X211dGV4KSB7CisgICAgICAgIGdfbXV0ZXhfZnJlZShwcml2LT5idWZmZXJfbXV0ZXgpOworICAg
ICAgICBwcml2LT5idWZmZXJfbXV0ZXggPSAwOwogICAgIH0KIAogICAgIEdfT0JKRUNUX0NMQVNT
KHBhcmVudF9jbGFzcyktPmRpc3Bvc2Uob2JqZWN0KTsKIH0KIAogc3RhdGljIHZvaWQKLXdlYmtp
dF92aWRlb19zaW5rX2ZpbmFsaXplKEdPYmplY3QqIG9iamVjdCkKK191bmxvY2tfYnVmZmVyX211
dGV4KFdlYktpdFZpZGVvU2lua1ByaXZhdGUqIHByaXYpCit7CisKKyAgICBnX211dGV4X2xvY2so
cHJpdi0+YnVmZmVyX211dGV4KTsKKworICAgIGlmIChwcml2LT5idWZmZXIpIHsKKyAgICAgICAg
Z3N0X2J1ZmZlcl91bnJlZihwcml2LT5idWZmZXIpOworICAgICAgICBwcml2LT5idWZmZXIgPSAw
OworICAgIH0KKworICAgIGdfY29uZF9zaWduYWwocHJpdi0+ZGF0YV9jb25kKTsKKyAgICBnX211
dGV4X3VubG9jayhwcml2LT5idWZmZXJfbXV0ZXgpOworCit9CisKK3N0YXRpYyBnYm9vbGVhbgor
d2Via2l0X3ZpZGVvX3NpbmtfdW5sb2NrKEdzdEJhc2VTaW5rKiBvYmplY3QpCiB7Ci0gICAgR19P
QkpFQ1RfQ0xBU1MocGFyZW50X2NsYXNzKS0+ZmluYWxpemUob2JqZWN0KTsKKyAgICBXZWJLaXRW
aWRlb1NpbmsqIHNpbmsgPSBXRUJLSVRfVklERU9fU0lOSyhvYmplY3QpOworICAgIF91bmxvY2tf
YnVmZmVyX211dGV4KHNpbmstPnByaXYpOworICAgIEdTVF9DQUxMX1BBUkVOVF9XSVRIX0RFRkFV
TFQoR1NUX0JBU0VfU0lOS19DTEFTUywgdW5sb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKG9iamVjdCksIFRSVUUpOwogfQogCiBzdGF0aWMgdm9pZApAQCAtMjc2LDE3ICsz
MTksNyBAQCBzdGF0aWMgZ2Jvb2xlYW4KIHdlYmtpdF92aWRlb19zaW5rX3N0b3AoR3N0QmFzZVNp
bmsqIGJhc2Vfc2luaykKIHsKICAgICBXZWJLaXRWaWRlb1NpbmtQcml2YXRlKiBwcml2ID0gV0VC
S0lUX1ZJREVPX1NJTksoYmFzZV9zaW5rKS0+cHJpdjsKLQotICAgIGdfYXN5bmNfcXVldWVfbG9j
ayhwcml2LT5hc3luY19xdWV1ZSk7Ci0KLSAgICAvKiBSZW1vdmUgYWxsIHJlbWFpbmluZyBvYmpl
Y3RzIGZyb20gdGhlIHF1ZXVlICovCi0gICAgd2hpbGUgKEdzdEJ1ZmZlciogYnVmZmVyID0gKEdz
dEJ1ZmZlciopZ19hc3luY19xdWV1ZV90cnlfcG9wX3VubG9ja2VkKHByaXYtPmFzeW5jX3F1ZXVl
KSkKLSAgICAgICAgZ3N0X2J1ZmZlcl91bnJlZihidWZmZXIpOwotCi0gICAgZ19hc3luY19xdWV1
ZV91bmxvY2socHJpdi0+YXN5bmNfcXVldWUpOwotCi0gICAgZ19pZGxlX3JlbW92ZV9ieV9kYXRh
KGJhc2Vfc2luayk7Ci0KKyAgICBfdW5sb2NrX2J1ZmZlcl9tdXRleChwcml2KTsKICAgICByZXR1
cm4gVFJVRTsKIH0KIApAQCAtMzAyLDggKzMzNSw4IEBAIHdlYmtpdF92aWRlb19zaW5rX2NsYXNz
X2luaXQoV2ViS2l0VmlkZW9TaW5rQ2xhc3MqIGtsYXNzKQogICAgIGdvYmplY3RfY2xhc3MtPmdl
dF9wcm9wZXJ0eSA9IHdlYmtpdF92aWRlb19zaW5rX2dldF9wcm9wZXJ0eTsKIAogICAgIGdvYmpl
Y3RfY2xhc3MtPmRpc3Bvc2UgPSB3ZWJraXRfdmlkZW9fc2lua19kaXNwb3NlOwotICAgIGdvYmpl
Y3RfY2xhc3MtPmZpbmFsaXplID0gd2Via2l0X3ZpZGVvX3NpbmtfZmluYWxpemU7CiAKKyAgICBn
c3RiYXNlX3NpbmtfY2xhc3MtPnVubG9jayA9IHdlYmtpdF92aWRlb19zaW5rX3VubG9jazsKICAg
ICBnc3RiYXNlX3NpbmtfY2xhc3MtPnJlbmRlciA9IHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcjsK
ICAgICBnc3RiYXNlX3NpbmtfY2xhc3MtPnByZXJvbGwgPSB3ZWJraXRfdmlkZW9fc2lua19yZW5k
ZXI7CiAgICAgZ3N0YmFzZV9zaW5rX2NsYXNzLT5zdG9wID0gd2Via2l0X3ZpZGVvX3Npbmtfc3Rv
cDsKLS0gCjEuNi4wLjQKCg==
</data>
<flag name="review"
          id="21882"
          type_id="1"
          status="-"
          setter="gustavo"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40939</attachid>
            <date>2009-10-09 02:28:06 -0700</date>
            <delta_ts>2009-10-09 03:43:39 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>0001-sink-replace-the-idle-with-a-timeout.patch</filename>
            <type>text/plain</type>
            <size>10204</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSA1YWJmZTljZTNlZDQ0NTJhOWYwYjE1NDFmZjg0ZDdkNTEyZjI4NWFjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBGcmksIDIgT2N0IDIwMDkgMTE6MDk6MTIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBz
aW5rOiByZXBsYWNlIHRoZSBpZGxlIHdpdGggYSB0aW1lb3V0CgotLS0KIFdlYkNvcmUvQ2hhbmdl
TG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyNiArKysrKysKIC4uLi9n
cmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcCAgIHwgICAyMCArLS0t
LQogLi4uL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwICAgfCAg
IDkwICsrKysrKysrKysrKystLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgODkgaW5zZXJ0aW9ucygr
KSwgNDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCAyYzE3ZWVmLi40MzRhZTZiIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDA5
LTEwLTA1ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbR1RLXSBRb1Mgc3VwcG9y
dCBpbiB0aGUgdmlkZW8gc2luaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mjk5NTkKKworICAgICAgICBSZW1vdmVkIHRoZSBhc3luYyBidWZmZXIgcXVl
dWUgZnJvbSB0aGUgc2luay4gU3luY2hyb25pemUgdGhlCisgICAgICAgIHJlbmRlciBtZXRob2Qg
b2YgdGhlIHNpbmsgdXNpbmcgYSBnX3RpbWVvdXRfYWRkKCkgY29tYmluZWQgd2l0aCBhCisgICAg
ICAgIGdjb25kIHRyaWdnZXJlZCB3aGVuIHRoZSBidWZmZXIgaGFzIGJlZW4gcmVuZGVyZWQuCisg
ICAgICAgIEFsc28gZml4ZWQgdGhlIHZpZGVvIHNpbmsgcmVmZXJlbmNlIGhhbmRsaW5nIGluIHRo
ZSBwbGF5ZXIsIG5vdworICAgICAgICB0aGF0IHRoZSBpZGxlIGlzIG5vdCB0aGVyZSBhbnltb3Jl
IHRvIG1lc3MgdXAgdGhpbmdzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBs
YXllclByaXZhdGU6On5NZWRpYVBsYXllclByaXZhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFQbGF5ZXJQcml2YXRlOjpjcmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKHdlYmtpdF92aWRl
b19zaW5rX2luaXQpOgorICAgICAgICAod2Via2l0X3ZpZGVvX3NpbmtfdGltZW91dF9mdW5jKToK
KyAgICAgICAgKHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcik6CisgICAgICAgICh3ZWJraXRfdmlk
ZW9fc2lua19kaXNwb3NlKToKKyAgICAgICAgKHVubG9ja19idWZmZXJfbXV0ZXgpOgorICAgICAg
ICAod2Via2l0X3ZpZGVvX3NpbmtfdW5sb2NrKToKKyAgICAgICAgKHdlYmtpdF92aWRlb19zaW5r
X3N0b3ApOgorICAgICAgICAod2Via2l0X3ZpZGVvX3NpbmtfY2xhc3NfaW5pdCk6CisKIDIwMDkt
MTAtMDggIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2d0ay9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDY1YzY0YjQu
LmFiNTQyODYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTU4LDEyICsxNTgsNiBA
QCBNZWRpYVBsYXllclByaXZhdGU6Ok1lZGlhUGxheWVyUHJpdmF0ZShNZWRpYVBsYXllciogcGxh
eWVyKQogICAgIG1fc3VyZmFjZSA9IGNhaXJvX2ltYWdlX3N1cmZhY2VfY3JlYXRlKENBSVJPX0ZP
Uk1BVF9BUkdCMzIsIDY0MCwgNDgwKTsKIH0KIAotc3RhdGljIGdib29sZWFuIGlkbGVVbnJlZihn
cG9pbnRlciBkYXRhKQotewotICAgIGdfb2JqZWN0X3VucmVmKHJlaW50ZXJwcmV0X2Nhc3Q8R09i
amVjdCo+KGRhdGEpKTsKLSAgICByZXR1cm4gRkFMU0U7Ci19Ci0KIE1lZGlhUGxheWVyUHJpdmF0
ZTo6fk1lZGlhUGxheWVyUHJpdmF0ZSgpCiB7CiAgICAgaWYgKG1fc3VyZmFjZSkKQEAgLTE3NCwx
NSArMTY4LDggQEAgTWVkaWFQbGF5ZXJQcml2YXRlOjp+TWVkaWFQbGF5ZXJQcml2YXRlKCkKICAg
ICAgICAgZ3N0X29iamVjdF91bnJlZihHU1RfT0JKRUNUKG1fcGxheUJpbikpOwogICAgIH0KIAot
ICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgZmluZCBhIGJldHRlciB3YXkgdG8gaGFuZGxlIHRoZSBs
aWZldGltZSBvZiB0aGlzIG9iamVjdDsgdGhpcyBpcwotICAgIC8vIG5lZWRlZCBiZWNhdXNlIHRo
ZSBvYmplY3QgaXMgc29tZXRpbWVzIGJlaW5nIGRlc3Ryb3llZCBpbmJldHdlZW4gYSBjYWxsIHRv
Ci0gICAgLy8gd2Via2l0X3ZpZGVvX3NpbmtfcmVuZGVyLCBhbmQgdGhlIGlkbGUgaXQgc2NoZWR1
bGVzLiBBZGRpbmcgYSByZWYgaW4KLSAgICAvLyB3ZWJraXRfdmlkZW9fc2lua19yZW5kZXIgdGhh
dCB3b3VsZCBiZSBiYWxhbmNlZCBieSB0aGUgaWRsZSBpcyBub3QgYW4gb3B0aW9uLAotICAgIC8v
IGJlY2F1c2UgaW4gc29tZSBjYXNlcyB0aGUgZGVzdHJ1Y3Rpb24gb2YgdGhlIHNpbmsgbWF5IGhh
cHBlbiBpbiB0aW1lIGZvciB0aGUgaWRsZQotICAgIC8vIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUg
cXVldWUsIHNvIGl0IG1heSBub3QgcnVuLiBJdCB3b3VsZCBhbHNvIGNhdXNlIGxvdHMgb2YgcmVm
Ci0gICAgLy8gY291bnRpbmcgY2h1cm4gKHJlbmRlci9pZGxlIGFyZSBjYWxsZWQgbWFueSB0aW1l
cykuIFRoaXMgaXMgYW4gdWdseSByYWNlLgogICAgIGlmIChtX3ZpZGVvU2luaykgewotICAgICAg
ICBnX2lkbGVfYWRkKGlkbGVVbnJlZiwgbV92aWRlb1NpbmspOworICAgICAgICBnX29iamVjdF91
bnJlZihtX3ZpZGVvU2luayk7CiAgICAgICAgIG1fdmlkZW9TaW5rID0gMDsKICAgICB9CiB9CkBA
IC04MTUsMTAgKzgwMiw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlOjpjcmVhdGVHU1RQbGF5
QmluKFN0cmluZyB1cmwpCiAKICAgICBtX3ZpZGVvU2luayA9IHdlYmtpdF92aWRlb19zaW5rX25l
dyhtX3N1cmZhY2UpOwogCi0gICAgLy8gVGhpcyByZWYgaXMgdG8gcHJvdGVjdCB0aGUgc2luayBm
cm9tIGJlaW5nIGRlc3Ryb3llZCBiZWZvcmUgd2Ugc3RvcCB0aGUgaWRsZSBpdAotICAgIC8vIGNy
ZWF0ZXMgaW50ZXJuYWxseS4gU2VlIHRoZSBjb21tZW50IGluIH5NZWRpYVBsYXllclByaXZhdGUu
Ci0gICAgZ19vYmplY3RfcmVmKG1fdmlkZW9TaW5rKTsKLQorICAgIGdfb2JqZWN0X3JlZl9zaW5r
KG1fdmlkZW9TaW5rKTsKICAgICBnX29iamVjdF9zZXQobV9wbGF5QmluLCAidmlkZW8tc2luayIs
IG1fdmlkZW9TaW5rLCBOVUxMKTsKIAogICAgIGdfc2lnbmFsX2Nvbm5lY3QobV92aWRlb1Npbmss
ICJyZXBhaW50LXJlcXVlc3RlZCIsIEdfQ0FMTEJBQ0sobWVkaWFQbGF5ZXJQcml2YXRlUmVwYWlu
dENhbGxiYWNrKSwgdGhpcyk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9n
dGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcAppbmRleCBmYjg2ZmU5Li5mYTk2ZjI1IDEwMDY0NAot
LS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3Bw
CisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL1ZpZGVvU2lua0dTdHJlYW1lci5j
cHAKQEAgLTY1LDcgKzY1LDYgQEAgc3RhdGljIGd1aW50IHdlYmtpdF92aWRlb19zaW5rX3NpZ25h
bHNbTEFTVF9TSUdOQUxdID0geyAwLCB9OwogCiBzdHJ1Y3QgX1dlYktpdFZpZGVvU2lua1ByaXZh
dGUgewogICAgIGNhaXJvX3N1cmZhY2VfdCogc3VyZmFjZTsKLSAgICBHQXN5bmNRdWV1ZSogYXN5
bmNfcXVldWU7CiAgICAgZ2Jvb2xlYW4gcmdiX29yZGVyaW5nOwogICAgIGludCB3aWR0aDsKICAg
ICBpbnQgaGVpZ2h0OwpAQCAtNzMsNiArNzIsMTAgQEAgc3RydWN0IF9XZWJLaXRWaWRlb1NpbmtQ
cml2YXRlIHsKICAgICBpbnQgZnBzX2Q7CiAgICAgaW50IHBhcl9uOwogICAgIGludCBwYXJfZDsK
KyAgICBHc3RCdWZmZXIqIGJ1ZmZlcjsKKyAgICBndWludCB0aW1lb3V0X2lkOworICAgIEdNdXRl
eCogYnVmZmVyX211dGV4OworICAgIEdDb25kKiBkYXRhX2NvbmQ7CiB9OwogCiAjZGVmaW5lIF9k
b19pbml0KGJsYSkgXApAQCAtMTAyLDMyICsxMDUsMzkgQEAgd2Via2l0X3ZpZGVvX3NpbmtfaW5p
dChXZWJLaXRWaWRlb1NpbmsqIHNpbmssIFdlYktpdFZpZGVvU2lua0NsYXNzKiBrbGFzcykKICAg
ICBXZWJLaXRWaWRlb1NpbmtQcml2YXRlKiBwcml2OwogCiAgICAgc2luay0+cHJpdiA9IHByaXYg
PSBHX1RZUEVfSU5TVEFOQ0VfR0VUX1BSSVZBVEUoc2luaywgV0VCS0lUX1RZUEVfVklERU9fU0lO
SywgV2ViS2l0VmlkZW9TaW5rUHJpdmF0ZSk7Ci0gICAgcHJpdi0+YXN5bmNfcXVldWUgPSBnX2Fz
eW5jX3F1ZXVlX25ldygpOworICAgIHByaXYtPmRhdGFfY29uZCA9IGdfY29uZF9uZXcoKTsKKyAg
ICBwcml2LT5idWZmZXJfbXV0ZXggPSBnX211dGV4X25ldygpOwogfQogCiBzdGF0aWMgZ2Jvb2xl
YW4KLXdlYmtpdF92aWRlb19zaW5rX2lkbGVfZnVuYyhncG9pbnRlciBkYXRhKQord2Via2l0X3Zp
ZGVvX3NpbmtfdGltZW91dF9mdW5jKGdwb2ludGVyIGRhdGEpCiB7CiAgICAgV2ViS2l0VmlkZW9T
aW5rKiBzaW5rID0gcmVpbnRlcnByZXRfY2FzdDxXZWJLaXRWaWRlb1NpbmsqPihkYXRhKTsKICAg
ICBXZWJLaXRWaWRlb1NpbmtQcml2YXRlKiBwcml2ID0gc2luay0+cHJpdjsKICAgICBHc3RCdWZm
ZXIqIGJ1ZmZlcjsKICAgICBHc3RDYXBzKiBjYXBzOwogICAgIEdzdFZpZGVvRm9ybWF0IGZvcm1h
dDsKKyAgICBndWludCB0aW1lb3V0X2lkOwogICAgIGdpbnQgcGFyX24sIHBhcl9kOwogICAgIGdm
bG9hdCBwYXI7CiAgICAgZ2ludCBid2lkdGgsIGJoZWlnaHQ7CiAKLSAgICBpZiAoIXByaXYtPmFz
eW5jX3F1ZXVlKQotICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgZ19tdXRleF9sb2NrKHByaXYt
PmJ1ZmZlcl9tdXRleCk7CisgICAgYnVmZmVyID0gcHJpdi0+YnVmZmVyOworICAgIHRpbWVvdXRf
aWQgPSBwcml2LT50aW1lb3V0X2lkOwogCi0gICAgYnVmZmVyID0gKEdzdEJ1ZmZlciopZ19hc3lu
Y19xdWV1ZV90cnlfcG9wKHByaXYtPmFzeW5jX3F1ZXVlKTsKLSAgICBpZiAoIWJ1ZmZlciB8fCBH
X1VOTElLRUxZKCFHU1RfSVNfQlVGRkVSKGJ1ZmZlcikpKQorICAgIGlmICghYnVmZmVyIHx8IEdf
VU5MSUtFTFkoIUdTVF9JU19CVUZGRVIoYnVmZmVyKSkpIHsKKyAgICAgICAgZ19jb25kX3NpZ25h
bChwcml2LT5kYXRhX2NvbmQpOworICAgICAgICBnX211dGV4X3VubG9jayhwcml2LT5idWZmZXJf
bXV0ZXgpOwogICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgfQogCiAgICAgY2FwcyA9IEdTVF9C
VUZGRVJfQ0FQUyhidWZmZXIpOwogICAgIGlmICghZ3N0X3ZpZGVvX2Zvcm1hdF9wYXJzZV9jYXBz
KGNhcHMsICZmb3JtYXQsICZid2lkdGgsICZiaGVpZ2h0KSkgewogICAgICAgICBHU1RfRVJST1Jf
T0JKRUNUKHNpbmssICJVbmtub3duIHZpZGVvIGZvcm1hdCBpbiBidWZmZXIgY2FwcyAnJXMnIiwK
ICAgICAgICAgICAgICAgICAgICAgICAgICBnc3RfY2Fwc190b19zdHJpbmcoY2FwcykpOworICAg
ICAgICBnX2NvbmRfc2lnbmFsKHByaXYtPmRhdGFfY29uZCk7CisgICAgICAgIGdfbXV0ZXhfdW5s
b2NrKHByaXYtPmJ1ZmZlcl9tdXRleCk7CiAgICAgICAgIHJldHVybiBGQUxTRTsKICAgICB9CiAK
QEAgLTEzNiw3ICsxNDYsNiBAQCB3ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMoZ3BvaW50ZXIg
ZGF0YSkKIAogICAgIHBhciA9IChnZmxvYXQpIHBhcl9uIC8gKGdmbG9hdCkgcGFyX2Q7CiAKLSAg
ICAvLyBUT0RPOiBjb25zaWRlciBwcml2LT5yZ2Jfb3JkZXJpbmc/CiAgICAgY2Fpcm9fc3VyZmFj
ZV90KiBzcmMgPSBjYWlyb19pbWFnZV9zdXJmYWNlX2NyZWF0ZV9mb3JfZGF0YShHU1RfQlVGRkVS
X0RBVEEoYnVmZmVyKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIENBSVJPX0ZPUk1BVF9SR0IyNCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ3aWR0aCwg
YmhlaWdodCwKQEAgLTE1MSwxMCArMTYwLDEzIEBAIHdlYmtpdF92aWRlb19zaW5rX2lkbGVfZnVu
YyhncG9pbnRlciBkYXRhKQogICAgIGNhaXJvX3JlY3RhbmdsZShjciwgMCwgMCwgcHJpdi0+d2lk
dGgsIHByaXYtPmhlaWdodCk7CiAgICAgY2Fpcm9fZmlsbChjcik7CiAgICAgY2Fpcm9fZGVzdHJv
eShjcik7CisKICAgICBnc3RfYnVmZmVyX3VucmVmKGJ1ZmZlcik7Ci0gICAgZ19hc3luY19xdWV1
ZV91bnJlZihwcml2LT5hc3luY19xdWV1ZSk7CisgICAgcHJpdi0+YnVmZmVyID0gMDsKIAogICAg
IGdfc2lnbmFsX2VtaXQoc2luaywgd2Via2l0X3ZpZGVvX3Npbmtfc2lnbmFsc1tSRVBBSU5UX1JF
UVVFU1RFRF0sIDApOworICAgIGdfY29uZF9zaWduYWwocHJpdi0+ZGF0YV9jb25kKTsKKyAgICBn
X211dGV4X3VubG9jayhwcml2LT5idWZmZXJfbXV0ZXgpOwogCiAgICAgcmV0dXJuIEZBTFNFOwog
fQpAQCAtMTY1LDEwICsxNzcsMTcgQEAgd2Via2l0X3ZpZGVvX3NpbmtfcmVuZGVyKEdzdEJhc2VT
aW5rKiBic2luaywgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgV2ViS2l0VmlkZW9TaW5rKiBzaW5r
ID0gV0VCS0lUX1ZJREVPX1NJTksoYnNpbmspOwogICAgIFdlYktpdFZpZGVvU2lua1ByaXZhdGUq
IHByaXYgPSBzaW5rLT5wcml2OwogCi0gICAgZ19hc3luY19xdWV1ZV9yZWYocHJpdi0+YXN5bmNf
cXVldWUpOwotICAgIGdfYXN5bmNfcXVldWVfcHVzaChwcml2LT5hc3luY19xdWV1ZSwgZ3N0X2J1
ZmZlcl9yZWYoYnVmZmVyKSk7Ci0gICAgZ19pZGxlX2FkZF9mdWxsKEdfUFJJT1JJVFlfSElHSF9J
RExFLCB3ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMsIHNpbmssIDApOworICAgIGdfbXV0ZXhf
bG9jayhwcml2LT5idWZmZXJfbXV0ZXgpOworICAgIHByaXYtPmJ1ZmZlciA9IGdzdF9idWZmZXJf
cmVmKGJ1ZmZlcik7CisKKyAgICAvLyBVc2UgSElHSF9JRExFKzIwIHByaW9yaXR5LCBsaWtlIEd0
aysgZm9yIHJlZHJhd2luZyBvcGVyYXRpb25zLgorICAgIHByaXYtPnRpbWVvdXRfaWQgPSBnX3Rp
bWVvdXRfYWRkX2Z1bGwoR19QUklPUklUWV9ISUdIX0lETEUgKyAyMCwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdlYmtpdF92aWRlb19zaW5rX3RpbWVvdXRf
ZnVuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdzdF9vYmpl
Y3RfcmVmKHNpbmspLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KEdEZXN0cm95Tm90aWZ5KWdzdF9vYmplY3RfdW5yZWYpOwogCisgICAgZ19jb25kX3dhaXQocHJp
di0+ZGF0YV9jb25kLCBwcml2LT5idWZmZXJfbXV0ZXgpOworICAgIGdfbXV0ZXhfdW5sb2NrKHBy
aXYtPmJ1ZmZlcl9tdXRleCk7CiAgICAgcmV0dXJuIEdTVF9GTE9XX09LOwogfQogCkBAIC0yMjUs
MTggKzI0NCw0MSBAQCB3ZWJraXRfdmlkZW9fc2lua19kaXNwb3NlKEdPYmplY3QqIG9iamVjdCkK
ICAgICAgICAgcHJpdi0+c3VyZmFjZSA9IDA7CiAgICAgfQogCi0gICAgaWYgKHByaXYtPmFzeW5j
X3F1ZXVlKSB7Ci0gICAgICAgIGdfYXN5bmNfcXVldWVfdW5yZWYocHJpdi0+YXN5bmNfcXVldWUp
OwotICAgICAgICBwcml2LT5hc3luY19xdWV1ZSA9IDA7CisgICAgaWYgKHByaXYtPmRhdGFfY29u
ZCkgeworICAgICAgICBnX2NvbmRfZnJlZShwcml2LT5kYXRhX2NvbmQpOworICAgICAgICBwcml2
LT5kYXRhX2NvbmQgPSAwOworICAgIH0KKworICAgIGlmIChwcml2LT5idWZmZXJfbXV0ZXgpIHsK
KyAgICAgICAgZ19tdXRleF9mcmVlKHByaXYtPmJ1ZmZlcl9tdXRleCk7CisgICAgICAgIHByaXYt
PmJ1ZmZlcl9tdXRleCA9IDA7CiAgICAgfQogCiAgICAgR19PQkpFQ1RfQ0xBU1MocGFyZW50X2Ns
YXNzKS0+ZGlzcG9zZShvYmplY3QpOwogfQogCiBzdGF0aWMgdm9pZAotd2Via2l0X3ZpZGVvX3Np
bmtfZmluYWxpemUoR09iamVjdCogb2JqZWN0KQordW5sb2NrX2J1ZmZlcl9tdXRleChXZWJLaXRW
aWRlb1NpbmtQcml2YXRlKiBwcml2KQogewotICAgIEdfT0JKRUNUX0NMQVNTKHBhcmVudF9jbGFz
cyktPmZpbmFsaXplKG9iamVjdCk7CisgICAgZ19tdXRleF9sb2NrKHByaXYtPmJ1ZmZlcl9tdXRl
eCk7CisKKyAgICBpZiAocHJpdi0+YnVmZmVyKSB7CisgICAgICAgIGdzdF9idWZmZXJfdW5yZWYo
cHJpdi0+YnVmZmVyKTsKKyAgICAgICAgcHJpdi0+YnVmZmVyID0gMDsKKyAgICB9CisKKyAgICBn
X2NvbmRfc2lnbmFsKHByaXYtPmRhdGFfY29uZCk7CisgICAgZ19tdXRleF91bmxvY2socHJpdi0+
YnVmZmVyX211dGV4KTsKKworfQorCitzdGF0aWMgZ2Jvb2xlYW4KK3dlYmtpdF92aWRlb19zaW5r
X3VubG9jayhHc3RCYXNlU2luayogb2JqZWN0KQoreworICAgIFdlYktpdFZpZGVvU2luayogc2lu
ayA9IFdFQktJVF9WSURFT19TSU5LKG9iamVjdCk7CisgICAgdW5sb2NrX2J1ZmZlcl9tdXRleChz
aW5rLT5wcml2KTsKKyAgICBHU1RfQ0FMTF9QQVJFTlRfV0lUSF9ERUZBVUxUKEdTVF9CQVNFX1NJ
TktfQ0xBU1MsIHVubG9jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvYmpl
Y3QpLCBUUlVFKTsKIH0KIAogc3RhdGljIHZvaWQKQEAgLTI3NiwxNyArMzE4LDcgQEAgc3RhdGlj
IGdib29sZWFuCiB3ZWJraXRfdmlkZW9fc2lua19zdG9wKEdzdEJhc2VTaW5rKiBiYXNlX3Npbmsp
CiB7CiAgICAgV2ViS2l0VmlkZW9TaW5rUHJpdmF0ZSogcHJpdiA9IFdFQktJVF9WSURFT19TSU5L
KGJhc2Vfc2luayktPnByaXY7Ci0KLSAgICBnX2FzeW5jX3F1ZXVlX2xvY2socHJpdi0+YXN5bmNf
cXVldWUpOwotCi0gICAgLyogUmVtb3ZlIGFsbCByZW1haW5pbmcgb2JqZWN0cyBmcm9tIHRoZSBx
dWV1ZSAqLwotICAgIHdoaWxlIChHc3RCdWZmZXIqIGJ1ZmZlciA9IChHc3RCdWZmZXIqKWdfYXN5
bmNfcXVldWVfdHJ5X3BvcF91bmxvY2tlZChwcml2LT5hc3luY19xdWV1ZSkpCi0gICAgICAgIGdz
dF9idWZmZXJfdW5yZWYoYnVmZmVyKTsKLQotICAgIGdfYXN5bmNfcXVldWVfdW5sb2NrKHByaXYt
PmFzeW5jX3F1ZXVlKTsKLQotICAgIGdfaWRsZV9yZW1vdmVfYnlfZGF0YShiYXNlX3NpbmspOwot
CisgICAgdW5sb2NrX2J1ZmZlcl9tdXRleChwcml2KTsKICAgICByZXR1cm4gVFJVRTsKIH0KIApA
QCAtMzAyLDggKzMzNCw4IEBAIHdlYmtpdF92aWRlb19zaW5rX2NsYXNzX2luaXQoV2ViS2l0Vmlk
ZW9TaW5rQ2xhc3MqIGtsYXNzKQogICAgIGdvYmplY3RfY2xhc3MtPmdldF9wcm9wZXJ0eSA9IHdl
YmtpdF92aWRlb19zaW5rX2dldF9wcm9wZXJ0eTsKIAogICAgIGdvYmplY3RfY2xhc3MtPmRpc3Bv
c2UgPSB3ZWJraXRfdmlkZW9fc2lua19kaXNwb3NlOwotICAgIGdvYmplY3RfY2xhc3MtPmZpbmFs
aXplID0gd2Via2l0X3ZpZGVvX3NpbmtfZmluYWxpemU7CiAKKyAgICBnc3RiYXNlX3NpbmtfY2xh
c3MtPnVubG9jayA9IHdlYmtpdF92aWRlb19zaW5rX3VubG9jazsKICAgICBnc3RiYXNlX3Npbmtf
Y2xhc3MtPnJlbmRlciA9IHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcjsKICAgICBnc3RiYXNlX3Np
bmtfY2xhc3MtPnByZXJvbGwgPSB3ZWJraXRfdmlkZW9fc2lua19yZW5kZXI7CiAgICAgZ3N0YmFz
ZV9zaW5rX2NsYXNzLT5zdG9wID0gd2Via2l0X3ZpZGVvX3Npbmtfc3RvcDsKLS0gCjEuNi4zLjMK
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40940</attachid>
            <date>2009-10-09 03:43:39 -0700</date>
            <delta_ts>2009-10-09 12:37:48 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>0001-sink-replace-the-idle-with-a-timeout.patch</filename>
            <type>text/plain</type>
            <size>11377</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSA5NGJhNTUxZjIzN2FjN2QwOTRhZTAxOTM3OWFkZDA3ZDNkYzNjMTNhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBGcmksIDIgT2N0IDIwMDkgMTE6MDk6MTIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBz
aW5rOiByZXBsYWNlIHRoZSBpZGxlIHdpdGggYSB0aW1lb3V0CgotLS0KIFdlYkNvcmUvQ2hhbmdl
TG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyNiArKysrKysKIC4uLi9n
cmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcCAgIHwgICAyMCArLS0t
LQogLi4uL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwICAgfCAg
IDkzICsrKysrKysrKysrKystLS0tLS0tCiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9W
aWRlb1NpbmtHU3RyZWFtZXIuaCB8ICAgIDYgKy0KIDQgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0
aW9ucygrKSwgNTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyYzE3ZWVmLi40MzRhZTZiIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBA
CisyMDA5LTEwLTA1ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbR1RLXSBRb1Mg
c3VwcG9ydCBpbiB0aGUgdmlkZW8gc2luaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9Mjk5NTkKKworICAgICAgICBSZW1vdmVkIHRoZSBhc3luYyBidWZm
ZXIgcXVldWUgZnJvbSB0aGUgc2luay4gU3luY2hyb25pemUgdGhlCisgICAgICAgIHJlbmRlciBt
ZXRob2Qgb2YgdGhlIHNpbmsgdXNpbmcgYSBnX3RpbWVvdXRfYWRkKCkgY29tYmluZWQgd2l0aCBh
CisgICAgICAgIGdjb25kIHRyaWdnZXJlZCB3aGVuIHRoZSBidWZmZXIgaGFzIGJlZW4gcmVuZGVy
ZWQuCisgICAgICAgIEFsc28gZml4ZWQgdGhlIHZpZGVvIHNpbmsgcmVmZXJlbmNlIGhhbmRsaW5n
IGluIHRoZSBwbGF5ZXIsIG5vdworICAgICAgICB0aGF0IHRoZSBpZGxlIGlzIG5vdCB0aGVyZSBh
bnltb3JlIHRvIG1lc3MgdXAgdGhpbmdzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVBsYXllclByaXZhdGU6On5NZWRpYVBsYXllclByaXZhdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFQbGF5ZXJQcml2YXRlOjpjcmVhdGVHU1RQbGF5QmluKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcDoKKyAgICAgICAgKHdlYmtp
dF92aWRlb19zaW5rX2luaXQpOgorICAgICAgICAod2Via2l0X3ZpZGVvX3NpbmtfdGltZW91dF9m
dW5jKToKKyAgICAgICAgKHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcik6CisgICAgICAgICh3ZWJr
aXRfdmlkZW9fc2lua19kaXNwb3NlKToKKyAgICAgICAgKHVubG9ja19idWZmZXJfbXV0ZXgpOgor
ICAgICAgICAod2Via2l0X3ZpZGVvX3NpbmtfdW5sb2NrKToKKyAgICAgICAgKHdlYmtpdF92aWRl
b19zaW5rX3N0b3ApOgorICAgICAgICAod2Via2l0X3ZpZGVvX3NpbmtfY2xhc3NfaW5pdCk6CisK
IDIwMDktMTAtMDggIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2d0ay9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDY1
YzY0YjQuLmFiNTQyODYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3Rr
L01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcApAQCAtMTU4LDEyICsx
NTgsNiBAQCBNZWRpYVBsYXllclByaXZhdGU6Ok1lZGlhUGxheWVyUHJpdmF0ZShNZWRpYVBsYXll
ciogcGxheWVyKQogICAgIG1fc3VyZmFjZSA9IGNhaXJvX2ltYWdlX3N1cmZhY2VfY3JlYXRlKENB
SVJPX0ZPUk1BVF9BUkdCMzIsIDY0MCwgNDgwKTsKIH0KIAotc3RhdGljIGdib29sZWFuIGlkbGVV
bnJlZihncG9pbnRlciBkYXRhKQotewotICAgIGdfb2JqZWN0X3VucmVmKHJlaW50ZXJwcmV0X2Nh
c3Q8R09iamVjdCo+KGRhdGEpKTsKLSAgICByZXR1cm4gRkFMU0U7Ci19Ci0KIE1lZGlhUGxheWVy
UHJpdmF0ZTo6fk1lZGlhUGxheWVyUHJpdmF0ZSgpCiB7CiAgICAgaWYgKG1fc3VyZmFjZSkKQEAg
LTE3NCwxNSArMTY4LDggQEAgTWVkaWFQbGF5ZXJQcml2YXRlOjp+TWVkaWFQbGF5ZXJQcml2YXRl
KCkKICAgICAgICAgZ3N0X29iamVjdF91bnJlZihHU1RfT0JKRUNUKG1fcGxheUJpbikpOwogICAg
IH0KIAotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgZmluZCBhIGJldHRlciB3YXkgdG8gaGFuZGxl
IHRoZSBsaWZldGltZSBvZiB0aGlzIG9iamVjdDsgdGhpcyBpcwotICAgIC8vIG5lZWRlZCBiZWNh
dXNlIHRoZSBvYmplY3QgaXMgc29tZXRpbWVzIGJlaW5nIGRlc3Ryb3llZCBpbmJldHdlZW4gYSBj
YWxsIHRvCi0gICAgLy8gd2Via2l0X3ZpZGVvX3NpbmtfcmVuZGVyLCBhbmQgdGhlIGlkbGUgaXQg
c2NoZWR1bGVzLiBBZGRpbmcgYSByZWYgaW4KLSAgICAvLyB3ZWJraXRfdmlkZW9fc2lua19yZW5k
ZXIgdGhhdCB3b3VsZCBiZSBiYWxhbmNlZCBieSB0aGUgaWRsZSBpcyBub3QgYW4gb3B0aW9uLAot
ICAgIC8vIGJlY2F1c2UgaW4gc29tZSBjYXNlcyB0aGUgZGVzdHJ1Y3Rpb24gb2YgdGhlIHNpbmsg
bWF5IGhhcHBlbiBpbiB0aW1lIGZvciB0aGUgaWRsZQotICAgIC8vIHRvIGJlIHJlbW92ZWQgZnJv
bSB0aGUgcXVldWUsIHNvIGl0IG1heSBub3QgcnVuLiBJdCB3b3VsZCBhbHNvIGNhdXNlIGxvdHMg
b2YgcmVmCi0gICAgLy8gY291bnRpbmcgY2h1cm4gKHJlbmRlci9pZGxlIGFyZSBjYWxsZWQgbWFu
eSB0aW1lcykuIFRoaXMgaXMgYW4gdWdseSByYWNlLgogICAgIGlmIChtX3ZpZGVvU2luaykgewot
ICAgICAgICBnX2lkbGVfYWRkKGlkbGVVbnJlZiwgbV92aWRlb1NpbmspOworICAgICAgICBnX29i
amVjdF91bnJlZihtX3ZpZGVvU2luayk7CiAgICAgICAgIG1fdmlkZW9TaW5rID0gMDsKICAgICB9
CiB9CkBAIC04MTUsMTAgKzgwMiw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlOjpjcmVhdGVH
U1RQbGF5QmluKFN0cmluZyB1cmwpCiAKICAgICBtX3ZpZGVvU2luayA9IHdlYmtpdF92aWRlb19z
aW5rX25ldyhtX3N1cmZhY2UpOwogCi0gICAgLy8gVGhpcyByZWYgaXMgdG8gcHJvdGVjdCB0aGUg
c2luayBmcm9tIGJlaW5nIGRlc3Ryb3llZCBiZWZvcmUgd2Ugc3RvcCB0aGUgaWRsZSBpdAotICAg
IC8vIGNyZWF0ZXMgaW50ZXJuYWxseS4gU2VlIHRoZSBjb21tZW50IGluIH5NZWRpYVBsYXllclBy
aXZhdGUuCi0gICAgZ19vYmplY3RfcmVmKG1fdmlkZW9TaW5rKTsKLQorICAgIGdfb2JqZWN0X3Jl
Zl9zaW5rKG1fdmlkZW9TaW5rKTsKICAgICBnX29iamVjdF9zZXQobV9wbGF5QmluLCAidmlkZW8t
c2luayIsIG1fdmlkZW9TaW5rLCBOVUxMKTsKIAogICAgIGdfc2lnbmFsX2Nvbm5lY3QobV92aWRl
b1NpbmssICJyZXBhaW50LXJlcXVlc3RlZCIsIEdfQ0FMTEJBQ0sobWVkaWFQbGF5ZXJQcml2YXRl
UmVwYWludENhbGxiYWNrKSwgdGhpcyk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ndGsvVmlkZW9TaW5rR1N0cmVhbWVyLmNwcAppbmRleCBmYjg2ZmU5Li5hYmE4NTNhIDEw
MDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFt
ZXIuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL1ZpZGVvU2lua0dTdHJl
YW1lci5jcHAKQEAgLTY1LDcgKzY1LDYgQEAgc3RhdGljIGd1aW50IHdlYmtpdF92aWRlb19zaW5r
X3NpZ25hbHNbTEFTVF9TSUdOQUxdID0geyAwLCB9OwogCiBzdHJ1Y3QgX1dlYktpdFZpZGVvU2lu
a1ByaXZhdGUgewogICAgIGNhaXJvX3N1cmZhY2VfdCogc3VyZmFjZTsKLSAgICBHQXN5bmNRdWV1
ZSogYXN5bmNfcXVldWU7CiAgICAgZ2Jvb2xlYW4gcmdiX29yZGVyaW5nOwogICAgIGludCB3aWR0
aDsKICAgICBpbnQgaGVpZ2h0OwpAQCAtNzMsNiArNzIsMTAgQEAgc3RydWN0IF9XZWJLaXRWaWRl
b1NpbmtQcml2YXRlIHsKICAgICBpbnQgZnBzX2Q7CiAgICAgaW50IHBhcl9uOwogICAgIGludCBw
YXJfZDsKKyAgICBHc3RCdWZmZXIqIGJ1ZmZlcjsKKyAgICBndWludCB0aW1lb3V0X2lkOworICAg
IEdNdXRleCogYnVmZmVyX211dGV4OworICAgIEdDb25kKiBkYXRhX2NvbmQ7CiB9OwogCiAjZGVm
aW5lIF9kb19pbml0KGJsYSkgXApAQCAtODMsOCArODYsOCBAQCBzdHJ1Y3QgX1dlYktpdFZpZGVv
U2lua1ByaXZhdGUgewogCiBHU1RfQk9JTEVSUExBVEVfRlVMTChXZWJLaXRWaWRlb1NpbmssCiAg
ICAgICAgICAgICAgICAgICAgICB3ZWJraXRfdmlkZW9fc2luaywKLSAgICAgICAgICAgICAgICAg
ICAgIEdzdEJhc2VTaW5rLAotICAgICAgICAgICAgICAgICAgICAgR1NUX1RZUEVfQkFTRV9TSU5L
LAorICAgICAgICAgICAgICAgICAgICAgR3N0VmlkZW9TaW5rLAorICAgICAgICAgICAgICAgICAg
ICAgR1NUX1RZUEVfVklERU9fU0lOSywKICAgICAgICAgICAgICAgICAgICAgIF9kb19pbml0KTsK
IAogc3RhdGljIHZvaWQKQEAgLTEwMiwxMSArMTA1LDEyIEBAIHdlYmtpdF92aWRlb19zaW5rX2lu
aXQoV2ViS2l0VmlkZW9TaW5rKiBzaW5rLCBXZWJLaXRWaWRlb1NpbmtDbGFzcyoga2xhc3MpCiAg
ICAgV2ViS2l0VmlkZW9TaW5rUHJpdmF0ZSogcHJpdjsKIAogICAgIHNpbmstPnByaXYgPSBwcml2
ID0gR19UWVBFX0lOU1RBTkNFX0dFVF9QUklWQVRFKHNpbmssIFdFQktJVF9UWVBFX1ZJREVPX1NJ
TkssIFdlYktpdFZpZGVvU2lua1ByaXZhdGUpOwotICAgIHByaXYtPmFzeW5jX3F1ZXVlID0gZ19h
c3luY19xdWV1ZV9uZXcoKTsKKyAgICBwcml2LT5kYXRhX2NvbmQgPSBnX2NvbmRfbmV3KCk7Cisg
ICAgcHJpdi0+YnVmZmVyX211dGV4ID0gZ19tdXRleF9uZXcoKTsKIH0KIAogc3RhdGljIGdib29s
ZWFuCi13ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMoZ3BvaW50ZXIgZGF0YSkKK3dlYmtpdF92
aWRlb19zaW5rX3RpbWVvdXRfZnVuYyhncG9pbnRlciBkYXRhKQogewogICAgIFdlYktpdFZpZGVv
U2luayogc2luayA9IHJlaW50ZXJwcmV0X2Nhc3Q8V2ViS2l0VmlkZW9TaW5rKj4oZGF0YSk7CiAg
ICAgV2ViS2l0VmlkZW9TaW5rUHJpdmF0ZSogcHJpdiA9IHNpbmstPnByaXY7CkBAIC0xMTcsMTcg
KzEyMSwyMiBAQCB3ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMoZ3BvaW50ZXIgZGF0YSkKICAg
ICBnZmxvYXQgcGFyOwogICAgIGdpbnQgYndpZHRoLCBiaGVpZ2h0OwogCi0gICAgaWYgKCFwcml2
LT5hc3luY19xdWV1ZSkKLSAgICAgICAgcmV0dXJuIEZBTFNFOworICAgIGdfbXV0ZXhfbG9jayhw
cml2LT5idWZmZXJfbXV0ZXgpOworICAgIGJ1ZmZlciA9IHByaXYtPmJ1ZmZlcjsKKyAgICBwcml2
LT50aW1lb3V0X2lkID0gMDsKIAotICAgIGJ1ZmZlciA9IChHc3RCdWZmZXIqKWdfYXN5bmNfcXVl
dWVfdHJ5X3BvcChwcml2LT5hc3luY19xdWV1ZSk7Ci0gICAgaWYgKCFidWZmZXIgfHwgR19VTkxJ
S0VMWSghR1NUX0lTX0JVRkZFUihidWZmZXIpKSkKKyAgICBpZiAoIWJ1ZmZlciB8fCBHX1VOTElL
RUxZKCFHU1RfSVNfQlVGRkVSKGJ1ZmZlcikpKSB7CisgICAgICAgIGdfY29uZF9zaWduYWwocHJp
di0+ZGF0YV9jb25kKTsKKyAgICAgICAgZ19tdXRleF91bmxvY2socHJpdi0+YnVmZmVyX211dGV4
KTsKICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgIH0KIAogICAgIGNhcHMgPSBHU1RfQlVGRkVS
X0NBUFMoYnVmZmVyKTsKICAgICBpZiAoIWdzdF92aWRlb19mb3JtYXRfcGFyc2VfY2FwcyhjYXBz
LCAmZm9ybWF0LCAmYndpZHRoLCAmYmhlaWdodCkpIHsKICAgICAgICAgR1NUX0VSUk9SX09CSkVD
VChzaW5rLCAiVW5rbm93biB2aWRlbyBmb3JtYXQgaW4gYnVmZmVyIGNhcHMgJyVzJyIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgZ3N0X2NhcHNfdG9fc3RyaW5nKGNhcHMpKTsKKyAgICAgICAg
Z19jb25kX3NpZ25hbChwcml2LT5kYXRhX2NvbmQpOworICAgICAgICBnX211dGV4X3VubG9jayhw
cml2LT5idWZmZXJfbXV0ZXgpOwogICAgICAgICByZXR1cm4gRkFMU0U7CiAgICAgfQogCkBAIC0x
MzYsNyArMTQ1LDYgQEAgd2Via2l0X3ZpZGVvX3NpbmtfaWRsZV9mdW5jKGdwb2ludGVyIGRhdGEp
CiAKICAgICBwYXIgPSAoZ2Zsb2F0KSBwYXJfbiAvIChnZmxvYXQpIHBhcl9kOwogCi0gICAgLy8g
VE9ETzogY29uc2lkZXIgcHJpdi0+cmdiX29yZGVyaW5nPwogICAgIGNhaXJvX3N1cmZhY2VfdCog
c3JjID0gY2Fpcm9faW1hZ2Vfc3VyZmFjZV9jcmVhdGVfZm9yX2RhdGEoR1NUX0JVRkZFUl9EQVRB
KGJ1ZmZlciksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBDQUlST19GT1JNQVRfUkdCMjQsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBid2lkdGgsIGJoZWln
aHQsCkBAIC0xNTEsMTAgKzE1OSwxMyBAQCB3ZWJraXRfdmlkZW9fc2lua19pZGxlX2Z1bmMoZ3Bv
aW50ZXIgZGF0YSkKICAgICBjYWlyb19yZWN0YW5nbGUoY3IsIDAsIDAsIHByaXYtPndpZHRoLCBw
cml2LT5oZWlnaHQpOwogICAgIGNhaXJvX2ZpbGwoY3IpOwogICAgIGNhaXJvX2Rlc3Ryb3koY3Ip
OworCiAgICAgZ3N0X2J1ZmZlcl91bnJlZihidWZmZXIpOwotICAgIGdfYXN5bmNfcXVldWVfdW5y
ZWYocHJpdi0+YXN5bmNfcXVldWUpOworICAgIHByaXYtPmJ1ZmZlciA9IDA7CiAKICAgICBnX3Np
Z25hbF9lbWl0KHNpbmssIHdlYmtpdF92aWRlb19zaW5rX3NpZ25hbHNbUkVQQUlOVF9SRVFVRVNU
RURdLCAwKTsKKyAgICBnX2NvbmRfc2lnbmFsKHByaXYtPmRhdGFfY29uZCk7CisgICAgZ19tdXRl
eF91bmxvY2socHJpdi0+YnVmZmVyX211dGV4KTsKIAogICAgIHJldHVybiBGQUxTRTsKIH0KQEAg
LTE2NSwxMCArMTc2LDE3IEBAIHdlYmtpdF92aWRlb19zaW5rX3JlbmRlcihHc3RCYXNlU2luayog
YnNpbmssIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgIFdlYktpdFZpZGVvU2luayogc2luayA9IFdF
QktJVF9WSURFT19TSU5LKGJzaW5rKTsKICAgICBXZWJLaXRWaWRlb1NpbmtQcml2YXRlKiBwcml2
ID0gc2luay0+cHJpdjsKIAotICAgIGdfYXN5bmNfcXVldWVfcmVmKHByaXYtPmFzeW5jX3F1ZXVl
KTsKLSAgICBnX2FzeW5jX3F1ZXVlX3B1c2gocHJpdi0+YXN5bmNfcXVldWUsIGdzdF9idWZmZXJf
cmVmKGJ1ZmZlcikpOwotICAgIGdfaWRsZV9hZGRfZnVsbChHX1BSSU9SSVRZX0hJR0hfSURMRSwg
d2Via2l0X3ZpZGVvX3NpbmtfaWRsZV9mdW5jLCBzaW5rLCAwKTsKKyAgICBnX211dGV4X2xvY2so
cHJpdi0+YnVmZmVyX211dGV4KTsKKyAgICBwcml2LT5idWZmZXIgPSBnc3RfYnVmZmVyX3JlZihi
dWZmZXIpOworCisgICAgLy8gVXNlIEhJR0hfSURMRSsyMCBwcmlvcml0eSwgbGlrZSBHdGsrIGZv
ciByZWRyYXdpbmcgb3BlcmF0aW9ucy4KKyAgICBwcml2LT50aW1lb3V0X2lkID0gZ190aW1lb3V0
X2FkZF9mdWxsKEdfUFJJT1JJVFlfSElHSF9JRExFICsgMjAsIDAsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWJraXRfdmlkZW9fc2lua190aW1lb3V0X2Z1bmMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnc3Rfb2JqZWN0X3Jl
ZihzaW5rKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChHRGVz
dHJveU5vdGlmeSlnc3Rfb2JqZWN0X3VucmVmKTsKIAorICAgIGdfY29uZF93YWl0KHByaXYtPmRh
dGFfY29uZCwgcHJpdi0+YnVmZmVyX211dGV4KTsKKyAgICBnX211dGV4X3VubG9jayhwcml2LT5i
dWZmZXJfbXV0ZXgpOwogICAgIHJldHVybiBHU1RfRkxPV19PSzsKIH0KIApAQCAtMjI1LDE4ICsy
NDMsNDEgQEAgd2Via2l0X3ZpZGVvX3NpbmtfZGlzcG9zZShHT2JqZWN0KiBvYmplY3QpCiAgICAg
ICAgIHByaXYtPnN1cmZhY2UgPSAwOwogICAgIH0KIAotICAgIGlmIChwcml2LT5hc3luY19xdWV1
ZSkgewotICAgICAgICBnX2FzeW5jX3F1ZXVlX3VucmVmKHByaXYtPmFzeW5jX3F1ZXVlKTsKLSAg
ICAgICAgcHJpdi0+YXN5bmNfcXVldWUgPSAwOworICAgIGlmIChwcml2LT5kYXRhX2NvbmQpIHsK
KyAgICAgICAgZ19jb25kX2ZyZWUocHJpdi0+ZGF0YV9jb25kKTsKKyAgICAgICAgcHJpdi0+ZGF0
YV9jb25kID0gMDsKKyAgICB9CisKKyAgICBpZiAocHJpdi0+YnVmZmVyX211dGV4KSB7CisgICAg
ICAgIGdfbXV0ZXhfZnJlZShwcml2LT5idWZmZXJfbXV0ZXgpOworICAgICAgICBwcml2LT5idWZm
ZXJfbXV0ZXggPSAwOwogICAgIH0KIAogICAgIEdfT0JKRUNUX0NMQVNTKHBhcmVudF9jbGFzcykt
PmRpc3Bvc2Uob2JqZWN0KTsKIH0KIAogc3RhdGljIHZvaWQKLXdlYmtpdF92aWRlb19zaW5rX2Zp
bmFsaXplKEdPYmplY3QqIG9iamVjdCkKK3VubG9ja19idWZmZXJfbXV0ZXgoV2ViS2l0VmlkZW9T
aW5rUHJpdmF0ZSogcHJpdikKIHsKLSAgICBHX09CSkVDVF9DTEFTUyhwYXJlbnRfY2xhc3MpLT5m
aW5hbGl6ZShvYmplY3QpOworICAgIGdfbXV0ZXhfbG9jayhwcml2LT5idWZmZXJfbXV0ZXgpOwor
CisgICAgaWYgKHByaXYtPmJ1ZmZlcikgeworICAgICAgICBnc3RfYnVmZmVyX3VucmVmKHByaXYt
PmJ1ZmZlcik7CisgICAgICAgIHByaXYtPmJ1ZmZlciA9IDA7CisgICAgfQorCisgICAgZ19jb25k
X3NpZ25hbChwcml2LT5kYXRhX2NvbmQpOworICAgIGdfbXV0ZXhfdW5sb2NrKHByaXYtPmJ1ZmZl
cl9tdXRleCk7CisKK30KKworc3RhdGljIGdib29sZWFuCit3ZWJraXRfdmlkZW9fc2lua191bmxv
Y2soR3N0QmFzZVNpbmsqIG9iamVjdCkKK3sKKyAgICBXZWJLaXRWaWRlb1NpbmsqIHNpbmsgPSBX
RUJLSVRfVklERU9fU0lOSyhvYmplY3QpOworICAgIHVubG9ja19idWZmZXJfbXV0ZXgoc2luay0+
cHJpdik7CisgICAgR1NUX0NBTExfUEFSRU5UX1dJVEhfREVGQVVMVChHU1RfQkFTRV9TSU5LX0NM
QVNTLCB1bmxvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2JqZWN0KSwg
VFJVRSk7CiB9CiAKIHN0YXRpYyB2b2lkCkBAIC0yNzYsMTcgKzMxNyw3IEBAIHN0YXRpYyBnYm9v
bGVhbgogd2Via2l0X3ZpZGVvX3Npbmtfc3RvcChHc3RCYXNlU2luayogYmFzZV9zaW5rKQogewog
ICAgIFdlYktpdFZpZGVvU2lua1ByaXZhdGUqIHByaXYgPSBXRUJLSVRfVklERU9fU0lOSyhiYXNl
X3NpbmspLT5wcml2OwotCi0gICAgZ19hc3luY19xdWV1ZV9sb2NrKHByaXYtPmFzeW5jX3F1ZXVl
KTsKLQotICAgIC8qIFJlbW92ZSBhbGwgcmVtYWluaW5nIG9iamVjdHMgZnJvbSB0aGUgcXVldWUg
Ki8KLSAgICB3aGlsZSAoR3N0QnVmZmVyKiBidWZmZXIgPSAoR3N0QnVmZmVyKilnX2FzeW5jX3F1
ZXVlX3RyeV9wb3BfdW5sb2NrZWQocHJpdi0+YXN5bmNfcXVldWUpKQotICAgICAgICBnc3RfYnVm
ZmVyX3VucmVmKGJ1ZmZlcik7Ci0KLSAgICBnX2FzeW5jX3F1ZXVlX3VubG9jayhwcml2LT5hc3lu
Y19xdWV1ZSk7Ci0KLSAgICBnX2lkbGVfcmVtb3ZlX2J5X2RhdGEoYmFzZV9zaW5rKTsKLQorICAg
IHVubG9ja19idWZmZXJfbXV0ZXgocHJpdik7CiAgICAgcmV0dXJuIFRSVUU7CiB9CiAKQEAgLTMw
Miw4ICszMzMsOCBAQCB3ZWJraXRfdmlkZW9fc2lua19jbGFzc19pbml0KFdlYktpdFZpZGVvU2lu
a0NsYXNzKiBrbGFzcykKICAgICBnb2JqZWN0X2NsYXNzLT5nZXRfcHJvcGVydHkgPSB3ZWJraXRf
dmlkZW9fc2lua19nZXRfcHJvcGVydHk7CiAKICAgICBnb2JqZWN0X2NsYXNzLT5kaXNwb3NlID0g
d2Via2l0X3ZpZGVvX3NpbmtfZGlzcG9zZTsKLSAgICBnb2JqZWN0X2NsYXNzLT5maW5hbGl6ZSA9
IHdlYmtpdF92aWRlb19zaW5rX2ZpbmFsaXplOwogCisgICAgZ3N0YmFzZV9zaW5rX2NsYXNzLT51
bmxvY2sgPSB3ZWJraXRfdmlkZW9fc2lua191bmxvY2s7CiAgICAgZ3N0YmFzZV9zaW5rX2NsYXNz
LT5yZW5kZXIgPSB3ZWJraXRfdmlkZW9fc2lua19yZW5kZXI7CiAgICAgZ3N0YmFzZV9zaW5rX2Ns
YXNzLT5wcmVyb2xsID0gd2Via2l0X3ZpZGVvX3NpbmtfcmVuZGVyOwogICAgIGdzdGJhc2Vfc2lu
a19jbGFzcy0+c3RvcCA9IHdlYmtpdF92aWRlb19zaW5rX3N0b3A7CmRpZmYgLS1naXQgYS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9WaWRlb1NpbmtHU3RyZWFtZXIuaCBiL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL1ZpZGVvU2lua0dTdHJlYW1lci5oCmluZGV4IGJlMmM5NGMu
LmU3YTJmODEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL1ZpZGVv
U2lua0dTdHJlYW1lci5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL1ZpZGVv
U2lua0dTdHJlYW1lci5oCkBAIC0yMiw3ICsyMiw3IEBACiAKICNpbmNsdWRlIDxjYWlyby5oPgog
I2luY2x1ZGUgPGdsaWItb2JqZWN0Lmg+Ci0jaW5jbHVkZSA8Z3N0L2Jhc2UvZ3N0YmFzZXNpbmsu
aD4KKyNpbmNsdWRlIDxnc3QvdmlkZW8vZ3N0dmlkZW9zaW5rLmg+CiAKIEdfQkVHSU5fREVDTFMK
IApAQCAtNTQsMTMgKzU0LDEzIEBAIHR5cGVkZWYgc3RydWN0IF9XZWJLaXRWaWRlb1NpbmtQcml2
YXRlIFdlYktpdFZpZGVvU2lua1ByaXZhdGU7CiAKIHN0cnVjdCBfV2ViS2l0VmlkZW9TaW5rIHsK
ICAgICAvKjwgcHJpdmF0ZSA+Ki8KLSAgICBHc3RCYXNlU2luayBwYXJlbnQ7CisgICAgR3N0Vmlk
ZW9TaW5rIHBhcmVudDsKICAgICBXZWJLaXRWaWRlb1NpbmtQcml2YXRlICpwcml2OwogfTsKIAog
c3RydWN0IF9XZWJLaXRWaWRlb1NpbmtDbGFzcyB7CiAgICAgLyo8IHByaXZhdGUgPiovCi0gICAg
R3N0QmFzZVNpbmtDbGFzcyBwYXJlbnRfY2xhc3M7CisgICAgR3N0VmlkZW9TaW5rQ2xhc3MgcGFy
ZW50X2NsYXNzOwogCiAgICAgLyogRnV0dXJlIHBhZGRpbmcgKi8KICAgICB2b2lkICgqIF93ZWJr
aXRfcmVzZXJ2ZWQxKSh2b2lkKTsKLS0gCjEuNi4zLjMKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>