<?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>95923</bug_id>
          
          <creation_ts>2012-09-05 18:51:17 -0700</creation_ts>
          <short_desc>[EFL] Implement GCActivityCallback</short_desc>
          <delta_ts>2013-06-03 20:20:38 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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>
          <dependson>96045</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Hojong Han">hojong.han</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>barraclough</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>d-r</cc>
    
    <cc>ggaren</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hausmann</cc>
    
    <cc>kenneth</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>rakuco</cc>
    
    <cc>tmpsantos</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>712757</commentid>
    <comment_count>0</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-09-05 18:51:17 -0700</bug_when>
    <thetext>to add a GCActivityCallbackEfl.cpp, 
and implement GCActivityCallback with platform timer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>712767</commentid>
    <comment_count>1</comment_count>
      <attachid>162393</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-09-05 18:59:37 -0700</bug_when>
    <thetext>Created attachment 162393
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713234</commentid>
    <comment_count>2</comment_count>
      <attachid>162393</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-09-06 06:24:04 -0700</bug_when>
    <thetext>Comment on attachment 162393
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:8
&gt; +        Implement GCActivityCallback and HeapTimer for EFL port.

It would be good if you could explain what you need these for.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713914</commentid>
    <comment_count>3</comment_count>
      <attachid>162393</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-09-06 17:37:15 -0700</bug_when>
    <thetext>Comment on attachment 162393
Patch

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

&gt; Source/JavaScriptCore/PlatformEfl.cmake:2
&gt; +    runtime/GCActivityCallback.cpp

In this file case, I think we&apos;re able to remove this file in CMakeLists.txt. Then, we can add a port specific file to PlatformXXX.cmake by port itself. So, I&apos;m going to file a bug for this.

&gt; Source/JavaScriptCore/PlatformEfl.cmake:10
&gt; +    runtime/GCActivityCallbackEfl.cpp

Wrong alphabetical order.

&gt; Source/JavaScriptCore/PlatformEfl.cmake:19
&gt; +    ${ECORE_X_INCLUDE_DIRS}

ditto.

&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:147
&gt; +        ecore_timer_del(m_timer);

A new line ?

&gt; Source/JavaScriptCore/heap/HeapTimer.h:77
&gt; +    Ecore_Timer* m_timer;

Can&apos;t you use OwnPtr here ? If you can use OwnPtr for this, you&apos;d be able to remove most of the checks for m_timer as well as calls to ecore_timer_del() in this patch.

See also, RunLoopEfl.h / cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714026</commentid>
    <comment_count>4</comment_count>
      <attachid>162655</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-09-06 19:37:17 -0700</bug_when>
    <thetext>Created attachment 162655
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714028</commentid>
    <comment_count>5</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-09-06 19:38:05 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 162393 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=162393&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/ChangeLog:8
&gt; &gt; +        Implement GCActivityCallback and HeapTimer for EFL port.
&gt; 
&gt; It would be good if you could explain what you need these for.
These are for efficient use of JSC heap.
JSC heap grows rapidly at some web sites and it causes fragmentation a lot in marked blocks so that we put the codes calling collect without sweep according to the allocated size in order to make use of available spaces in marked blocks better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714158</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-06 23:11:20 -0700</bug_when>
    <thetext>I see an issue here that is not EFL specific:

The only thing that is not cross-platform in an implementation of HeapTimer and GCActivityCallback is the timer. The rest is copy &amp; paste across the ports. Wouldn&apos;t it be nicer to have the simple runloop timer functionality needed here abstracted away in WTF and make these two JSC classes cross-platform?

Kenneth, what do you think? Doesn&apos;t this smell like an opportunity for code sharing? :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714235</commentid>
    <comment_count>7</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-07 00:49:53 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; I see an issue here that is not EFL specific:
&gt; 
&gt; The only thing that is not cross-platform in an implementation of HeapTimer and GCActivityCallback is the timer. The rest is copy &amp; paste across the ports. Wouldn&apos;t it be nicer to have the simple runloop timer functionality needed here abstracted away in WTF and make these two JSC classes cross-platform?
&gt; 
&gt; Kenneth, what do you think? Doesn&apos;t this smell like an opportunity for code sharing? :)

I think that sounds like a good idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714249</commentid>
    <comment_count>8</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-09-07 01:05:05 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; I see an issue here that is not EFL specific:
&gt; &gt; 
&gt; &gt; The only thing that is not cross-platform in an implementation of HeapTimer and GCActivityCallback is the timer. The rest is copy &amp; paste across the ports. Wouldn&apos;t it be nicer to have the simple runloop timer functionality needed here abstracted away in WTF and make these two JSC classes cross-platform?
&gt; &gt; 
&gt; &gt; Kenneth, what do you think? Doesn&apos;t this smell like an opportunity for code sharing? :)
&gt; 
&gt; I think that sounds like a good idea.

I think so. BTW, do you think this patch supports it as well? Isn’t it better to resolve that in a new bug after finishing this bug ? :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716751</commentid>
    <comment_count>9</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-09-10 18:21:00 -0700</bug_when>
    <thetext>Geoffrey, 
Could you take a look into this patch?
Give me any feedback in terms of JSC heap.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774803</commentid>
    <comment_count>10</comment_count>
      <attachid>162393</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-11-24 02:21:21 -0800</bug_when>
    <thetext>Comment on attachment 162393
Patch

Hojong, I wonder if EFL port still needs to have this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775061</commentid>
    <comment_count>11</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-11-25 17:00:47 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 162393 [details])
&gt; Hojong, I wonder if EFL port still needs to have this patch.

Yes, I think it needs this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780958</commentid>
    <comment_count>12</comment_count>
      <attachid>162655</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-12-02 08:50:27 -0800</bug_when>
    <thetext>Comment on attachment 162655
Patch

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

&gt; Source/JavaScriptCore/PlatformEfl.cmake:18
&gt; +    ${ECORE_X_INCLUDE_DIRS}

Why do you incluce ECORE_X instead of ECORE ? There is no ecore_x usage in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780959</commentid>
    <comment_count>13</comment_count>
      <attachid>162655</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-12-02 09:04:11 -0800</bug_when>
    <thetext>Comment on attachment 162655
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:8
&gt; +        Implement GCActivityCallback and HeapTimer for EFL port.

Please explain in the changelog why those are needed (i.e. the benefit of implementing this).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781096</commentid>
    <comment_count>14</comment_count>
      <attachid>177172</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-12-02 20:37:01 -0800</bug_when>
    <thetext>Created attachment 177172
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781098</commentid>
    <comment_count>15</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2012-12-02 20:38:51 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 162655 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=162655&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/PlatformEfl.cmake:18
&gt; &gt; +    ${ECORE_X_INCLUDE_DIRS}
&gt; 
&gt; Why do you incluce ECORE_X instead of ECORE ? There is no ecore_x usage in this patch.
I changed it to ECORE and added ENIA which should be included with ECORE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781440</commentid>
    <comment_count>16</comment_count>
      <attachid>177172</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-12-03 07:41:21 -0800</bug_when>
    <thetext>Comment on attachment 177172
Patch

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

&gt; Source/JavaScriptCore/PlatformEfl.cmake:2
&gt; +    runtime/GCActivityCallback.cpp

As Simon said, I also think this file is not cross-platform. At least, I think we shouldn&apos;t remove existing file for port implementation as here. Generally, each port has its own implementation file for similar case. For example, in this case, I think we should have GCActivityCallbackEfl.h/.cpp for now at least. I think you need to file a new bug for this issue regardless of which method is better(Simon&apos;s suggestion or support for each port implementation(CF, blackberry, EFL port and so on). Then, I think you can add this patch for EFL port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>787084</commentid>
    <comment_count>17</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-12-10 01:36:41 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; (In reply to comment #6)
&gt; &gt; &gt; I see an issue here that is not EFL specific:
&gt; &gt; &gt; 
&gt; &gt; &gt; The only thing that is not cross-platform in an implementation of HeapTimer and GCActivityCallback is the timer. The rest is copy &amp; paste across the ports. Wouldn&apos;t it be nicer to have the simple runloop timer functionality needed here abstracted away in WTF and make these two JSC classes cross-platform?
&gt; &gt; &gt; 
&gt; &gt; &gt; Kenneth, what do you think? Doesn&apos;t this smell like an opportunity for code sharing? :)
&gt; &gt; 
&gt; &gt; I think that sounds like a good idea.
&gt; 
&gt; I think so. BTW, do you think this patch supports it as well? Isn’t it better to resolve that in a new bug after finishing this bug ? :-)

Given that this doesn&apos;t seem to be urgent (the patch has been hanging around here for a good while now), why not do it all in one shot?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802176</commentid>
    <comment_count>18</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-08 02:53:49 -0800</bug_when>
    <thetext>Btw, see my patch in bug #103996 https://bugs.webkit.org/attachment.cgi?id=181678&amp;action=prettypatch

I have tried to split HeapTimer.cpp into platform specific files. EFL would need your own file under that system.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803011</commentid>
    <comment_count>19</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-01-08 21:38:37 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; Btw, see my patch in bug #103996 https://bugs.webkit.org/attachment.cgi?id=181678&amp;action=prettypatch
&gt; 
&gt; I have tried to split HeapTimer.cpp into platform specific files. EFL would need your own file under that system.

I&apos;m considering to split HeapTimer.cpp into each port file on Bug 96054. If you land it, I think this patch also should follow it. BTW, how do you think to split GCACtivityCallback.cpp as HeapTimer.cpp ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892112</commentid>
    <comment_count>20</comment_count>
      <attachid>202494</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-21 22:08:39 -0700</bug_when>
    <thetext>Created attachment 202494
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892120</commentid>
    <comment_count>21</comment_count>
      <attachid>202494</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-21 22:36:56 -0700</bug_when>
    <thetext>Comment on attachment 202494
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        [EFL] Implement GCActivityCallback

It looks you need to change bug title according to new patch.

&gt; Source/JavaScriptCore/PlatformEfl.cmake:2
&gt; +    ${ECORE_X_INCLUDE_DIRS}

It looks you don&apos;t use ecore_x. So, ${ECORE_INCLUDE_DIRS} is enough.

&gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:-105
&gt; -

Do not modify code unrelated to this patch.

&gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:124
&gt; +    stop();

Why do you need to call stop() here ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892129</commentid>
    <comment_count>22</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-21 22:53:22 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; (From update of attachment 202494 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202494&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/ChangeLog:3
&gt; &gt; +        [EFL] Implement GCActivityCallback
&gt; 
&gt; It looks you need to change bug title according to new patch.

Title changed to match with the patch.

&gt; &gt; Source/JavaScriptCore/PlatformEfl.cmake:2
&gt; &gt; +    ${ECORE_X_INCLUDE_DIRS}
&gt; 
&gt; It looks you don&apos;t use ecore_x. So, ${ECORE_INCLUDE_DIRS} is enough.

yes, ECORE_INCLUDE_DIRS is enough. I&apos;ll change it.

&gt; &gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:-105
&gt; &gt; -
&gt; 
&gt; Do not modify code unrelated to this patch.

It&apos;s just kind of improving readability, but no biggie whether keep it as it was.

&gt; &gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:124
&gt; &gt; +    stop();
&gt; 
&gt; Why do you need to call stop() here ?

Doesn&apos;t it need to stop the previous before setting new one ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892130</commentid>
    <comment_count>23</comment_count>
      <attachid>202500</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-21 23:03:05 -0700</bug_when>
    <thetext>Created attachment 202500
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892133</commentid>
    <comment_count>24</comment_count>
      <attachid>202500</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-21 23:10:34 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:188
&gt; +    return ECORE_CALLBACK_CANCEL;

You need to set heapTimer-&gt;m_timer to 0 before returning. When you return ECORE_CALLBACK_CANCEL, the handle will become invalid and ecore_timer_del(m_timer) will fail in the destructor.

&gt; Source/JavaScriptCore/heap/HeapTimer.h:42
&gt; +#include &lt;Ecore.h&gt;

A forward declaration of Ecore_Timer would suffice here. And this include can be moved to the cpp.

&gt; Source/JavaScriptCore/heap/HeapTimer.h:87
&gt; +    void stop()

Can you put the method body in the cpp file instead?

&gt; Source/JavaScriptCore/heap/HeapTimer.h:89
&gt; +        if (m_timer) {

We usually do the opposite in WebKit, return early.
If (!m_timer)
    return;

&gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:127
&gt; +    m_timer = ecore_timer_add(newDelay, reinterpret_cast&lt;Ecore_Task_Cb&gt;(HeapTimer::timerEvent), this);

I would add a ASSERT(!m_timer); right before this line to make sure we never leak.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892141</commentid>
    <comment_count>25</comment_count>
      <attachid>202500</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-21 23:41:59 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:188
&gt;&gt; +    return ECORE_CALLBACK_CANCEL;
&gt; 
&gt; You need to set heapTimer-&gt;m_timer to 0 before returning. When you return ECORE_CALLBACK_CANCEL, the handle will become invalid and ecore_timer_del(m_timer) will fail in the destructor.

I&apos;ll apply your review to the patch.

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.h:42
&gt;&gt; +#include &lt;Ecore.h&gt;
&gt; 
&gt; A forward declaration of Ecore_Timer would suffice here. And this include can be moved to the cpp.

Do you mean that it&apos;d better move &quot;#include &lt;Ecore.h&gt;&quot; to the cpp?

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.h:87
&gt;&gt; +    void stop()
&gt; 
&gt; Can you put the method body in the cpp file instead?

This&apos;ll be moved as your comment.

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.h:89
&gt;&gt; +        if (m_timer) {
&gt; 
&gt; We usually do the opposite in WebKit, return early.
&gt; If (!m_timer)
&gt;     return;

This&apos;ll be moved as your comment.

&gt;&gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:127
&gt;&gt; +    m_timer = ecore_timer_add(newDelay, reinterpret_cast&lt;Ecore_Task_Cb&gt;(HeapTimer::timerEvent), this);
&gt; 
&gt; I would add a ASSERT(!m_timer); right before this line to make sure we never leak.

I&apos;ll fix to set m_timer as 0 in stop().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892144</commentid>
    <comment_count>26</comment_count>
      <attachid>202500</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-21 23:45:12 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt;&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.h:42
&gt;&gt;&gt; +#include &lt;Ecore.h&gt;
&gt;&gt; 
&gt;&gt; A forward declaration of Ecore_Timer would suffice here. And this include can be moved to the cpp.
&gt; 
&gt; Do you mean that it&apos;d better move &quot;#include &lt;Ecore.h&gt;&quot; to the cpp?

Yes, and have a forward declaration here:
typedef struct _Ecore_Timer Ecore_Timer;

&gt;&gt;&gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:127
&gt;&gt;&gt; +    m_timer = ecore_timer_add(newDelay, reinterpret_cast&lt;Ecore_Task_Cb&gt;(HeapTimer::timerEvent), this);
&gt;&gt; 
&gt;&gt; I would add a ASSERT(!m_timer); right before this line to make sure we never leak.
&gt; 
&gt; I&apos;ll fix to set m_timer as 0 in stop().

You already set m_timer to 0 in stop. All I ask for in an extra assert to make sure someone does not remove the stop() later on :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892146</commentid>
    <comment_count>27</comment_count>
      <attachid>202500</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-21 23:51:04 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:174
&gt; +    ecore_init();

Why do you need to call ecore_init() again though it is already called during the webprocess initialization ?

&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:180
&gt; +    ecore_shutdown();

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892147</commentid>
    <comment_count>28</comment_count>
      <attachid>202500</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-21 23:56:28 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt;&gt;&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.h:42
&gt;&gt;&gt;&gt; +#include &lt;Ecore.h&gt;
&gt;&gt;&gt; 
&gt;&gt;&gt; A forward declaration of Ecore_Timer would suffice here. And this include can be moved to the cpp.
&gt;&gt; 
&gt;&gt; Do you mean that it&apos;d better move &quot;#include &lt;Ecore.h&gt;&quot; to the cpp?
&gt; 
&gt; Yes, and have a forward declaration here:
&gt; typedef struct _Ecore_Timer Ecore_Timer;

HeapTimer.h is included in GCActivityCallback.h and there&apos;s Ecore_Task_Cb in GCActivityCallback.cpp.
What do you think keeping it in HeapTimer.h?

&gt;&gt;&gt;&gt; Source/JavaScriptCore/runtime/GCActivityCallback.cpp:127
&gt;&gt;&gt;&gt; +    m_timer = ecore_timer_add(newDelay, reinterpret_cast&lt;Ecore_Task_Cb&gt;(HeapTimer::timerEvent), this);
&gt;&gt;&gt; 
&gt;&gt;&gt; I would add a ASSERT(!m_timer); right before this line to make sure we never leak.
&gt;&gt; 
&gt;&gt; I&apos;ll fix to set m_timer as 0 in stop().
&gt; 
&gt; You already set m_timer to 0 in stop. All I ask for in an extra assert to make sure someone does not remove the stop() later on :)

yes, it&apos;s good to apply for the case as you mentioned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892152</commentid>
    <comment_count>29</comment_count>
      <attachid>202500</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-22 00:08:29 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt;&gt;&gt;&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.h:42
&gt;&gt;&gt;&gt;&gt; +#include &lt;Ecore.h&gt;
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; A forward declaration of Ecore_Timer would suffice here. And this include can be moved to the cpp.
&gt;&gt;&gt; 
&gt;&gt;&gt; Do you mean that it&apos;d better move &quot;#include &lt;Ecore.h&gt;&quot; to the cpp?
&gt;&gt; 
&gt;&gt; Yes, and have a forward declaration here:
&gt;&gt; typedef struct _Ecore_Timer Ecore_Timer;
&gt; 
&gt; HeapTimer.h is included in GCActivityCallback.h and there&apos;s Ecore_Task_Cb in GCActivityCallback.cpp.
&gt; What do you think keeping it in HeapTimer.h?

No, please add the proper include to GCActivityCallback.cpp then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892154</commentid>
    <comment_count>30</comment_count>
      <attachid>202500</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 00:11:49 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:174
&gt;&gt; +    ecore_init();
&gt; 
&gt; Why do you need to call ecore_init() again though it is already called during the webprocess initialization ?

There&apos;s a binary to run in shell. That binary runs without ecore_init but ecore_timer is in GCActivityCallback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892155</commentid>
    <comment_count>31</comment_count>
      <attachid>202503</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 00:20:39 -0700</bug_when>
    <thetext>Created attachment 202503
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892160</commentid>
    <comment_count>32</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-22 00:28:46 -0700</bug_when>
    <thetext>(In reply to comment #30)
&gt; (From update of attachment 202500 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202500&amp;action=review
&gt; 
&gt; &gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:174
&gt; &gt;&gt; +    ecore_init();
&gt; &gt; 
&gt; &gt; Why do you need to call ecore_init() again though it is already called during the webprocess initialization ?
&gt; 
&gt; There&apos;s a binary to run in shell. That binary runs without ecore_init but ecore_timer is in GCActivityCallback.

If so, how about adding it to main() of Jsc.cpp ? I don&apos;t agree to call ecore_init() / ecore_shutdown() again here. I heard that there may be problems inside EFL when we call it twice.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892161</commentid>
    <comment_count>33</comment_count>
      <attachid>202503</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-22 00:35:21 -0700</bug_when>
    <thetext>Comment on attachment 202503
Patch

Similarly to the BlackBerry implementation, your HeapTimer implementation will only work for the main thread. I would make that obvious with a comment and a check in the constructor, as BlackBerry is doing. Please make sure to test your patch in debug mode to make sure you&apos;re not introducing crashes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892162</commentid>
    <comment_count>34</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-22 00:38:10 -0700</bug_when>
    <thetext>(In reply to comment #32)
&gt; (In reply to comment #30)
&gt; &gt; (From update of attachment 202500 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202500&amp;action=review
&gt; &gt; 
&gt; &gt; &gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:174
&gt; &gt; &gt;&gt; +    ecore_init();
&gt; &gt; &gt; 
&gt; &gt; &gt; Why do you need to call ecore_init() again though it is already called during the webprocess initialization ?
&gt; &gt; 
&gt; &gt; There&apos;s a binary to run in shell. That binary runs without ecore_init but ecore_timer is in GCActivityCallback.
&gt; 
&gt; If so, how about adding it to main() of Jsc.cpp ? I don&apos;t agree to call ecore_init() / ecore_shutdown() again here. I heard that there may be problems inside EFL when we call it twice.

if you ecore_init() more than once, it should merely increase a ref count and not do any processing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892163</commentid>
    <comment_count>35</comment_count>
      <attachid>202500</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 00:38:11 -0700</bug_when>
    <thetext>Comment on attachment 202500
Patch

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

&gt;&gt;&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:174
&gt;&gt;&gt;&gt; +    ecore_init();
&gt;&gt;&gt; 
&gt;&gt;&gt; Why do you need to call ecore_init() again though it is already called during the webprocess initialization ?
&gt;&gt; 
&gt;&gt; There&apos;s a binary to run in shell. That binary runs without ecore_init but ecore_timer is in GCActivityCallback.
&gt; 
&gt; If so, how about adding it to main() of Jsc.cpp ? I don&apos;t agree to call ecore_init() / ecore_shutdown() again here. I heard that there may be problems inside EFL when we call it twice.

Good to move those in Jsc.cpp even if there isn&apos;t any specific problem when calling it more than twice as I know of :)

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:180
&gt;&gt; +    ecore_shutdown();
&gt; 
&gt; ditto.

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892167</commentid>
    <comment_count>36</comment_count>
      <attachid>202505</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 00:58:29 -0700</bug_when>
    <thetext>Created attachment 202505
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892169</commentid>
    <comment_count>37</comment_count>
      <attachid>202505</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-22 01:09:57 -0700</bug_when>
    <thetext>Comment on attachment 202505
Patch

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

&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:175
&gt; +{

Please see my earlier comment about adding a thread check here.

&gt; Source/JavaScriptCore/jsc.cpp:805
&gt; +    ShellEnvironment env;

Why add this to jscmain instead of main() like other ports?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892173</commentid>
    <comment_count>38</comment_count>
      <attachid>202505</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-22 01:31:30 -0700</bug_when>
    <thetext>Comment on attachment 202505
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:8
&gt; +        Implements the activity triggered garbage collector.

It looks this description is insufficient for this patch. Please add more detailed description.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892174</commentid>
    <comment_count>39</comment_count>
      <attachid>202505</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 01:33:37 -0700</bug_when>
    <thetext>Comment on attachment 202505
Patch

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

&gt;&gt; Source/JavaScriptCore/heap/HeapTimer.cpp:175
&gt;&gt; +{
&gt; 
&gt; Please see my earlier comment about adding a thread check here.

HeapTimer can be created in other than main thread, but it does not make m_timer run because other threads might not have an ecore loop.
In this vein, ecore_init() in constructor and ecore_shutdown() in destructor are necessary.

&gt;&gt; Source/JavaScriptCore/jsc.cpp:805
&gt;&gt; +    ShellEnvironment env;
&gt; 
&gt; Why add this to jscmain instead of main() like other ports?

I&apos;ll remove this if my comment upper is acceptable</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892237</commentid>
    <comment_count>40</comment_count>
      <attachid>202524</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 05:04:53 -0700</bug_when>
    <thetext>Created attachment 202524
Patch

GCActivityCallback works only in main thread</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892238</commentid>
    <comment_count>41</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-22 05:07:22 -0700</bug_when>
    <thetext>Attachment 202524 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source/JavaScriptCore/PlatformEfl.cmake&apos;, u&apos;Source/JavaScriptCore/heap/HeapTimer.cpp&apos;, u&apos;Source/JavaScriptCore/heap/HeapTimer.h&apos;, u&apos;Source/JavaScriptCore/jsc.cpp&apos;, u&apos;Source/JavaScriptCore/runtime/GCActivityCallback.cpp&apos;, u&apos;Source/JavaScriptCore/runtime/GCActivityCallback.h&apos;]&quot; exit_code: 1
Source/JavaScriptCore/ChangeLog:12:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 7 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>892240</commentid>
    <comment_count>42</comment_count>
      <attachid>202526</attachid>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-05-22 05:13:56 -0700</bug_when>
    <thetext>Created attachment 202526
Patch

style error fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892636</commentid>
    <comment_count>43</comment_count>
      <attachid>202526</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-22 19:29:41 -0700</bug_when>
    <thetext>Comment on attachment 202526
Patch

Looks good to me for EFL port. However, I&apos;d like to know how does JS reviewer think about this patch. Geoffrey, what do you think about this ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896659</commentid>
    <comment_count>44</comment_count>
      <attachid>202526</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-06-03 17:12:13 -0700</bug_when>
    <thetext>Comment on attachment 202526
Patch

Please use #endif followed by #if instead of #elif. For platform #ifdefs, that makes it easier to edit code that&apos;s not related to your particular port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896686</commentid>
    <comment_count>45</comment_count>
    <who name="Hojong Han">hojong.han</who>
    <bug_when>2013-06-03 18:16:25 -0700</bug_when>
    <thetext>(In reply to comment #44)
&gt; (From update of attachment 202526 [details])
&gt; Please use #endif followed by #if instead of #elif. For platform #ifdefs, that makes it easier to edit code that&apos;s not related to your particular port.
Thanks for review, Geoffrey.
But one thing not clear is which #elifs you meant. #elifs for QT and BlackBerry had been used so that I complied with those.
Do you want every #elif, on this patch, to follow your guide or just several parts such as including header file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896711</commentid>
    <comment_count>46</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-06-03 19:59:51 -0700</bug_when>
    <thetext>Ah, I didn&apos;t realize. I guess we can save the #if/#elif cleanup for a follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896713</commentid>
    <comment_count>47</comment_count>
      <attachid>202526</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-03 20:20:30 -0700</bug_when>
    <thetext>Comment on attachment 202526
Patch

Clearing flags on attachment: 202526

Committed r151149: &lt;http://trac.webkit.org/changeset/151149&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896714</commentid>
    <comment_count>48</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-03 20:20:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162393</attachid>
            <date>2012-09-05 18:59:37 -0700</date>
            <delta_ts>2012-11-24 02:21:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20120906105917.patch</filename>
            <type>text/plain</type>
            <size>6064</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3NTcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
M2I2ZGYxN2Q4ODYwNTQxZmU5YjhjNDI5ZmJmODc3OGIzN2ExYTQ5Li5iZjU2NWQyMWVhOTBlNjM3
NjJiYjRhOGVkN2I1OTQ4NjkxNDk0ZDhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMSBAQAorMjAxMi0wOS0wNSAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjayB3aXRoIHBs
YXRmb3JtIHRpbWVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05NTkyMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEltcGxlbWVudCBHQ0FjdGl2aXR5Q2FsbGJhY2sgYW5kIEhlYXBUaW1lciBmb3IgRUZMIHBv
cnQuCisKKyAgICAgICAgKiBQbGF0Zm9ybUVmbC5jbWFrZToKKyAgICAgICAgKiBoZWFwL0hlYXBU
aW1lci5jcHA6CisgICAgICAgIChKU0MpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OkhlYXBU
aW1lcik6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6fkhlYXBUaW1lcik6CisgICAgICAgIChK
U0M6OkhlYXBUaW1lcjo6ZGlkU3RhcnRWTVNodXRkb3duKToKKyAgICAgICAgKEpTQzo6SGVhcFRp
bWVyOjpzeW5jaHJvbml6ZSk6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6aW52YWxpZGF0ZSk6
CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6dGltZXJEaWRGaXJlKToKKyAgICAgICAgKiBoZWFw
L0hlYXBUaW1lci5oOgorICAgICAgICAoSGVhcFRpbWVyKToKKyAgICAgICAgKiBydW50aW1lL0dD
QWN0aXZpdHlDYWxsYmFja0VmbC5jcHA6IEFkZGVkLgorICAgICAgICAoSlNDKToKKyAgICAgICAg
KEpTQzo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFj
ayk6CisgICAgICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvV29yayk6Cisg
ICAgICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRpZEFsbG9jYXRlKToKKyAg
ICAgICAgKEpTQzo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6d2lsbENvbGxlY3QpOgorICAg
ICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpjYW5jZWwpOgorCiAyMDEyLTA5
LTA1ICBHYWJvciBSYXBjc2FueWkgIDxyZ2Fib3JAd2Via2l0Lm9yZz4KIAogICAgICAgICBERkcg
SklUIGRvZXNuJ3Qgd29yayBwcm9wZXJseSBvbiBBUk0gaGFyZGZwCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvUGxhdGZvcm1FZmwuY21ha2UKaW5kZXggNzhhM2ExZjE3YmU2OTcyMzBiMTQ2OGFkYTExYmRi
MGIwYWE3YWQ3NS4uNzM2YzlkMDhiYWI3Mjk0NWYyYjBlYzljM2UyYmYwMGI0ZTgwYjY4ZCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFrZQpAQCAtMSw4ICsxLDEzIEBACitM
SVNUKFJFTU9WRV9JVEVNIEphdmFTY3JpcHRDb3JlX1NPVVJDRVMKKyAgICBydW50aW1lL0dDQWN0
aXZpdHlDYWxsYmFjay5jcHAKKykKKwogTElTVChBUFBFTkQgSmF2YVNjcmlwdENvcmVfU09VUkNF
UwogICAgIGppdC9FeGVjdXRhYmxlQWxsb2NhdG9yRml4ZWRWTVBvb2wuY3BwCiAgICAgaml0L0V4
ZWN1dGFibGVBbGxvY2F0b3IuY3BwCiAKICAgICBydW50aW1lL01lbW9yeVN0YXRpc3RpY3MuY3Bw
CisgICAgcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2tFZmwuY3BwCiApCiAKIExJU1QoQVBQRU5E
IEphdmFTY3JpcHRDb3JlX0xJQlJBUklFUwpAQCAtMTEsNiArMTYsNyBAQCBMSVNUKEFQUEVORCBK
YXZhU2NyaXB0Q29yZV9MSUJSQVJJRVMKIAogTElTVChBUFBFTkQgSmF2YVNjcmlwdENvcmVfSU5D
TFVERV9ESVJFQ1RPUklFUwogICAgICR7SUNVX0lOQ0xVREVfRElSU30KKyAgICAke0VDT1JFX1hf
SU5DTFVERV9ESVJTfQogKQogCiBJRiAoRU5BQkxFX0dMSUJfU1VQUE9SVCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9IZWFwVGltZXIuY3BwCmluZGV4IDIxNGY4Njc1Nzg2MjkxMGYzNzI5NDI4
NTg0OGU0OWM2MmNmMjdhNTUuLjAyZGFkNGI2ZThkMjZjODQwYWNiMzQ4YjI0NmYyY2NjZDdjNzZi
YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcApAQCAtMTMyLDYg
KzEzMiw0MyBAQCB2b2lkIEhlYXBUaW1lcjo6ZGlkU3RhcnRWTVNodXRkb3duKCkKICAgICBkZWxl
dGUgdGhpczsKIH0KIAorI2VsaWYgUExBVEZPUk0oRUZMKQorCitIZWFwVGltZXI6OkhlYXBUaW1l
cihKU0dsb2JhbERhdGEqIGdsb2JhbERhdGEpCisgICAgOiBtX2dsb2JhbERhdGEoZ2xvYmFsRGF0
YSkKKyAgICAsIG1fdGltZXIoMCkKK3sKKyAgICBlY29yZV9pbml0KCk7Cit9CisKK0hlYXBUaW1l
cjo6fkhlYXBUaW1lcigpCit7CisgICAgaWYgKG1fdGltZXIpCisgICAgICAgIGVjb3JlX3RpbWVy
X2RlbChtX3RpbWVyKTsKKyAgICBlY29yZV9zaHV0ZG93bigpOworfQorCit2b2lkIEhlYXBUaW1l
cjo6ZGlkU3RhcnRWTVNodXRkb3duKCkKK3sKKyAgICBkZWxldGUgdGhpczsKK30KKwordm9pZCBI
ZWFwVGltZXI6OnN5bmNocm9uaXplKCkKK3sKK30KKwordm9pZCBIZWFwVGltZXI6OmludmFsaWRh
dGUoKQoreworfQorCitib29sIEhlYXBUaW1lcjo6dGltZXJEaWRGaXJlKHZvaWQqIGluZm8pCit7
CisgICAgSGVhcFRpbWVyKiBhZ2VudCA9IHN0YXRpY19jYXN0PEhlYXBUaW1lcio+KGluZm8pOwor
ICAgIGFnZW50LT5kb1dvcmsoKTsKKworICAgIHJldHVybiBFQ09SRV9DQUxMQkFDS19DQU5DRUw7
Cit9CisKICNlbHNlCiAKIEhlYXBUaW1lcjo6SGVhcFRpbWVyKEpTR2xvYmFsRGF0YSogZ2xvYmFs
RGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKaW5kZXggODg3MTUwOThh
NDBkZDIxOWUzYThjMmNjMmE1ZWE2NzdkMGU1ZDI3Yi4uYzI4YjZlMmQ2ZDdmNjM4MGEwNzU4YjRi
N2ZhMmFhYWI3MWI4M2ZmNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFRpbWVyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgK
QEAgLTMzLDYgKzMzLDggQEAKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlv
bi5oPgogI2VsaWYgUExBVEZPUk0oQkxBQ0tCRVJSWSkKICNpbmNsdWRlIDxCbGFja0JlcnJ5UGxh
dGZvcm1UaW1lci5oPgorI2VsaWYgUExBVEZPUk0oRUZMKQorI2luY2x1ZGUgPEVjb3JlLmg+CiAj
ZW5kaWYKIAogbmFtZXNwYWNlIEpTQyB7CkBAIC02OSw2ICs3MSwxMCBAQCBwcm90ZWN0ZWQ6CiAg
ICAgdm9pZCB0aW1lckRpZEZpcmUoKTsKIAogICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpUaW1l
cjxIZWFwVGltZXI+IG1fdGltZXI7CisjZWxpZiBQTEFURk9STShFRkwpCisgICAgc3RhdGljIGJv
b2wgdGltZXJEaWRGaXJlKHZvaWQqKTsKKyAgICAKKyAgICBFY29yZV9UaW1lciogbV90aW1lcjsK
ICNlbmRpZgogICAgIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFja0VmbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2tFZmwuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA4ZjQ1MWRi
YTUzOTE4NjFkZjBhMDBjMWU4ZjJlMzI3YzVlZWQ2MjQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2tFZmwuY3BwCkBAIC0w
LDAgKzEsNjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgU2Ftc3VuZyBFbGVjdHJvbmlj
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFz
IHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZl
cnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVzc2VyIEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxk
IGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisg
KiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBG
cmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZp
ZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjaW5jbHVkZSAiR0NBY3Rpdml0eUNhbGxiYWNrLmgiCisKKyNpbmNsdWRlICJI
ZWFwLmgiCisjaW5jbHVkZSAiSlNHbG9iYWxEYXRhLmgiCisKK25hbWVzcGFjZSBKU0MgeworCitj
b25zdCBkb3VibGUgdGltZXJJbnRlcnZhbCA9IDEuMDsKKworRGVmYXVsdEdDQWN0aXZpdHlDYWxs
YmFjazo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjayhIZWFwKiBoZWFwKQorICAgIDogR0NBY3Rp
dml0eUNhbGxiYWNrKGhlYXAtPmdsb2JhbERhdGEoKSkKK3sKK30KKwordm9pZCBEZWZhdWx0R0NB
Y3Rpdml0eUNhbGxiYWNrOjpkb1dvcmsoKQoreworICAgIGlmIChtX2dsb2JhbERhdGEtPmhlYXAu
aXNCdXN5KCkgfHwgIW1fZ2xvYmFsRGF0YS0+aGVhcC5pc1NhZmVUb0NvbGxlY3QoKSkKKyAgICAg
ICAgcmV0dXJuOworICAgIAorICAgIG1fZ2xvYmFsRGF0YS0+aGVhcC5jb2xsZWN0KEhlYXA6OkRv
Tm90U3dlZXApOworfQorCit2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRpZEFsbG9j
YXRlKHNpemVfdCBieXRlcykKK3sKKyAgICBpZiAoYnl0ZXMgPCAxICogTUIpCisgICAgICAgIHJl
dHVybjsKKyAgICAKKyAgICBpZiAobV90aW1lciB8fCBtX2dsb2JhbERhdGEtPnVzaW5nQVBJKCkp
CisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBtX3RpbWVyID0gZWNvcmVfdGltZXJfYWRkKHRp
bWVySW50ZXJ2YWwsIHJlaW50ZXJwcmV0X2Nhc3Q8RWNvcmVfVGFza19DYj4oSGVhcFRpbWVyOjp0
aW1lckRpZEZpcmUpLCB0aGlzKTsKK30KKwordm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNr
Ojp3aWxsQ29sbGVjdCgpCit7CisgICAgY2FuY2VsKCk7Cit9CisKK3ZvaWQgRGVmYXVsdEdDQWN0
aXZpdHlDYWxsYmFjazo6Y2FuY2VsKCkKK3sKKyAgICBpZiAobV90aW1lcikgeworICAgICAgICBl
Y29yZV90aW1lcl9kZWwobV90aW1lcik7CisgICAgICAgIG1fdGltZXIgPSAwOworICAgIH0KK30K
KworfSAvLyBuYW1lc3BhY2UgSlNDCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162655</attachid>
            <date>2012-09-06 19:37:17 -0700</date>
            <delta_ts>2012-12-02 20:36:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20120907113656.patch</filename>
            <type>text/plain</type>
            <size>6017</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3NTcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
M2I2ZGYxN2Q4ODYwNTQxZmU5YjhjNDI5ZmJmODc3OGIzN2ExYTQ5Li4zNTBiODdmYzE1Y2Q4ODY5
Mzc3MWNjNzIzZTg4ZmI2NDFlYmRmZjEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAxMi0wOS0wNiAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjayB3aXRoIHBs
YXRmb3JtIHRpbWVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05NTkyMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEltcGxlbWVudCBHQ0FjdGl2aXR5Q2FsbGJhY2sgYW5kIEhlYXBUaW1lciBmb3IgRUZMIHBv
cnQuCisKKyAgICAgICAgKiBQbGF0Zm9ybUVmbC5jbWFrZToKKyAgICAgICAgKiBoZWFwL0hlYXBU
aW1lci5jcHA6CisgICAgICAgIChKU0MpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OkhlYXBU
aW1lcik6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6fkhlYXBUaW1lcik6CisgICAgICAgIChK
U0M6OkhlYXBUaW1lcjo6ZGlkU3RhcnRWTVNodXRkb3duKToKKyAgICAgICAgKEpTQzo6SGVhcFRp
bWVyOjpzeW5jaHJvbml6ZSk6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6aW52YWxpZGF0ZSk6
CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6dGltZXJEaWRGaXJlKToKKyAgICAgICAgKiBoZWFw
L0hlYXBUaW1lci5oOgorICAgICAgICAoSGVhcFRpbWVyKToKKyAgICAgICAgKEpTQzo6SGVhcFRp
bWVyOjpzdG9wKToKKyAgICAgICAgKiBydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFja0VmbC5jcHA6
IEFkZGVkLgorICAgICAgICAoSlNDKToKKyAgICAgICAgKEpTQzo6RGVmYXVsdEdDQWN0aXZpdHlD
YWxsYmFjazo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjayk6CisgICAgICAgIChKU0M6OkRlZmF1
bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvV29yayk6CisgICAgICAgIChKU0M6OkRlZmF1bHRHQ0Fj
dGl2aXR5Q2FsbGJhY2s6OmRpZEFsbG9jYXRlKToKKyAgICAgICAgKEpTQzo6RGVmYXVsdEdDQWN0
aXZpdHlDYWxsYmFjazo6d2lsbENvbGxlY3QpOgorICAgICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rp
dml0eUNhbGxiYWNrOjpjYW5jZWwpOgorCiAyMDEyLTA5LTA1ICBHYWJvciBSYXBjc2FueWkgIDxy
Z2Fib3JAd2Via2l0Lm9yZz4KIAogICAgICAgICBERkcgSklUIGRvZXNuJ3Qgd29yayBwcm9wZXJs
eSBvbiBBUk0gaGFyZGZwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZv
cm1FZmwuY21ha2UgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UKaW5k
ZXggNzhhM2ExZjE3YmU2OTcyMzBiMTQ2OGFkYTExYmRiMGIwYWE3YWQ3NS4uMzMxOTZhNTI1M2M1
OTZkMjhlNWRlMmExMTZhOTU4YzFhNzM1Nzg3ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9QbGF0
Zm9ybUVmbC5jbWFrZQpAQCAtMSw3ICsxLDEyIEBACitMSVNUKFJFTU9WRV9JVEVNIEphdmFTY3Jp
cHRDb3JlX1NPVVJDRVMKKyAgICBydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5jcHAKKykKKwog
TElTVChBUFBFTkQgSmF2YVNjcmlwdENvcmVfU09VUkNFUwogICAgIGppdC9FeGVjdXRhYmxlQWxs
b2NhdG9yRml4ZWRWTVBvb2wuY3BwCiAgICAgaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuY3BwCiAK
KyAgICBydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFja0VmbC5jcHAKICAgICBydW50aW1lL01lbW9y
eVN0YXRpc3RpY3MuY3BwCiApCiAKQEAgLTEwLDYgKzE1LDcgQEAgTElTVChBUFBFTkQgSmF2YVNj
cmlwdENvcmVfTElCUkFSSUVTCiApCiAKIExJU1QoQVBQRU5EIEphdmFTY3JpcHRDb3JlX0lOQ0xV
REVfRElSRUNUT1JJRVMKKyAgICAke0VDT1JFX1hfSU5DTFVERV9ESVJTfQogICAgICR7SUNVX0lO
Q0xVREVfRElSU30KICkKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFRpbWVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAK
aW5kZXggMjE0Zjg2NzU3ODYyOTEwZjM3Mjk0Mjg1ODQ4ZTQ5YzYyY2YyN2E1NS4uYTUyZDAxYjZm
Y2FkYjQ4ZTkzYTBkNDE4NmFlNDI3NTg4NTExNzBlZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aGVhcC9IZWFwVGltZXIuY3BwCkBAIC0xMzIsNiArMTMyLDQxIEBAIHZvaWQgSGVhcFRpbWVyOjpk
aWRTdGFydFZNU2h1dGRvd24oKQogICAgIGRlbGV0ZSB0aGlzOwogfQogCisjZWxpZiBQTEFURk9S
TShFRkwpCisKK0hlYXBUaW1lcjo6SGVhcFRpbWVyKEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSkK
KyAgICA6IG1fZ2xvYmFsRGF0YShnbG9iYWxEYXRhKQoreworICAgIGVjb3JlX2luaXQoKTsKK30K
KworSGVhcFRpbWVyOjp+SGVhcFRpbWVyKCkKK3sKKyAgICBzdG9wKCk7CisgICAgZWNvcmVfc2h1
dGRvd24oKTsKK30KKwordm9pZCBIZWFwVGltZXI6OmRpZFN0YXJ0Vk1TaHV0ZG93bigpCit7Cisg
ICAgZGVsZXRlIHRoaXM7Cit9CisKK3ZvaWQgSGVhcFRpbWVyOjpzeW5jaHJvbml6ZSgpCit7Cit9
CisKK3ZvaWQgSGVhcFRpbWVyOjppbnZhbGlkYXRlKCkKK3sKK30KKworYm9vbCBIZWFwVGltZXI6
OnRpbWVyRGlkRmlyZSh2b2lkKiBpbmZvKQoreworICAgIEhlYXBUaW1lciogYWdlbnQgPSBzdGF0
aWNfY2FzdDxIZWFwVGltZXIqPihpbmZvKTsKKyAgICBhZ2VudC0+ZG9Xb3JrKCk7CisKKyAgICBy
ZXR1cm4gRUNPUkVfQ0FMTEJBQ0tfQ0FOQ0VMOworfQorCiAjZWxzZQogCiBIZWFwVGltZXI6Okhl
YXBUaW1lcihKU0dsb2JhbERhdGEqIGdsb2JhbERhdGEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L0hlYXBUaW1lci5oCmluZGV4IDg4NzE1MDk4YTQwZGQyMTllM2E4YzJjYzJhNWVhNjc3ZDBlNWQy
N2IuLmMwNTI0NzdmZGM0MGI2M2ZkOGFhZDFhZTZlODYzZmY3ZmM4YWQxNjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oCkBAIC0zMyw2ICszMywxMCBAQAogI2luY2x1ZGUg
PENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9uLmg+CiAjZWxpZiBQTEFURk9STShCTEFDS0JF
UlJZKQogI2luY2x1ZGUgPEJsYWNrQmVycnlQbGF0Zm9ybVRpbWVyLmg+CisjZWxpZiBQTEFURk9S
TShFRkwpCisjaW5jbHVkZSA8RWNvcmUuaD4KKyNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CisjaW5j
bHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgSlNDIHsKQEAgLTY5
LDYgKzczLDExIEBAIHByb3RlY3RlZDoKICAgICB2b2lkIHRpbWVyRGlkRmlyZSgpOwogCiAgICAg
QmxhY2tCZXJyeTo6UGxhdGZvcm06OlRpbWVyPEhlYXBUaW1lcj4gbV90aW1lcjsKKyNlbGlmIFBM
QVRGT1JNKEVGTCkKKyAgICB2b2lkIHN0b3AoKSB7IG1fdGltZXIgPSBudWxscHRyOyB9CisgICAg
c3RhdGljIGJvb2wgdGltZXJEaWRGaXJlKHZvaWQqKTsKKyAgICAKKyAgICBPd25QdHI8RWNvcmVf
VGltZXI+IG1fdGltZXI7CiAjZW5kaWYKICAgICAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2tFZmwuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrRWZsLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44YWY3ZTQ1ZDcxN2U5ZDk1ZWUwYmM1NDc5MjY2ZTdlZDExYWU4ODdmCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxi
YWNrRWZsLmNwcApAQCAtMCwwICsxLDYzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIFNh
bXN1bmcgRWxlY3Ryb25pY3MuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJy
YXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICog
bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp
YworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlv
bikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVk
IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkg
V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hB
TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBH
TlUKKyAqIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisg
KgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBH
ZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90
LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJh
bmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkdDQWN0aXZpdHlDYWxsYmFjay5o
IgorCisjaW5jbHVkZSAiSGVhcC5oIgorI2luY2x1ZGUgIkpTR2xvYmFsRGF0YS5oIgorCituYW1l
c3BhY2UgSlNDIHsKKworY29uc3QgZG91YmxlIHRpbWVySW50ZXJ2YWwgPSAxLjA7CisKK0RlZmF1
bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2soSGVhcCogaGVh
cCkKKyAgICA6IEdDQWN0aXZpdHlDYWxsYmFjayhoZWFwLT5nbG9iYWxEYXRhKCkpCit7Cit9CisK
K3ZvaWQgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6ZG9Xb3JrKCkKK3sKKyAgICBpZiAobV9n
bG9iYWxEYXRhLT5oZWFwLmlzQnVzeSgpIHx8ICFtX2dsb2JhbERhdGEtPmhlYXAuaXNTYWZlVG9D
b2xsZWN0KCkpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBtX2dsb2JhbERhdGEtPmhlYXAu
Y29sbGVjdChIZWFwOjpEb05vdFN3ZWVwKTsKK30KKwordm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNh
bGxiYWNrOjpkaWRBbGxvY2F0ZShzaXplX3QgYnl0ZXMpCit7CisgICAgaWYgKGJ5dGVzIDwgMSAq
IE1CKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgaWYgKG1fdGltZXIgfHwgbV9nbG9iYWxE
YXRhLT51c2luZ0FQSSgpKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgbV90aW1lciA9IGFk
b3B0UHRyKGVjb3JlX3RpbWVyX2FkZCh0aW1lckludGVydmFsLCByZWludGVycHJldF9jYXN0PEVj
b3JlX1Rhc2tfQ2I+KEhlYXBUaW1lcjo6dGltZXJEaWRGaXJlKSwgdGhpcykpOworfQorCit2b2lk
IERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OndpbGxDb2xsZWN0KCkKK3sKKyAgICBzdG9wKCk7
Cit9CisKK3ZvaWQgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6Y2FuY2VsKCkKK3sKKyAgICBz
dG9wKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIEpTQwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177172</attachid>
            <date>2012-12-02 20:37:01 -0800</date>
            <delta_ts>2013-05-21 22:08:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20121203133428.patch</filename>
            <type>text/plain</type>
            <size>6187</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MzU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
ZjAxYjc4NTMwYTNiMjBiN2FkMzliZTg4NGQ0NTExNjMyZDdhMDYzLi5kNmIxM2E4MzRhMWRhY2Fh
MzBmOWM0ZTczZDVjMTZhNDM3ZjZiNGViIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzNCBAQAorMjAxMi0xMi0wMiAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjayB3aXRoIHBs
YXRmb3JtIHRpbWVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05NTkyMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZGl0aW9uYWwgR0NzIGNhbiBiZSB0cmlnZ2VyZWQgYnkgcGxhdGZyb20gdGltZXIuCisg
ICAgICAgIEl0IGhhcyBzb3J0IG9mIGNvbXBhY3Rpb24gZWZmZWN0IG5vdCB0byBtYWtlIEpTQyBo
ZWFwIGdyb3cgZmFzdAorICAgICAgICBzbyB0aGF0IG1lbW9yeSB1c2FnZSBiZWNvbWVzIGJldHRl
ci4KKworICAgICAgICAqIFBsYXRmb3JtRWZsLmNtYWtlOgorICAgICAgICAqIGhlYXAvSGVhcFRp
bWVyLmNwcDoKKyAgICAgICAgKEpTQyk6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6SGVhcFRp
bWVyKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjp+SGVhcFRpbWVyKToKKyAgICAgICAgKEpT
Qzo6SGVhcFRpbWVyOjpkaWRTdGFydFZNU2h1dGRvd24pOgorICAgICAgICAoSlNDOjpIZWFwVGlt
ZXI6OnN5bmNocm9uaXplKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjppbnZhbGlkYXRlKToK
KyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjp0aW1lckRpZEZpcmUpOgorICAgICAgICAqIGhlYXAv
SGVhcFRpbWVyLmg6CisgICAgICAgIChIZWFwVGltZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGlt
ZXI6OnN0b3ApOgorICAgICAgICAqIHJ1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrRWZsLmNwcDog
QWRkZWQuCisgICAgICAgIChKU0MpOgorICAgICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rpdml0eUNh
bGxiYWNrOjpEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrKToKKyAgICAgICAgKEpTQzo6RGVmYXVs
dEdDQWN0aXZpdHlDYWxsYmFjazo6ZG9Xb3JrKToKKyAgICAgICAgKEpTQzo6RGVmYXVsdEdDQWN0
aXZpdHlDYWxsYmFjazo6ZGlkQWxsb2NhdGUpOgorICAgICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rp
dml0eUNhbGxiYWNrOjp3aWxsQ29sbGVjdCk6CisgICAgICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2
aXR5Q2FsbGJhY2s6OmNhbmNlbCk6CisKIDIwMTItMTItMDEgIEZpbGlwIFBpemxvICA8ZnBpemxv
QGFwcGxlLmNvbT4KIAogICAgICAgICBDb2RlQmxvY2sgc2hvdWxkIGJlIGFibGUgdG8gZHVtcCBi
eXRlY29kZSB0byBzb21ldGhpbmcgb3RoZXIgdGhhbiBXVEY6OmRhdGFGaWxlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFrZSBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFrZQppbmRleCAzYjQxMTU1MTRjZTQ0ZWVjM2VlZWVm
MmU0ZTE3ZjIwNmNmYTJjNjRlLi42ZWExZWRhOWI4M2ZiMThmZGVhNTU0OTA0MzlmYzFjMWY5NDA0
ZGJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCkBAIC0xLDcgKzEs
MTIgQEAKK0xJU1QoUkVNT1ZFX0lURU0gSmF2YVNjcmlwdENvcmVfU09VUkNFUworICAgIHJ1bnRp
bWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAorKQorCiBMSVNUKEFQUEVORCBKYXZhU2NyaXB0Q29y
ZV9TT1VSQ0VTCiAgICAgaml0L0V4ZWN1dGFibGVBbGxvY2F0b3JGaXhlZFZNUG9vbC5jcHAKICAg
ICBqaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAKIAorICAgIHJ1bnRpbWUvR0NBY3Rpdml0eUNh
bGxiYWNrRWZsLmNwcAogICAgIHJ1bnRpbWUvTWVtb3J5U3RhdGlzdGljcy5jcHAKICkKIApAQCAt
MTAsNiArMTUsOCBAQCBMSVNUKEFQUEVORCBKYXZhU2NyaXB0Q29yZV9MSUJSQVJJRVMKICkKIAog
TElTVChBUFBFTkQgSmF2YVNjcmlwdENvcmVfSU5DTFVERV9ESVJFQ1RPUklFUworICAgICR7RUNP
UkVfSU5DTFVERV9ESVJTfQorICAgICR7RUlOQV9JTkNMVURFX0RJUlN9CiAgICAgJHtJQ1VfSU5D
TFVERV9ESVJTfQogKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9I
ZWFwVGltZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcApp
bmRleCAyMTRmODY3NTc4NjI5MTBmMzcyOTQyODU4NDhlNDljNjJjZjI3YTU1Li5hNTJkMDFiNmZj
YWRiNDhlOTNhMGQ0MTg2YWU0Mjc1ODg1MTE3MGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9IZWFwVGltZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0hlYXBUaW1lci5jcHAKQEAgLTEzMiw2ICsxMzIsNDEgQEAgdm9pZCBIZWFwVGltZXI6OmRp
ZFN0YXJ0Vk1TaHV0ZG93bigpCiAgICAgZGVsZXRlIHRoaXM7CiB9CiAKKyNlbGlmIFBMQVRGT1JN
KEVGTCkKKworSGVhcFRpbWVyOjpIZWFwVGltZXIoSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhKQor
ICAgIDogbV9nbG9iYWxEYXRhKGdsb2JhbERhdGEpCit7CisgICAgZWNvcmVfaW5pdCgpOworfQor
CitIZWFwVGltZXI6On5IZWFwVGltZXIoKQoreworICAgIHN0b3AoKTsKKyAgICBlY29yZV9zaHV0
ZG93bigpOworfQorCit2b2lkIEhlYXBUaW1lcjo6ZGlkU3RhcnRWTVNodXRkb3duKCkKK3sKKyAg
ICBkZWxldGUgdGhpczsKK30KKwordm9pZCBIZWFwVGltZXI6OnN5bmNocm9uaXplKCkKK3sKK30K
Kwordm9pZCBIZWFwVGltZXI6OmludmFsaWRhdGUoKQoreworfQorCitib29sIEhlYXBUaW1lcjo6
dGltZXJEaWRGaXJlKHZvaWQqIGluZm8pCit7CisgICAgSGVhcFRpbWVyKiBhZ2VudCA9IHN0YXRp
Y19jYXN0PEhlYXBUaW1lcio+KGluZm8pOworICAgIGFnZW50LT5kb1dvcmsoKTsKKworICAgIHJl
dHVybiBFQ09SRV9DQUxMQkFDS19DQU5DRUw7Cit9CisKICNlbHNlCiAKIEhlYXBUaW1lcjo6SGVh
cFRpbWVyKEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFRpbWVyLmgKaW5kZXggODg3MTUwOThhNDBkZDIxOWUzYThjMmNjMmE1ZWE2NzdkMGU1ZDI3
Yi4uYzA1MjQ3N2ZkYzQwYjYzZmQ4YWFkMWFlNmU4NjNmZjdmYzhhZDE2MyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKQEAgLTMzLDYgKzMzLDEwIEBACiAjaW5jbHVkZSA8
Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KICNlbGlmIFBMQVRGT1JNKEJMQUNLQkVS
UlkpCiAjaW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRmb3JtVGltZXIuaD4KKyNlbGlmIFBMQVRGT1JN
KEVGTCkKKyNpbmNsdWRlIDxFY29yZS5oPgorI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KKyNpbmNs
dWRlIDx3dGYvUGFzc093blB0ci5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBKU0MgewpAQCAtNjks
NiArNzMsMTEgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgdGltZXJEaWRGaXJlKCk7CiAKICAgICBC
bGFja0JlcnJ5OjpQbGF0Zm9ybTo6VGltZXI8SGVhcFRpbWVyPiBtX3RpbWVyOworI2VsaWYgUExB
VEZPUk0oRUZMKQorICAgIHZvaWQgc3RvcCgpIHsgbV90aW1lciA9IG51bGxwdHI7IH0KKyAgICBz
dGF0aWMgYm9vbCB0aW1lckRpZEZpcmUodm9pZCopOworICAgIAorICAgIE93blB0cjxFY29yZV9U
aW1lcj4gbV90aW1lcjsKICNlbmRpZgogICAgIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFja0VmbC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2tFZmwuY3BwCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjliZDI3NWNmMWZlNzA1MjIyYTFjOTcyZTk1ZTdmYjI5YjQ4OTQyMWYKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJh
Y2tFZmwuY3BwCkBAIC0wLDAgKzEsNjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgU2Ft
c3VuZyBFbGVjdHJvbmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJh
cnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBt
b2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGlj
CisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u
OyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u
KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBX
QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFO
VEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdO
VQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAq
CisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdl
bmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3Qs
IHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFu
a2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiR0NBY3Rpdml0eUNhbGxiYWNrLmgi
CisKKyNpbmNsdWRlICJIZWFwLmgiCisjaW5jbHVkZSAiSlNHbG9iYWxEYXRhLmgiCisKK25hbWVz
cGFjZSBKU0MgeworCitjb25zdCBkb3VibGUgdGltZXJJbnRlcnZhbCA9IDAuMzsKKworRGVmYXVs
dEdDQWN0aXZpdHlDYWxsYmFjazo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjayhIZWFwKiBoZWFw
KQorICAgIDogR0NBY3Rpdml0eUNhbGxiYWNrKGhlYXAtPmdsb2JhbERhdGEoKSkKK3sKK30KKwor
dm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpkb1dvcmsoKQoreworICAgIGlmIChtX2ds
b2JhbERhdGEtPmhlYXAuaXNCdXN5KCkgfHwgIW1fZ2xvYmFsRGF0YS0+aGVhcC5pc1NhZmVUb0Nv
bGxlY3QoKSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIG1fZ2xvYmFsRGF0YS0+aGVhcC5j
b2xsZWN0KEhlYXA6OkRvTm90U3dlZXApOworfQorCit2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2Fs
bGJhY2s6OmRpZEFsbG9jYXRlKHNpemVfdCBieXRlcykKK3sKKyAgICBpZiAoYnl0ZXMgPCAxICog
TUIpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBpZiAobV90aW1lciB8fCBtX2dsb2JhbERh
dGEtPnVzaW5nQVBJKCkpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBtX3RpbWVyID0gYWRv
cHRQdHIoZWNvcmVfdGltZXJfYWRkKHRpbWVySW50ZXJ2YWwsIHJlaW50ZXJwcmV0X2Nhc3Q8RWNv
cmVfVGFza19DYj4oSGVhcFRpbWVyOjp0aW1lckRpZEZpcmUpLCB0aGlzKSk7Cit9CisKK3ZvaWQg
RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6d2lsbENvbGxlY3QoKQoreworICAgIHN0b3AoKTsK
K30KKwordm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpjYW5jZWwoKQoreworICAgIHN0
b3AoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202494</attachid>
            <date>2013-05-21 22:08:39 -0700</date>
            <delta_ts>2013-05-21 23:02:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20130522140726.patch</filename>
            <type>text/plain</type>
            <size>5551</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MjMxODRlZTQ5Y2VmYmVlNzUxN2E4MjIzZDc4NzBhZDM5NGMxNTljLi4wMWU3OWU5ODMyOGIwNjc4
YzI4ZjUyNzNhYWNjN2JkZjhjNWRjMTM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAxMy0wNS0yMSAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjaworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5MjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHRoZSBh
Y3Rpdml0eSB0cmlnZ2VyZWQgZ2FyYmFnZSBjb2xsZWN0b3IuCisKKyAgICAgICAgKiBQbGF0Zm9y
bUVmbC5jbWFrZTogQWRkZWQuCisgICAgICAgICogaGVhcC9IZWFwVGltZXIuY3BwOgorICAgICAg
ICAoSlNDKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjpIZWFwVGltZXIpOgorICAgICAgICAo
SlNDOjpIZWFwVGltZXI6On5IZWFwVGltZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OnRp
bWVyRXZlbnQpOgorICAgICAgICAqIGhlYXAvSGVhcFRpbWVyLmg6CisgICAgICAgIChIZWFwVGlt
ZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OkhlYXBUaW1lcjo6c3RvcCk6CisgICAgICAg
ICogcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3BwOgorICAgICAgICAoSlNDKToKKyAgICAg
ICAgKEpTQzo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6c2NoZWR1bGVUaW1lcik6CisgICAg
ICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmNhbmNlbFRpbWVyKToKKyAgICAg
ICAgKiBydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oOgorICAgICAgICAoRGVmYXVsdEdDQWN0
aXZpdHlDYWxsYmFjayk6CisKIDIwMTMtMDUtMjEgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBh
cHBsZS5jb20+CiAKICAgICAgICAgW1dpbmRvd3NdIFVucmV2aWV3ZWQgc3BlY3VsYXRpdmUgZml4
IGZvciB0ZXN0LWJvdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZv
cm1FZmwuY21ha2UgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZTdlZTU0ZTllYzEzM2NmYjhlODkwMTI5OTEzZDdkZTU4ZDBlOWUzYgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFrZQpAQCAt
MCwwICsxLDQgQEAKK2xpc3QoQVBQRU5EIEphdmFTY3JpcHRDb3JlX0lOQ0xVREVfRElSRUNUT1JJ
RVMKKyAgICAke0VDT1JFX1hfSU5DTFVERV9ESVJTfQorICAgICR7RUlOQV9JTkNMVURFX0RJUlN9
CispCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcAppbmRleCA1ODBjNDVi
YTk1NjlkZWE2NDhkODE5ZTVlMDZiNTJlMDdhNjU5OWUyLi5jNjQyNDU0OWU2MTlkNzY3MGQ2YjE3
YWNiYjkyMjM2MDQ3MjBlZTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9IZWFwVGltZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1l
ci5jcHAKQEAgLTE2NSw2ICsxNjUsMjkgQEAgdm9pZCBIZWFwVGltZXI6OmN1c3RvbUV2ZW50KFFF
dmVudCopCiAgICAgbV9uZXdUaHJlYWQgPSAwOwogfQogCisjZWxpZiBQTEFURk9STShFRkwpCisK
K0hlYXBUaW1lcjo6SGVhcFRpbWVyKFZNKiB2bSkKKyAgICA6IG1fdm0odm0pCisgICAgLCBtX3Rp
bWVyKDApCit7CisgICAgZWNvcmVfaW5pdCgpOworfQorCitIZWFwVGltZXI6On5IZWFwVGltZXIo
KQoreworICAgIHN0b3AoKTsKKyAgICBlY29yZV9zaHV0ZG93bigpOworfQorCitib29sIEhlYXBU
aW1lcjo6dGltZXJFdmVudCh2b2lkKiBpbmZvKQoreworICAgIEhlYXBUaW1lciogYWdlbnQgPSBz
dGF0aWNfY2FzdDxIZWFwVGltZXIqPihpbmZvKTsKKyAgICBhZ2VudC0+ZG9Xb3JrKCk7CisKKyAg
ICByZXR1cm4gRUNPUkVfQ0FMTEJBQ0tfQ0FOQ0VMOworfQorCiAjZWxzZQogSGVhcFRpbWVyOjpI
ZWFwVGltZXIoVk0qIHZtKQogICAgIDogbV92bSh2bSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFRpbWVyLmgKaW5kZXggYmU1MzQzNjI3Y2E1NjY4MTYxZWZjNDFlOWY5Mzc0MjRlNGI1ZWNl
Ni4uMDFjNGM5ODdkZTU1Y2IyMDlmYTEyNzZjNjkwNzkyY2I0MWRkNDRmZiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKQEAgLTM4LDYgKzM4LDggQEAKICNpbmNsdWRlIDxR
TXV0ZXg+CiAjaW5jbHVkZSA8UU9iamVjdD4KICNpbmNsdWRlIDxRVGhyZWFkPgorI2VsaWYgUExB
VEZPUk0oRUZMKQorI2luY2x1ZGUgPEVjb3JlLmg+CiAjZW5kaWYKIAogbmFtZXNwYWNlIEpTQyB7
CkBAIC04MSw2ICs4MywxNiBAQCBwcm90ZWN0ZWQ6CiAgICAgUUJhc2ljVGltZXIgbV90aW1lcjsK
ICAgICBRVGhyZWFkKiBtX25ld1RocmVhZDsKICAgICBRTXV0ZXggbV9tdXRleDsKKyNlbGlmIFBM
QVRGT1JNKEVGTCkKKyAgICB2b2lkIHN0b3AoKQorICAgIHsKKyAgICAgICAgaWYgKG1fdGltZXIp
IHsKKyAgICAgICAgICAgIGVjb3JlX3RpbWVyX2RlbChtX3RpbWVyKTsKKyAgICAgICAgICAgIG1f
dGltZXIgPSAwOworICAgICAgICB9CisgICAgfQorICAgIHN0YXRpYyBib29sIHRpbWVyRXZlbnQo
dm9pZCopOworICAgIEVjb3JlX1RpbWVyKiBtX3RpbWVyOwogI2VuZGlmCiAgICAgCiBwcml2YXRl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNh
bGxiYWNrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxs
YmFjay5jcHAKaW5kZXggYThkNGFhYjhiNTIzZjVmMzIxMWRmYjYyYTcyN2UwN2IwMDhlY2M1NS4u
MjRiYTc3OWEwYTAxZDRlYjJjYTI1ODg0MzdhYjNhOTk3NmIxZmQxMSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCkBAIC00
MCw3ICs0MCw3IEBACiAKIG5hbWVzcGFjZSBKU0MgewogCi0jaWYgVVNFKENGKSB8fCBQTEFURk9S
TShRVCkKKyNpZiBVU0UoQ0YpIHx8IFBMQVRGT1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiAKIGNv
bnN0IGRvdWJsZSBnY1RpbWVTbGljZVBlck1CID0gMC4wMTsgLy8gUGVyY2VudGFnZSBvZiBDUFUg
dGltZSB3ZSB3aWxsIHNwZW5kIHRvIHJlY2xhaW0gMSBNQgogY29uc3QgZG91YmxlIG1heEdDVGlt
ZVNsaWNlID0gMC4wNTsgLy8gVGhlIG1heGltdW0gYW1vdW50IG9mIENQVSB0aW1lIHdlIHdhbnQg
dG8gdXNlIGZvciBvcHBvcnR1bmlzdGljIHRpbWVyLXRyaWdnZXJlZCBjb2xsZWN0aW9ucy4KQEAg
LTYwLDcgKzYwLDcgQEAgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6RGVmYXVsdEdDQWN0aXZp
dHlDYWxsYmFjayhIZWFwKiBoZWFwLCBDRlJ1bkxvb3BSZWYgcnUKICAgICAsIG1fZGVsYXkoc19k
ZWNhZGUpCiB7CiB9Ci0jZWxpZiBQTEFURk9STShRVCkKKyNlbGlmIFBMQVRGT1JNKFFUKSB8fCBQ
TEFURk9STShFRkwpCiBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpEZWZhdWx0R0NBY3Rpdml0
eUNhbGxiYWNrKEhlYXAqIGhlYXApCiAgICAgOiBHQ0FjdGl2aXR5Q2FsbGJhY2soaGVhcC0+dm0o
KSkKICAgICAsIG1fZGVsYXkoaG91cikKQEAgLTEwMiw3ICsxMDIsNiBAQCB2b2lkIERlZmF1bHRH
Q0FjdGl2aXR5Q2FsbGJhY2s6OmNhbmNlbFRpbWVyKCkKICAgICBDRlJ1bkxvb3BUaW1lclNldE5l
eHRGaXJlRGF0ZShtX3RpbWVyLmdldCgpLCBDRkFic29sdXRlVGltZUdldEN1cnJlbnQoKSArIHNf
ZGVjYWRlKTsKIH0KICNlbGlmIFBMQVRGT1JNKFFUKQotCiB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5
Q2FsbGJhY2s6OnNjaGVkdWxlVGltZXIoZG91YmxlIG5ld0RlbGF5KQogewogICAgIGlmIChuZXdE
ZWxheSAqIHRpbWVyU2xvcCA+IG1fZGVsYXkpCkBAIC0xMTYsNiArMTE1LDIyIEBAIHZvaWQgRGVm
YXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6Y2FuY2VsVGltZXIoKQogICAgIG1fZGVsYXkgPSBob3Vy
OwogICAgIG1fdGltZXIuc3RvcCgpOwogfQorI2VsaWYgUExBVEZPUk0oRUZMKQordm9pZCBEZWZh
dWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpzY2hlZHVsZVRpbWVyKGRvdWJsZSBuZXdEZWxheSkKK3sK
KyAgICBpZiAobmV3RGVsYXkgKiB0aW1lclNsb3AgPiBtX2RlbGF5KQorICAgICAgICByZXR1cm47
CisKKyAgICBzdG9wKCk7CisgICAgbV9kZWxheSA9IG5ld0RlbGF5OworICAgIG1fdGltZXIgPSBl
Y29yZV90aW1lcl9hZGQobmV3RGVsYXksIHJlaW50ZXJwcmV0X2Nhc3Q8RWNvcmVfVGFza19DYj4o
SGVhcFRpbWVyOjp0aW1lckV2ZW50KSwgdGhpcyk7Cit9CisKK3ZvaWQgRGVmYXVsdEdDQWN0aXZp
dHlDYWxsYmFjazo6Y2FuY2VsVGltZXIoKQoreworICAgIG1fZGVsYXkgPSBob3VyOworICAgIHN0
b3AoKTsKK30KICNlbmRpZgogCiB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRpZEFs
bG9jYXRlKHNpemVfdCBieXRlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvR0NBY3Rpdml0eUNhbGxiYWNrLmgKaW5kZXggYmFhZjRmNTUyMWI5OWY0ZDBiYzMzYzdiZmFl
OWRjN2VmMTEzNDRkYS4uMGZhZWFiZTIxNTQ0ODQ5NDc3ZDY0YzBlMmRjZjU3ZGI5MTFlMzkwMCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxi
YWNrLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxi
YWNrLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIERlZmF1bHRH
Q0FjdGl2aXR5Q2FsbGJhY2soSGVhcCosIENGUnVuTG9vcFJlZik7CiAjZW5kaWYKLSNpZiBVU0Uo
Q0YpIHx8IFBMQVRGT1JNKFFUKQorI2lmIFVTRShDRikgfHwgUExBVEZPUk0oUVQpIHx8IFBMQVRG
T1JNKEVGTCkKIHByb3RlY3RlZDoKICAgICB2b2lkIGNhbmNlbFRpbWVyKCk7CiAgICAgdm9pZCBz
Y2hlZHVsZVRpbWVyKGRvdWJsZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202500</attachid>
            <date>2013-05-21 23:03:05 -0700</date>
            <delta_ts>2013-05-22 00:38:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20130522150152.patch</filename>
            <type>text/plain</type>
            <size>5260</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MjMxODRlZTQ5Y2VmYmVlNzUxN2E4MjIzZDc4NzBhZDM5NGMxNTljLi4wMWU3OWU5ODMyOGIwNjc4
YzI4ZjUyNzNhYWNjN2JkZjhjNWRjMTM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAxMy0wNS0yMSAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjaworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5MjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHRoZSBh
Y3Rpdml0eSB0cmlnZ2VyZWQgZ2FyYmFnZSBjb2xsZWN0b3IuCisKKyAgICAgICAgKiBQbGF0Zm9y
bUVmbC5jbWFrZTogQWRkZWQuCisgICAgICAgICogaGVhcC9IZWFwVGltZXIuY3BwOgorICAgICAg
ICAoSlNDKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjpIZWFwVGltZXIpOgorICAgICAgICAo
SlNDOjpIZWFwVGltZXI6On5IZWFwVGltZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OnRp
bWVyRXZlbnQpOgorICAgICAgICAqIGhlYXAvSGVhcFRpbWVyLmg6CisgICAgICAgIChIZWFwVGlt
ZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OkhlYXBUaW1lcjo6c3RvcCk6CisgICAgICAg
ICogcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3BwOgorICAgICAgICAoSlNDKToKKyAgICAg
ICAgKEpTQzo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6c2NoZWR1bGVUaW1lcik6CisgICAg
ICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmNhbmNlbFRpbWVyKToKKyAgICAg
ICAgKiBydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oOgorICAgICAgICAoRGVmYXVsdEdDQWN0
aXZpdHlDYWxsYmFjayk6CisKIDIwMTMtMDUtMjEgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBh
cHBsZS5jb20+CiAKICAgICAgICAgW1dpbmRvd3NdIFVucmV2aWV3ZWQgc3BlY3VsYXRpdmUgZml4
IGZvciB0ZXN0LWJvdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZv
cm1FZmwuY21ha2UgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMGEzNjg4MDc4NGNiMTBmOTgxYTVjMTgyM2EzNzU0NGM3NWFhZTc2ZgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFrZQpAQCAt
MCwwICsxLDQgQEAKK2xpc3QoQVBQRU5EIEphdmFTY3JpcHRDb3JlX0lOQ0xVREVfRElSRUNUT1JJ
RVMKKyAgICAke0VDT1JFX0lOQ0xVREVfRElSU30KKyAgICAke0VJTkFfSU5DTFVERV9ESVJTfQor
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAKaW5kZXggNTgwYzQ1YmE5
NTY5ZGVhNjQ4ZDgxOWU1ZTA2YjUyZTA3YTY1OTllMi4uYzY0MjQ1NDllNjE5ZDc2NzBkNmIxN2Fj
YmI5MjIzNjA0NzIwZWU3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcFRpbWVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIu
Y3BwCkBAIC0xNjUsNiArMTY1LDI5IEBAIHZvaWQgSGVhcFRpbWVyOjpjdXN0b21FdmVudChRRXZl
bnQqKQogICAgIG1fbmV3VGhyZWFkID0gMDsKIH0KIAorI2VsaWYgUExBVEZPUk0oRUZMKQorCitI
ZWFwVGltZXI6OkhlYXBUaW1lcihWTSogdm0pCisgICAgOiBtX3ZtKHZtKQorICAgICwgbV90aW1l
cigwKQoreworICAgIGVjb3JlX2luaXQoKTsKK30KKworSGVhcFRpbWVyOjp+SGVhcFRpbWVyKCkK
K3sKKyAgICBzdG9wKCk7CisgICAgZWNvcmVfc2h1dGRvd24oKTsKK30KKworYm9vbCBIZWFwVGlt
ZXI6OnRpbWVyRXZlbnQodm9pZCogaW5mbykKK3sKKyAgICBIZWFwVGltZXIqIGFnZW50ID0gc3Rh
dGljX2Nhc3Q8SGVhcFRpbWVyKj4oaW5mbyk7CisgICAgYWdlbnQtPmRvV29yaygpOworCisgICAg
cmV0dXJuIEVDT1JFX0NBTExCQUNLX0NBTkNFTDsKK30KKwogI2Vsc2UKIEhlYXBUaW1lcjo6SGVh
cFRpbWVyKFZNKiB2bSkKICAgICA6IG1fdm0odm0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hl
YXBUaW1lci5oCmluZGV4IGJlNTM0MzYyN2NhNTY2ODE2MWVmYzQxZTlmOTM3NDI0ZTRiNWVjZTYu
LjAxYzRjOTg3ZGU1NWNiMjA5ZmExMjc2YzY5MDc5MmNiNDFkZDQ0ZmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oCkBAIC0zOCw2ICszOCw4IEBACiAjaW5jbHVkZSA8UU11
dGV4PgogI2luY2x1ZGUgPFFPYmplY3Q+CiAjaW5jbHVkZSA8UVRocmVhZD4KKyNlbGlmIFBMQVRG
T1JNKEVGTCkKKyNpbmNsdWRlIDxFY29yZS5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBKU0MgewpA
QCAtODEsNiArODMsMTYgQEAgcHJvdGVjdGVkOgogICAgIFFCYXNpY1RpbWVyIG1fdGltZXI7CiAg
ICAgUVRocmVhZCogbV9uZXdUaHJlYWQ7CiAgICAgUU11dGV4IG1fbXV0ZXg7CisjZWxpZiBQTEFU
Rk9STShFRkwpCisgICAgdm9pZCBzdG9wKCkKKyAgICB7CisgICAgICAgIGlmIChtX3RpbWVyKSB7
CisgICAgICAgICAgICBlY29yZV90aW1lcl9kZWwobV90aW1lcik7CisgICAgICAgICAgICBtX3Rp
bWVyID0gMDsKKyAgICAgICAgfQorICAgIH0KKyAgICBzdGF0aWMgYm9vbCB0aW1lckV2ZW50KHZv
aWQqKTsKKyAgICBFY29yZV9UaW1lciogbV90aW1lcjsKICNlbmRpZgogICAgIAogcHJpdmF0ZToK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxs
YmFjay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJh
Y2suY3BwCmluZGV4IGE4ZDRhYWI4YjUyM2Y1ZjMyMTFkZmI2MmE3MjdlMDdiMDA4ZWNjNTUuLmRm
MWZkYWY4ZjM4YjAwN2YwNjQzMWJhNzM4YTE0NjY5MjY4MGMwZWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcApAQCAtNDAs
NyArNDAsNyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotI2lmIFVTRShDRikgfHwgUExBVEZPUk0o
UVQpCisjaWYgVVNFKENGKSB8fCBQTEFURk9STShRVCkgfHwgUExBVEZPUk0oRUZMKQogCiBjb25z
dCBkb3VibGUgZ2NUaW1lU2xpY2VQZXJNQiA9IDAuMDE7IC8vIFBlcmNlbnRhZ2Ugb2YgQ1BVIHRp
bWUgd2Ugd2lsbCBzcGVuZCB0byByZWNsYWltIDEgTUIKIGNvbnN0IGRvdWJsZSBtYXhHQ1RpbWVT
bGljZSA9IDAuMDU7IC8vIFRoZSBtYXhpbXVtIGFtb3VudCBvZiBDUFUgdGltZSB3ZSB3YW50IHRv
IHVzZSBmb3Igb3Bwb3J0dW5pc3RpYyB0aW1lci10cmlnZ2VyZWQgY29sbGVjdGlvbnMuCkBAIC02
MCw3ICs2MCw3IEBAIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OkRlZmF1bHRHQ0FjdGl2aXR5
Q2FsbGJhY2soSGVhcCogaGVhcCwgQ0ZSdW5Mb29wUmVmIHJ1CiAgICAgLCBtX2RlbGF5KHNfZGVj
YWRlKQogewogfQotI2VsaWYgUExBVEZPUk0oUVQpCisjZWxpZiBQTEFURk9STShRVCkgfHwgUExB
VEZPUk0oRUZMKQogRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6RGVmYXVsdEdDQWN0aXZpdHlD
YWxsYmFjayhIZWFwKiBoZWFwKQogICAgIDogR0NBY3Rpdml0eUNhbGxiYWNrKGhlYXAtPnZtKCkp
CiAgICAgLCBtX2RlbGF5KGhvdXIpCkBAIC0xMTYsNiArMTE2LDIyIEBAIHZvaWQgRGVmYXVsdEdD
QWN0aXZpdHlDYWxsYmFjazo6Y2FuY2VsVGltZXIoKQogICAgIG1fZGVsYXkgPSBob3VyOwogICAg
IG1fdGltZXIuc3RvcCgpOwogfQorI2VsaWYgUExBVEZPUk0oRUZMKQordm9pZCBEZWZhdWx0R0NB
Y3Rpdml0eUNhbGxiYWNrOjpzY2hlZHVsZVRpbWVyKGRvdWJsZSBuZXdEZWxheSkKK3sKKyAgICBp
ZiAobmV3RGVsYXkgKiB0aW1lclNsb3AgPiBtX2RlbGF5KQorICAgICAgICByZXR1cm47CisKKyAg
ICBzdG9wKCk7CisgICAgbV9kZWxheSA9IG5ld0RlbGF5OworICAgIG1fdGltZXIgPSBlY29yZV90
aW1lcl9hZGQobmV3RGVsYXksIHJlaW50ZXJwcmV0X2Nhc3Q8RWNvcmVfVGFza19DYj4oSGVhcFRp
bWVyOjp0aW1lckV2ZW50KSwgdGhpcyk7Cit9CisKK3ZvaWQgRGVmYXVsdEdDQWN0aXZpdHlDYWxs
YmFjazo6Y2FuY2VsVGltZXIoKQoreworICAgIG1fZGVsYXkgPSBob3VyOworICAgIHN0b3AoKTsK
K30KICNlbmRpZgogCiB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRpZEFsbG9jYXRl
KHNpemVfdCBieXRlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0dDQWN0aXZpdHlDYWxsYmFjay5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NB
Y3Rpdml0eUNhbGxiYWNrLmgKaW5kZXggYmFhZjRmNTUyMWI5OWY0ZDBiYzMzYzdiZmFlOWRjN2Vm
MTEzNDRkYS4uMGZhZWFiZTIxNTQ0ODQ5NDc3ZDY0YzBlMmRjZjU3ZGI5MTFlMzkwMCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmgK
QEAgLTg0LDcgKzg0LDcgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIERlZmF1bHRHQ0FjdGl2
aXR5Q2FsbGJhY2soSGVhcCosIENGUnVuTG9vcFJlZik7CiAjZW5kaWYKLSNpZiBVU0UoQ0YpIHx8
IFBMQVRGT1JNKFFUKQorI2lmIFVTRShDRikgfHwgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JNKEVG
TCkKIHByb3RlY3RlZDoKICAgICB2b2lkIGNhbmNlbFRpbWVyKCk7CiAgICAgdm9pZCBzY2hlZHVs
ZVRpbWVyKGRvdWJsZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202503</attachid>
            <date>2013-05-22 00:20:39 -0700</date>
            <delta_ts>2013-05-22 00:58:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20130522161926.patch</filename>
            <type>text/plain</type>
            <size>5594</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MjMxODRlZTQ5Y2VmYmVlNzUxN2E4MjIzZDc4NzBhZDM5NGMxNTljLi43NzMxZDQxN2E4NjlhYjkw
MzUzYjA1YzA2MDBhYTFhN2UzZTg4ZjY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAxMy0wNS0yMiAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjaworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5MjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHRoZSBh
Y3Rpdml0eSB0cmlnZ2VyZWQgZ2FyYmFnZSBjb2xsZWN0b3IuCisKKyAgICAgICAgKiBQbGF0Zm9y
bUVmbC5jbWFrZTogQWRkZWQuCisgICAgICAgICogaGVhcC9IZWFwVGltZXIuY3BwOgorICAgICAg
ICAoSlNDKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjpIZWFwVGltZXIpOgorICAgICAgICAo
SlNDOjpIZWFwVGltZXI6On5IZWFwVGltZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OnN0
b3ApOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OnRpbWVyRXZlbnQpOgorICAgICAgICAqIGhl
YXAvSGVhcFRpbWVyLmg6CisgICAgICAgIChIZWFwVGltZXIpOgorICAgICAgICAqIHJ1bnRpbWUv
R0NBY3Rpdml0eUNhbGxiYWNrLmNwcDoKKyAgICAgICAgKEpTQyk6CisgICAgICAgIChKU0M6OkRl
ZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OnNjaGVkdWxlVGltZXIpOgorICAgICAgICAoSlNDOjpE
ZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpjYW5jZWxUaW1lcik6CisgICAgICAgICogcnVudGlt
ZS9HQ0FjdGl2aXR5Q2FsbGJhY2suaDoKKyAgICAgICAgKERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJh
Y2spOgorCiAyMDEzLTA1LTIxICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIFtXaW5kb3dzXSBVbnJldmlld2VkIHNwZWN1bGF0aXZlIGZpeCBmb3IgdGVzdC1i
b3RzLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1BsYXRmb3JtRWZsLmNtYWtl
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBh
MzY4ODA3ODRjYjEwZjk4MWE1YzE4MjNhMzc1NDRjNzVhYWU3NmYKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UKQEAgLTAsMCArMSw0IEBA
CitsaXN0KEFQUEVORCBKYXZhU2NyaXB0Q29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCisgICAgJHtF
Q09SRV9JTkNMVURFX0RJUlN9CisgICAgJHtFSU5BX0lOQ0xVREVfRElSU30KKykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuY3BwCmluZGV4IDU4MGM0NWJhOTU2OWRlYTY0OGQ4
MTllNWUwNmI1MmUwN2E2NTk5ZTIuLmU4YzQwY2Y2NDAwYWJjM2RkNTQ5ZTcyM2MwZWUxM2NiNzdl
N2IyMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcApAQCAtMzgs
NiArMzgsOCBAQAogI2luY2x1ZGUgPFFNdXRleExvY2tlcj4KICNpbmNsdWRlIDxRVGhyZWFkPgog
I2luY2x1ZGUgPFFUaW1lckV2ZW50PgorI2VsaWYgUExBVEZPUk0oRUZMKQorI2luY2x1ZGUgPEVj
b3JlLmg+CiAjZW5kaWYKIAogbmFtZXNwYWNlIEpTQyB7CkBAIC0xNjUsNiArMTY3LDM4IEBAIHZv
aWQgSGVhcFRpbWVyOjpjdXN0b21FdmVudChRRXZlbnQqKQogICAgIG1fbmV3VGhyZWFkID0gMDsK
IH0KIAorI2VsaWYgUExBVEZPUk0oRUZMKQorCitIZWFwVGltZXI6OkhlYXBUaW1lcihWTSogdm0p
CisgICAgOiBtX3ZtKHZtKQorICAgICwgbV90aW1lcigwKQoreworICAgIGVjb3JlX2luaXQoKTsK
K30KKworSGVhcFRpbWVyOjp+SGVhcFRpbWVyKCkKK3sKKyAgICBzdG9wKCk7CisgICAgZWNvcmVf
c2h1dGRvd24oKTsKK30KKwordm9pZCBIZWFwVGltZXI6OnN0b3AoKQoreworICAgIGlmICghbV90
aW1lcikKKyAgICAgICAgcmV0dXJuOworCisgICAgZWNvcmVfdGltZXJfZGVsKG1fdGltZXIpOwor
ICAgIG1fdGltZXIgPSAwOworfQorCitib29sIEhlYXBUaW1lcjo6dGltZXJFdmVudCh2b2lkKiBp
bmZvKQoreworICAgIEhlYXBUaW1lciogYWdlbnQgPSBzdGF0aWNfY2FzdDxIZWFwVGltZXIqPihp
bmZvKTsKKyAgICBhZ2VudC0+ZG9Xb3JrKCk7CisgICAgYWdlbnQtPm1fdGltZXIgPSAwOworICAg
IHJldHVybiBFQ09SRV9DQUxMQkFDS19DQU5DRUw7Cit9CisKICNlbHNlCiBIZWFwVGltZXI6Okhl
YXBUaW1lcihWTSogdm0pCiAgICAgOiBtX3ZtKHZtKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9I
ZWFwVGltZXIuaAppbmRleCBiZTUzNDM2MjdjYTU2NjgxNjFlZmM0MWU5ZjkzNzQyNGU0YjVlY2U2
Li4wN2Y2MTdjZTM5ZTVkMzJiY2RmOTZkODc4ZDM0NGZkOTlhM2RlNjZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaApAQCAtMzgsNiArMzgsOCBAQAogI2luY2x1ZGUgPFFN
dXRleD4KICNpbmNsdWRlIDxRT2JqZWN0PgogI2luY2x1ZGUgPFFUaHJlYWQ+CisjZWxpZiBQTEFU
Rk9STShFRkwpCit0eXBlZGVmIHN0cnVjdCBfRWNvcmVfVGltZXIgRWNvcmVfVGltZXI7CiAjZW5k
aWYKIAogbmFtZXNwYWNlIEpTQyB7CkBAIC04MSw2ICs4MywxMCBAQCBwcm90ZWN0ZWQ6CiAgICAg
UUJhc2ljVGltZXIgbV90aW1lcjsKICAgICBRVGhyZWFkKiBtX25ld1RocmVhZDsKICAgICBRTXV0
ZXggbV9tdXRleDsKKyNlbGlmIFBMQVRGT1JNKEVGTCkKKyAgICB2b2lkIHN0b3AoKTsKKyAgICBz
dGF0aWMgYm9vbCB0aW1lckV2ZW50KHZvaWQqKTsKKyAgICBFY29yZV9UaW1lciogbV90aW1lcjsK
ICNlbmRpZgogICAgIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCmluZGV4IGE4ZDRhYWI4YjUyM2Y1ZjMyMTFk
ZmI2MmE3MjdlMDdiMDA4ZWNjNTUuLmVkY2I0YzkxMGIzYjY1ZmU1MDkzNGU3ZTU5NmFkOGFmNjQx
MmRiOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZp
dHlDYWxsYmFjay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmNwcApAQCAtMzgsOSArMzgsMTMgQEAKICNpbmNsdWRlIDx3dGYvUmV0YWlu
UHRyLmg+CiAjaW5jbHVkZSA8d3RmL1dURlRocmVhZERhdGEuaD4KIAorI2lmIFBMQVRGT1JNKEVG
TCkKKyNpbmNsdWRlIDxFY29yZS5oPgorI2VuZGlmCisKIG5hbWVzcGFjZSBKU0MgewogCi0jaWYg
VVNFKENGKSB8fCBQTEFURk9STShRVCkKKyNpZiBVU0UoQ0YpIHx8IFBMQVRGT1JNKFFUKSB8fCBQ
TEFURk9STShFRkwpCiAKIGNvbnN0IGRvdWJsZSBnY1RpbWVTbGljZVBlck1CID0gMC4wMTsgLy8g
UGVyY2VudGFnZSBvZiBDUFUgdGltZSB3ZSB3aWxsIHNwZW5kIHRvIHJlY2xhaW0gMSBNQgogY29u
c3QgZG91YmxlIG1heEdDVGltZVNsaWNlID0gMC4wNTsgLy8gVGhlIG1heGltdW0gYW1vdW50IG9m
IENQVSB0aW1lIHdlIHdhbnQgdG8gdXNlIGZvciBvcHBvcnR1bmlzdGljIHRpbWVyLXRyaWdnZXJl
ZCBjb2xsZWN0aW9ucy4KQEAgLTYwLDcgKzY0LDcgQEAgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFj
azo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjayhIZWFwKiBoZWFwLCBDRlJ1bkxvb3BSZWYgcnUK
ICAgICAsIG1fZGVsYXkoc19kZWNhZGUpCiB7CiB9Ci0jZWxpZiBQTEFURk9STShRVCkKKyNlbGlm
IFBMQVRGT1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNr
OjpEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrKEhlYXAqIGhlYXApCiAgICAgOiBHQ0FjdGl2aXR5
Q2FsbGJhY2soaGVhcC0+dm0oKSkKICAgICAsIG1fZGVsYXkoaG91cikKQEAgLTExNiw2ICsxMjAs
MjQgQEAgdm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpjYW5jZWxUaW1lcigpCiAgICAg
bV9kZWxheSA9IGhvdXI7CiAgICAgbV90aW1lci5zdG9wKCk7CiB9CisjZWxpZiBQTEFURk9STShF
RkwpCit2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OnNjaGVkdWxlVGltZXIoZG91Ymxl
IG5ld0RlbGF5KQoreworICAgIGlmIChuZXdEZWxheSAqIHRpbWVyU2xvcCA+IG1fZGVsYXkpCisg
ICAgICAgIHJldHVybjsKKworICAgIHN0b3AoKTsKKyAgICBtX2RlbGF5ID0gbmV3RGVsYXk7Cisg
ICAgCisgICAgQVNTRVJUKCFtX3RpbWVyKTsKKyAgICBtX3RpbWVyID0gZWNvcmVfdGltZXJfYWRk
KG5ld0RlbGF5LCByZWludGVycHJldF9jYXN0PEVjb3JlX1Rhc2tfQ2I+KEhlYXBUaW1lcjo6dGlt
ZXJFdmVudCksIHRoaXMpOworfQorCit2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmNh
bmNlbFRpbWVyKCkKK3sKKyAgICBtX2RlbGF5ID0gaG91cjsKKyAgICBzdG9wKCk7Cit9CiAjZW5k
aWYKIAogdm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpkaWRBbGxvY2F0ZShzaXplX3Qg
Ynl0ZXMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2
aXR5Q2FsbGJhY2suaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlD
YWxsYmFjay5oCmluZGV4IGJhYWY0ZjU1MjFiOTlmNGQwYmMzM2M3YmZhZTlkYzdlZjExMzQ0ZGEu
LjBmYWVhYmUyMTU0NDg0OTQ3N2Q2NGMwZTJkY2Y1N2RiOTExZTM5MDAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oCkBAIC04NCw3
ICs4NCw3IEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAgICBEZWZhdWx0R0NBY3Rpdml0eUNhbGxi
YWNrKEhlYXAqLCBDRlJ1bkxvb3BSZWYpOwogI2VuZGlmCi0jaWYgVVNFKENGKSB8fCBQTEFURk9S
TShRVCkKKyNpZiBVU0UoQ0YpIHx8IFBMQVRGT1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiBwcm90
ZWN0ZWQ6CiAgICAgdm9pZCBjYW5jZWxUaW1lcigpOwogICAgIHZvaWQgc2NoZWR1bGVUaW1lcihk
b3VibGUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202505</attachid>
            <date>2013-05-22 00:58:29 -0700</date>
            <delta_ts>2013-05-22 05:04:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20130522165716.patch</filename>
            <type>text/plain</type>
            <size>6700</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MjMxODRlZTQ5Y2VmYmVlNzUxN2E4MjIzZDc4NzBhZDM5NGMxNTljLi4wNjdjMjgyNWRmMGUwYzkw
MDkxOTRlZWFkYmExZmI5MWUxN2IwMzkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMyBAQAorMjAxMy0wNS0yMiAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjaworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5MjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHRoZSBh
Y3Rpdml0eSB0cmlnZ2VyZWQgZ2FyYmFnZSBjb2xsZWN0b3IuCisKKyAgICAgICAgKiBQbGF0Zm9y
bUVmbC5jbWFrZTogQWRkZWQuCisgICAgICAgICogaGVhcC9IZWFwVGltZXIuY3BwOgorICAgICAg
ICAoSlNDKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjpIZWFwVGltZXIpOgorICAgICAgICAo
SlNDOjpIZWFwVGltZXI6On5IZWFwVGltZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OnN0
b3ApOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6OnRpbWVyRXZlbnQpOgorICAgICAgICAqIGhl
YXAvSGVhcFRpbWVyLmg6CisgICAgICAgIChIZWFwVGltZXIpOgorICAgICAgICAqIGpzYy5jcHA6
CisgICAgICAgIChTaGVsbEVudmlyb25tZW50KToKKyAgICAgICAgKFNoZWxsRW52aXJvbm1lbnQ6
OlNoZWxsRW52aXJvbm1lbnQpOgorICAgICAgICAoU2hlbGxFbnZpcm9ubWVudDo6flNoZWxsRW52
aXJvbm1lbnQpOgorICAgICAgICAoanNjbWFpbik6CisgICAgICAgICogcnVudGltZS9HQ0FjdGl2
aXR5Q2FsbGJhY2suY3BwOgorICAgICAgICAoSlNDKToKKyAgICAgICAgKEpTQzo6RGVmYXVsdEdD
QWN0aXZpdHlDYWxsYmFjazo6c2NoZWR1bGVUaW1lcik6CisgICAgICAgIChKU0M6OkRlZmF1bHRH
Q0FjdGl2aXR5Q2FsbGJhY2s6OmNhbmNlbFRpbWVyKToKKyAgICAgICAgKiBydW50aW1lL0dDQWN0
aXZpdHlDYWxsYmFjay5oOgorICAgICAgICAoRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjayk6CisK
IDIwMTMtMDUtMjEgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAg
ICAgW1dpbmRvd3NdIFVucmV2aWV3ZWQgc3BlY3VsYXRpdmUgZml4IGZvciB0ZXN0LWJvdHMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGEzNjg4MDc4
NGNiMTBmOTgxYTVjMTgyM2EzNzU0NGM3NWFhZTc2ZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFrZQpAQCAtMCwwICsxLDQgQEAKK2xpc3Qo
QVBQRU5EIEphdmFTY3JpcHRDb3JlX0lOQ0xVREVfRElSRUNUT1JJRVMKKyAgICAke0VDT1JFX0lO
Q0xVREVfRElSU30KKyAgICAke0VJTkFfSU5DTFVERV9ESVJTfQorKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAKaW5kZXggNTgwYzQ1YmE5NTY5ZGVhNjQ4ZDgxOWU1ZTA2
YjUyZTA3YTY1OTllMi4uMmZiN2ZjNTcyOWUyYjg0MDllZDQzMTBkZTcyNzJkZDZiYWVmMTM3ZSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuY3BwCkBAIC0zOCw2ICszOCw4
IEBACiAjaW5jbHVkZSA8UU11dGV4TG9ja2VyPgogI2luY2x1ZGUgPFFUaHJlYWQ+CiAjaW5jbHVk
ZSA8UVRpbWVyRXZlbnQ+CisjZWxpZiBQTEFURk9STShFRkwpCisjaW5jbHVkZSA8RWNvcmUuaD4K
ICNlbmRpZgogCiBuYW1lc3BhY2UgSlNDIHsKQEAgLTE2NSw2ICsxNjcsMzYgQEAgdm9pZCBIZWFw
VGltZXI6OmN1c3RvbUV2ZW50KFFFdmVudCopCiAgICAgbV9uZXdUaHJlYWQgPSAwOwogfQogCisj
ZWxpZiBQTEFURk9STShFRkwpCisKK0hlYXBUaW1lcjo6SGVhcFRpbWVyKFZNKiB2bSkKKyAgICA6
IG1fdm0odm0pCisgICAgLCBtX3RpbWVyKDApCit7Cit9CisKK0hlYXBUaW1lcjo6fkhlYXBUaW1l
cigpCit7CisgICAgc3RvcCgpOworfQorCit2b2lkIEhlYXBUaW1lcjo6c3RvcCgpCit7CisgICAg
aWYgKCFtX3RpbWVyKQorICAgICAgICByZXR1cm47CisKKyAgICBlY29yZV90aW1lcl9kZWwobV90
aW1lcik7CisgICAgbV90aW1lciA9IDA7Cit9CisKK2Jvb2wgSGVhcFRpbWVyOjp0aW1lckV2ZW50
KHZvaWQqIGluZm8pCit7CisgICAgSGVhcFRpbWVyKiBhZ2VudCA9IHN0YXRpY19jYXN0PEhlYXBU
aW1lcio+KGluZm8pOworICAgIGFnZW50LT5kb1dvcmsoKTsKKyAgICBhZ2VudC0+bV90aW1lciA9
IDA7CisgICAgcmV0dXJuIEVDT1JFX0NBTExCQUNLX0NBTkNFTDsKK30KKwogI2Vsc2UKIEhlYXBU
aW1lcjo6SGVhcFRpbWVyKFZNKiB2bSkKICAgICA6IG1fdm0odm0pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXBUaW1lci5oCmluZGV4IGJlNTM0MzYyN2NhNTY2ODE2MWVmYzQxZTlmOTM3NDI0
ZTRiNWVjZTYuLjA3ZjYxN2NlMzllNWQzMmJjZGY5NmQ4NzhkMzQ0ZmQ5OWEzZGU2NmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oCkBAIC0zOCw2ICszOCw4IEBACiAjaW5j
bHVkZSA8UU11dGV4PgogI2luY2x1ZGUgPFFPYmplY3Q+CiAjaW5jbHVkZSA8UVRocmVhZD4KKyNl
bGlmIFBMQVRGT1JNKEVGTCkKK3R5cGVkZWYgc3RydWN0IF9FY29yZV9UaW1lciBFY29yZV9UaW1l
cjsKICNlbmRpZgogCiBuYW1lc3BhY2UgSlNDIHsKQEAgLTgxLDYgKzgzLDEwIEBAIHByb3RlY3Rl
ZDoKICAgICBRQmFzaWNUaW1lciBtX3RpbWVyOwogICAgIFFUaHJlYWQqIG1fbmV3VGhyZWFkOwog
ICAgIFFNdXRleCBtX211dGV4OworI2VsaWYgUExBVEZPUk0oRUZMKQorICAgIHZvaWQgc3RvcCgp
OworICAgIHN0YXRpYyBib29sIHRpbWVyRXZlbnQodm9pZCopOworICAgIEVjb3JlX1RpbWVyKiBt
X3RpbWVyOwogI2VuZGlmCiAgICAgCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2pzYy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCA0
N2ZmNmM3NDYwOWIzMTJhZjRhNzA2NDQwMmY4M2RmYjU0ODc3NzYzLi4zNTBhYjY1ZjRhYWFhNDk3
OWU2NTZmMjJkYzA4MTUwZGYyNjk5MTk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvanNjLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtOTAsNiAr
OTAsMTAgQEAKICNpbmNsdWRlIDxCbGFja0JlcnJ5UGxhdGZvcm1Mb2cuaD4KICNlbmRpZgogCisj
aWYgUExBVEZPUk0oRUZMKQorI2luY2x1ZGUgPEVjb3JlLmg+CisjZW5kaWYKKwogdXNpbmcgbmFt
ZXNwYWNlIEpTQzsKIHVzaW5nIG5hbWVzcGFjZSBXVEY7CiAKQEAgLTEyOCw2ICsxMzIsMTQgQEAg
c3RydWN0IFNjcmlwdCB7CiAgICAgfQogfTsKIAorI2lmIFBMQVRGT1JNKEVGTCkKK2NsYXNzIFNo
ZWxsRW52aXJvbm1lbnQgeworcHVibGljOgorICAgIFNoZWxsRW52aXJvbm1lbnQoKSB7IGVjb3Jl
X2luaXQoKTsgfQorICAgIH5TaGVsbEVudmlyb25tZW50KCkgeyBlY29yZV9zaHV0ZG93bigpOyB9
Cit9OworI2VuZGlmCisKIGNsYXNzIENvbW1hbmRMaW5lIHsKIHB1YmxpYzoKICAgICBDb21tYW5k
TGluZShpbnQgYXJnYywgY2hhcioqIGFyZ3YpCkBAIC03ODksNiArODAxLDEwIEBAIHZvaWQgQ29t
bWFuZExpbmU6OnBhcnNlQXJndW1lbnRzKGludCBhcmdjLCBjaGFyKiogYXJndikKIAogaW50IGpz
Y21haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogeworI2lmIFBMQVRGT1JNKEVGTCkKKyAgICBT
aGVsbEVudmlyb25tZW50IGVudjsKKyNlbmRpZgorCiAgICAgLy8gTm90ZSB0aGF0IHRoZSBvcHRp
b25zIHBhcnNpbmcgY2FuIGFmZmVjdCBWTSBjcmVhdGlvbiwgYW5kIHRodXMKICAgICAvLyBjb21l
cyBmaXJzdC4KICAgICBDb21tYW5kTGluZSBvcHRpb25zKGFyZ2MsIGFyZ3YpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5jcHAKaW5k
ZXggYThkNGFhYjhiNTIzZjVmMzIxMWRmYjYyYTcyN2UwN2IwMDhlY2M1NS4uZWRjYjRjOTEwYjNi
NjVmZTUwOTM0ZTdlNTk2YWQ4YWY2NDEyZGI5OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3BwCkBAIC0zOCw5ICszOCwxMyBA
QAogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KICNpbmNsdWRlIDx3dGYvV1RGVGhyZWFkRGF0
YS5oPgogCisjaWYgUExBVEZPUk0oRUZMKQorI2luY2x1ZGUgPEVjb3JlLmg+CisjZW5kaWYKKwog
bmFtZXNwYWNlIEpTQyB7CiAKLSNpZiBVU0UoQ0YpIHx8IFBMQVRGT1JNKFFUKQorI2lmIFVTRShD
RikgfHwgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JNKEVGTCkKIAogY29uc3QgZG91YmxlIGdjVGlt
ZVNsaWNlUGVyTUIgPSAwLjAxOyAvLyBQZXJjZW50YWdlIG9mIENQVSB0aW1lIHdlIHdpbGwgc3Bl
bmQgdG8gcmVjbGFpbSAxIE1CCiBjb25zdCBkb3VibGUgbWF4R0NUaW1lU2xpY2UgPSAwLjA1OyAv
LyBUaGUgbWF4aW11bSBhbW91bnQgb2YgQ1BVIHRpbWUgd2Ugd2FudCB0byB1c2UgZm9yIG9wcG9y
dHVuaXN0aWMgdGltZXItdHJpZ2dlcmVkIGNvbGxlY3Rpb25zLgpAQCAtNjAsNyArNjQsNyBAQCBE
ZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrKEhlYXAq
IGhlYXAsIENGUnVuTG9vcFJlZiBydQogICAgICwgbV9kZWxheShzX2RlY2FkZSkKIHsKIH0KLSNl
bGlmIFBMQVRGT1JNKFFUKQorI2VsaWYgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JNKEVGTCkKIERl
ZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2soSGVhcCog
aGVhcCkKICAgICA6IEdDQWN0aXZpdHlDYWxsYmFjayhoZWFwLT52bSgpKQogICAgICwgbV9kZWxh
eShob3VyKQpAQCAtMTE2LDYgKzEyMCwyNCBAQCB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJh
Y2s6OmNhbmNlbFRpbWVyKCkKICAgICBtX2RlbGF5ID0gaG91cjsKICAgICBtX3RpbWVyLnN0b3Ao
KTsKIH0KKyNlbGlmIFBMQVRGT1JNKEVGTCkKK3ZvaWQgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFj
azo6c2NoZWR1bGVUaW1lcihkb3VibGUgbmV3RGVsYXkpCit7CisgICAgaWYgKG5ld0RlbGF5ICog
dGltZXJTbG9wID4gbV9kZWxheSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc3RvcCgpOworICAg
IG1fZGVsYXkgPSBuZXdEZWxheTsKKyAgICAKKyAgICBBU1NFUlQoIW1fdGltZXIpOworICAgIG1f
dGltZXIgPSBlY29yZV90aW1lcl9hZGQobmV3RGVsYXksIHJlaW50ZXJwcmV0X2Nhc3Q8RWNvcmVf
VGFza19DYj4oSGVhcFRpbWVyOjp0aW1lckV2ZW50KSwgdGhpcyk7Cit9CisKK3ZvaWQgRGVmYXVs
dEdDQWN0aXZpdHlDYWxsYmFjazo6Y2FuY2VsVGltZXIoKQoreworICAgIG1fZGVsYXkgPSBob3Vy
OworICAgIHN0b3AoKTsKK30KICNlbmRpZgogCiB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJh
Y2s6OmRpZEFsbG9jYXRlKHNpemVfdCBieXRlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmgKaW5kZXggYmFhZjRmNTUyMWI5OWY0ZDBi
YzMzYzdiZmFlOWRjN2VmMTEzNDRkYS4uMGZhZWFiZTIxNTQ0ODQ5NDc3ZDY0YzBlMmRjZjU3ZGI5
MTFlMzkwMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAg
IERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2soSGVhcCosIENGUnVuTG9vcFJlZik7CiAjZW5kaWYK
LSNpZiBVU0UoQ0YpIHx8IFBMQVRGT1JNKFFUKQorI2lmIFVTRShDRikgfHwgUExBVEZPUk0oUVQp
IHx8IFBMQVRGT1JNKEVGTCkKIHByb3RlY3RlZDoKICAgICB2b2lkIGNhbmNlbFRpbWVyKCk7CiAg
ICAgdm9pZCBzY2hlZHVsZVRpbWVyKGRvdWJsZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202524</attachid>
            <date>2013-05-22 05:04:53 -0700</date>
            <delta_ts>2013-05-22 05:13:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20130522210340.patch</filename>
            <type>text/plain</type>
            <size>7708</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MjMxODRlZTQ5Y2VmYmVlNzUxN2E4MjIzZDc4NzBhZDM5NGMxNTljLi45YzQwMjI0YTljODMzY2Uz
YWJkYWRlYjgwMjM3ZjY2NDM0Zjc2MTc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOCBAQAorMjAxMy0wNS0yMiAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjaworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5MjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHRoZSBh
Y3Rpdml0eSB0cmlnZ2VyZWQgZ2FyYmFnZSBjb2xsZWN0b3IuCisgICAgICAgIEFkZGl0aW9uYWwg
R0NzIGNhbiBiZSB0cmlnZ2VyZWQgYnkgcGxhdGZyb20gdGltZXIuCisgICAgICAgIEl0IGhhcyBz
b3J0IG9mIGNvbXBhY3Rpb24gZWZmZWN0IG5vdCB0byBtYWtlIEpTQyBoZWFwIGdyb3cgZmFzdAor
ICAgICAgICBzbyB0aGF0IG1lbW9yeSB1c2FnZSBiZWNvbWVzIGxvd2VyIHRoYW4gdXN1YWwuCisJ
CQorICAgICAgICAqIFBsYXRmb3JtRWZsLmNtYWtlOiBBZGRlZC4KKyAgICAgICAgKiBoZWFwL0hl
YXBUaW1lci5jcHA6CisgICAgICAgIChKU0MpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6Okhl
YXBUaW1lcik6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6fkhlYXBUaW1lcik6CisgICAgICAg
IChKU0M6OkhlYXBUaW1lcjo6YWRkKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjpzdG9wKToK
KyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjp0aW1lckV2ZW50KToKKyAgICAgICAgKiBoZWFwL0hl
YXBUaW1lci5oOgorICAgICAgICAoSGVhcFRpbWVyKToKKyAgICAgICAgKiBqc2MuY3BwOgorICAg
ICAgICAobWFpbik6CisgICAgICAgICogcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3BwOgor
ICAgICAgICAoSlNDKToKKyAgICAgICAgKEpTQzo6RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6
RGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjayk6CisgICAgICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2
aXR5Q2FsbGJhY2s6OnNjaGVkdWxlVGltZXIpOgorICAgICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rp
dml0eUNhbGxiYWNrOjpjYW5jZWxUaW1lcik6CisgICAgICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2
aXR5Q2FsbGJhY2s6OmRpZEFsbG9jYXRlKToKKyAgICAgICAgKiBydW50aW1lL0dDQWN0aXZpdHlD
YWxsYmFjay5oOgorICAgICAgICAoR0NBY3Rpdml0eUNhbGxiYWNrKToKKyAgICAgICAgKEpTQzo6
R0NBY3Rpdml0eUNhbGxiYWNrOjpHQ0FjdGl2aXR5Q2FsbGJhY2spOgorICAgICAgICAoRGVmYXVs
dEdDQWN0aXZpdHlDYWxsYmFjayk6CisKIDIwMTMtMDUtMjEgIEJyZW50IEZ1bGdoYW0gIDxiZnVs
Z2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbmRvd3NdIFVucmV2aWV3ZWQgc3BlY3VsYXRp
dmUgZml4IGZvciB0ZXN0LWJvdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
UGxhdGZvcm1FZmwuY21ha2UgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21h
a2UKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMGEzNjg4MDc4NGNiMTBmOTgxYTVjMTgyM2EzNzU0NGM3NWFhZTc2Zgot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9QbGF0Zm9ybUVmbC5jbWFr
ZQpAQCAtMCwwICsxLDQgQEAKK2xpc3QoQVBQRU5EIEphdmFTY3JpcHRDb3JlX0lOQ0xVREVfRElS
RUNUT1JJRVMKKyAgICAke0VDT1JFX0lOQ0xVREVfRElSU30KKyAgICAke0VJTkFfSU5DTFVERV9E
SVJTfQorKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVy
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5jcHAKaW5kZXggNTgw
YzQ1YmE5NTY5ZGVhNjQ4ZDgxOWU1ZTA2YjUyZTA3YTY1OTllMi4uYTMwYTI4YjQ1ODg1MTU1ZjEy
YjNhYjliMzE0MmYxMjA1NjJlZWI2YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvSGVhcFRpbWVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFw
VGltZXIuY3BwCkBAIC0zOCw2ICszOCw4IEBACiAjaW5jbHVkZSA8UU11dGV4TG9ja2VyPgogI2lu
Y2x1ZGUgPFFUaHJlYWQ+CiAjaW5jbHVkZSA8UVRpbWVyRXZlbnQ+CisjZWxpZiBQTEFURk9STShF
RkwpCisjaW5jbHVkZSA8RWNvcmUuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgSlNDIHsKQEAgLTE2
NSw2ICsxNjcsNDQgQEAgdm9pZCBIZWFwVGltZXI6OmN1c3RvbUV2ZW50KFFFdmVudCopCiAgICAg
bV9uZXdUaHJlYWQgPSAwOwogfQogCisjZWxpZiBQTEFURk9STShFRkwpCisKK0hlYXBUaW1lcjo6
SGVhcFRpbWVyKFZNKiB2bSkKKyAgICA6IG1fdm0odm0pCisgICAgLCBtX3RpbWVyKDApCit7Cit9
CisKK0hlYXBUaW1lcjo6fkhlYXBUaW1lcigpCit7CisgICAgc3RvcCgpOworfQorCitFY29yZV9U
aW1lciogSGVhcFRpbWVyOjphZGQoZG91YmxlIGRlbGF5LCB2b2lkKiBhZ2VudCkKK3sKKyAgICBy
ZXR1cm4gZWNvcmVfdGltZXJfYWRkKGRlbGF5LCByZWludGVycHJldF9jYXN0PEVjb3JlX1Rhc2tf
Q2I+KHRpbWVyRXZlbnQpLCBhZ2VudCk7Cit9CisgICAgCit2b2lkIEhlYXBUaW1lcjo6c3RvcCgp
Cit7CisgICAgaWYgKCFtX3RpbWVyKQorICAgICAgICByZXR1cm47CisKKyAgICBlY29yZV90aW1l
cl9kZWwobV90aW1lcik7CisgICAgbV90aW1lciA9IDA7Cit9CisKK2Jvb2wgSGVhcFRpbWVyOjp0
aW1lckV2ZW50KHZvaWQqIGluZm8pCit7CisgICAgSGVhcFRpbWVyKiBhZ2VudCA9IHN0YXRpY19j
YXN0PEhlYXBUaW1lcio+KGluZm8pOworICAgIAorICAgIEFQSUVudHJ5U2hpbSBzaGltKGFnZW50
LT5tX3ZtKTsKKyAgICBhZ2VudC0+ZG9Xb3JrKCk7CisgICAgYWdlbnQtPm1fdGltZXIgPSAwOwor
ICAgIAorICAgIHJldHVybiBFQ09SRV9DQUxMQkFDS19DQU5DRUw7Cit9CisKICNlbHNlCiBIZWFw
VGltZXI6OkhlYXBUaW1lcihWTSogdm0pCiAgICAgOiBtX3ZtKHZtKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaGVhcC9IZWFwVGltZXIuaAppbmRleCBiZTUzNDM2MjdjYTU2NjgxNjFlZmM0MWU5ZjkzNzQy
NGU0YjVlY2U2Li5mNzU3NmVkZDk3ZTM4NzhjZTIxODQ5NmEwZjVjYzU2ZjI5NjE2OGFkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuaApAQCAtMzgsNiArMzgsOCBAQAogI2lu
Y2x1ZGUgPFFNdXRleD4KICNpbmNsdWRlIDxRT2JqZWN0PgogI2luY2x1ZGUgPFFUaHJlYWQ+Cisj
ZWxpZiBQTEFURk9STShFRkwpCit0eXBlZGVmIHN0cnVjdCBfRWNvcmVfVGltZXIgRWNvcmVfVGlt
ZXI7CiAjZW5kaWYKIAogbmFtZXNwYWNlIEpTQyB7CkBAIC04MSw2ICs4MywxMSBAQCBwcm90ZWN0
ZWQ6CiAgICAgUUJhc2ljVGltZXIgbV90aW1lcjsKICAgICBRVGhyZWFkKiBtX25ld1RocmVhZDsK
ICAgICBRTXV0ZXggbV9tdXRleDsKKyNlbGlmIFBMQVRGT1JNKEVGTCkKKyAgICBzdGF0aWMgYm9v
bCB0aW1lckV2ZW50KHZvaWQqKTsKKyAgICBFY29yZV9UaW1lciogYWRkKGRvdWJsZSBkZWxheSwg
dm9pZCogYWdlbnQpOworICAgIHZvaWQgc3RvcCgpOworICAgIEVjb3JlX1RpbWVyKiBtX3RpbWVy
OwogI2VuZGlmCiAgICAgCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2pzYy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAppbmRleCA0N2ZmNmM3
NDYwOWIzMTJhZjRhNzA2NDQwMmY4M2RmYjU0ODc3NzYzLi40NDA0ZmFhOWU4OTc1N2NmZTk4MjQ1
NWE2NGRmNzJkNTM1NDJjMDI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNj
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcApAQCAtOTAsNiArOTAsMTAg
QEAKICNpbmNsdWRlIDxCbGFja0JlcnJ5UGxhdGZvcm1Mb2cuaD4KICNlbmRpZgogCisjaWYgUExB
VEZPUk0oRUZMKQorI2luY2x1ZGUgPEVjb3JlLmg+CisjZW5kaWYKKwogdXNpbmcgbmFtZXNwYWNl
IEpTQzsKIHVzaW5nIG5hbWVzcGFjZSBXVEY7CiAKQEAgLTUzNyw2ICs1NDEsMTAgQEAgaW50IG1h
aW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogICAgIFFDb3JlQXBwbGljYXRpb24gYXBwKGFyZ2Ms
IGFyZ3YpOwogI2VuZGlmCiAKKyNpZiBQTEFURk9STShFRkwpCisgICAgZWNvcmVfaW5pdCgpOwor
I2VuZGlmCisKICAgICAvLyBJbml0aWFsaXplIEpTQyBiZWZvcmUgZ2V0dGluZyBWTS4KICNpZiBF
TkFCTEUoU0FNUExJTkdfUkVHSU9OUykKICAgICBXVEY6OmluaXRpYWxpemVNYWluVGhyZWFkKCk7
CkBAIC01NTEsNiArNTU5LDExIEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikKICAg
ICBFWENFUFQocmVzID0gMykKICAgICBpZiAoT3B0aW9uczo6bG9nSGVhcFN0YXRpc3RpY3NBdEV4
aXQoKSkKICAgICAgICAgSGVhcFN0YXRpc3RpY3M6OnJlcG9ydFN1Y2Nlc3MoKTsKKworI2lmIFBM
QVRGT1JNKEVGTCkKKyAgICBlY29yZV9zaHV0ZG93bigpOworI2VuZGlmCisKICAgICByZXR1cm4g
cmVzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0Fj
dGl2aXR5Q2FsbGJhY2suY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmNwcAppbmRleCBhOGQ0YWFiOGI1MjNmNWYzMjExZGZiNjJhNzI3ZTA3YjAw
OGVjYzU1Li40ODk4MTIyYjUzNDgzYjJjMjI2NjEzMWEzNmVmNDhhMTk3NDgzYmM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5j
cHAKQEAgLTM4LDkgKzM4LDEzIEBACiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1
ZGUgPHd0Zi9XVEZUaHJlYWREYXRhLmg+CiAKKyNpZiBQTEFURk9STShFRkwpCisjaW5jbHVkZSA8
d3RmL01haW5UaHJlYWQuaD4KKyNlbmRpZgorCiBuYW1lc3BhY2UgSlNDIHsKIAotI2lmIFVTRShD
RikgfHwgUExBVEZPUk0oUVQpCisjaWYgVVNFKENGKSB8fCBQTEFURk9STShRVCkgfHwgUExBVEZP
Uk0oRUZMKQogCiBjb25zdCBkb3VibGUgZ2NUaW1lU2xpY2VQZXJNQiA9IDAuMDE7IC8vIFBlcmNl
bnRhZ2Ugb2YgQ1BVIHRpbWUgd2Ugd2lsbCBzcGVuZCB0byByZWNsYWltIDEgTUIKIGNvbnN0IGRv
dWJsZSBtYXhHQ1RpbWVTbGljZSA9IDAuMDU7IC8vIFRoZSBtYXhpbXVtIGFtb3VudCBvZiBDUFUg
dGltZSB3ZSB3YW50IHRvIHVzZSBmb3Igb3Bwb3J0dW5pc3RpYyB0aW1lci10cmlnZ2VyZWQgY29s
bGVjdGlvbnMuCkBAIC02Niw2ICs3MCwxMiBAQCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpE
ZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrKEhlYXAqIGhlYXApCiAgICAgLCBtX2RlbGF5KGhvdXIp
CiB7CiB9CisjZWxpZiBQTEFURk9STShFRkwpCitEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpE
ZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrKEhlYXAqIGhlYXApCisgICAgOiBHQ0FjdGl2aXR5Q2Fs
bGJhY2soaGVhcC0+dm0oKSwgV1RGOjppc01haW5UaHJlYWQoKSkKKyAgICAsIG1fZGVsYXkoaG91
cikKK3sKK30KICNlbmRpZgogCiB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OmRvV29y
aygpCkBAIC0xMTYsMTAgKzEyNiwzNSBAQCB2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6
OmNhbmNlbFRpbWVyKCkKICAgICBtX2RlbGF5ID0gaG91cjsKICAgICBtX3RpbWVyLnN0b3AoKTsK
IH0KKyNlbGlmIFBMQVRGT1JNKEVGTCkKK3ZvaWQgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6
c2NoZWR1bGVUaW1lcihkb3VibGUgbmV3RGVsYXkpCit7CisgICAgaWYgKG5ld0RlbGF5ICogdGlt
ZXJTbG9wID4gbV9kZWxheSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc3RvcCgpOworICAgIG1f
ZGVsYXkgPSBuZXdEZWxheTsKKyAgICAKKyAgICBBU1NFUlQoIW1fdGltZXIpOworICAgIG1fdGlt
ZXIgPSBhZGQobmV3RGVsYXksIHRoaXMpOworfQorCit2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2Fs
bGJhY2s6OmNhbmNlbFRpbWVyKCkKK3sKKyAgICBtX2RlbGF5ID0gaG91cjsKKyAgICBzdG9wKCk7
Cit9CiAjZW5kaWYKIAogdm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpkaWRBbGxvY2F0
ZShzaXplX3QgYnl0ZXMpCiB7CisjaWYgUExBVEZPUk0oRUZMKQorICAgIGlmICghaXNFbmFibGVk
KCkpCisgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChXVEY6OmlzTWFpblRocmVhZCgpKTsK
KyNlbmRpZgorCiAgICAgLy8gVGhlIGZpcnN0IGJ5dGUgYWxsb2NhdGVkIGluIGFuIGFsbG9jYXRp
b24gY3ljbGUgd2lsbCByZXBvcnQgMCBieXRlcyB0byBkaWRBbGxvY2F0ZS4gCiAgICAgLy8gV2Ug
cHJldGVuZCBpdCdzIG9uZSBieXRlIHNvIHRoYXQgd2UgZG9uJ3QgaWdub3JlIHRoaXMgYWxsb2Nh
dGlvbiBlbnRpcmVseS4KICAgICBpZiAoIWJ5dGVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suaAppbmRleCBiYWFmNGY1NTIxYjk5ZjRk
MGJjMzNjN2JmYWU5ZGM3ZWYxMTM0NGRhLi5hN2FlYzZhOGQxN2Y2NmYxNmJhY2VjOTEyZjQzZTI5
Nzk4NjYzNTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0Fj
dGl2aXR5Q2FsbGJhY2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0Fj
dGl2aXR5Q2FsbGJhY2suaApAQCAtNTcsNiArNTcsMTIgQEAgcHJvdGVjdGVkOgogICAgICAgICAs
IG1fZW5hYmxlZCh0cnVlKQogICAgIHsKICAgICB9CisjZWxpZiBQTEFURk9STShFRkwpCisgICAg
R0NBY3Rpdml0eUNhbGxiYWNrKFZNKiB2bSwgYm9vbCBmbGFnKQorICAgICAgICA6IEhlYXBUaW1l
cih2bSkKKyAgICAgICAgLCBtX2VuYWJsZWQoZmxhZykKKyAgICB7CisgICAgfQogI2Vsc2UKICAg
ICBHQ0FjdGl2aXR5Q2FsbGJhY2soVk0qIHZtKQogICAgICAgICA6IEhlYXBUaW1lcih2bSkKQEAg
LTg0LDcgKzkwLDcgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIERlZmF1bHRHQ0FjdGl2aXR5
Q2FsbGJhY2soSGVhcCosIENGUnVuTG9vcFJlZik7CiAjZW5kaWYKLSNpZiBVU0UoQ0YpIHx8IFBM
QVRGT1JNKFFUKQorI2lmIFVTRShDRikgfHwgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JNKEVGTCkK
IHByb3RlY3RlZDoKICAgICB2b2lkIGNhbmNlbFRpbWVyKCk7CiAgICAgdm9pZCBzY2hlZHVsZVRp
bWVyKGRvdWJsZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202526</attachid>
            <date>2013-05-22 05:13:56 -0700</date>
            <delta_ts>2013-06-03 20:20:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95923-20130522211243.patch</filename>
            <type>text/plain</type>
            <size>7706</size>
            <attacher name="Hojong Han">hojong.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
MjMxODRlZTQ5Y2VmYmVlNzUxN2E4MjIzZDc4NzBhZDM5NGMxNTljLi4xYzc5MTdiYWQ5ZjZmMzJh
MGMwZTI2ODZhMzcxOWViYWZlN2Q4MWRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOCBAQAorMjAxMy0wNS0yMiAgSG9qb25nIEhhbiAgPGhvam9uZy5oYW5Ac2Ftc3VuZy5j
b20+CisKKyAgICAgICAgW0VGTF0gSW1wbGVtZW50IEdDQWN0aXZpdHlDYWxsYmFjaworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU5MjMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnRzIHRoZSBh
Y3Rpdml0eSB0cmlnZ2VyZWQgZ2FyYmFnZSBjb2xsZWN0b3IuCisgICAgICAgIEFkZGl0aW9uYWwg
R0NzIGNhbiBiZSB0cmlnZ2VyZWQgYnkgcGxhdGZyb20gdGltZXIuCisgICAgICAgIEl0IGhhcyBz
b3J0IG9mIGNvbXBhY3Rpb24gZWZmZWN0IG5vdCB0byBtYWtlIEpTQyBoZWFwIGdyb3cgZmFzdAor
ICAgICAgICBzbyB0aGF0IG1lbW9yeSB1c2FnZSBiZWNvbWVzIGxvd2VyIHRoYW4gdXN1YWwuCisK
KyAgICAgICAgKiBQbGF0Zm9ybUVmbC5jbWFrZTogQWRkZWQuCisgICAgICAgICogaGVhcC9IZWFw
VGltZXIuY3BwOgorICAgICAgICAoSlNDKToKKyAgICAgICAgKEpTQzo6SGVhcFRpbWVyOjpIZWFw
VGltZXIpOgorICAgICAgICAoSlNDOjpIZWFwVGltZXI6On5IZWFwVGltZXIpOgorICAgICAgICAo
SlNDOjpIZWFwVGltZXI6OmFkZCk6CisgICAgICAgIChKU0M6OkhlYXBUaW1lcjo6c3RvcCk6Cisg
ICAgICAgIChKU0M6OkhlYXBUaW1lcjo6dGltZXJFdmVudCk6CisgICAgICAgICogaGVhcC9IZWFw
VGltZXIuaDoKKyAgICAgICAgKEhlYXBUaW1lcik6CisgICAgICAgICoganNjLmNwcDoKKyAgICAg
ICAgKG1haW4pOgorICAgICAgICAqIHJ1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcDoKKyAg
ICAgICAgKEpTQyk6CisgICAgICAgIChKU0M6OkRlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OkRl
ZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2spOgorICAgICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rpdml0
eUNhbGxiYWNrOjpzY2hlZHVsZVRpbWVyKToKKyAgICAgICAgKEpTQzo6RGVmYXVsdEdDQWN0aXZp
dHlDYWxsYmFjazo6Y2FuY2VsVGltZXIpOgorICAgICAgICAoSlNDOjpEZWZhdWx0R0NBY3Rpdml0
eUNhbGxiYWNrOjpkaWRBbGxvY2F0ZSk6CisgICAgICAgICogcnVudGltZS9HQ0FjdGl2aXR5Q2Fs
bGJhY2suaDoKKyAgICAgICAgKEdDQWN0aXZpdHlDYWxsYmFjayk6CisgICAgICAgIChKU0M6OkdD
QWN0aXZpdHlDYWxsYmFjazo6R0NBY3Rpdml0eUNhbGxiYWNrKToKKyAgICAgICAgKERlZmF1bHRH
Q0FjdGl2aXR5Q2FsbGJhY2spOgorCiAyMDEzLTA1LTIxICBCcmVudCBGdWxnaGFtICA8YmZ1bGdo
YW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtXaW5kb3dzXSBVbnJldmlld2VkIHNwZWN1bGF0aXZl
IGZpeCBmb3IgdGVzdC1ib3RzLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1Bs
YXRmb3JtRWZsLmNtYWtlIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1BsYXRmb3JtRWZsLmNtYWtl
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjBhMzY4ODA3ODRjYjEwZjk4MWE1YzE4MjNhMzc1NDRjNzVhYWU3NmYKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvUGxhdGZvcm1FZmwuY21ha2UK
QEAgLTAsMCArMSw0IEBACitsaXN0KEFQUEVORCBKYXZhU2NyaXB0Q29yZV9JTkNMVURFX0RJUkVD
VE9SSUVTCisgICAgJHtFQ09SRV9JTkNMVURFX0RJUlN9CisgICAgJHtFSU5BX0lOQ0xVREVfRElS
U30KKykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwVGltZXIuY3BwCmluZGV4IDU4MGM0
NWJhOTU2OWRlYTY0OGQ4MTllNWUwNmI1MmUwN2E2NTk5ZTIuLmEzMGEyOGI0NTg4NTE1NWYxMmIz
YWI5YjMxNDJmMTIwNTYyZWViNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0hlYXBUaW1lci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRp
bWVyLmNwcApAQCAtMzgsNiArMzgsOCBAQAogI2luY2x1ZGUgPFFNdXRleExvY2tlcj4KICNpbmNs
dWRlIDxRVGhyZWFkPgogI2luY2x1ZGUgPFFUaW1lckV2ZW50PgorI2VsaWYgUExBVEZPUk0oRUZM
KQorI2luY2x1ZGUgPEVjb3JlLmg+CiAjZW5kaWYKIAogbmFtZXNwYWNlIEpTQyB7CkBAIC0xNjUs
NiArMTY3LDQ0IEBAIHZvaWQgSGVhcFRpbWVyOjpjdXN0b21FdmVudChRRXZlbnQqKQogICAgIG1f
bmV3VGhyZWFkID0gMDsKIH0KIAorI2VsaWYgUExBVEZPUk0oRUZMKQorCitIZWFwVGltZXI6Okhl
YXBUaW1lcihWTSogdm0pCisgICAgOiBtX3ZtKHZtKQorICAgICwgbV90aW1lcigwKQoreworfQor
CitIZWFwVGltZXI6On5IZWFwVGltZXIoKQoreworICAgIHN0b3AoKTsKK30KKworRWNvcmVfVGlt
ZXIqIEhlYXBUaW1lcjo6YWRkKGRvdWJsZSBkZWxheSwgdm9pZCogYWdlbnQpCit7CisgICAgcmV0
dXJuIGVjb3JlX3RpbWVyX2FkZChkZWxheSwgcmVpbnRlcnByZXRfY2FzdDxFY29yZV9UYXNrX0Ni
Pih0aW1lckV2ZW50KSwgYWdlbnQpOworfQorICAgIAordm9pZCBIZWFwVGltZXI6OnN0b3AoKQor
eworICAgIGlmICghbV90aW1lcikKKyAgICAgICAgcmV0dXJuOworCisgICAgZWNvcmVfdGltZXJf
ZGVsKG1fdGltZXIpOworICAgIG1fdGltZXIgPSAwOworfQorCitib29sIEhlYXBUaW1lcjo6dGlt
ZXJFdmVudCh2b2lkKiBpbmZvKQoreworICAgIEhlYXBUaW1lciogYWdlbnQgPSBzdGF0aWNfY2Fz
dDxIZWFwVGltZXIqPihpbmZvKTsKKyAgICAKKyAgICBBUElFbnRyeVNoaW0gc2hpbShhZ2VudC0+
bV92bSk7CisgICAgYWdlbnQtPmRvV29yaygpOworICAgIGFnZW50LT5tX3RpbWVyID0gMDsKKyAg
ICAKKyAgICByZXR1cm4gRUNPUkVfQ0FMTEJBQ0tfQ0FOQ0VMOworfQorCiAjZWxzZQogSGVhcFRp
bWVyOjpIZWFwVGltZXIoVk0qIHZtKQogICAgIDogbV92bSh2bSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXBUaW1lci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2hlYXAvSGVhcFRpbWVyLmgKaW5kZXggYmU1MzQzNjI3Y2E1NjY4MTYxZWZjNDFlOWY5Mzc0MjRl
NGI1ZWNlNi4uZjc1NzZlZGQ5N2UzODc4Y2UyMTg0OTZhMGY1Y2M1NmYyOTYxNjhhZCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcFRpbWVyLmgKQEAgLTM4LDYgKzM4LDggQEAKICNpbmNs
dWRlIDxRTXV0ZXg+CiAjaW5jbHVkZSA8UU9iamVjdD4KICNpbmNsdWRlIDxRVGhyZWFkPgorI2Vs
aWYgUExBVEZPUk0oRUZMKQordHlwZWRlZiBzdHJ1Y3QgX0Vjb3JlX1RpbWVyIEVjb3JlX1RpbWVy
OwogI2VuZGlmCiAKIG5hbWVzcGFjZSBKU0MgewpAQCAtODEsNiArODMsMTEgQEAgcHJvdGVjdGVk
OgogICAgIFFCYXNpY1RpbWVyIG1fdGltZXI7CiAgICAgUVRocmVhZCogbV9uZXdUaHJlYWQ7CiAg
ICAgUU11dGV4IG1fbXV0ZXg7CisjZWxpZiBQTEFURk9STShFRkwpCisgICAgc3RhdGljIGJvb2wg
dGltZXJFdmVudCh2b2lkKik7CisgICAgRWNvcmVfVGltZXIqIGFkZChkb3VibGUgZGVsYXksIHZv
aWQqIGFnZW50KTsKKyAgICB2b2lkIHN0b3AoKTsKKyAgICBFY29yZV9UaW1lciogbV90aW1lcjsK
ICNlbmRpZgogICAgIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qc2MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKaW5kZXggNDdmZjZjNzQ2
MDliMzEyYWY0YTcwNjQ0MDJmODNkZmI1NDg3Nzc2My4uNDQwNGZhYTllODk3NTdjZmU5ODI0NTVh
NjRkZjcyZDUzNTQyYzAyNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAKQEAgLTkwLDYgKzkwLDEwIEBA
CiAjaW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRmb3JtTG9nLmg+CiAjZW5kaWYKIAorI2lmIFBMQVRG
T1JNKEVGTCkKKyNpbmNsdWRlIDxFY29yZS5oPgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFjZSBK
U0M7CiB1c2luZyBuYW1lc3BhY2UgV1RGOwogCkBAIC01MzcsNiArNTQxLDEwIEBAIGludCBtYWlu
KGludCBhcmdjLCBjaGFyKiogYXJndikKICAgICBRQ29yZUFwcGxpY2F0aW9uIGFwcChhcmdjLCBh
cmd2KTsKICNlbmRpZgogCisjaWYgUExBVEZPUk0oRUZMKQorICAgIGVjb3JlX2luaXQoKTsKKyNl
bmRpZgorCiAgICAgLy8gSW5pdGlhbGl6ZSBKU0MgYmVmb3JlIGdldHRpbmcgVk0uCiAjaWYgRU5B
QkxFKFNBTVBMSU5HX1JFR0lPTlMpCiAgICAgV1RGOjppbml0aWFsaXplTWFpblRocmVhZCgpOwpA
QCAtNTUxLDYgKzU1OSwxMSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAgICAg
RVhDRVBUKHJlcyA9IDMpCiAgICAgaWYgKE9wdGlvbnM6OmxvZ0hlYXBTdGF0aXN0aWNzQXRFeGl0
KCkpCiAgICAgICAgIEhlYXBTdGF0aXN0aWNzOjpyZXBvcnRTdWNjZXNzKCk7CisKKyNpZiBQTEFU
Rk9STShFRkwpCisgICAgZWNvcmVfc2h1dGRvd24oKTsKKyNlbmRpZgorCiAgICAgcmV0dXJuIHJl
czsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0dDQWN0aXZp
dHlDYWxsYmFjay5jcHAKaW5kZXggYThkNGFhYjhiNTIzZjVmMzIxMWRmYjYyYTcyN2UwN2IwMDhl
Y2M1NS4uNDg5ODEyMmI1MzQ4M2IyYzIyNjYxMzFhMzZlZjQ4YTE5NzQ4M2JjOSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9HQ0FjdGl2aXR5Q2FsbGJhY2suY3Bw
CkBAIC0zOCw5ICszOCwxMyBAQAogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KICNpbmNsdWRl
IDx3dGYvV1RGVGhyZWFkRGF0YS5oPgogCisjaWYgUExBVEZPUk0oRUZMKQorI2luY2x1ZGUgPHd0
Zi9NYWluVGhyZWFkLmg+CisjZW5kaWYKKwogbmFtZXNwYWNlIEpTQyB7CiAKLSNpZiBVU0UoQ0Yp
IHx8IFBMQVRGT1JNKFFUKQorI2lmIFVTRShDRikgfHwgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JN
KEVGTCkKIAogY29uc3QgZG91YmxlIGdjVGltZVNsaWNlUGVyTUIgPSAwLjAxOyAvLyBQZXJjZW50
YWdlIG9mIENQVSB0aW1lIHdlIHdpbGwgc3BlbmQgdG8gcmVjbGFpbSAxIE1CCiBjb25zdCBkb3Vi
bGUgbWF4R0NUaW1lU2xpY2UgPSAwLjA1OyAvLyBUaGUgbWF4aW11bSBhbW91bnQgb2YgQ1BVIHRp
bWUgd2Ugd2FudCB0byB1c2UgZm9yIG9wcG9ydHVuaXN0aWMgdGltZXItdHJpZ2dlcmVkIGNvbGxl
Y3Rpb25zLgpAQCAtNjYsNiArNzAsMTIgQEAgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6RGVm
YXVsdEdDQWN0aXZpdHlDYWxsYmFjayhIZWFwKiBoZWFwKQogICAgICwgbV9kZWxheShob3VyKQog
ewogfQorI2VsaWYgUExBVEZPUk0oRUZMKQorRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6RGVm
YXVsdEdDQWN0aXZpdHlDYWxsYmFjayhIZWFwKiBoZWFwKQorICAgIDogR0NBY3Rpdml0eUNhbGxi
YWNrKGhlYXAtPnZtKCksIFdURjo6aXNNYWluVGhyZWFkKCkpCisgICAgLCBtX2RlbGF5KGhvdXIp
Cit7Cit9CiAjZW5kaWYKIAogdm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpkb1dvcmso
KQpAQCAtMTE2LDEwICsxMjYsMzUgQEAgdm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxiYWNrOjpj
YW5jZWxUaW1lcigpCiAgICAgbV9kZWxheSA9IGhvdXI7CiAgICAgbV90aW1lci5zdG9wKCk7CiB9
CisjZWxpZiBQTEFURk9STShFRkwpCit2b2lkIERlZmF1bHRHQ0FjdGl2aXR5Q2FsbGJhY2s6OnNj
aGVkdWxlVGltZXIoZG91YmxlIG5ld0RlbGF5KQoreworICAgIGlmIChuZXdEZWxheSAqIHRpbWVy
U2xvcCA+IG1fZGVsYXkpCisgICAgICAgIHJldHVybjsKKworICAgIHN0b3AoKTsKKyAgICBtX2Rl
bGF5ID0gbmV3RGVsYXk7CisgICAgCisgICAgQVNTRVJUKCFtX3RpbWVyKTsKKyAgICBtX3RpbWVy
ID0gYWRkKG5ld0RlbGF5LCB0aGlzKTsKK30KKwordm9pZCBEZWZhdWx0R0NBY3Rpdml0eUNhbGxi
YWNrOjpjYW5jZWxUaW1lcigpCit7CisgICAgbV9kZWxheSA9IGhvdXI7CisgICAgc3RvcCgpOwor
fQogI2VuZGlmCiAKIHZvaWQgRGVmYXVsdEdDQWN0aXZpdHlDYWxsYmFjazo6ZGlkQWxsb2NhdGUo
c2l6ZV90IGJ5dGVzKQogeworI2lmIFBMQVRGT1JNKEVGTCkKKyAgICBpZiAoIWlzRW5hYmxlZCgp
KQorICAgICAgICByZXR1cm47CisKKyAgICBBU1NFUlQoV1RGOjppc01haW5UaHJlYWQoKSk7Cisj
ZW5kaWYKKwogICAgIC8vIFRoZSBmaXJzdCBieXRlIGFsbG9jYXRlZCBpbiBhbiBhbGxvY2F0aW9u
IGN5Y2xlIHdpbGwgcmVwb3J0IDAgYnl0ZXMgdG8gZGlkQWxsb2NhdGUuIAogICAgIC8vIFdlIHBy
ZXRlbmQgaXQncyBvbmUgYnl0ZSBzbyB0aGF0IHdlIGRvbid0IGlnbm9yZSB0aGlzIGFsbG9jYXRp
b24gZW50aXJlbHkuCiAgICAgaWYgKCFieXRlcykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0dDQWN0aXZpdHlDYWxsYmFjay5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvR0NBY3Rpdml0eUNhbGxiYWNrLmgKaW5kZXggYmFhZjRmNTUyMWI5OWY0ZDBi
YzMzYzdiZmFlOWRjN2VmMTEzNDRkYS4uYTdhZWM2YThkMTdmNjZmMTZiYWNlYzkxMmY0M2UyOTc5
ODY2MzU1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvR0NBY3Rp
dml0eUNhbGxiYWNrLmgKQEAgLTU3LDYgKzU3LDEyIEBAIHByb3RlY3RlZDoKICAgICAgICAgLCBt
X2VuYWJsZWQodHJ1ZSkKICAgICB7CiAgICAgfQorI2VsaWYgUExBVEZPUk0oRUZMKQorICAgIEdD
QWN0aXZpdHlDYWxsYmFjayhWTSogdm0sIGJvb2wgZmxhZykKKyAgICAgICAgOiBIZWFwVGltZXIo
dm0pCisgICAgICAgICwgbV9lbmFibGVkKGZsYWcpCisgICAgeworICAgIH0KICNlbHNlCiAgICAg
R0NBY3Rpdml0eUNhbGxiYWNrKFZNKiB2bSkKICAgICAgICAgOiBIZWFwVGltZXIodm0pCkBAIC04
NCw3ICs5MCw3IEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAgICBEZWZhdWx0R0NBY3Rpdml0eUNh
bGxiYWNrKEhlYXAqLCBDRlJ1bkxvb3BSZWYpOwogI2VuZGlmCi0jaWYgVVNFKENGKSB8fCBQTEFU
Rk9STShRVCkKKyNpZiBVU0UoQ0YpIHx8IFBMQVRGT1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiBw
cm90ZWN0ZWQ6CiAgICAgdm9pZCBjYW5jZWxUaW1lcigpOwogICAgIHZvaWQgc2NoZWR1bGVUaW1l
cihkb3VibGUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>