<?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>70328</bug_id>
          
          <creation_ts>2011-10-18 06:54:22 -0700</creation_ts>
          <short_desc>Properly suspend/resume DeviceMotion/DeviceOrientation objects</short_desc>
          <delta_ts>2011-10-26 07:55:25 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>70502</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kenneth Rohde Christiansen">kenneth</reporter>
          <assigned_to name="Kenneth Rohde Christiansen">kenneth</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>dpranke</cc>
    
    <cc>gustavo</cc>
    
    <cc>hausmann</cc>
    
    <cc>kling</cc>
    
    <cc>ossy</cc>
    
    <cc>savagobr</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>486019</commentid>
    <comment_count>0</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-18 06:54:22 -0700</bug_when>
    <thetext>SSIA</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486020</commentid>
    <comment_count>1</comment_count>
      <attachid>111435</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-18 06:56:40 -0700</bug_when>
    <thetext>Created attachment 111435
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486022</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-18 06:57:55 -0700</bug_when>
    <thetext>Attachment 111435 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/dom/Document.cpp:167:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 10 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>486030</commentid>
    <comment_count>3</comment_count>
      <attachid>111435</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-10-18 07:07:25 -0700</bug_when>
    <thetext>Comment on attachment 111435
Patch

Attachment 111435 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/10126232</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486044</commentid>
    <comment_count>4</comment_count>
      <attachid>111443</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-18 07:26:26 -0700</bug_when>
    <thetext>Created attachment 111443
Patch1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486052</commentid>
    <comment_count>5</comment_count>
      <attachid>111443</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-10-18 07:58:44 -0700</bug_when>
    <thetext>Comment on attachment 111443
Patch1

Attachment 111443 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/10125265</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486062</commentid>
    <comment_count>6</comment_count>
      <attachid>111443</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-18 08:20:58 -0700</bug_when>
    <thetext>Comment on attachment 111443
Patch1

Attachment 111443 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10121265</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486352</commentid>
    <comment_count>7</comment_count>
      <attachid>111443</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2011-10-18 15:19:51 -0700</bug_when>
    <thetext>Comment on attachment 111443
Patch1

Attachment 111443 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/10142102</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486800</commentid>
    <comment_count>8</comment_count>
      <attachid>111623</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-19 08:08:45 -0700</bug_when>
    <thetext>Created attachment 111623
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486829</commentid>
    <comment_count>9</comment_count>
      <attachid>111623</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-19 08:50:41 -0700</bug_when>
    <thetext>Comment on attachment 111623
Patch

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

&gt; Source/WebCore/dom/DeviceMotionController.cpp:109
&gt; +    // If we have a client and there are listeners registered,
&gt; +    // then tell the client to start updating

I think the code is sufficiently self-explanatory.

&gt; Source/WebCore/dom/DeviceOrientationController.cpp:111
&gt; +    // If we have a client and there are listeners registered,
&gt; +    // then tell the client to start updating

Ditto.

&gt; Source/WebCore/page/GeolocationController.cpp:92
&gt; +    // If we have a client and there are observers registered,
&gt; +    // then tell the client to start updating

Ditto.

&gt; Source/WebCore/dom/Document.cpp:1928
&gt; +    ScriptExecutionContext::stopActiveDOMObjects();
&gt; +

No need for page() null check here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486831</commentid>
    <comment_count>10</comment_count>
      <attachid>111630</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-19 08:56:00 -0700</bug_when>
    <thetext>Created attachment 111630
Patch

Patch fixing Kling&apos;s comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486833</commentid>
    <comment_count>11</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2011-10-19 09:02:46 -0700</bug_when>
    <thetext>&gt;void DeviceOrientationController::suspend()
&gt;{
&gt;    if (m_client)
&gt;        m_client-&gt;stopUpdating();
&gt;}
&gt;
&gt;void DeviceOrientationController::resume()
&gt;{
&gt;    if (m_client &amp;&amp; !m_listeners.isEmpty())
&gt;        m_client-&gt;startUpdating();
&gt;}
I missing some explanation here why these 2 functions are not symmetrical.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486839</commentid>
    <comment_count>12</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-19 09:25:13 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; &gt;void DeviceOrientationController::suspend()
&gt; &gt;{
&gt; &gt;    if (m_client)
&gt; &gt;        m_client-&gt;stopUpdating();
&gt; &gt;}
&gt; &gt;
&gt; &gt;void DeviceOrientationController::resume()
&gt; &gt;{
&gt; &gt;    if (m_client &amp;&amp; !m_listeners.isEmpty())
&gt; &gt;        m_client-&gt;startUpdating();
&gt; &gt;}
&gt; I missing some explanation here why these 2 functions are not symmetrical.

They could be symmetrical, as if the set is empty then it is already stopped. But it doesn&apos;t really make any difference.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487444</commentid>
    <comment_count>13</comment_count>
      <attachid>111630</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-10-20 03:02:43 -0700</bug_when>
    <thetext>Comment on attachment 111630
Patch

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

&gt; Source/WebCore/dom/DeviceOrientationController.cpp:78
&gt; +    if (m_client &amp;&amp; wasEmpty)

How can client be a null pointer? It looks like it&apos;s passed in the constructor and the destructor seems to de-reference it unconditionally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487451</commentid>
    <comment_count>14</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-20 03:28:56 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 111630 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=111630&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/DeviceOrientationController.cpp:78
&gt; &gt; +    if (m_client &amp;&amp; wasEmpty)
&gt; 
&gt; How can client be a null pointer? It looks like it&apos;s passed in the constructor and the destructor seems to de-reference it unconditionally.

I&apos;ll remove that for now... it is being checked in all other clients, so I should check those as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487454</commentid>
    <comment_count>15</comment_count>
      <attachid>111630</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-10-20 03:36:27 -0700</bug_when>
    <thetext>Comment on attachment 111630
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487457</commentid>
    <comment_count>16</comment_count>
      <attachid>111630</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-20 03:38:49 -0700</bug_when>
    <thetext>Comment on attachment 111630
Patch

Rejecting attachment 111630 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
#2 FAILED at 75.
Hunk #3 succeeded at 1835 (offset -44 lines).
2 out of 3 hunks FAILED -- saving rejects to file Source/WebCore/dom/Document.cpp.rej
patching file Source/WebCore/dom/Document.h
patching file Source/WebCore/dom/ScriptExecutionContext.h
patching file Source/WebCore/page/GeolocationController.cpp
patching file Source/WebCore/page/GeolocationController.h

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Simon Hausmann&apos;, u&apos;--f...&quot; exit_code: 1

Full output: http://queues.webkit.org/results/10177392</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487458</commentid>
    <comment_count>17</comment_count>
      <attachid>111746</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-20 03:51:42 -0700</bug_when>
    <thetext>Created attachment 111746
Patch (rebaseD)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487480</commentid>
    <comment_count>18</comment_count>
      <attachid>111746</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-20 04:35:27 -0700</bug_when>
    <thetext>Comment on attachment 111746
Patch (rebaseD)

Clearing flags on attachment: 111746

Committed r97964: &lt;http://trac.webkit.org/changeset/97964&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487481</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-20 04:35:34 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487516</commentid>
    <comment_count>20</comment_count>
      <attachid>111760</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-20 05:58:38 -0700</bug_when>
    <thetext>Created attachment 111760
Buildfix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487585</commentid>
    <comment_count>21</comment_count>
      <attachid>111760</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-10-20 08:21:35 -0700</bug_when>
    <thetext>Comment on attachment 111760
Buildfix

OMG, I rolled out bad patch. I&apos;m going to land them with this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487593</commentid>
    <comment_count>22</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-10-20 08:30:33 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; (From update of attachment 111760 [details])
&gt; OMG, I rolled out bad patch. I&apos;m going to land them with this fix.

Patch landed again with fix: http://trac.webkit.org/changeset/97982</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488031</commentid>
    <comment_count>23</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-10-20 17:32:27 -0700</bug_when>
    <thetext>Reverted r97982 for reason:

crashing in asserts in chromium debug builds

Committed r98050: &lt;http://trac.webkit.org/changeset/98050&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488080</commentid>
    <comment_count>24</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-10-20 18:55:18 -0700</bug_when>
    <thetext>Sorry, all, we&apos;re still seeing crashes on the chromium debug bots in GeolocationClientMock::stopUpdating for several tests, so I&apos;m rolling this out to see if it fixes things.

See, for example:

http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Win%20%28dbg%29%281%29/builds/7437/steps/webkit_tests/logs/stdio

ASSERTION FAILED: m_isActive
Backtrace:
	WebCore::GeolocationClientMock::stopUpdating [0x01900E55+53] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\platform\mock\geolocationclientmock.cpp:146)
	WebKit::WebGeolocationClientMock::stopUpdating [0x00A113B5+53] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webkit\chromium\src\webgeolocationclientmock.cpp:102)
	WebKit::GeolocationClientProxy::stopUpdating [0x00A3D8A6+38] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webkit\chromium\src\geolocationclientproxy.cpp:69)
	WebCore::GeolocationController::removeObserver [0x016E53F1+209] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\geolocationcontroller.cpp:77)
	WebCore::Geolocation::stopUpdating [0x01587FAD+61] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\geolocation.cpp:729)
	WebCore::Geolocation::reset [0x01585E64+100] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\geolocation.cpp:266)
	WebCore::Geolocation::disconnectFrame [0x01585E96+22] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\geolocation.cpp:274)
	WebCore::Navigator::disconnectFrame [0x0164961E+142] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\navigator.cpp:80)
	WebCore::DOMWindow::clear [0x014857B4+612] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\domwindow.cpp:516)
	WebCore::Frame::clearDOMWindow [0x0143644D+125] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\frame.cpp:591)
	WebCore::FrameLoader::clear [0x01409375+309] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:541)
	WebCore::DocumentWriter::begin [0x014CD367+327] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentwriter.cpp:129)
	WebCore::FrameLoader::receivedFirstData [0x0140953E+158] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:580)
	WebCore::FrameLoader::willSetEncoding [0x0140B244+36] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:982)
	WebCore::DocumentWriter::setEncoding [0x014CDC2F+31] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentwriter.cpp:240)
	WebCore::DocumentLoader::commitData [0x014AA9A4+116] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentloader.cpp:316)
	WebKit::WebFrameImpl::commitDocumentData [0x00A2FE32+50] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webkit\chromium\src\webframeimpl.cpp:1045)
	WebKit::FrameLoaderClientImpl::committedLoad [0x00A7A3A0+160] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webkit\chromium\src\frameloaderclientimpl.cpp:1106)
	WebCore::DocumentLoader::commitLoad [0x014AA8BA+202] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentloader.cpp:303)
	WebCore::DocumentLoader::receivedData [0x014AAAF6+70] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentloader.cpp:330)
	WebCore::MainResourceLoader::addData [0x01784DDA+58] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\mainresourceloader.cpp:169)
	WebCore::ResourceLoader::didReceiveData [0x0177E399+153] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\resourceloader.cpp:287)
	WebCore::MainResourceLoader::didReceiveData [0x0178600D+301] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\mainresourceloader.cpp:468)
	WebCore::ResourceLoader::didReceiveData [0x0177ECCE+94] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\resourceloader.cpp:441)
	WebCore::ResourceHandleInternal::didReceiveData [0x00A8EE43+147] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webkit\chromium\src\resourcehandle.cpp:140)
	webkit_glue::WebURLLoaderImpl::Context::OnReceivedData [0x00B8C8EF+159] (e:\b\build\slave\webkit_win__dbg__1_\build\src\webkit\glue\weburlloader_impl.cc:584)
	webkit_glue::WebURLLoaderImpl::Context::HandleDataURL [0x00B8CEF0+272] (e:\b\build\slave\webkit_win__dbg__1_\build\src\webkit\glue\weburlloader_impl.cc:670)
	DispatchToMethod&lt;webkit_glue::WebURLLoaderImpl::Context,void (__thiscall webkit_glue::WebURLLoaderImpl::Context::*)(void)&gt; [0x00B8DFBF+15] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\tuple.h:537)
	RunnableMethod&lt;webkit_glue::WebURLLoaderImpl::Context,void (__thiscall webkit_glue::WebURLLoaderImpl::Context::*)(void),Tuple0&gt;::Run [0x00B8DD25+53] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\task.h:374)
	base::subtle::TaskClosureAdapter::Run [0x0231A402+50] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\task.cc:71)
	base::internal::Invoker1&lt;0,base::internal::InvokerStorage1&lt;void (__thiscall base::subtle::TaskClosureAdapter::*)(void),base::subtle::TaskClosureAdapter *&gt;,void (__thiscall base::subtle::TaskClosureAdapter::*)(void)&gt;::DoInvoke [0x0231497D+45] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\bind_internal.h:596)
	base::Callback&lt;void __cdecl(void)&gt;::Run [0x008C350F+47] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\callback.h:269)
	MessageLoop::RunTask [0x0230AD73+515] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:494)
	MessageLoop::DeferOrRunPendingTask [0x0230AF83+51] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:508)
	MessageLoop::DoWork [0x0230B95D+221] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:695)
	base::MessagePumpForUI::DoRunLoop [0x0237C5A4+84] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_pump_win.cc:203)
	base::MessagePumpWin::RunWithDispatcher [0x0237BE22+130] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_pump_win.cc:51)
	base::MessagePumpWin::Run [0x0237C08C+28] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_pump_win.h:64)
	MessageLoop::RunInternal [0x0230A9D7+247] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:450)
	MessageLoop::RunHandler [0x0230A7AE+46] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:424)
	MessageLoop::Run [0x0230A02A+58] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:342)
	webkit_support::RunMessageLoop [0x0090B8BF+15] (e:\b\build\slave\webkit_win__dbg__1_\build\src\webkit\support\webkit_support.cc:402)
	TestShell::waitTestFinished [0x0042E93D+141] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\testshellwin.cpp:106)
	TestShell::runFileTest [0x004495CF+479] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\testshell.cpp:236)
	runTest [0x0041D65D+733] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\dumprendertree.cpp:126)
	main [0x0041CE99+2329] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\dumprendertree.cpp:261)
	__tmainCRTStartup [0x00AB6D77+279] (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:266)
	mainCRTStartup [0x00AB6C4F+15] (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:182)
	RegisterWaitForInputIdle [0x7C817077+73]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488313</commentid>
    <comment_count>25</comment_count>
      <attachid>111942</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-21 04:47:22 -0700</bug_when>
    <thetext>Created attachment 111942
Patch

Dirk would it be possible for you to test this on Chromium?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488656</commentid>
    <comment_count>26</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-10-21 14:22:00 -0700</bug_when>
    <thetext>I can try to test this patch, but I probably won&apos;t get to it before Monday. It may be easier to just land it and watch the Chromium bots at http://build.chromium.org/p/chromium.webkit/waterfall .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>489069</commentid>
    <comment_count>27</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-23 14:21:47 -0700</bug_when>
    <thetext>(In reply to comment #26)
&gt; I can try to test this patch, but I probably won&apos;t get to it before Monday. It may be easier to just land it and watch the Chromium bots at http://build.chromium.org/p/chromium.webkit/waterfall .

No problem, I will also first look at the patch again tomorrow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490677</commentid>
    <comment_count>28</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-26 01:55:08 -0700</bug_when>
    <thetext>Let&apos;s leave geolocation out for now as it is not a per document object</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490708</commentid>
    <comment_count>29</comment_count>
      <attachid>112474</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-26 02:50:21 -0700</bug_when>
    <thetext>Created attachment 112474
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490723</commentid>
    <comment_count>30</comment_count>
      <attachid>112474</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-10-26 04:13:10 -0700</bug_when>
    <thetext>Comment on attachment 112474
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490729</commentid>
    <comment_count>31</comment_count>
      <attachid>112474</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2011-10-26 04:25:34 -0700</bug_when>
    <thetext>Comment on attachment 112474
Patch

Attachment 112474 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/10220184</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490730</commentid>
    <comment_count>32</comment_count>
      <attachid>112474</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-26 04:28:38 -0700</bug_when>
    <thetext>Comment on attachment 112474
Patch

Attachment 112474 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10213554</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490733</commentid>
    <comment_count>33</comment_count>
      <attachid>112480</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-26 04:33:14 -0700</bug_when>
    <thetext>Created attachment 112480
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490838</commentid>
    <comment_count>34</comment_count>
      <attachid>112480</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-26 07:55:18 -0700</bug_when>
    <thetext>Comment on attachment 112480
Patch for landing

Clearing flags on attachment: 112480

Committed r98481: &lt;http://trac.webkit.org/changeset/98481&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490839</commentid>
    <comment_count>35</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-26 07:55:25 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111435</attachid>
            <date>2011-10-18 06:56:40 -0700</date>
            <delta_ts>2011-10-18 07:26:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Properly-suspend-resume-Geolocation-DeviceMotion-Dev.patch</filename>
            <type>text/plain</type>
            <size>12686</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSAwODIyMWQwMjhhZjg5MWRlZDFkODVjMmY2MWZlMjc5NDU4OTc4ZjNjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBUdWUsIDE4IE9jdCAyMDExIDE1OjU1OjU0ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9u
L0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDMyOAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpCYXNlZCBvbiBj
b2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuCgpObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jl
c3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KCiogZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6
c3VzcGVuZCk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgoqIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmg6CiogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHA6CihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExpc3Rl
bmVyKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVu
ZXIpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0
ZW5lcnMpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToK
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKiBkb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6
OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURP
TU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5oOgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
Lmg6CiogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpzdXNwZW5kKToKKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6
cmVzdW1lKToKKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgotLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMyArKysrKysrKysr
CiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgICAgICB8ICAg
MTQgKysrKysKIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmggICAg
ICAgIHwgICAgMyArCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmNwcCB8ICAgMjAgKysrKystCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmggICB8ICAgIDMgKwogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cCAgICAgICAgICAgICAgICAgICAgfCAgIDYyICsrKysrKysrKysrKysrKysrKysrCiBTb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKysKIFNv
dXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmggICAgICAgIHwgICAgNyAr
LQogU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAg
IDE0ICsrKysrCiBTb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oICAg
ICAgICB8ICAgIDMgKwogMTAgZmlsZXMgY2hhbmdlZCwgMTU4IGluc2VydGlvbnMoKyksIDYgZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGVjNTYyYmQuLjMxZDhhYjkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwzNiBAQAorMjAxMS0xMC0xOCAgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4gIDxr
ZW5uZXRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2Vv
bG9jYXRpb24vRGV2aWNlTW90aW9uL0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwMzI4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmFzZWQgb24gY29kZSBmcm9t
IGlPUyBhbmQgdGhlIE45LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYXMgdGhlIHN1c3BlbmQv
cmVzdW1lIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGZ1bGx5IHdvcmtpbmcgeWV0LgorCisgICAgICAg
ICogZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGV2
aWNlTW90aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VN
b3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZpY2VNb3Rpb25Db250
cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExpc3Rl
bmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVt
b3ZlTGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudDo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudDo6c3RvcEFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAqIGRvbS9Eb2N1bWVu
dC5oOgorICAgICAgICAqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6CisgICAgICAgICog
cGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9j
YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9u
Q29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxl
ci5oOgorCiAyMDExLTEwLTE4ICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkByaW0u
Y29tPgogCiAgICAgICAgIFByZXBhcmUgU1ZHSW1hZ2UgaW50cmluc2ljIHNpemUgbmVnb3RpYXRp
b246IEFkZCBpbnRyaW5zaWMgc2l6ZSAmIHJhdGlvIGNhbGN1bGF0aW9uIGZ1bmN0aW9uYWxpdHkg
dG8gSW1hZ2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250
cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNw
cAppbmRleCAyOGUyMDFlLi4yMWZlNjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC05Nyw2ICs5NywyMCBAQCB2b2lkIERldmljZU1vdGlv
bkNvbnRyb2xsZXI6OnJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqIHdpbmRvdykKICAgICAg
ICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnN1c3BlbmQoKQoreworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9jbGllbnQt
PnN0b3BVcGRhdGluZygpOworfQorCit2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OnJlc3Vt
ZSgpCit7CisgICAgLy8gSWYgd2UgaGF2ZSBhIGNsaWVudCBhbmQgdGhlcmUgYXJlIGxpc3RlbmVy
cyByZWdpc3RlcmVkLAorICAgIC8vIHRoZW4gdGVsbCB0aGUgY2xpZW50IHRvIHN0YXJ0IHVwZGF0
aW5nCisgICAgaWYgKG1fY2xpZW50ICYmICFtX2xpc3RlbmVycy5pc0VtcHR5KCkpCisgICAgICAg
IG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgRGV2aWNlTW90aW9uQ29udHJv
bGxlcjo6ZGlkQ2hhbmdlRGV2aWNlTW90aW9uKERldmljZU1vdGlvbkRhdGEqIGRldmljZU1vdGlv
bkRhdGEpCiB7CiAgICAgUmVmUHRyPERldmljZU1vdGlvbkV2ZW50PiBldmVudCA9IERldmljZU1v
dGlvbkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRldmljZW1vdGlvbkV2ZW50LCBkZXZpY2VN
b3Rpb25EYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25D
b250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5o
CmluZGV4IDgwYzlkOTQuLjdjY2UxNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VNb3Rpb25Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1v
dGlvbkNvbnRyb2xsZXIuaApAQCAtNDQsNiArNDQsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1v
dmVMaXN0ZW5lcihET01XaW5kb3cqKTsKICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVycyhET01X
aW5kb3cqKTsKIAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAg
ICB2b2lkIGRpZENoYW5nZURldmljZU1vdGlvbihEZXZpY2VNb3Rpb25EYXRhKik7CiAKICAgICBi
b29sIGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAppbmRl
eCBkYTQyYmVjLi4xOGQwZTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyLmNwcApAQCAtNzUsNyArNzUsNyBAQCB2b2lkIERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVuZXIoRE9NV2luZG93KiB3aW5kb3cpCiAgICAg
Ly8gVGhlIGNsaWVudCBtdXN0IG5vdCBjYWxsIGJhY2sgc3luY2hyb25vdXNseS4KICAgICBib29s
IHdhc0VtcHR5ID0gbV9saXN0ZW5lcnMuaXNFbXB0eSgpOwogICAgIG1fbGlzdGVuZXJzLmFkZCh3
aW5kb3cpOwotICAgIGlmICh3YXNFbXB0eSkKKyAgICBpZiAobV9jbGllbnQgJiYgd2FzRW1wdHkp
CiAgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7CiB9CiAKQEAgLTgzLDcgKzgzLDcg
QEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUxpc3RlbmVyKERPTVdp
bmRvdyogd2luZG93KQogewogICAgIG1fbGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwogICAgIG1f
bmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5pc0VtcHR5
KCkpCisgICAgaWYgKG1fY2xpZW50ICYmIG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAgICAgICAg
bV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCkBAIC05NSwxMCArOTUsMjQgQEAgdm9pZCBE
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cq
IHdpbmRvdykKIAogICAgIG1fbGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOwogICAgIG1fbmV3
TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5pc0VtcHR5KCkp
CisgICAgaWYgKG1fY2xpZW50ICYmIG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAgICAgICAgbV9j
bGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlcjo6c3VzcGVuZCgpCit7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+
c3RvcFVwZGF0aW5nKCk7Cit9CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpy
ZXN1bWUoKQoreworICAgIC8vIElmIHdlIGhhdmUgYSBjbGllbnQgYW5kIHRoZXJlIGFyZSBsaXN0
ZW5lcnMgcmVnaXN0ZXJlZCwKKyAgICAvLyB0aGVuIHRlbGwgdGhlIGNsaWVudCB0byBzdGFydCB1
cGRhdGluZworICAgIGlmIChtX2NsaWVudCAmJiAhbV9saXN0ZW5lcnMuaXNFbXB0eSgpKQorICAg
ICAgICBtX2NsaWVudC0+c3RhcnRVcGRhdGluZygpOworfQorCiB2b2lkIERldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRp
b24qIG9yaWVudGF0aW9uKQogewogICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBl
dmVudCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNl
b3JpZW50YXRpb25FdmVudCwgb3JpZW50YXRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCmluZGV4IDVlMDY3NzEuLmE0OTY4YzUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgK
QEAgLTQ2LDYgKzQ2LDkgQEAgcHVibGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoRE9NV2lu
ZG93Kik7CiAgICAgdm9pZCByZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKKyAgICB2
b2lkIHN1c3BlbmQoKTsKKyAgICB2b2lkIHJlc3VtZSgpOworCiAgICAgdm9pZCBkaWRDaGFuZ2VE
ZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbiopOwogCiAgICAgYm9vbCBpc0FjdGl2
ZSgpIHsgcmV0dXJuICFtX2xpc3RlbmVycy5pc0VtcHR5KCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCmluZGV4IDU3MDNjMjYuLjZlMzFhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAt
MTY0LDYgKzE2NCwxMSBAQAogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRl
IDx3dGYvdGV4dC9TdHJpbmdCdWZmZXIuaD4KIAorI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRy
b2xsZXIuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNs
dWRlICJHZW9sb2NhdGlvbi5oIgorI2luY2x1ZGUgIk5hdmlnYXRvci5oIgorCiAjaWYgRU5BQkxF
KFNIQVJFRF9XT1JLRVJTKQogI2luY2x1ZGUgIlNoYXJlZFdvcmtlclJlcG9zaXRvcnkuaCIKICNl
bmRpZgpAQCAtMTg4Miw2ICsxODg3LDYzIEBAIHZvaWQgRG9jdW1lbnQ6OnJlbW92ZUFsbEV2ZW50
TGlzdGVuZXJzKCkKICAgICAgICAgbm9kZS0+cmVtb3ZlQWxsRXZlbnRMaXN0ZW5lcnMoKTsKIH0K
IAordm9pZCBEb2N1bWVudDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0aXZlRE9NT2JqZWN0
OjpSZWFzb25Gb3JTdXNwZW5zaW9uIHdoeSkKK3sKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0
OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyh3aHkpOworCisgICAgaWYgKCFwYWdlKCkpCisgICAg
ICAgIHJldHVybjsKKworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAg
aWYgKHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCkgJiYgdXNpbmdHZW9sb2NhdGlvbigp
KQorICAgICAgICBwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7Cisj
ZW5kaWYKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKHBhZ2UoKS0+
ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU1vdGlvbkNv
bnRyb2xsZXIoKS0+c3VzcGVuZCgpOworICAgIGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cigpLT5zdXNwZW5kKCk7CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVudDo6cmVzdW1lQWN0aXZl
RE9NT2JqZWN0cygpCit7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6cmVzdW1lQWN0aXZl
RE9NT2JqZWN0cygpOworCisgICAgaWYgKCFwYWdlKCkpCisgICAgICAgIHJldHVybjsKKworI2lm
IEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAgaWYgKHBhZ2UoKS0+Z2VvbG9j
YXRpb25Db250cm9sbGVyKCkgJiYgdXNpbmdHZW9sb2NhdGlvbigpKQorICAgICAgICBwYWdlKCkt
Pmdlb2xvY2F0aW9uQ29udHJvbGxlcigpLT5yZXN1bWUoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxF
KERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9s
bGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpLT5yZXN1bWUo
KTsKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAg
ICAgcGFnZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKS0+cmVzdW1lKCk7CisjZW5k
aWYKK30KKwordm9pZCBEb2N1bWVudDo6c3RvcEFjdGl2ZURPTU9iamVjdHMoKQoreworICAgIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnN0b3BBY3RpdmVET01PYmplY3RzKCk7CisKKyNpZiBFTkFC
TEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQorICAgIGlmIChwYWdlKCktPmdlb2xvY2F0aW9u
Q29udHJvbGxlcigpICYmIHVzaW5nR2VvbG9jYXRpb24oKSkKKyAgICAgICAgcGFnZSgpLT5nZW9s
b2NhdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoREVW
SUNFX09SSUVOVEFUSU9OKQorICAgIGlmIChwYWdlKCkgJiYgcGFnZSgpLT5kZXZpY2VNb3Rpb25D
b250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpLT5z
dXNwZW5kKCk7CisgICAgaWYgKHBhZ2UoKSAmJiBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigp
LT5zdXNwZW5kKCk7CisjZW5kaWYKK30KKwogUmVuZGVyVmlldyogRG9jdW1lbnQ6OnJlbmRlclZp
ZXcoKSBjb25zdAogewogICAgIHJldHVybiB0b1JlbmRlclZpZXcocmVuZGVyZXIoKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5oCmluZGV4IDI4MjcxOTkuLjFhZDUyYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5o
CkBAIC01NjcsNiArNTY3LDExIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoKCk7
CiAgICAgdmlydHVhbCB2b2lkIGRldGFjaCgpOwogCisgICAgLy8gT3ZlcnJpZGUgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCBtZXRob2RzIHRvIGRvIGFkZGl0aW9uYWwgd29yaworICAgIHZpcnR1YWwg
dm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1
c3BlbnNpb24pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCByZXN1bWVBY3RpdmVET01PYmpl
Y3RzKCkgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIHN0b3BBY3RpdmVET01PYmplY3RzKCkg
T1ZFUlJJREU7CisKICAgICBSZW5kZXJBcmVuYSogcmVuZGVyQXJlbmEoKSB7IHJldHVybiBtX3Jl
bmRlckFyZW5hLmdldCgpOyB9CiAKICAgICBSZW5kZXJWaWV3KiByZW5kZXJWaWV3KCkgY29uc3Q7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAppbmRleCBkNDQy
ZTYyLi5lMTZmYWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0
aW9uQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250
ZXh0LmgKQEAgLTEwOSw5ICsxMDksMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBi
b29sIGNhblN1c3BlbmRBY3RpdmVET01PYmplY3RzKCk7CiAgICAgICAgIC8vIEFjdGl2ZSBvYmpl
Y3RzIGNhbiBiZSBhc2tlZCB0byBzdXNwZW5kIGV2ZW4gaWYgY2FuU3VzcGVuZEFjdGl2ZURPTU9i
amVjdHMoKSByZXR1cm5zICdmYWxzZScgLQogICAgICAgICAvLyBzdGVwLWJ5LXN0ZXAgSlMgZGVi
dWdnaW5nIGlzIG9uZSBleGFtcGxlLgotICAgICAgICB2b2lkIHN1c3BlbmRBY3RpdmVET01PYmpl
Y3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbik7Ci0gICAgICAgIHZvaWQg
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOwotICAgICAgICB2b2lkIHN0b3BBY3RpdmVET01PYmpl
Y3RzKCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3Rp
dmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24pOworICAgICAgICB2aXJ0dWFsIHZvaWQg
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZvaWQgc3RvcEFjdGl2
ZURPTU9iamVjdHMoKTsKKwogICAgICAgICB2b2lkIGNyZWF0ZWRBY3RpdmVET01PYmplY3QoQWN0
aXZlRE9NT2JqZWN0Kiwgdm9pZCogdXBjYXN0UG9pbnRlcik7CiAgICAgICAgIHZvaWQgZGVzdHJv
eWVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCopOwogICAgICAgICB0eXBlZGVmIGNv
bnN0IEhhc2hNYXA8QWN0aXZlRE9NT2JqZWN0Kiwgdm9pZCo+IEFjdGl2ZURPTU9iamVjdHNNYXA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAKaW5kZXgg
Yjk1MzNjYS4uYzBhNjc3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2Nh
dGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25D
b250cm9sbGVyLmNwcApAQCAtODAsNiArODAsMjAgQEAgdm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xs
ZXI6OnJlbW92ZU9ic2VydmVyKEdlb2xvY2F0aW9uKiBvYnNlcnZlcikKICAgICB9CiB9CiAKK3Zv
aWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBpZiAobV9jbGllbnQp
CisgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBHZW9sb2NhdGlv
bkNvbnRyb2xsZXI6OnJlc3VtZSgpCit7CisgICAgLy8gSWYgd2UgaGF2ZSBhIGNsaWVudCBhbmQg
dGhlcmUgYXJlIG9ic2VydmVycyByZWdpc3RlcmVkLAorICAgIC8vIHRoZW4gdGVsbCB0aGUgY2xp
ZW50IHRvIHN0YXJ0IHVwZGF0aW5nCisgICAgaWYgKG1fY2xpZW50ICYmICFtX29ic2VydmVycy5p
c0VtcHR5KCkpCisgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQg
R2VvbG9jYXRpb25Db250cm9sbGVyOjpyZXF1ZXN0UGVybWlzc2lvbihHZW9sb2NhdGlvbiogZ2Vv
bG9jYXRpb24pCiB7CiAgICAgaWYgKG1fY2xpZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2Vv
bG9jYXRpb25Db250cm9sbGVyLmgKaW5kZXggN2M1NWNlMi4uMTQyYjAxNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oCkBAIC00OSw2ICs0OSw5IEBAIHB1
YmxpYzoKICAgICB2b2lkIGFkZE9ic2VydmVyKEdlb2xvY2F0aW9uKiwgYm9vbCBlbmFibGVIaWdo
QWNjdXJhY3kpOwogICAgIHZvaWQgcmVtb3ZlT2JzZXJ2ZXIoR2VvbG9jYXRpb24qKTsKIAorICAg
IHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIHJlcXVlc3RQ
ZXJtaXNzaW9uKEdlb2xvY2F0aW9uKik7CiAgICAgdm9pZCBjYW5jZWxQZXJtaXNzaW9uUmVxdWVz
dChHZW9sb2NhdGlvbiopOwogCi0tIAoxLjcuNC4xCgo=
</data>
<flag name="commit-queue"
          id="109267"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111443</attachid>
            <date>2011-10-18 07:26:26 -0700</date>
            <delta_ts>2011-10-19 08:08:45 -0700</delta_ts>
            <desc>Patch1</desc>
            <filename>0001-Properly-suspend-resume-Geolocation-DeviceMotion-Dev.patch</filename>
            <type>text/plain</type>
            <size>12926</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSBmNjcwZTkzZGRkODllYWE5OTA3NzIxNGY5MTkyZTJkNzE2ZTA3YjQyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBUdWUsIDE4IE9jdCAyMDExIDE1OjU1OjU0ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9u
L0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDMyOAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpCYXNlZCBvbiBj
b2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuCgpObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jl
c3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KCiogZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6
c3VzcGVuZCk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgoqIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmg6CiogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHA6CihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExpc3Rl
bmVyKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVu
ZXIpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0
ZW5lcnMpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToK
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKiBkb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6
OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURP
TU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5oOgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
Lmg6CiogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpzdXNwZW5kKToKKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6
cmVzdW1lKToKKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgotLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMyArKysrKysrKysr
KwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAg
IDE0ICsrKysrCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oICAg
ICAgICB8ICAgIDMgKwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHAgfCAgIDIwICsrKysrKy0KIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuaCAgIHwgICAgMyArCiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwICAgICAgICAgICAgICAgICAgICB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysKIFNvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKwog
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAgICAgICAgfCAgICA3
ICstCiBTb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAgICAgICB8
ICAgMTQgKysrKysKIFNvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmgg
ICAgICAgIHwgICAgMyArCiAxMCBmaWxlcyBjaGFuZ2VkLCAxNTYgaW5zZXJ0aW9ucygrKSwgNiBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM1NjJiZC4uMzFkOGFiOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDM2IEBACisyMDExLTEwLTE4ICBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiAg
PGtlbm5ldGhAd2Via2l0Lm9yZz4KKworICAgICAgICBQcm9wZXJseSBzdXNwZW5kL3Jlc3VtZSBH
ZW9sb2NhdGlvbi9EZXZpY2VNb3Rpb24vRGV2aWNlT3JpZW50YXRpb24gb2JqZWN0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzAzMjgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCYXNlZCBvbiBjb2RlIGZy
b20gaU9TIGFuZCB0aGUgTjkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBhcyB0aGUgc3VzcGVu
ZC9yZXN1bWUgZnVuY3Rpb25hbGl0eSBpcyBub3QgZnVsbHkgd29ya2luZyB5ZXQuCisKKyAgICAg
ICAgKiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VNb3Rpb25Db250cm9sbGVyOjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmlj
ZU1vdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogZG9tL0RldmljZU1vdGlvbkNv
bnRyb2xsZXIuaDoKKyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6YWRkTGlz
dGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpy
ZW1vdmVMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXI6OnJlbW92ZUFsbExpc3RlbmVycyk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRvY3VtZW50OjpzdG9wQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50Lmg6CisgICAgICAgICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAg
KiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9s
b2NhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIHBhZ2UvR2VvbG9jYXRpb25Db250cm9s
bGVyLmg6CisKIDIwMTEtMTAtMTggIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJp
bS5jb20+CiAKICAgICAgICAgUHJlcGFyZSBTVkdJbWFnZSBpbnRyaW5zaWMgc2l6ZSBuZWdvdGlh
dGlvbjogQWRkIGludHJpbnNpYyBzaXplICYgcmF0aW8gY2FsY3VsYXRpb24gZnVuY3Rpb25hbGl0
eSB0byBJbWFnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIu
Y3BwCmluZGV4IDI4ZTIwMWUuLjIxZmU2NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2
aWNlTW90aW9uQ29udHJvbGxlci5jcHAKQEAgLTk3LDYgKzk3LDIwIEBAIHZvaWQgRGV2aWNlTW90
aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKERPTVdpbmRvdyogd2luZG93KQogICAg
ICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKK3ZvaWQgRGV2aWNlTW90aW9uQ29u
dHJvbGxlcjo6c3VzcGVuZCgpCit7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVu
dC0+c3RvcFVwZGF0aW5nKCk7Cit9CisKK3ZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVz
dW1lKCkKK3sKKyAgICAvLyBJZiB3ZSBoYXZlIGEgY2xpZW50IGFuZCB0aGVyZSBhcmUgbGlzdGVu
ZXJzIHJlZ2lzdGVyZWQsCisgICAgLy8gdGhlbiB0ZWxsIHRoZSBjbGllbnQgdG8gc3RhcnQgdXBk
YXRpbmcKKyAgICBpZiAobV9jbGllbnQgJiYgIW1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKKyAgICAg
ICAgbV9jbGllbnQtPnN0YXJ0VXBkYXRpbmcoKTsKK30KKwogdm9pZCBEZXZpY2VNb3Rpb25Db250
cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VNb3Rpb24oRGV2aWNlTW90aW9uRGF0YSogZGV2aWNlTW90
aW9uRGF0YSkKIHsKICAgICBSZWZQdHI8RGV2aWNlTW90aW9uRXZlbnQ+IGV2ZW50ID0gRGV2aWNl
TW90aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlbW90aW9uRXZlbnQsIGRldmlj
ZU1vdGlvbkRhdGEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlv
bkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVy
LmgKaW5kZXggODBjOWQ5NC4uN2NjZTE1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNl
TW90aW9uQ29udHJvbGxlci5oCkBAIC00NCw2ICs0NCw5IEBAIHB1YmxpYzoKICAgICB2b2lkIHJl
bW92ZUxpc3RlbmVyKERPTVdpbmRvdyopOwogICAgIHZvaWQgcmVtb3ZlQWxsTGlzdGVuZXJzKERP
TVdpbmRvdyopOwogCisgICAgdm9pZCBzdXNwZW5kKCk7CisgICAgdm9pZCByZXN1bWUoKTsKKwog
ICAgIHZvaWQgZGlkQ2hhbmdlRGV2aWNlTW90aW9uKERldmljZU1vdGlvbkRhdGEqKTsKIAogICAg
IGJvb2wgaXNBY3RpdmUoKSB7IHJldHVybiAhbV9saXN0ZW5lcnMuaXNFbXB0eSgpOyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCmlu
ZGV4IGRhNDJiZWMuLjE4ZDBlOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC03NSw3ICs3NSw3IEBAIHZvaWQgRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyOjphZGRMaXN0ZW5lcihET01XaW5kb3cqIHdpbmRvdykKICAg
ICAvLyBUaGUgY2xpZW50IG11c3Qgbm90IGNhbGwgYmFjayBzeW5jaHJvbm91c2x5LgogICAgIGJv
b2wgd2FzRW1wdHkgPSBtX2xpc3RlbmVycy5pc0VtcHR5KCk7CiAgICAgbV9saXN0ZW5lcnMuYWRk
KHdpbmRvdyk7Ci0gICAgaWYgKHdhc0VtcHR5KQorICAgIGlmIChtX2NsaWVudCAmJiB3YXNFbXB0
eSkKICAgICAgICAgbV9jbGllbnQtPnN0YXJ0VXBkYXRpbmcoKTsKIH0KIApAQCAtODMsNyArODMs
NyBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVuZXIoRE9N
V2luZG93KiB3aW5kb3cpCiB7CiAgICAgbV9saXN0ZW5lcnMucmVtb3ZlKHdpbmRvdyk7CiAgICAg
bV9uZXdMaXN0ZW5lcnMucmVtb3ZlKHdpbmRvdyk7Ci0gICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1w
dHkoKSkKKyAgICBpZiAobV9jbGllbnQgJiYgbV9saXN0ZW5lcnMuaXNFbXB0eSgpKQogICAgICAg
ICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKQEAgLTk1LDEwICs5NSwyNCBAQCB2b2lk
IERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKERPTVdpbmRv
dyogd2luZG93KQogCiAgICAgbV9saXN0ZW5lcnMucmVtb3ZlQWxsKHdpbmRvdyk7CiAgICAgbV9u
ZXdMaXN0ZW5lcnMucmVtb3ZlKHdpbmRvdyk7Ci0gICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1wdHko
KSkKKyAgICBpZiAobV9jbGllbnQgJiYgbV9saXN0ZW5lcnMuaXNFbXB0eSgpKQogICAgICAgICBt
X2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50
LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6
OnJlc3VtZSgpCit7CisgICAgLy8gSWYgd2UgaGF2ZSBhIGNsaWVudCBhbmQgdGhlcmUgYXJlIGxp
c3RlbmVycyByZWdpc3RlcmVkLAorICAgIC8vIHRoZW4gdGVsbCB0aGUgY2xpZW50IHRvIHN0YXJ0
IHVwZGF0aW5nCisgICAgaWYgKG1fY2xpZW50ICYmICFtX2xpc3RlbmVycy5pc0VtcHR5KCkpCisg
ICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgRGV2aWNlT3JpZW50
YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRh
dGlvbiogb3JpZW50YXRpb24pCiB7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+
IGV2ZW50ID0gRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZp
Y2VvcmllbnRhdGlvbkV2ZW50LCBvcmllbnRhdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKaW5kZXggNWUwNjc3MS4uYTQ5NjhjNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIu
aApAQCAtNDYsNiArNDYsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVMaXN0ZW5lcihET01X
aW5kb3cqKTsKICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqKTsKIAorICAg
IHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIGRpZENoYW5n
ZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CiAKICAgICBib29sIGlzQWN0
aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAKaW5kZXggNTcwM2MyNi4uNDNmYWIzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBA
IC01MCw3ICs1MCw5IEBACiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIKICNpbmNsdWRl
ICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50cy5oIgorI2luY2x1ZGUgIkRl
dmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJEZXZpY2VNb3Rpb25FdmVudC5oIgor
I2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkRldmlj
ZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJEb2N1bWVudEZyYWdtZW50LmgiCiAjaW5j
bHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKQEAgLTc1LDYgKzc3LDcgQEAKICNpbmNsdWRlICJGcmFt
ZVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkZyYW1lVmll
dy5oIgorI2luY2x1ZGUgIkdlb2xvY2F0aW9uQ2xpZW50LmgiCiAjaW5jbHVkZSAiSFRNTEFsbENv
bGxlY3Rpb24uaCIKICNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5oIgogI2luY2x1ZGUgIkhU
TUxCb2R5RWxlbWVudC5oIgpAQCAtMTg4Miw2ICsxODg1LDYzIEBAIHZvaWQgRG9jdW1lbnQ6OnJl
bW92ZUFsbEV2ZW50TGlzdGVuZXJzKCkKICAgICAgICAgbm9kZS0+cmVtb3ZlQWxsRXZlbnRMaXN0
ZW5lcnMoKTsKIH0KIAordm9pZCBEb2N1bWVudDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0
aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9uIHdoeSkKK3sKKyAgICBTY3JpcHRFeGVj
dXRpb25Db250ZXh0OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyh3aHkpOworCisgICAgaWYgKCFw
YWdlKCkpCisgICAgICAgIHJldHVybjsKKworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9D
QVRJT04pCisgICAgaWYgKHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCkgJiYgdXNpbmdH
ZW9sb2NhdGlvbigpKQorICAgICAgICBwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpLT5z
dXNwZW5kKCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAg
aWYgKHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRl
dmljZU1vdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVuZCgpOworICAgIGlmIChwYWdlKCktPmRldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpCit7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOworCisgICAgaWYgKCFwYWdlKCkpCisgICAgICAgIHJl
dHVybjsKKworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAgaWYgKHBh
Z2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCkgJiYgdXNpbmdHZW9sb2NhdGlvbigpKQorICAg
ICAgICBwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpLT5yZXN1bWUoKTsKKyNlbmRpZgor
CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VN
b3Rpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxl
cigpLT5yZXN1bWUoKTsKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKS0+cmVz
dW1lKCk7CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVudDo6c3RvcEFjdGl2ZURPTU9iamVjdHMo
KQoreworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnN0b3BBY3RpdmVET01PYmplY3RzKCk7
CisKKyNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQorICAgIGlmIChwYWdlKCkt
Pmdlb2xvY2F0aW9uQ29udHJvbGxlcigpICYmIHVzaW5nR2VvbG9jYXRpb24oKSkKKyAgICAgICAg
cGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCisKKyNp
ZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgIGlmIChwYWdlKCkgJiYgcGFnZSgpLT5k
ZXZpY2VNb3Rpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29u
dHJvbGxlcigpLT5zdXNwZW5kKCk7CisgICAgaWYgKHBhZ2UoKSAmJiBwYWdlKCktPmRldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisjZW5kaWYKK30KKwogUmVuZGVyVmlldyogRG9jdW1l
bnQ6OnJlbmRlclZpZXcoKSBjb25zdAogewogICAgIHJldHVybiB0b1JlbmRlclZpZXcocmVuZGVy
ZXIoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4IDI4MjcxOTkuLjFhZDUyYTIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5oCkBAIC01NjcsNiArNTY3LDExIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgYXR0YWNoKCk7CiAgICAgdmlydHVhbCB2b2lkIGRldGFjaCgpOwogCisgICAgLy8gT3ZlcnJp
ZGUgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCBtZXRob2RzIHRvIGRvIGFkZGl0aW9uYWwgd29yawor
ICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6
OlJlYXNvbkZvclN1c3BlbnNpb24pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCByZXN1bWVB
Y3RpdmVET01PYmplY3RzKCkgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIHN0b3BBY3RpdmVE
T01PYmplY3RzKCkgT1ZFUlJJREU7CisKICAgICBSZW5kZXJBcmVuYSogcmVuZGVyQXJlbmEoKSB7
IHJldHVybiBtX3JlbmRlckFyZW5hLmdldCgpOyB9CiAKICAgICBSZW5kZXJWaWV3KiByZW5kZXJW
aWV3KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0
aW9uQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQu
aAppbmRleCBkNDQyZTYyLi5lMTZmYWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRF
eGVjdXRpb25Db250ZXh0LmgKQEAgLTEwOSw5ICsxMDksMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogICAgICAgICBib29sIGNhblN1c3BlbmRBY3RpdmVET01PYmplY3RzKCk7CiAgICAgICAgIC8v
IEFjdGl2ZSBvYmplY3RzIGNhbiBiZSBhc2tlZCB0byBzdXNwZW5kIGV2ZW4gaWYgY2FuU3VzcGVu
ZEFjdGl2ZURPTU9iamVjdHMoKSByZXR1cm5zICdmYWxzZScgLQogICAgICAgICAvLyBzdGVwLWJ5
LXN0ZXAgSlMgZGVidWdnaW5nIGlzIG9uZSBleGFtcGxlLgotICAgICAgICB2b2lkIHN1c3BlbmRB
Y3RpdmVET01PYmplY3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbik7Ci0g
ICAgICAgIHZvaWQgcmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOwotICAgICAgICB2b2lkIHN0b3BB
Y3RpdmVET01PYmplY3RzKCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQWN0aXZlRE9N
T2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24pOworICAgICAgICB2
aXJ0dWFsIHZvaWQgcmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZv
aWQgc3RvcEFjdGl2ZURPTU9iamVjdHMoKTsKKwogICAgICAgICB2b2lkIGNyZWF0ZWRBY3RpdmVE
T01PYmplY3QoQWN0aXZlRE9NT2JqZWN0Kiwgdm9pZCogdXBjYXN0UG9pbnRlcik7CiAgICAgICAg
IHZvaWQgZGVzdHJveWVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCopOwogICAgICAg
ICB0eXBlZGVmIGNvbnN0IEhhc2hNYXA8QWN0aXZlRE9NT2JqZWN0Kiwgdm9pZCo+IEFjdGl2ZURP
TU9iamVjdHNNYXA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9u
Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxl
ci5jcHAKaW5kZXggYjk1MzNjYS4uYzBhNjc3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
R2VvbG9jYXRpb25Db250cm9sbGVyLmNwcApAQCAtODAsNiArODAsMjAgQEAgdm9pZCBHZW9sb2Nh
dGlvbkNvbnRyb2xsZXI6OnJlbW92ZU9ic2VydmVyKEdlb2xvY2F0aW9uKiBvYnNlcnZlcikKICAg
ICB9CiB9CiAKK3ZvaWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBp
ZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9p
ZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSgpCit7CisgICAgLy8gSWYgd2UgaGF2ZSBh
IGNsaWVudCBhbmQgdGhlcmUgYXJlIG9ic2VydmVycyByZWdpc3RlcmVkLAorICAgIC8vIHRoZW4g
dGVsbCB0aGUgY2xpZW50IHRvIHN0YXJ0IHVwZGF0aW5nCisgICAgaWYgKG1fY2xpZW50ICYmICFt
X29ic2VydmVycy5pc0VtcHR5KCkpCisgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7
Cit9CisKIHZvaWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpyZXF1ZXN0UGVybWlzc2lvbihHZW9s
b2NhdGlvbiogZ2VvbG9jYXRpb24pCiB7CiAgICAgaWYgKG1fY2xpZW50KQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmgKaW5kZXggN2M1NWNlMi4uMTQyYjAxNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oCkBAIC00OSw2
ICs0OSw5IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZE9ic2VydmVyKEdlb2xvY2F0aW9uKiwgYm9v
bCBlbmFibGVIaWdoQWNjdXJhY3kpOwogICAgIHZvaWQgcmVtb3ZlT2JzZXJ2ZXIoR2VvbG9jYXRp
b24qKTsKIAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2
b2lkIHJlcXVlc3RQZXJtaXNzaW9uKEdlb2xvY2F0aW9uKik7CiAgICAgdm9pZCBjYW5jZWxQZXJt
aXNzaW9uUmVxdWVzdChHZW9sb2NhdGlvbiopOwogCi0tIAoxLjcuNC4xCgo=
</data>
<flag name="commit-queue"
          id="109276"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111623</attachid>
            <date>2011-10-19 08:08:45 -0700</date>
            <delta_ts>2011-10-19 08:56:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Properly-suspend-resume-Geolocation-DeviceMotion-Dev.patch</filename>
            <type>text/plain</type>
            <size>12877</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSBkMzdkZDc0M2Q0ZmU5MTZhNjMyNzNlZjA1ODNhYzRmN2UwZWM0NmY3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBUdWUsIDE4IE9jdCAyMDExIDE1OjU1OjU0ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9u
L0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDMyOAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpCYXNlZCBvbiBj
b2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuCgpObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jl
c3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KCiogZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6
c3VzcGVuZCk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgoqIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmg6CiogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHA6CihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExpc3Rl
bmVyKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVu
ZXIpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0
ZW5lcnMpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToK
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKiBkb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6
OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURP
TU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5oOgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
Lmg6CiogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpzdXNwZW5kKToKKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6
cmVzdW1lKToKKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgotLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMyArKysrKysrKysr
KwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAg
IDE0ICsrKysrCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oICAg
ICAgICB8ICAgIDMgKwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHAgfCAgIDIwICsrKysrKy0KIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuaCAgIHwgICAgMyArCiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwICAgICAgICAgICAgICAgICAgICB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysKIFNvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKwog
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAgICAgICAgfCAgICA3
ICstCiBTb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAgICAgICB8
ICAgMTQgKysrKysKIFNvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmgg
ICAgICAgIHwgICAgMyArCiAxMCBmaWxlcyBjaGFuZ2VkLCAxNTYgaW5zZXJ0aW9ucygrKSwgNiBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzA2ZjFmYS4uYzc4ZGVmYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDM2IEBACisyMDExLTEwLTE4ICBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiAg
PGtlbm5ldGhAd2Via2l0Lm9yZz4KKworICAgICAgICBQcm9wZXJseSBzdXNwZW5kL3Jlc3VtZSBH
ZW9sb2NhdGlvbi9EZXZpY2VNb3Rpb24vRGV2aWNlT3JpZW50YXRpb24gb2JqZWN0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzAzMjgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCYXNlZCBvbiBjb2RlIGZy
b20gaU9TIGFuZCB0aGUgTjkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBhcyB0aGUgc3VzcGVu
ZC9yZXN1bWUgZnVuY3Rpb25hbGl0eSBpcyBub3QgZnVsbHkgd29ya2luZyB5ZXQuCisKKyAgICAg
ICAgKiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VNb3Rpb25Db250cm9sbGVyOjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmlj
ZU1vdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogZG9tL0RldmljZU1vdGlvbkNv
bnRyb2xsZXIuaDoKKyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6YWRkTGlz
dGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpy
ZW1vdmVMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXI6OnJlbW92ZUFsbExpc3RlbmVycyk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdlYkNv
cmU6OkRvY3VtZW50OjpzdG9wQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50Lmg6CisgICAgICAgICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAg
KiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9s
b2NhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIHBhZ2UvR2VvbG9jYXRpb25Db250cm9s
bGVyLmg6CisKIDIwMTEtMTAtMTkgIERpcmsgU2NodWx6ZSAgPGtyaXRAd2Via2l0Lm9yZz4KIAog
ICAgICAgICBNYWtlIEZpbHRlckVmZmVjdDo6YXBwbHkoKSBpbmRlcGVuZGVudCBvZiBpbWFnZSBk
YXRhIG1hbmFnZW1lbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rp
b25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9s
bGVyLmNwcAppbmRleCAyOGUyMDFlLi4yMWZlNjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC05Nyw2ICs5NywyMCBAQCB2b2lkIERldmlj
ZU1vdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqIHdpbmRvdykK
ICAgICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU1vdGlv
bkNvbnRyb2xsZXI6OnN1c3BlbmQoKQoreworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9j
bGllbnQtPnN0b3BVcGRhdGluZygpOworfQorCit2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6
OnJlc3VtZSgpCit7CisgICAgLy8gSWYgd2UgaGF2ZSBhIGNsaWVudCBhbmQgdGhlcmUgYXJlIGxp
c3RlbmVycyByZWdpc3RlcmVkLAorICAgIC8vIHRoZW4gdGVsbCB0aGUgY2xpZW50IHRvIHN0YXJ0
IHVwZGF0aW5nCisgICAgaWYgKG1fY2xpZW50ICYmICFtX2xpc3RlbmVycy5pc0VtcHR5KCkpCisg
ICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgRGV2aWNlTW90aW9u
Q29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlTW90aW9uKERldmljZU1vdGlvbkRhdGEqIGRldmlj
ZU1vdGlvbkRhdGEpCiB7CiAgICAgUmVmUHRyPERldmljZU1vdGlvbkV2ZW50PiBldmVudCA9IERl
dmljZU1vdGlvbkV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmRldmljZW1vdGlvbkV2ZW50LCBk
ZXZpY2VNb3Rpb25EYXRhKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VN
b3Rpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJv
bGxlci5oCmluZGV4IDgwYzlkOTQuLjdjY2UxNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU1vdGlvbkNvbnRyb2xsZXIuaApAQCAtNDQsNiArNDQsOSBAQCBwdWJsaWM6CiAgICAgdm9p
ZCByZW1vdmVMaXN0ZW5lcihET01XaW5kb3cqKTsKICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVy
cyhET01XaW5kb3cqKTsKIAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7
CisKICAgICB2b2lkIGRpZENoYW5nZURldmljZU1vdGlvbihEZXZpY2VNb3Rpb25EYXRhKik7CiAK
ICAgICBib29sIGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cAppbmRleCBkYTQyYmVjLi4xOGQwZTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcApAQCAtNzUsNyArNzUsNyBAQCB2b2lkIERl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVuZXIoRE9NV2luZG93KiB3aW5kb3cp
CiAgICAgLy8gVGhlIGNsaWVudCBtdXN0IG5vdCBjYWxsIGJhY2sgc3luY2hyb25vdXNseS4KICAg
ICBib29sIHdhc0VtcHR5ID0gbV9saXN0ZW5lcnMuaXNFbXB0eSgpOwogICAgIG1fbGlzdGVuZXJz
LmFkZCh3aW5kb3cpOwotICAgIGlmICh3YXNFbXB0eSkKKyAgICBpZiAobV9jbGllbnQgJiYgd2Fz
RW1wdHkpCiAgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7CiB9CiAKQEAgLTgzLDcg
KzgzLDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUxpc3RlbmVy
KERPTVdpbmRvdyogd2luZG93KQogewogICAgIG1fbGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwog
ICAgIG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5p
c0VtcHR5KCkpCisgICAgaWYgKG1fY2xpZW50ICYmIG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAg
ICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCkBAIC05NSwxMCArOTUsMjQgQEAg
dm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUFsbExpc3RlbmVycyhET01X
aW5kb3cqIHdpbmRvdykKIAogICAgIG1fbGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOwogICAg
IG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5pc0Vt
cHR5KCkpCisgICAgaWYgKG1fY2xpZW50ICYmIG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAgICAg
ICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcjo6c3VzcGVuZCgpCit7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2Ns
aWVudC0+c3RvcFVwZGF0aW5nKCk7Cit9CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyOjpyZXN1bWUoKQoreworICAgIC8vIElmIHdlIGhhdmUgYSBjbGllbnQgYW5kIHRoZXJlIGFy
ZSBsaXN0ZW5lcnMgcmVnaXN0ZXJlZCwKKyAgICAvLyB0aGVuIHRlbGwgdGhlIGNsaWVudCB0byBz
dGFydCB1cGRhdGluZworICAgIGlmIChtX2NsaWVudCAmJiAhbV9saXN0ZW5lcnMuaXNFbXB0eSgp
KQorICAgICAgICBtX2NsaWVudC0+c3RhcnRVcGRhdGluZygpOworfQorCiB2b2lkIERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3Jp
ZW50YXRpb24qIG9yaWVudGF0aW9uKQogewogICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2
ZW50PiBldmVudCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCku
ZGV2aWNlb3JpZW50YXRpb25FdmVudCwgb3JpZW50YXRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCmluZGV4IDVlMDY3NzEuLmE0OTY4
YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmgKQEAgLTQ2LDYgKzQ2LDkgQEAgcHVibGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIo
RE9NV2luZG93Kik7CiAgICAgdm9pZCByZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAK
KyAgICB2b2lkIHN1c3BlbmQoKTsKKyAgICB2b2lkIHJlc3VtZSgpOworCiAgICAgdm9pZCBkaWRD
aGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbiopOwogCiAgICAgYm9vbCBp
c0FjdGl2ZSgpIHsgcmV0dXJuICFtX2xpc3RlbmVycy5pc0VtcHR5KCk7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwCmluZGV4IGI5NGM5YzQuLjQ2OWZmZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cApAQCAtNTAsNyArNTAsOSBAQAogI2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCiAjaW5j
bHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKKyNpbmNsdWRl
ICJEZXZpY2VNb3Rpb25Db250cm9sbGVyLmgiCiAjaW5jbHVkZSAiRGV2aWNlTW90aW9uRXZlbnQu
aCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJE
ZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRGcmFnbWVudC5oIgog
I2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCkBAIC03NSw2ICs3Nyw3IEBACiAjaW5jbHVkZSAi
RnJhbWVTZWxlY3Rpb24uaCIKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJGcmFt
ZVZpZXcuaCIKKyNpbmNsdWRlICJHZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJI
VE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1ZGUgIkhUTUxBbmNob3JFbGVtZW50LmgiCiAjaW5j
bHVkZSAiSFRNTEJvZHlFbGVtZW50LmgiCkBAIC0xODc5LDYgKzE4ODIsNjMgQEAgdm9pZCBEb2N1
bWVudDo6cmVtb3ZlQWxsRXZlbnRMaXN0ZW5lcnMoKQogICAgICAgICBub2RlLT5yZW1vdmVBbGxF
dmVudExpc3RlbmVycygpOwogfQogCit2b2lkIERvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2Jq
ZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24gd2h5KQoreworICAgIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKHdoeSk7CisKKyAg
ICBpZiAoIXBhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisjaWYgRU5BQkxFKENMSUVOVF9CQVNF
RF9HRU9MT0NBVElPTikKKyAgICBpZiAocGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKSAm
JiB1c2luZ0dlb2xvY2F0aW9uKCkpCisgICAgICAgIHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9s
bGVyKCktPnN1c3BlbmQoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElP
TikKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBh
Z2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisgICAgaWYgKHBhZ2Uo
KS0+ZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyNlbmRpZgorfQorCit2b2lkIERv
Y3VtZW50OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKCkKK3sKKyAgICBTY3JpcHRFeGVjdXRpb25D
b250ZXh0OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKCk7CisKKyAgICBpZiAoIXBhZ2UoKSkKKyAg
ICAgICAgcmV0dXJuOworCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKyAg
ICBpZiAocGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKSAmJiB1c2luZ0dlb2xvY2F0aW9u
KCkpCisgICAgICAgIHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCktPnJlc3VtZSgpOwor
I2VuZGlmCisKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgIGlmIChwYWdlKCkt
PmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZpY2VNb3Rpb25D
b250cm9sbGVyKCktPnJlc3VtZSgpOworICAgIGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cigpLT5yZXN1bWUoKTsKKyNlbmRpZgorfQorCit2b2lkIERvY3VtZW50OjpzdG9wQWN0aXZlRE9N
T2JqZWN0cygpCit7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6c3RvcEFjdGl2ZURPTU9i
amVjdHMoKTsKKworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAgaWYg
KHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCkgJiYgdXNpbmdHZW9sb2NhdGlvbigpKQor
ICAgICAgICBwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisjZW5k
aWYKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKHBhZ2UoKSAmJiBw
YWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZpY2VN
b3Rpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyAgICBpZiAocGFnZSgpICYmIHBhZ2UoKS0+
ZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyNlbmRpZgorfQorCiBSZW5kZXJWaWV3
KiBEb2N1bWVudDo6cmVuZGVyVmlldygpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHRvUmVuZGVyVmll
dyhyZW5kZXJlcigpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNzI3MDVmMC4uNmZhNjhmNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTU2NCw2ICs1NjQsMTEgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBhdHRhY2goKTsKICAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoKCk7CiAKKyAgICAv
LyBPdmVycmlkZSBTY3JpcHRFeGVjdXRpb25Db250ZXh0IG1ldGhvZHMgdG8gZG8gYWRkaXRpb25h
bCB3b3JrCisgICAgdmlydHVhbCB2b2lkIHN1c3BlbmRBY3RpdmVET01PYmplY3RzKEFjdGl2ZURP
TU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbikgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lk
IHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgc3Rv
cEFjdGl2ZURPTU9iamVjdHMoKSBPVkVSUklERTsKKwogICAgIFJlbmRlckFyZW5hKiByZW5kZXJB
cmVuYSgpIHsgcmV0dXJuIG1fcmVuZGVyQXJlbmEuZ2V0KCk7IH0KIAogICAgIFJlbmRlclZpZXcq
IHJlbmRlclZpZXcoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3Jp
cHRFeGVjdXRpb25Db250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9u
Q29udGV4dC5oCmluZGV4IGQ0NDJlNjIuLmUxNmZhYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaApAQCAtMTA5LDkgKzEwOSwxMCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIGJvb2wgY2FuU3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoKTsKICAg
ICAgICAgLy8gQWN0aXZlIG9iamVjdHMgY2FuIGJlIGFza2VkIHRvIHN1c3BlbmQgZXZlbiBpZiBj
YW5TdXNwZW5kQWN0aXZlRE9NT2JqZWN0cygpIHJldHVybnMgJ2ZhbHNlJyAtCiAgICAgICAgIC8v
IHN0ZXAtYnktc3RlcCBKUyBkZWJ1Z2dpbmcgaXMgb25lIGV4YW1wbGUuCi0gICAgICAgIHZvaWQg
c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5z
aW9uKTsKLSAgICAgICAgdm9pZCByZXN1bWVBY3RpdmVET01PYmplY3RzKCk7Ci0gICAgICAgIHZv
aWQgc3RvcEFjdGl2ZURPTU9iamVjdHMoKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIHN1c3BlbmRB
Y3RpdmVET01PYmplY3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbik7Cisg
ICAgICAgIHZpcnR1YWwgdm9pZCByZXN1bWVBY3RpdmVET01PYmplY3RzKCk7CisgICAgICAgIHZp
cnR1YWwgdm9pZCBzdG9wQWN0aXZlRE9NT2JqZWN0cygpOworCiAgICAgICAgIHZvaWQgY3JlYXRl
ZEFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmplY3QqLCB2b2lkKiB1cGNhc3RQb2ludGVyKTsK
ICAgICAgICAgdm9pZCBkZXN0cm95ZWRBY3RpdmVET01PYmplY3QoQWN0aXZlRE9NT2JqZWN0Kik7
CiAgICAgICAgIHR5cGVkZWYgY29uc3QgSGFzaE1hcDxBY3RpdmVET01PYmplY3QqLCB2b2lkKj4g
QWN0aXZlRE9NT2JqZWN0c01hcDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2Vv
bG9jYXRpb25Db250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25D
b250cm9sbGVyLmNwcAppbmRleCBiOTUzM2NhLi5jMGE2NzdjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC04MCw2ICs4MCwyMCBAQCB2b2lk
IEdlb2xvY2F0aW9uQ29udHJvbGxlcjo6cmVtb3ZlT2JzZXJ2ZXIoR2VvbG9jYXRpb24qIG9ic2Vy
dmVyKQogICAgIH0KIH0KIAordm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQoKQor
eworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwor
fQorCit2b2lkIEdlb2xvY2F0aW9uQ29udHJvbGxlcjo6cmVzdW1lKCkKK3sKKyAgICAvLyBJZiB3
ZSBoYXZlIGEgY2xpZW50IGFuZCB0aGVyZSBhcmUgb2JzZXJ2ZXJzIHJlZ2lzdGVyZWQsCisgICAg
Ly8gdGhlbiB0ZWxsIHRoZSBjbGllbnQgdG8gc3RhcnQgdXBkYXRpbmcKKyAgICBpZiAobV9jbGll
bnQgJiYgIW1fb2JzZXJ2ZXJzLmlzRW1wdHkoKSkKKyAgICAgICAgbV9jbGllbnQtPnN0YXJ0VXBk
YXRpbmcoKTsKK30KKwogdm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnJlcXVlc3RQZXJtaXNz
aW9uKEdlb2xvY2F0aW9uKiBnZW9sb2NhdGlvbikKIHsKICAgICBpZiAobV9jbGllbnQpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaAppbmRleCA3YzU1Y2UyLi4x
NDJiMDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJv
bGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmgK
QEAgLTQ5LDYgKzQ5LDkgQEAgcHVibGljOgogICAgIHZvaWQgYWRkT2JzZXJ2ZXIoR2VvbG9jYXRp
b24qLCBib29sIGVuYWJsZUhpZ2hBY2N1cmFjeSk7CiAgICAgdm9pZCByZW1vdmVPYnNlcnZlcihH
ZW9sb2NhdGlvbiopOwogCisgICAgdm9pZCBzdXNwZW5kKCk7CisgICAgdm9pZCByZXN1bWUoKTsK
KwogICAgIHZvaWQgcmVxdWVzdFBlcm1pc3Npb24oR2VvbG9jYXRpb24qKTsKICAgICB2b2lkIGNh
bmNlbFBlcm1pc3Npb25SZXF1ZXN0KEdlb2xvY2F0aW9uKik7CiAKLS0gCjEuNy40LjEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111630</attachid>
            <date>2011-10-19 08:56:00 -0700</date>
            <delta_ts>2011-10-20 03:51:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Properly-suspend-resume-Geolocation-DeviceMotion-Dev.patch</filename>
            <type>text/plain</type>
            <size>12557</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSAxNjFhYWU4NGM3MDE4MTlhZDQxOGJlMzg3ZmZhNGEwN2JiNGYzYmJjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBUdWUsIDE4IE9jdCAyMDExIDE1OjU1OjU0ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9u
L0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDMyOAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpCYXNlZCBvbiBj
b2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuCgpObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jl
c3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KCiogZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6
c3VzcGVuZCk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgoqIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmg6CiogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHA6CihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExpc3Rl
bmVyKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVu
ZXIpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0
ZW5lcnMpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToK
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKiBkb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6
OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURP
TU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5oOgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
Lmg6CiogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpzdXNwZW5kKToKKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6
cmVzdW1lKToKKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgotLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMyArKysrKysrKysr
CiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgICAgICB8ICAg
MTIgKysrKwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaCAgICAg
ICAgfCAgICAzICsKIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuY3BwIHwgICAxOCArKysrKy0KIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIuaCAgIHwgICAgMyArCiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3Bw
ICAgICAgICAgICAgICAgICAgICB8ICAgNjMgKysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKwogU291
cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAgICAgICAgfCAgICA3ICst
CiBTb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAgICAgICB8ICAg
MTIgKysrKwogU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCAgICAg
ICAgfCAgICAzICsKIDEwIGZpbGVzIGNoYW5nZWQsIDE1MyBpbnNlcnRpb25zKCspLCA2IGRlbGV0
aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3MDZmMWZhLi5jNzhkZWZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMzYgQEAKKzIwMTEtMTAtMTggIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8a2Vu
bmV0aEB3ZWJraXQub3JnPgorCisgICAgICAgIFByb3Blcmx5IHN1c3BlbmQvcmVzdW1lIEdlb2xv
Y2F0aW9uL0RldmljZU1vdGlvbi9EZXZpY2VPcmllbnRhdGlvbiBvYmplY3RzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDMyOAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJhc2VkIG9uIGNvZGUgZnJvbSBp
T1MgYW5kIHRoZSBOOS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jl
c3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KKworICAgICAgICAq
IGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmlj
ZU1vdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlTW90
aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBkb20vRGV2aWNlTW90aW9uQ29udHJv
bGxlci5oOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjphZGRMaXN0ZW5l
cik6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlbW92
ZUxpc3RlbmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cjo6cmVtb3ZlQWxsTGlzdGVuZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0
aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlci5oOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnQ6OnJlc3VtZUFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnQ6OnN0b3BBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQu
aDoKKyAgICAgICAgKiBkb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oOgorICAgICAgICAqIHBh
Z2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbkNv
bnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIu
aDoKKwogMjAxMS0xMC0xOSAgRGlyayBTY2h1bHplICA8a3JpdEB3ZWJraXQub3JnPgogCiAgICAg
ICAgIE1ha2UgRmlsdGVyRWZmZWN0OjphcHBseSgpIGluZGVwZW5kZW50IG9mIGltYWdlIGRhdGEg
bWFuYWdlbWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIu
Y3BwCmluZGV4IDI4ZTIwMWUuLjYyYmE0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2
aWNlTW90aW9uQ29udHJvbGxlci5jcHAKQEAgLTk3LDYgKzk3LDE4IEBAIHZvaWQgRGV2aWNlTW90
aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKERPTVdpbmRvdyogd2luZG93KQogICAg
ICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKK3ZvaWQgRGV2aWNlTW90aW9uQ29u
dHJvbGxlcjo6c3VzcGVuZCgpCit7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVu
dC0+c3RvcFVwZGF0aW5nKCk7Cit9CisKK3ZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVz
dW1lKCkKK3sKKyAgICBpZiAobV9jbGllbnQgJiYgIW1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKKyAg
ICAgICAgbV9jbGllbnQtPnN0YXJ0VXBkYXRpbmcoKTsKK30KKwogdm9pZCBEZXZpY2VNb3Rpb25D
b250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VNb3Rpb24oRGV2aWNlTW90aW9uRGF0YSogZGV2aWNl
TW90aW9uRGF0YSkKIHsKICAgICBSZWZQdHI8RGV2aWNlTW90aW9uRXZlbnQ+IGV2ZW50ID0gRGV2
aWNlTW90aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlbW90aW9uRXZlbnQsIGRl
dmljZU1vdGlvbkRhdGEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1v
dGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9s
bGVyLmgKaW5kZXggODBjOWQ5NC4uN2NjZTE1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2
aWNlTW90aW9uQ29udHJvbGxlci5oCkBAIC00NCw2ICs0NCw5IEBAIHB1YmxpYzoKICAgICB2b2lk
IHJlbW92ZUxpc3RlbmVyKERPTVdpbmRvdyopOwogICAgIHZvaWQgcmVtb3ZlQWxsTGlzdGVuZXJz
KERPTVdpbmRvdyopOwogCisgICAgdm9pZCBzdXNwZW5kKCk7CisgICAgdm9pZCByZXN1bWUoKTsK
KwogICAgIHZvaWQgZGlkQ2hhbmdlRGV2aWNlTW90aW9uKERldmljZU1vdGlvbkRhdGEqKTsKIAog
ICAgIGJvb2wgaXNBY3RpdmUoKSB7IHJldHVybiAhbV9saXN0ZW5lcnMuaXNFbXB0eSgpOyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3Bw
CmluZGV4IGRhNDJiZWMuLjU2NDRmMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwCkBAIC03NSw3ICs3NSw3IEBAIHZvaWQgRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjphZGRMaXN0ZW5lcihET01XaW5kb3cqIHdpbmRvdykK
ICAgICAvLyBUaGUgY2xpZW50IG11c3Qgbm90IGNhbGwgYmFjayBzeW5jaHJvbm91c2x5LgogICAg
IGJvb2wgd2FzRW1wdHkgPSBtX2xpc3RlbmVycy5pc0VtcHR5KCk7CiAgICAgbV9saXN0ZW5lcnMu
YWRkKHdpbmRvdyk7Ci0gICAgaWYgKHdhc0VtcHR5KQorICAgIGlmIChtX2NsaWVudCAmJiB3YXNF
bXB0eSkKICAgICAgICAgbV9jbGllbnQtPnN0YXJ0VXBkYXRpbmcoKTsKIH0KIApAQCAtODMsNyAr
ODMsNyBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVuZXIo
RE9NV2luZG93KiB3aW5kb3cpCiB7CiAgICAgbV9saXN0ZW5lcnMucmVtb3ZlKHdpbmRvdyk7CiAg
ICAgbV9uZXdMaXN0ZW5lcnMucmVtb3ZlKHdpbmRvdyk7Ci0gICAgaWYgKG1fbGlzdGVuZXJzLmlz
RW1wdHkoKSkKKyAgICBpZiAobV9jbGllbnQgJiYgbV9saXN0ZW5lcnMuaXNFbXB0eSgpKQogICAg
ICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKQEAgLTk1LDEwICs5NSwyMiBAQCB2
b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKERPTVdp
bmRvdyogd2luZG93KQogCiAgICAgbV9saXN0ZW5lcnMucmVtb3ZlQWxsKHdpbmRvdyk7CiAgICAg
bV9uZXdMaXN0ZW5lcnMucmVtb3ZlKHdpbmRvdyk7Ci0gICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1w
dHkoKSkKKyAgICBpZiAobV9jbGllbnQgJiYgbV9saXN0ZW5lcnMuaXNFbXB0eSgpKQogICAgICAg
ICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xp
ZW50LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OnJlc3VtZSgpCit7CisgICAgaWYgKG1fY2xpZW50ICYmICFtX2xpc3RlbmVycy5pc0VtcHR5
KCkpCisgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgRGV2aWNl
T3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VP
cmllbnRhdGlvbiogb3JpZW50YXRpb24pCiB7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9u
RXZlbnQ+IGV2ZW50ID0gRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMo
KS5kZXZpY2VvcmllbnRhdGlvbkV2ZW50LCBvcmllbnRhdGlvbik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKaW5kZXggNWUwNjc3MS4uYTQ5
NjhjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuaApAQCAtNDYsNiArNDYsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVMaXN0ZW5l
cihET01XaW5kb3cqKTsKICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqKTsK
IAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIGRp
ZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CiAKICAgICBib29s
IGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5jcHAKaW5kZXggYjk0YzljNC4uOTIwY2M3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCkBAIC01MCw3ICs1MCw5IEBACiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIKICNp
bmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50cy5oIgorI2luY2x1
ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJEZXZpY2VNb3Rpb25FdmVu
dC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUg
IkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJEb2N1bWVudEZyYWdtZW50Lmgi
CiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKQEAgLTc1LDYgKzc3LDcgQEAKICNpbmNsdWRl
ICJGcmFtZVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkZy
YW1lVmlldy5oIgorI2luY2x1ZGUgIkdlb2xvY2F0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUg
IkhUTUxBbGxDb2xsZWN0aW9uLmgiCiAjaW5jbHVkZSAiSFRNTEFuY2hvckVsZW1lbnQuaCIKICNp
bmNsdWRlICJIVE1MQm9keUVsZW1lbnQuaCIKQEAgLTE4NzksNiArMTg4Miw2NiBAQCB2b2lkIERv
Y3VtZW50OjpyZW1vdmVBbGxFdmVudExpc3RlbmVycygpCiAgICAgICAgIG5vZGUtPnJlbW92ZUFs
bEV2ZW50TGlzdGVuZXJzKCk7CiB9CiAKK3ZvaWQgRG9jdW1lbnQ6OnN1c3BlbmRBY3RpdmVET01P
YmplY3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCit7CisgICAg
U2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMod2h5KTsKKwor
ICAgIGlmICghcGFnZSgpKQorICAgICAgICByZXR1cm47CisKKyNpZiBFTkFCTEUoQ0xJRU5UX0JB
U0VEX0dFT0xPQ0FUSU9OKQorICAgIGlmIChwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigp
ICYmIHVzaW5nR2VvbG9jYXRpb24oKSkKKyAgICAgICAgcGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRy
b2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFU
SU9OKQorICAgIGlmIChwYWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAg
cGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyAgICBpZiAocGFn
ZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCit9CisKK3ZvaWQg
RG9jdW1lbnQ6OnJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKQoreworICAgIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ6OnJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsKKworICAgIGlmICghcGFnZSgpKQor
ICAgICAgICByZXR1cm47CisKKyNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQor
ICAgIGlmIChwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpICYmIHVzaW5nR2VvbG9jYXRp
b24oKSkKKyAgICAgICAgcGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKS0+cmVzdW1lKCk7
CisjZW5kaWYKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKHBhZ2Uo
KS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU1vdGlv
bkNvbnRyb2xsZXIoKS0+cmVzdW1lKCk7CisgICAgaWYgKHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyKCktPnJlc3VtZSgpOworI2VuZGlmCit9CisKK3ZvaWQgRG9jdW1lbnQ6OnN0b3BBY3RpdmVE
T01PYmplY3RzKCkKK3sKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpzdG9wQWN0aXZlRE9N
T2JqZWN0cygpOworCisgICAgaWYgKCFwYWdlKCkpCisgICAgICAgIHJldHVybjsKKworI2lmIEVO
QUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAgaWYgKHBhZ2UoKS0+Z2VvbG9jYXRp
b25Db250cm9sbGVyKCkgJiYgdXNpbmdHZW9sb2NhdGlvbigpKQorICAgICAgICBwYWdlKCktPmdl
b2xvY2F0aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShE
RVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxl
cigpKQorICAgICAgICBwYWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVuZCgp
OworICAgIGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpKQorICAgICAg
ICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisjZW5k
aWYKK30KKwogUmVuZGVyVmlldyogRG9jdW1lbnQ6OnJlbmRlclZpZXcoKSBjb25zdAogewogICAg
IHJldHVybiB0b1JlbmRlclZpZXcocmVuZGVyZXIoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmluZGV4
IDcyNzA1ZjAuLjZmYTY4ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC01NjQsNiArNTY0LDEx
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoKCk7CiAgICAgdmlydHVhbCB2b2lk
IGRldGFjaCgpOwogCisgICAgLy8gT3ZlcnJpZGUgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCBtZXRo
b2RzIHRvIGRvIGFkZGl0aW9uYWwgd29yaworICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQWN0aXZl
RE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24pIE9WRVJSSURF
OworICAgIHZpcnR1YWwgdm9pZCByZXN1bWVBY3RpdmVET01PYmplY3RzKCkgT1ZFUlJJREU7Cisg
ICAgdmlydHVhbCB2b2lkIHN0b3BBY3RpdmVET01PYmplY3RzKCkgT1ZFUlJJREU7CisKICAgICBS
ZW5kZXJBcmVuYSogcmVuZGVyQXJlbmEoKSB7IHJldHVybiBtX3JlbmRlckFyZW5hLmdldCgpOyB9
CiAKICAgICBSZW5kZXJWaWV3KiByZW5kZXJWaWV3KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAppbmRleCBkNDQyZTYyLi5lMTZmYWI1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgKQEAgLTEwOSw5ICsx
MDksMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBib29sIGNhblN1c3BlbmRBY3Rp
dmVET01PYmplY3RzKCk7CiAgICAgICAgIC8vIEFjdGl2ZSBvYmplY3RzIGNhbiBiZSBhc2tlZCB0
byBzdXNwZW5kIGV2ZW4gaWYgY2FuU3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoKSByZXR1cm5zICdm
YWxzZScgLQogICAgICAgICAvLyBzdGVwLWJ5LXN0ZXAgSlMgZGVidWdnaW5nIGlzIG9uZSBleGFt
cGxlLgotICAgICAgICB2b2lkIHN1c3BlbmRBY3RpdmVET01PYmplY3RzKEFjdGl2ZURPTU9iamVj
dDo6UmVhc29uRm9yU3VzcGVuc2lvbik7Ci0gICAgICAgIHZvaWQgcmVzdW1lQWN0aXZlRE9NT2Jq
ZWN0cygpOwotICAgICAgICB2b2lkIHN0b3BBY3RpdmVET01PYmplY3RzKCk7CisgICAgICAgIHZp
cnR1YWwgdm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNv
bkZvclN1c3BlbnNpb24pOworICAgICAgICB2aXJ0dWFsIHZvaWQgcmVzdW1lQWN0aXZlRE9NT2Jq
ZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZvaWQgc3RvcEFjdGl2ZURPTU9iamVjdHMoKTsKKwog
ICAgICAgICB2b2lkIGNyZWF0ZWRBY3RpdmVET01PYmplY3QoQWN0aXZlRE9NT2JqZWN0Kiwgdm9p
ZCogdXBjYXN0UG9pbnRlcik7CiAgICAgICAgIHZvaWQgZGVzdHJveWVkQWN0aXZlRE9NT2JqZWN0
KEFjdGl2ZURPTU9iamVjdCopOwogICAgICAgICB0eXBlZGVmIGNvbnN0IEhhc2hNYXA8QWN0aXZl
RE9NT2JqZWN0Kiwgdm9pZCo+IEFjdGl2ZURPTU9iamVjdHNNYXA7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggYjk1MzNjYS4uN2FkNmMyMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcApAQCAt
ODAsNiArODAsMTggQEAgdm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZU9ic2VydmVy
KEdlb2xvY2F0aW9uKiBvYnNlcnZlcikKICAgICB9CiB9CiAKK3ZvaWQgR2VvbG9jYXRpb25Db250
cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50
LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnJlc3Vt
ZSgpCit7CisgICAgaWYgKG1fY2xpZW50ICYmICFtX29ic2VydmVycy5pc0VtcHR5KCkpCisgICAg
ICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgR2VvbG9jYXRpb25Db250
cm9sbGVyOjpyZXF1ZXN0UGVybWlzc2lvbihHZW9sb2NhdGlvbiogZ2VvbG9jYXRpb24pCiB7CiAg
ICAgaWYgKG1fY2xpZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2Nh
dGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9s
bGVyLmgKaW5kZXggN2M1NWNlMi4uMTQyYjAxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dl
b2xvY2F0aW9uQ29udHJvbGxlci5oCkBAIC00OSw2ICs0OSw5IEBAIHB1YmxpYzoKICAgICB2b2lk
IGFkZE9ic2VydmVyKEdlb2xvY2F0aW9uKiwgYm9vbCBlbmFibGVIaWdoQWNjdXJhY3kpOwogICAg
IHZvaWQgcmVtb3ZlT2JzZXJ2ZXIoR2VvbG9jYXRpb24qKTsKIAorICAgIHZvaWQgc3VzcGVuZCgp
OworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIHJlcXVlc3RQZXJtaXNzaW9uKEdlb2xv
Y2F0aW9uKik7CiAgICAgdm9pZCBjYW5jZWxQZXJtaXNzaW9uUmVxdWVzdChHZW9sb2NhdGlvbiop
OwogCi0tIAoxLjcuNC4xCgo=
</data>
<flag name="review"
          id="109503"
          type_id="1"
          status="+"
          setter="hausmann"
    />
    <flag name="commit-queue"
          id="109504"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111746</attachid>
            <date>2011-10-20 03:51:42 -0700</date>
            <delta_ts>2011-10-21 04:47:22 -0700</delta_ts>
            <desc>Patch (rebaseD)</desc>
            <filename>0001-Properly-suspend-resume-Geolocation-DeviceMotion-Dev.patch</filename>
            <type>text/plain</type>
            <size>11859</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSBlN2Q5ZTJlMmRhNjJjMWY1ODljN2M2OTg0YTVlOTE1MmIzYzlhZTg3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBUdWUsIDE4IE9jdCAyMDExIDE1OjU1OjU0ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9u
L0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDMyOAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpCYXNlZCBvbiBj
b2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuCgpObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jl
c3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KCiogZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6
c3VzcGVuZCk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgoqIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmg6CiogZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHA6CihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExpc3Rl
bmVyKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVu
ZXIpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0
ZW5lcnMpOgooV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToK
KFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKiBkb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6
OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURP
TU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5oOgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
Lmg6CiogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6R2VvbG9jYXRp
b25Db250cm9sbGVyOjpzdXNwZW5kKToKKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6
cmVzdW1lKToKKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgotLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMyArKysrKysrKysr
CiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgICAgICB8ICAg
MTIgKysrKwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaCAgICAg
ICAgfCAgICAzICsKIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuY3BwIHwgICAxMSArKysKIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXIuaCAgIHwgICAgMyArCiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwICAg
ICAgICAgICAgICAgICAgICB8ICAgNjUgKysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKwogU291cmNl
L1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAgICAgICAgfCAgICA3ICstCiBT
b3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAgICAgICB8ICAgMTIg
KysrKwogU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCAgICAgICAg
fCAgICAzICsKIDEwIGZpbGVzIGNoYW5nZWQsIDE1MSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u
cygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCA1MmU2NTVkLi41NDk2ODc1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMzYgQEAKKzIwMTEtMTAtMTggIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8a2VubmV0
aEB3ZWJraXQub3JnPgorCisgICAgICAgIFByb3Blcmx5IHN1c3BlbmQvcmVzdW1lIEdlb2xvY2F0
aW9uL0RldmljZU1vdGlvbi9EZXZpY2VPcmllbnRhdGlvbiBvYmplY3RzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDMyOAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJhc2VkIG9uIGNvZGUgZnJvbSBpT1Mg
YW5kIHRoZSBOOS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGFzIHRoZSBzdXNwZW5kL3Jlc3Vt
ZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4KKworICAgICAgICAqIGRv
bS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU1v
dGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlTW90aW9u
Q29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxl
ci5oOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjphZGRMaXN0ZW5lcik6
CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUxp
c3RlbmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6
cmVtb3ZlQWxsTGlzdGVuZXJzKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5oOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnQ6OnJlc3VtZUFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAoV2ViQ29yZTo6RG9j
dW1lbnQ6OnN0b3BBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoK
KyAgICAgICAgKiBkb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oOgorICAgICAgICAqIHBhZ2Uv
R2VvbG9jYXRpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9u
Q29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbkNvbnRy
b2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaDoK
KwogMjAxMS0xMC0yMCAgUmFwaGFlbCBLdWJvIGRhIENvc3RhICA8a3Vib0Bwcm9mdXNpb24ubW9i
aT4KIAogICAgICAgICBbRUZMXSBEbyBub3QgbWFudWFsbHkgc2V0IHRoZSBmcmFtZVJlY3QgaW4g
ZGlmZmVyZW50IHBsYWNlcyBpbiBTY3JvbGxiYXJFZmwuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAKaW5kZXggMjhlMjAxZS4uNjJiYTQ3YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcApAQCAtOTcsNiAr
OTcsMTggQEAgdm9pZCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMo
RE9NV2luZG93KiB3aW5kb3cpCiAgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKIH0K
IAordm9pZCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBpZiAobV9j
bGllbnQpCisgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBEZXZp
Y2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUoKQoreworICAgIGlmIChtX2NsaWVudCAmJiAhbV9s
aXN0ZW5lcnMuaXNFbXB0eSgpKQorICAgICAgICBtX2NsaWVudC0+c3RhcnRVcGRhdGluZygpOwor
fQorCiB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU1vdGlvbihE
ZXZpY2VNb3Rpb25EYXRhKiBkZXZpY2VNb3Rpb25EYXRhKQogewogICAgIFJlZlB0cjxEZXZpY2VN
b3Rpb25FdmVudD4gZXZlbnQgPSBEZXZpY2VNb3Rpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMo
KS5kZXZpY2Vtb3Rpb25FdmVudCwgZGV2aWNlTW90aW9uRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaAppbmRleCA4MGM5ZDk0Li43Y2NlMTU2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmgKQEAgLTQ0LDYgKzQ0
LDkgQEAgcHVibGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoRE9NV2luZG93Kik7CiAgICAg
dm9pZCByZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKKyAgICB2b2lkIHN1c3BlbmQo
KTsKKyAgICB2b2lkIHJlc3VtZSgpOworCiAgICAgdm9pZCBkaWRDaGFuZ2VEZXZpY2VNb3Rpb24o
RGV2aWNlTW90aW9uRGF0YSopOwogCiAgICAgYm9vbCBpc0FjdGl2ZSgpIHsgcmV0dXJuICFtX2xp
c3RlbmVycy5pc0VtcHR5KCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggZGE0MmJlYy4uOTY5ODcyMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKQEAg
LTk5LDYgKzk5LDE3IEBAIHZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVB
bGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCiAgICAgICAgIG1fY2xpZW50LT5zdG9wVXBk
YXRpbmcoKTsKIH0KIAordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQo
KQoreworICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBEZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSgpCit7CisgICAgaWYgKCFtX2xpc3RlbmVycy5pc0Vt
cHR5KCkpCisgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZp
Y2VPcmllbnRhdGlvbiogb3JpZW50YXRpb24pCiB7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0
aW9uRXZlbnQ+IGV2ZW50ID0gRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFt
ZXMoKS5kZXZpY2VvcmllbnRhdGlvbkV2ZW50LCBvcmllbnRhdGlvbik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKaW5kZXggNWUwNjc3MS4u
YTQ5NjhjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXIuaApAQCAtNDYsNiArNDYsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVMaXN0
ZW5lcihET01XaW5kb3cqKTsKICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cq
KTsKIAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lk
IGRpZENoYW5nZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CiAKICAgICBi
b29sIGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKaW5kZXggYjNhNWFiMS4uNGU0MGQwYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCkBAIC00Nyw2ICs0NywxMCBAQAogI2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgi
CiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKKyNp
bmNsdWRlICJEZXZpY2VNb3Rpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiRGV2aWNlTW90aW9u
RXZlbnQuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRGcmFnbWVu
dC5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRNYXJr
ZXJDb250cm9sbGVyLmgiCkBAIC03MCw2ICs3NCw3IEBACiAjaW5jbHVkZSAiRnJhbWVTZWxlY3Rp
b24uaCIKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKKyNp
bmNsdWRlICJHZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJIYXNoQ2hhbmdlRXZl
bnQuaCIKICNpbmNsdWRlICJIVE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1ZGUgIkhUTUxBbmNo
b3JFbGVtZW50LmgiCkBAIC0xODM1LDYgKzE4NDAsNjYgQEAgdm9pZCBEb2N1bWVudDo6cmVtb3Zl
QWxsRXZlbnRMaXN0ZW5lcnMoKQogICAgICAgICBub2RlLT5yZW1vdmVBbGxFdmVudExpc3RlbmVy
cygpOwogfQogCit2b2lkIERvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVE
T01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24gd2h5KQoreworICAgIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKHdoeSk7CisKKyAgICBpZiAoIXBhZ2Uo
KSkKKyAgICAgICAgcmV0dXJuOworCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElP
TikKKyAgICBpZiAocGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKSAmJiB1c2luZ0dlb2xv
Y2F0aW9uKCkpCisgICAgICAgIHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCktPnN1c3Bl
bmQoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAo
cGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNl
TW90aW9uQ29udHJvbGxlcigpLT5zdXNwZW5kKCk7CisgICAgaWYgKHBhZ2UoKS0+ZGV2aWNlT3Jp
ZW50YXRpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyNlbmRpZgorfQorCit2b2lkIERvY3VtZW50OjpyZXN1
bWVBY3RpdmVET01PYmplY3RzKCkKK3sKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpyZXN1
bWVBY3RpdmVET01PYmplY3RzKCk7CisKKyAgICBpZiAoIXBhZ2UoKSkKKyAgICAgICAgcmV0dXJu
OworCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKyAgICBpZiAocGFnZSgp
LT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKSAmJiB1c2luZ0dlb2xvY2F0aW9uKCkpCisgICAgICAg
IHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCktPnJlc3VtZSgpOworI2VuZGlmCisKKyNp
ZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgIGlmIChwYWdlKCktPmRldmljZU1vdGlv
bkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCkt
PnJlc3VtZSgpOworICAgIGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigp
KQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpLT5yZXN1bWUo
KTsKKyNlbmRpZgorfQorCit2b2lkIERvY3VtZW50OjpzdG9wQWN0aXZlRE9NT2JqZWN0cygpCit7
CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6c3RvcEFjdGl2ZURPTU9iamVjdHMoKTsKKwor
ICAgIGlmICghcGFnZSgpKQorICAgICAgICByZXR1cm47CisKKyNpZiBFTkFCTEUoQ0xJRU5UX0JB
U0VEX0dFT0xPQ0FUSU9OKQorICAgIGlmIChwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigp
ICYmIHVzaW5nR2VvbG9jYXRpb24oKSkKKyAgICAgICAgcGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRy
b2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFU
SU9OKQorICAgIGlmIChwYWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAg
cGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyAgICBpZiAocGFn
ZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCit9CisKIFJlbmRl
clZpZXcqIERvY3VtZW50OjpyZW5kZXJWaWV3KCkgY29uc3QKIHsKICAgICByZXR1cm4gdG9SZW5k
ZXJWaWV3KHJlbmRlcmVyKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA3MjcwNWYwLi42ZmE2
OGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtNTY0LDYgKzU2NCwxMSBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIGF0dGFjaCgpOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goKTsKIAor
ICAgIC8vIE92ZXJyaWRlIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgbWV0aG9kcyB0byBkbyBhZGRp
dGlvbmFsIHdvcmsKKyAgICB2aXJ0dWFsIHZvaWQgc3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0
aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9uKSBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IHZvaWQgcmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9p
ZCBzdG9wQWN0aXZlRE9NT2JqZWN0cygpIE9WRVJSSURFOworCiAgICAgUmVuZGVyQXJlbmEqIHJl
bmRlckFyZW5hKCkgeyByZXR1cm4gbV9yZW5kZXJBcmVuYS5nZXQoKTsgfQogCiAgICAgUmVuZGVy
VmlldyogcmVuZGVyVmlldygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVj
dXRpb25Db250ZXh0LmgKaW5kZXggZDQ0MmU2Mi4uZTE2ZmFiNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCkBAIC0xMDksOSArMTA5LDEwIEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBjYW5TdXNwZW5kQWN0aXZlRE9NT2JqZWN0cygp
OwogICAgICAgICAvLyBBY3RpdmUgb2JqZWN0cyBjYW4gYmUgYXNrZWQgdG8gc3VzcGVuZCBldmVu
IGlmIGNhblN1c3BlbmRBY3RpdmVET01PYmplY3RzKCkgcmV0dXJucyAnZmFsc2UnIC0KICAgICAg
ICAgLy8gc3RlcC1ieS1zdGVwIEpTIGRlYnVnZ2luZyBpcyBvbmUgZXhhbXBsZS4KLSAgICAgICAg
dm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1
c3BlbnNpb24pOwotICAgICAgICB2b2lkIHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsKLSAgICAg
ICAgdm9pZCBzdG9wQWN0aXZlRE9NT2JqZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZvaWQgc3Vz
cGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9u
KTsKKyAgICAgICAgdmlydHVhbCB2b2lkIHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsKKyAgICAg
ICAgdmlydHVhbCB2b2lkIHN0b3BBY3RpdmVET01PYmplY3RzKCk7CisKICAgICAgICAgdm9pZCBj
cmVhdGVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCosIHZvaWQqIHVwY2FzdFBvaW50
ZXIpOwogICAgICAgICB2b2lkIGRlc3Ryb3llZEFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmpl
Y3QqKTsKICAgICAgICAgdHlwZWRlZiBjb25zdCBIYXNoTWFwPEFjdGl2ZURPTU9iamVjdCosIHZv
aWQqPiBBY3RpdmVET01PYmplY3RzTWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2Nh
dGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IGI5NTMzY2EuLjdhZDZjMjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAKQEAgLTgwLDYgKzgwLDE4IEBA
IHZvaWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpyZW1vdmVPYnNlcnZlcihHZW9sb2NhdGlvbiog
b2JzZXJ2ZXIpCiAgICAgfQogfQogCit2b2lkIEdlb2xvY2F0aW9uQ29udHJvbGxlcjo6c3VzcGVu
ZCgpCit7CisgICAgaWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5n
KCk7Cit9CisKK3ZvaWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpyZXN1bWUoKQoreworICAgIGlm
IChtX2NsaWVudCAmJiAhbV9vYnNlcnZlcnMuaXNFbXB0eSgpKQorICAgICAgICBtX2NsaWVudC0+
c3RhcnRVcGRhdGluZygpOworfQorCiB2b2lkIEdlb2xvY2F0aW9uQ29udHJvbGxlcjo6cmVxdWVz
dFBlcm1pc3Npb24oR2VvbG9jYXRpb24qIGdlb2xvY2F0aW9uKQogewogICAgIGlmIChtX2NsaWVu
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oCmluZGV4IDdj
NTVjZTIuLjE0MmIwMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRp
b25Db250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRy
b2xsZXIuaApAQCAtNDksNiArNDksOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGRPYnNlcnZlcihH
ZW9sb2NhdGlvbiosIGJvb2wgZW5hYmxlSGlnaEFjY3VyYWN5KTsKICAgICB2b2lkIHJlbW92ZU9i
c2VydmVyKEdlb2xvY2F0aW9uKik7CiAKKyAgICB2b2lkIHN1c3BlbmQoKTsKKyAgICB2b2lkIHJl
c3VtZSgpOworCiAgICAgdm9pZCByZXF1ZXN0UGVybWlzc2lvbihHZW9sb2NhdGlvbiopOwogICAg
IHZvaWQgY2FuY2VsUGVybWlzc2lvblJlcXVlc3QoR2VvbG9jYXRpb24qKTsKIAotLSAKMS43LjQu
MQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111760</attachid>
            <date>2011-10-20 05:58:38 -0700</date>
            <delta_ts>2011-10-21 04:47:22 -0700</delta_ts>
            <desc>Buildfix</desc>
            <filename>0001-Unreviewed-build-fix.patch</filename>
            <type>text/plain</type>
            <size>3266</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSAzYTMyNjJkOWFmYWQyMzBjMDAzNDI0ZGQ3NmE1MzQwYzY0ZjJmZjM4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBUaHUsIDIwIE9jdCAyMDExIDE0OjU0OjU2ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gVW5yZXZpZXdlZCBidWlsZCBmaXguCgpEbyBub3Qgc3RvcCB1cGRhdGluZyBpZiBu
b29uZSB3YXMgbGlzdGVuaW5nLiBXYXMgYnJlYWtpbmcgYW4gYXNzZXJ0IGluIHRoZSBtb2NrLgoK
KiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHA6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25D
b250cm9sbGVyOjpzdXNwZW5kKToKKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cDoKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CiogcGFn
ZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgooV2ViQ29yZTo6R2VvbG9jYXRpb25Db250cm9s
bGVyOjpzdXNwZW5kKToKLS0tCiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMTMgKysrKysrKysrKysrKwogU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAgICAzICsrLQogU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgfCAgICAzICsrLQogU291cmNlL1dl
YkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAgICAyICstCiA0IGZp
bGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IDQ1YzQxMmIuLmFmOWNkNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxOCBAQAogMjAxMS0x
MC0yMCAgS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4gIDxrZW5uZXRoQHdlYmtpdC5vcmc+CiAK
KyAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXguCisKKyAgICAgICAgRG8gbm90IHN0b3AgdXBk
YXRpbmcgaWYgbm9vbmUgd2FzIGxpc3RlbmluZy4gV2FzIGJyZWFraW5nIGFuIGFzc2VydCBpbiB0
aGUgbW9jay4KKworICAgICAgICAqIGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAg
ICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kKToKKyAgICAgICAgKiBwYWdl
L0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlv
bkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorCisyMDExLTEwLTIwICBLZW5uZXRoIFJvaGRlIENocmlz
dGlhbnNlbiAgPGtlbm5ldGhAd2Via2l0Lm9yZz4KKwogICAgICAgICBtX2NsaWVudCBpbiBEZXZp
Y2VNb3Rpb25Db250cm9sbGVyIGNhbiBuZXZlciBiZSAwLCBzbyBubyBuZWVkIHRvIGNoZWNrIGZv
ciBpdAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA0
OTAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xs
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCmlu
ZGV4IGM0YmVkOTcuLjAzMzY1ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZp
Y2VNb3Rpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90
aW9uQ29udHJvbGxlci5jcHAKQEAgLTk5LDcgKzk5LDggQEAgdm9pZCBEZXZpY2VNb3Rpb25Db250
cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCiAKIHZvaWQgRGV2
aWNlTW90aW9uQ29udHJvbGxlcjo6c3VzcGVuZCgpCiB7Ci0gICAgbV9jbGllbnQtPnN0b3BVcGRh
dGluZygpOworICAgIGlmICghbV9saXN0ZW5lcnMuaXNFbXB0eSgpKQorICAgICAgICBtX2NsaWVu
dC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAKIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVz
dW1lKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5jcHAKaW5kZXggOTY5ODcyMy4uMWM5MzYxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKQEAgLTEwMSw3ICsxMDEsOCBA
QCB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKERP
TVdpbmRvdyogd2luZG93KQogCiB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6c3Vz
cGVuZCgpCiB7Ci0gICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOworICAgIGlmICghbV9saXN0
ZW5lcnMuaXNFbXB0eSgpKQorICAgICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiB9CiAK
IHZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWUoKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDdhZDZjMjMuLjIxMzY0
NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAK
QEAgLTgyLDcgKzgyLDcgQEAgdm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnJlbW92ZU9ic2Vy
dmVyKEdlb2xvY2F0aW9uKiBvYnNlcnZlcikKIAogdm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6
OnN1c3BlbmQoKQogewotICAgIGlmIChtX2NsaWVudCkKKyAgICBpZiAobV9jbGllbnQgJiYgIW1f
b2JzZXJ2ZXJzLmlzRW1wdHkoKSkKICAgICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwog
fQogCi0tIAoxLjcuNC4xCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111942</attachid>
            <date>2011-10-21 04:47:22 -0700</date>
            <delta_ts>2011-10-26 02:50:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Properly-suspend-resume-Geolocation-DeviceMotion-Dev.patch</filename>
            <type>text/plain</type>
            <size>16686</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSBlOTEyN2ExNGVhZjBmYjJkZjYzN2VlYzkzYzNjNjA5NjA3ZjIzYjY3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBGcmksIDIxIE9jdCAyMDExIDEzOjQ0OjE3ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9u
L0RldmljZU9yaWVudGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDMyOAoKUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCgpCYXNlZCBvbiBj
b2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuIEFsc28gcmVtb3ZlIGNoZWNrcyBmb3IgbV9jbGllbnQg
aW4KRGV2aWNlTW90aW9uQ29udHJvbGxlciBhcyBpdCBjYW4gbmV2ZXIgYmUgbnVsbC4KCk5vIG5l
dyB0ZXN0cywgYXMgdGhlIHN1c3BlbmQvcmVzdW1lIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGZ1bGx5
IHdvcmtpbmcgeWV0LgoKKiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHA6CihXZWJDb3Jl
OjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKToKKFdlYkNvcmU6OkRldmljZU1v
dGlvbkNvbnRyb2xsZXI6OmFkZExpc3RlbmVyKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnJlbW92ZUxpc3RlbmVyKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6
OnJlbW92ZUFsbExpc3RlbmVycyk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpz
dXNwZW5kKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSk6CiogZG9t
L0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaDoKKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLmNwcDoKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6
CihXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSk6CiogZG9tL0Rl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oOgoqIGRvbS9Eb2N1bWVudC5jcHA6CihXZWJDb3Jl
OjpEb2N1bWVudDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMpOgooV2ViQ29yZTo6RG9jdW1lbnQ6
OnJlc3VtZUFjdGl2ZURPTU9iamVjdHMpOgooV2ViQ29yZTo6RG9jdW1lbnQ6OnN0b3BBY3RpdmVE
T01PYmplY3RzKToKKiBkb20vRG9jdW1lbnQuaDoKKiBkb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4
dC5oOgoqIHBhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcDoKKFdlYkNvcmU6Okdlb2xvY2F0
aW9uQ29udHJvbGxlcjo6R2VvbG9jYXRpb25Db250cm9sbGVyKToKKFdlYkNvcmU6Okdlb2xvY2F0
aW9uQ29udHJvbGxlcjo6cmVtb3ZlT2JzZXJ2ZXIpOgooV2ViQ29yZTo6R2VvbG9jYXRpb25Db250
cm9sbGVyOjpzdXNwZW5kKToKKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6cmVzdW1l
KToKKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgotLS0KIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2NCArKysrKysrKysrKysrKysr
KysrCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHAgICAgICB8
ICAgMjYgKysrKysrLS0KIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVy
LmggICAgICAgIHwgICAgMyArCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyLmNwcCB8ICAgMTIgKysrKwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVu
dGF0aW9uQ29udHJvbGxlci5oICAgfCAgICAzICsKIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAgICAgICAgICAgICAgICAgICAgIHwgICA2NSArKysrKysrKysrKysrKysrKysrKwogU291
cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsr
CiBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oICAgICAgICB8ICAg
IDcgKy0KIFNvdXJjZS9XZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcCAgICAg
IHwgICAyMyArKysrKysrLQogU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xs
ZXIuaCAgICAgICAgfCAgICA1ICsrCiAxMCBmaWxlcyBjaGFuZ2VkLCAyMDIgaW5zZXJ0aW9ucygr
KSwgMTEgZGVsZXRpb25zKC0pCiBtb2RlIGNoYW5nZSAxMDA3NTUgPT4gMTAwNjQ0IFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpvbGQgbW9kZSAxMDA3NTUKbmV3IG1vZGUgMTAwNjQ0
CmluZGV4IGRkMmFkYWMuLjU1MjVjZGQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY3IEBACisyMDExLTEwLTIx
ICBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiAgPGtlbm5ldGhAd2Via2l0Lm9yZz4KKworICAg
ICAgICBQcm9wZXJseSBzdXNwZW5kL3Jlc3VtZSBHZW9sb2NhdGlvbi9EZXZpY2VNb3Rpb24vRGV2
aWNlT3JpZW50YXRpb24gb2JqZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NzAzMjgKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFu
bi4KKworICAgICAgICBCYXNlZCBvbiBjb2RlIGZyb20gaU9TIGFuZCB0aGUgTjkuIEFsc28gcmVt
b3ZlIGNoZWNrcyBmb3IgbV9jbGllbnQgaW4KKyAgICAgICAgRGV2aWNlTW90aW9uQ29udHJvbGxl
ciBhcyBpdCBjYW4gbmV2ZXIgYmUgbnVsbC4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGFzIHRo
ZSBzdXNwZW5kL3Jlc3VtZSBmdW5jdGlvbmFsaXR5IGlzIG5vdCBmdWxseSB3b3JraW5nIHlldC4K
KworICAgICAgICAqIGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVuZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVuZXIpOgorICAgICAgICAo
V2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAg
ICAoV2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBk
b20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyOjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudDo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6c3RvcEFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgor
ICAgICAgICAqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6CisgICAgICAgICogcGFnZS9H
ZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb25D
b250cm9sbGVyOjpHZW9sb2NhdGlvbkNvbnRyb2xsZXIpOgorICAgICAgICAoV2ViQ29yZTo6R2Vv
bG9jYXRpb25Db250cm9sbGVyOjpyZW1vdmVPYnNlcnZlcik6CisgICAgICAgIChXZWJDb3JlOjpH
ZW9sb2NhdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9j
YXRpb25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIHBhZ2UvR2VvbG9jYXRpb25Db250
cm9sbGVyLmg6CisKKzIwMTEtMTAtMjAgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0
Lm9yZz4KKworICAgICAgICBbUXRdIFJvbGwtYmFjayByOTc5NjQsIHI5Nzk3MiBhbmQgZml4IGlu
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDMyOC4KKworICAgICAg
ICAqIGRvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRl
dmljZU1vdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2
aWNlTW90aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6RGV2
aWNlTW90aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVuZXIpOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlzdGVuZXJzKToKKyAgICAgICAgKFdl
YkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29y
ZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6cmVzdW1lKToKKyAgICAgICAgKiBkb20vRGV2aWNl
TW90aW9uQ29udHJvbGxlci5oOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
OjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cjo6cmVzdW1lKToKKyAgICAgICAgKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6
CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50
OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6c3Rv
cEFjdGl2ZURPTU9iamVjdHMpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgorICAgICAgICAq
IGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6CisgICAgICAgICogcGFnZS9HZW9sb2NhdGlv
bkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb25Db250cm9sbGVy
OjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uQ29udHJvbGxlcjo6cmVz
dW1lKToKKyAgICAgICAgKiBwYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oOgorCiAyMDExLTEw
LTIwICBBbmRyZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2Vi
IEluc3BlY3RvcjogbWFrZSBleHRlbnNpb24gdGVzdHMgcGFzcyBvbiBjaHJvbWl1bQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDI4ZTIwMWUu
LjAzMzY1ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250
cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxl
ci5jcHAKQEAgLTQ4LDEwICs0OCwxMCBAQCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjp+RGV2aWNl
TW90aW9uQ29udHJvbGxlcigpCiB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmly
ZWQoVGltZXI8RGV2aWNlTW90aW9uQ29udHJvbGxlcj4qIHRpbWVyKQogewogICAgIEFTU0VSVF9V
TlVTRUQodGltZXIsIHRpbWVyID09ICZtX3RpbWVyKTsKLSAgICBBU1NFUlQoIW1fY2xpZW50IHx8
IG1fY2xpZW50LT5jdXJyZW50RGV2aWNlTW90aW9uKCkpOworICAgIEFTU0VSVChtX2NsaWVudC0+
Y3VycmVudERldmljZU1vdGlvbigpKTsKICAgICBtX3RpbWVyLnN0b3AoKTsKICAgICAKLSAgICBS
ZWZQdHI8RGV2aWNlTW90aW9uRGF0YT4gZGV2aWNlTW90aW9uRGF0YSA9IG1fY2xpZW50ID8gbV9j
bGllbnQtPmN1cnJlbnREZXZpY2VNb3Rpb24oKSA6IERldmljZU1vdGlvbkRhdGE6OmNyZWF0ZSgp
OworICAgIFJlZlB0cjxEZXZpY2VNb3Rpb25EYXRhPiBkZXZpY2VNb3Rpb25EYXRhID0gbV9jbGll
bnQtPmN1cnJlbnREZXZpY2VNb3Rpb24oKTsKICAgICBSZWZQdHI8RGV2aWNlTW90aW9uRXZlbnQ+
IGV2ZW50ID0gRGV2aWNlTW90aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlbW90
aW9uRXZlbnQsIGRldmljZU1vdGlvbkRhdGEuZ2V0KCkpOwogIAogICAgIFZlY3RvcjxSZWZQdHI8
RE9NV2luZG93PiA+IGxpc3RlbmVyc1ZlY3RvcjsKQEAgLTYzLDkgKzYzLDkgQEAgdm9pZCBEZXZp
Y2VNb3Rpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKFRpbWVyPERldmljZU1vdGlvbkNvbnRyb2xs
ZXI+KiB0aW1lcikKICAgICAKIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVu
ZXIoRE9NV2luZG93KiB3aW5kb3cpCiB7Ci0gICAgLy8gSWYgbm8gY2xpZW50IGlzIHByZXNlbnQg
b3IgdGhlIGNsaWVudCBhbHJlYWR5IGhhcyBtb3Rpb24gZGF0YSwKKyAgICAvLyBJZiB0aGUgY2xp
ZW50IGFscmVhZHkgaGFzIG1vdGlvbiBkYXRhLAogICAgIC8vIGltbWVkaWF0ZWx5IHRyaWdnZXIg
YW4gYXN5bmNocm9ub3VzIHJlc3BvbnNlLgotICAgIGlmICghbV9jbGllbnQgfHwgbV9jbGllbnQt
PmN1cnJlbnREZXZpY2VNb3Rpb24oKSkgeworICAgIGlmIChtX2NsaWVudC0+Y3VycmVudERldmlj
ZU1vdGlvbigpKSB7CiAgICAgICAgIG1fbmV3TGlzdGVuZXJzLmFkZCh3aW5kb3cpOwogICAgICAg
ICBpZiAoIW1fdGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgICAgIG1fdGltZXIuc3RhcnRPbmVT
aG90KDApOwpAQCAtNzMsNyArNzMsNyBAQCB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OmFk
ZExpc3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogICAgIAogICAgIGJvb2wgd2FzRW1wdHkgPSBt
X2xpc3RlbmVycy5pc0VtcHR5KCk7CiAgICAgbV9saXN0ZW5lcnMuYWRkKHdpbmRvdyk7Ci0gICAg
aWYgKHdhc0VtcHR5ICYmIG1fY2xpZW50KQorICAgIGlmICh3YXNFbXB0eSkKICAgICAgICAgbV9j
bGllbnQtPnN0YXJ0VXBkYXRpbmcoKTsKIH0KIApAQCAtODEsNyArODEsNyBAQCB2b2lkIERldmlj
ZU1vdGlvbkNvbnRyb2xsZXI6OnJlbW92ZUxpc3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogewog
ICAgIG1fbGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwogICAgIG1fbmV3TGlzdGVuZXJzLnJlbW92
ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5pc0VtcHR5KCkgJiYgbV9jbGllbnQpCisg
ICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAgICAgICAgbV9jbGllbnQtPnN0b3BVcGRh
dGluZygpOwogfQogCkBAIC05MywxMCArOTMsMjIgQEAgdm9pZCBEZXZpY2VNb3Rpb25Db250cm9s
bGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCiAKICAgICBtX2xpc3Rl
bmVycy5yZW1vdmVBbGwod2luZG93KTsKICAgICBtX25ld0xpc3RlbmVycy5yZW1vdmUod2luZG93
KTsKLSAgICBpZiAobV9saXN0ZW5lcnMuaXNFbXB0eSgpICYmIG1fY2xpZW50KQorICAgIGlmICht
X2xpc3RlbmVycy5pc0VtcHR5KCkpCiAgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsK
IH0KIAordm9pZCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpzdXNwZW5kKCkKK3sKKyAgICBpZiAo
IW1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKKyAgICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygp
OworfQorCit2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OnJlc3VtZSgpCit7CisgICAgaWYg
KCFtX2xpc3RlbmVycy5pc0VtcHR5KCkpCisgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5n
KCk7Cit9CisKIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlTW90
aW9uKERldmljZU1vdGlvbkRhdGEqIGRldmljZU1vdGlvbkRhdGEpCiB7CiAgICAgUmVmUHRyPERl
dmljZU1vdGlvbkV2ZW50PiBldmVudCA9IERldmljZU1vdGlvbkV2ZW50OjpjcmVhdGUoZXZlbnRO
YW1lcygpLmRldmljZW1vdGlvbkV2ZW50LCBkZXZpY2VNb3Rpb25EYXRhKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oCmluZGV4IDgwYzlkOTQuLjdjY2UxNTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuaApAQCAtNDQs
NiArNDQsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVMaXN0ZW5lcihET01XaW5kb3cqKTsK
ICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqKTsKIAorICAgIHZvaWQgc3Vz
cGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIGRpZENoYW5nZURldmljZU1v
dGlvbihEZXZpY2VNb3Rpb25EYXRhKik7CiAKICAgICBib29sIGlzQWN0aXZlKCkgeyByZXR1cm4g
IW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcAppbmRleCBkYTQyYmVjLi4xYzkzNjExIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNw
cApAQCAtOTksNiArOTksMTggQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OnJl
bW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqIHdpbmRvdykKICAgICAgICAgbV9jbGllbnQtPnN0
b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6c3Vz
cGVuZCgpCit7CisgICAgaWYgKCFtX2xpc3RlbmVycy5pc0VtcHR5KCkpCisgICAgICAgIG1fY2xp
ZW50LT5zdG9wVXBkYXRpbmcoKTsKK30KKwordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OnJlc3VtZSgpCit7CisgICAgaWYgKCFtX2xpc3RlbmVycy5pc0VtcHR5KCkpCisgICAgICAg
IG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisKIHZvaWQgRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyOjpkaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihEZXZpY2VPcmllbnRhdGlvbiog
b3JpZW50YXRpb24pCiB7CiAgICAgUmVmUHRyPERldmljZU9yaWVudGF0aW9uRXZlbnQ+IGV2ZW50
ID0gRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZpY2Vvcmll
bnRhdGlvbkV2ZW50LCBvcmllbnRhdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKaW5kZXggNWUwNjc3MS4uYTQ5NjhjNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaApAQCAt
NDYsNiArNDYsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVMaXN0ZW5lcihET01XaW5kb3cq
KTsKICAgICB2b2lkIHJlbW92ZUFsbExpc3RlbmVycyhET01XaW5kb3cqKTsKIAorICAgIHZvaWQg
c3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIGRpZENoYW5nZURldmlj
ZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CiAKICAgICBib29sIGlzQWN0aXZlKCkg
eyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAK
aW5kZXggYjNhNWFiMS4uNGU0MGQwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Rv
Y3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC00Nyw2
ICs0NywxMCBAQAogI2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiRE9N
V2luZG93LmgiCiAjaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKKyNpbmNsdWRlICJEZXZpY2VN
b3Rpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uRXZlbnQuaCIKKyNpbmNs
dWRlICJEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbkV2ZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRGcmFnbWVudC5oIgogI2luY2x1ZGUg
IkRvY3VtZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRNYXJrZXJDb250cm9sbGVyLmgi
CkBAIC03MCw2ICs3NCw3IEBACiAjaW5jbHVkZSAiRnJhbWVTZWxlY3Rpb24uaCIKICNpbmNsdWRl
ICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKKyNpbmNsdWRlICJHZW9sb2Nh
dGlvbkNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJIYXNoQ2hhbmdlRXZlbnQuaCIKICNpbmNsdWRl
ICJIVE1MQWxsQ29sbGVjdGlvbi5oIgogI2luY2x1ZGUgIkhUTUxBbmNob3JFbGVtZW50LmgiCkBA
IC0xODM1LDYgKzE4NDAsNjYgQEAgdm9pZCBEb2N1bWVudDo6cmVtb3ZlQWxsRXZlbnRMaXN0ZW5l
cnMoKQogICAgICAgICBub2RlLT5yZW1vdmVBbGxFdmVudExpc3RlbmVycygpOwogfQogCit2b2lk
IERvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNv
bkZvclN1c3BlbnNpb24gd2h5KQoreworICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnN1c3Bl
bmRBY3RpdmVET01PYmplY3RzKHdoeSk7CisKKyAgICBpZiAoIXBhZ2UoKSkKKyAgICAgICAgcmV0
dXJuOworCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKyAgICBpZiAocGFn
ZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKSAmJiB1c2luZ0dlb2xvY2F0aW9uKCkpCisgICAg
ICAgIHBhZ2UoKS0+Z2VvbG9jYXRpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyNlbmRpZgor
CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VN
b3Rpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlTW90aW9uQ29udHJvbGxl
cigpLT5zdXNwZW5kKCk7CisgICAgaWYgKHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyKCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKCktPnN1
c3BlbmQoKTsKKyNlbmRpZgorfQorCit2b2lkIERvY3VtZW50OjpyZXN1bWVBY3RpdmVET01PYmpl
Y3RzKCkKK3sKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpyZXN1bWVBY3RpdmVET01PYmpl
Y3RzKCk7CisKKyAgICBpZiAoIXBhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisjaWYgRU5BQkxF
KENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKyAgICBpZiAocGFnZSgpLT5nZW9sb2NhdGlvbkNv
bnRyb2xsZXIoKSAmJiB1c2luZ0dlb2xvY2F0aW9uKCkpCisgICAgICAgIHBhZ2UoKS0+Z2VvbG9j
YXRpb25Db250cm9sbGVyKCktPnJlc3VtZSgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoREVWSUNF
X09SSUVOVEFUSU9OKQorICAgIGlmIChwYWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkK
KyAgICAgICAgcGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCktPnJlc3VtZSgpOworICAg
IGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdl
KCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpLT5yZXN1bWUoKTsKKyNlbmRpZgorfQor
Cit2b2lkIERvY3VtZW50OjpzdG9wQWN0aXZlRE9NT2JqZWN0cygpCit7CisgICAgU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dDo6c3RvcEFjdGl2ZURPTU9iamVjdHMoKTsKKworICAgIGlmICghcGFnZSgp
KQorICAgICAgICByZXR1cm47CisKKyNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9O
KQorICAgIGlmIChwYWdlKCktPmdlb2xvY2F0aW9uQ29udHJvbGxlcigpICYmIHVzaW5nR2VvbG9j
YXRpb24oKSkKKyAgICAgICAgcGFnZSgpLT5nZW9sb2NhdGlvbkNvbnRyb2xsZXIoKS0+c3VzcGVu
ZCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorICAgIGlmIChw
YWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZpY2VN
b3Rpb25Db250cm9sbGVyKCktPnN1c3BlbmQoKTsKKyAgICBpZiAocGFnZSgpLT5kZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAgcGFnZSgpLT5kZXZpY2VPcmllbnRhdGlvbkNv
bnRyb2xsZXIoKS0+c3VzcGVuZCgpOworI2VuZGlmCit9CisKIFJlbmRlclZpZXcqIERvY3VtZW50
OjpyZW5kZXJWaWV3KCkgY29uc3QKIHsKICAgICByZXR1cm4gdG9SZW5kZXJWaWV3KHJlbmRlcmVy
KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA3MjcwNWYwLi42ZmE2OGY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuaApAQCAtNTY0LDYgKzU2NCwxMSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IGF0dGFjaCgpOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goKTsKIAorICAgIC8vIE92ZXJyaWRl
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgbWV0aG9kcyB0byBkbyBhZGRpdGlvbmFsIHdvcmsKKyAg
ICB2aXJ0dWFsIHZvaWQgc3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0aXZlRE9NT2JqZWN0OjpS
ZWFzb25Gb3JTdXNwZW5zaW9uKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVzdW1lQWN0
aXZlRE9NT2JqZWN0cygpIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBzdG9wQWN0aXZlRE9N
T2JqZWN0cygpIE9WRVJSSURFOworCiAgICAgUmVuZGVyQXJlbmEqIHJlbmRlckFyZW5hKCkgeyBy
ZXR1cm4gbV9yZW5kZXJBcmVuYS5nZXQoKTsgfQogCiAgICAgUmVuZGVyVmlldyogcmVuZGVyVmll
dygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlv
bkNvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgK
aW5kZXggZDQ0MmU2Mi4uZTE2ZmFiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dC5oCkBAIC0xMDksOSArMTA5LDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICAgICAgYm9vbCBjYW5TdXNwZW5kQWN0aXZlRE9NT2JqZWN0cygpOwogICAgICAgICAvLyBB
Y3RpdmUgb2JqZWN0cyBjYW4gYmUgYXNrZWQgdG8gc3VzcGVuZCBldmVuIGlmIGNhblN1c3BlbmRB
Y3RpdmVET01PYmplY3RzKCkgcmV0dXJucyAnZmFsc2UnIC0KICAgICAgICAgLy8gc3RlcC1ieS1z
dGVwIEpTIGRlYnVnZ2luZyBpcyBvbmUgZXhhbXBsZS4KLSAgICAgICAgdm9pZCBzdXNwZW5kQWN0
aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24pOwotICAg
ICAgICB2b2lkIHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsKLSAgICAgICAgdm9pZCBzdG9wQWN0
aXZlRE9NT2JqZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZvaWQgc3VzcGVuZEFjdGl2ZURPTU9i
amVjdHMoQWN0aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9uKTsKKyAgICAgICAgdmly
dHVhbCB2b2lkIHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsKKyAgICAgICAgdmlydHVhbCB2b2lk
IHN0b3BBY3RpdmVET01PYmplY3RzKCk7CisKICAgICAgICAgdm9pZCBjcmVhdGVkQWN0aXZlRE9N
T2JqZWN0KEFjdGl2ZURPTU9iamVjdCosIHZvaWQqIHVwY2FzdFBvaW50ZXIpOwogICAgICAgICB2
b2lkIGRlc3Ryb3llZEFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmplY3QqKTsKICAgICAgICAg
dHlwZWRlZiBjb25zdCBIYXNoTWFwPEFjdGl2ZURPTU9iamVjdCosIHZvaWQqPiBBY3RpdmVET01P
YmplY3RzTWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIu
Y3BwCmluZGV4IGI5NTMzY2EuLjFmYzljODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0dl
b2xvY2F0aW9uQ29udHJvbGxlci5jcHAKQEAgLTM2LDYgKzM2LDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogR2VvbG9jYXRpb25Db250cm9sbGVyOjpHZW9sb2NhdGlvbkNvbnRyb2xsZXIoUGFnZSog
cGFnZSwgR2VvbG9jYXRpb25DbGllbnQqIGNsaWVudCkKICAgICA6IG1fcGFnZShwYWdlKQogICAg
ICwgbV9jbGllbnQoY2xpZW50KQorICAgICwgbV9pc1N1c3BlbmRlZChmYWxzZSkKIHsKIH0KIApA
QCAtNzMsMTMgKzc0LDMzIEBAIHZvaWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpyZW1vdmVPYnNl
cnZlcihHZW9sb2NhdGlvbiogb2JzZXJ2ZXIpCiAgICAgbV9oaWdoQWNjdXJhY3lPYnNlcnZlcnMu
cmVtb3ZlKG9ic2VydmVyKTsKIAogICAgIGlmIChtX2NsaWVudCkgewotICAgICAgICBpZiAobV9v
YnNlcnZlcnMuaXNFbXB0eSgpKQorICAgICAgICAvLyBUaGUgZ2VvbG9jYXRpb24gb2JqZWN0IGNh
biBiZSBkZXN0cm95ZWQgd2hpbGUgdGhlIHBhZ2UgaXMgc3VzcGVuZGVkLgorICAgICAgICAvLyBJ
biB0aGF0IGNhc2Ugd2UgaGF2ZSBhbHJlYWR5IHN0b3BwZWQgdXBkYXRpbmcuCisgICAgICAgIGlm
IChtX29ic2VydmVycy5pc0VtcHR5KCkgJiYgIW1faXNTdXNwZW5kZWQpCiAgICAgICAgICAgICBt
X2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7CiAgICAgICAgIGVsc2UgaWYgKG1faGlnaEFjY3VyYWN5
T2JzZXJ2ZXJzLmlzRW1wdHkoKSkKICAgICAgICAgICAgIG1fY2xpZW50LT5zZXRFbmFibGVIaWdo
QWNjdXJhY3koZmFsc2UpOwogICAgIH0KIH0KIAordm9pZCBHZW9sb2NhdGlvbkNvbnRyb2xsZXI6
OnN1c3BlbmQoKQoreworICAgIEFTU0VSVCghbV9pc1N1c3BlbmRlZCk7CisgICAgbV9pc1N1c3Bl
bmRlZCA9IHRydWU7CisKKyAgICBpZiAobV9jbGllbnQgJiYgIW1fb2JzZXJ2ZXJzLmlzRW1wdHko
KSkKKyAgICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOworfQorCit2b2lkIEdlb2xvY2F0
aW9uQ29udHJvbGxlcjo6cmVzdW1lKCkKK3sKKyAgICBBU1NFUlQobV9pc1N1c3BlbmRlZCk7Cisg
ICAgbV9pc1N1c3BlbmRlZCA9IGZhbHNlOworCisgICAgaWYgKG1fY2xpZW50ICYmICFtX29ic2Vy
dmVycy5pc0VtcHR5KCkpCisgICAgICAgIG1fY2xpZW50LT5zdGFydFVwZGF0aW5nKCk7Cit9CisK
IHZvaWQgR2VvbG9jYXRpb25Db250cm9sbGVyOjpyZXF1ZXN0UGVybWlzc2lvbihHZW9sb2NhdGlv
biogZ2VvbG9jYXRpb24pCiB7CiAgICAgaWYgKG1fY2xpZW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvR2VvbG9jYXRpb25Db250cm9sbGVyLmgKaW5kZXggN2M1NWNlMi4uOWFjMGEwMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0dlb2xvY2F0aW9uQ29udHJvbGxlci5oCkBAIC00OSw2ICs0OSw5
IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZE9ic2VydmVyKEdlb2xvY2F0aW9uKiwgYm9vbCBlbmFi
bGVIaWdoQWNjdXJhY3kpOwogICAgIHZvaWQgcmVtb3ZlT2JzZXJ2ZXIoR2VvbG9jYXRpb24qKTsK
IAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKICAgICB2b2lkIHJl
cXVlc3RQZXJtaXNzaW9uKEdlb2xvY2F0aW9uKik7CiAgICAgdm9pZCBjYW5jZWxQZXJtaXNzaW9u
UmVxdWVzdChHZW9sb2NhdGlvbiopOwogCkBAIC02Myw2ICs2Niw4IEBAIHByaXZhdGU6CiAgICAg
UGFnZSogbV9wYWdlOwogICAgIEdlb2xvY2F0aW9uQ2xpZW50KiBtX2NsaWVudDsKIAorICAgIGJv
b2wgbV9pc1N1c3BlbmRlZDsKKwogICAgIFJlZlB0cjxHZW9sb2NhdGlvblBvc2l0aW9uPiBtX2xh
c3RQb3NpdGlvbjsKICAgICB0eXBlZGVmIEhhc2hTZXQ8UmVmUHRyPEdlb2xvY2F0aW9uPiA+IE9i
c2VydmVyc1NldDsKICAgICAvLyBBbGwgb2JzZXJ2ZXJzOyBib3RoIHRob3NlIHJlcXVlc3Rpbmcg
aGlnaCBhY2N1cmFjeSBhbmQgdGhvc2Ugbm90LgotLSAKMS43LjQuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112474</attachid>
            <date>2011-10-26 02:50:21 -0700</date>
            <delta_ts>2011-10-26 04:33:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Properly-suspend-resume-DeviceMotion-DeviceOrientati.patch</filename>
            <type>text/plain</type>
            <size>14267</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSAwOWYwNWZiMjIyOWQzOTk4OTJjNTY1MmQzMTAwZDVhMzE0ZmJhNDUzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBXZWQsIDI2IE9jdCAyMDExIDEwOjQxOjA2ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgRGV2aWNlTW90aW9uL0RldmljZU9yaWVu
dGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
MDMyOAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpCYXNlZCBvbiBjb2RlIGZyb20gaU9T
IGFuZCB0aGUgTjkuIEFsc28gcmVtb3ZlIGNoZWNrcyBmb3IgbV9jbGllbnQgaW4KRGV2aWNlTW90
aW9uQ29udHJvbGxlciBhcyBpdCBjYW4gbmV2ZXIgYmUgbnVsbC4KClRoZSBHZW9sb2NhdGlvbiBp
cyBsZWZ0IG91dCBmb3Igbm93IGFzIGl0IGlzIG5vdCBhIHBlciBkb2N1bWVudApvYmplY3QuCgpO
byBuZXcgdGVzdHMsIGFzIHN1c3BlbmQvcmVzdW1lIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGZ1bGx5
IHdvcmtpbmcgeWV0LgoKKiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHA6CihXZWJDb3Jl
OjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKToKKFdlYkNvcmU6OkRldmljZU1v
dGlvbkNvbnRyb2xsZXI6OmFkZExpc3RlbmVyKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnJlbW92ZUxpc3RlbmVyKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6
OnJlbW92ZUFsbExpc3RlbmVycyk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpz
dXNwZW5kRXZlbnRzRm9yQWxsTGlzdGVuZXJzKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnJlc3VtZUV2ZW50c0ZvckFsbExpc3RlbmVycyk6CiogZG9tL0RldmljZU1vdGlvbkNv
bnRyb2xsZXIuaDoKKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcDoKKFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVuZXIpOgooV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMpOgooV2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kRXZlbnRzRm9yQWxsTGlz
dGVuZXJzKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lRXZl
bnRzRm9yQWxsTGlzdGVuZXJzKToKKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6
CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9N
T2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihX
ZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURPTU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5o
OgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6Ci0tLQogU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICsrKysrKysrKysrKysrKysr
KwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAg
IDM4ICsrKysrKysrKysrKysrKystLS0tCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9u
Q29udHJvbGxlci5oICAgICAgICB8ICAgIDQgKysKIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIHwgICAyNCArKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCAgIHwgICAgNCArKwogU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCAgICAgICAgICAgICAgICAgICAgfCAgIDM1ICsrKysr
KysrKysrKysrKysrKwogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggICAgICAgICAgICAg
ICAgICAgICAgfCAgICA0ICsrCiBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dC5oICAgICAgICB8ICAgIDcgKystLQogOCBmaWxlcyBjaGFuZ2VkLCAxNDIgaW5zZXJ0aW9u
cygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDZmODIwZTcuLmYwYjNkYjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwzOSBAQAorMjAxMS0xMC0yMSAgS2VubmV0aCBSb2hkZSBDaHJp
c3RpYW5zZW4gIDxrZW5uZXRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUHJvcGVybHkgc3VzcGVu
ZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9uL0RldmljZU9yaWVudGF0aW9uIG9iamVj
dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwMzI4
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCisKKyAgICAgICAgQWxzbyBy
ZW1vdmUgY2hlY2tzIGZvciBtX2NsaWVudCBpbiBEZXZpY2VNb3Rpb25Db250cm9sbGVyIGFzIGl0
IGNhbiBuZXZlciBiZSBudWxsLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYXMgdGhlIHN1c3Bl
bmQvcmVzdW1lIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGZ1bGx5IHdvcmtpbmcgeWV0LgorCisgICAg
ICAgICogZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6dGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VNb3Rpb25Db250cm9sbGVyOjphZGRMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3Jl
OjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMpOgorICAgICAgICAo
V2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJD
b3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZp
Y2VNb3Rpb25Db250cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIu
aDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50
OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojpz
dG9wQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAg
ICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAgKiBwYWdlL0dlb2xvY2F0
aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbkNvbnRyb2xs
ZXI6Okdlb2xvY2F0aW9uQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlv
bkNvbnRyb2xsZXI6OnJlbW92ZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbkNv
bnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIu
aDoKKwogMjAxMS0xMC0yNiAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjk4NDI5LgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDI4ZTIwMWUuLmNk
ZWI5ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9s
bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5j
cHAKQEAgLTQ4LDEwICs0OCwxMCBAQCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjp+RGV2aWNlTW90
aW9uQ29udHJvbGxlcigpCiB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQo
VGltZXI8RGV2aWNlTW90aW9uQ29udHJvbGxlcj4qIHRpbWVyKQogewogICAgIEFTU0VSVF9VTlVT
RUQodGltZXIsIHRpbWVyID09ICZtX3RpbWVyKTsKLSAgICBBU1NFUlQoIW1fY2xpZW50IHx8IG1f
Y2xpZW50LT5jdXJyZW50RGV2aWNlTW90aW9uKCkpOworICAgIEFTU0VSVChtX2NsaWVudC0+Y3Vy
cmVudERldmljZU1vdGlvbigpKTsKICAgICBtX3RpbWVyLnN0b3AoKTsKICAgICAKLSAgICBSZWZQ
dHI8RGV2aWNlTW90aW9uRGF0YT4gZGV2aWNlTW90aW9uRGF0YSA9IG1fY2xpZW50ID8gbV9jbGll
bnQtPmN1cnJlbnREZXZpY2VNb3Rpb24oKSA6IERldmljZU1vdGlvbkRhdGE6OmNyZWF0ZSgpOwor
ICAgIFJlZlB0cjxEZXZpY2VNb3Rpb25EYXRhPiBkZXZpY2VNb3Rpb25EYXRhID0gbV9jbGllbnQt
PmN1cnJlbnREZXZpY2VNb3Rpb24oKTsKICAgICBSZWZQdHI8RGV2aWNlTW90aW9uRXZlbnQ+IGV2
ZW50ID0gRGV2aWNlTW90aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlbW90aW9u
RXZlbnQsIGRldmljZU1vdGlvbkRhdGEuZ2V0KCkpOwogIAogICAgIFZlY3RvcjxSZWZQdHI8RE9N
V2luZG93PiA+IGxpc3RlbmVyc1ZlY3RvcjsKQEAgLTYzLDkgKzYzLDkgQEAgdm9pZCBEZXZpY2VN
b3Rpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKFRpbWVyPERldmljZU1vdGlvbkNvbnRyb2xsZXI+
KiB0aW1lcikKICAgICAKIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVuZXIo
RE9NV2luZG93KiB3aW5kb3cpCiB7Ci0gICAgLy8gSWYgbm8gY2xpZW50IGlzIHByZXNlbnQgb3Ig
dGhlIGNsaWVudCBhbHJlYWR5IGhhcyBtb3Rpb24gZGF0YSwKKyAgICAvLyBJZiB0aGUgY2xpZW50
IGFscmVhZHkgaGFzIG1vdGlvbiBkYXRhLAogICAgIC8vIGltbWVkaWF0ZWx5IHRyaWdnZXIgYW4g
YXN5bmNocm9ub3VzIHJlc3BvbnNlLgotICAgIGlmICghbV9jbGllbnQgfHwgbV9jbGllbnQtPmN1
cnJlbnREZXZpY2VNb3Rpb24oKSkgeworICAgIGlmIChtX2NsaWVudC0+Y3VycmVudERldmljZU1v
dGlvbigpKSB7CiAgICAgICAgIG1fbmV3TGlzdGVuZXJzLmFkZCh3aW5kb3cpOwogICAgICAgICBp
ZiAoIW1fdGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgICAgIG1fdGltZXIuc3RhcnRPbmVTaG90
KDApOwpAQCAtNzMsMTUgKzczLDE2IEBAIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6YWRk
TGlzdGVuZXIoRE9NV2luZG93KiB3aW5kb3cpCiAgICAgCiAgICAgYm9vbCB3YXNFbXB0eSA9IG1f
bGlzdGVuZXJzLmlzRW1wdHkoKTsKICAgICBtX2xpc3RlbmVycy5hZGQod2luZG93KTsKLSAgICBp
ZiAod2FzRW1wdHkgJiYgbV9jbGllbnQpCisgICAgaWYgKHdhc0VtcHR5KQogICAgICAgICBtX2Ns
aWVudC0+c3RhcnRVcGRhdGluZygpOwogfQogCiB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6
OnJlbW92ZUxpc3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogewogICAgIG1fbGlzdGVuZXJzLnJl
bW92ZSh3aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwog
ICAgIG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5p
c0VtcHR5KCkgJiYgbV9jbGllbnQpCisgICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAg
ICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCkBAIC05MiwxMSArOTMsMzQgQEAg
dm9pZCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93
KiB3aW5kb3cpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fbGlzdGVuZXJzLnJlbW92ZUFsbCh3
aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOwogICAg
IG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5pc0Vt
cHR5KCkgJiYgbV9jbGllbnQpCisgICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAgICAg
ICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnN1c3BlbmRFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCit7
CisgICAgaWYgKCFtX2xpc3RlbmVycy5jb250YWlucyh3aW5kb3cpKQorICAgICAgICByZXR1cm47
CisKKyAgICBpbnQgY291bnQgPSBtX2xpc3RlbmVycy5jb3VudCh3aW5kb3cpOworICAgIHJlbW92
ZUFsbExpc3RlbmVycyh3aW5kb3cpOworICAgIHdoaWxlIChjb3VudC0tKQorICAgICAgICBtX3N1
c3BlbmRlZExpc3RlbmVycy5hZGQod2luZG93KTsKK30KKwordm9pZCBEZXZpY2VNb3Rpb25Db250
cm9sbGVyOjpyZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCit7
CisgICAgaWYgKCFtX3N1c3BlbmRlZExpc3RlbmVycy5jb250YWlucyh3aW5kb3cpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpbnQgY291bnQgPSBtX3N1c3BlbmRlZExpc3RlbmVycy5jb3VudCh3
aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOworICAg
IHdoaWxlIChjb3VudC0tKQorICAgICAgICBhZGRMaXN0ZW5lcih3aW5kb3cpOworfQorCiB2b2lk
IERldmljZU1vdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU1vdGlvbihEZXZpY2VNb3Rp
b25EYXRhKiBkZXZpY2VNb3Rpb25EYXRhKQogewogICAgIFJlZlB0cjxEZXZpY2VNb3Rpb25FdmVu
dD4gZXZlbnQgPSBEZXZpY2VNb3Rpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZpY2Vt
b3Rpb25FdmVudCwgZGV2aWNlTW90aW9uRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuaAppbmRleCA4MGM5ZDk0Li5lNzE1NjRjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmgKQEAgLTQ0LDYgKzQ0LDkgQEAgcHVi
bGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoRE9NV2luZG93Kik7CiAgICAgdm9pZCByZW1v
dmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKKyAgICB2b2lkIHN1c3BlbmRFdmVudHNGb3JB
bGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CisgICAgdm9pZCByZXN1bWVFdmVudHNGb3JBbGxMaXN0
ZW5lcnMoRE9NV2luZG93Kik7CisKICAgICB2b2lkIGRpZENoYW5nZURldmljZU1vdGlvbihEZXZp
Y2VNb3Rpb25EYXRhKik7CiAKICAgICBib29sIGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVu
ZXJzLmlzRW1wdHkoKTsgfQpAQCAtNTQsNiArNTcsNyBAQCBwcml2YXRlOgogICAgIERldmljZU1v
dGlvbkNsaWVudCogbV9jbGllbnQ7CiAgICAgdHlwZWRlZiBIYXNoQ291bnRlZFNldDxSZWZQdHI8
RE9NV2luZG93PiA+IExpc3RlbmVyc0NvdW50ZWRTZXQ7CiAgICAgTGlzdGVuZXJzQ291bnRlZFNl
dCBtX2xpc3RlbmVyczsKKyAgICBMaXN0ZW5lcnNDb3VudGVkU2V0IG1fc3VzcGVuZGVkTGlzdGVu
ZXJzOwogICAgIHR5cGVkZWYgSGFzaFNldDxSZWZQdHI8RE9NV2luZG93PiA+IExpc3RlbmVyc1Nl
dDsKICAgICBMaXN0ZW5lcnNTZXQgbV9uZXdMaXN0ZW5lcnM7CiAgICAgVGltZXI8RGV2aWNlTW90
aW9uQ29udHJvbGxlcj4gbV90aW1lcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggZGE0MmJlYy4uOTUzYmU1NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAK
QEAgLTgyLDYgKzgyLDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExp
c3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OnJlbW92ZUxpc3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogewogICAgIG1fbGlzdGVuZXJz
LnJlbW92ZSh3aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cp
OwogICAgIG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwogICAgIGlmIChtX2xpc3RlbmVy
cy5pc0VtcHR5KCkpCiAgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKQEAgLTk0LDEx
ICs5NSwzNCBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlz
dGVuZXJzKERPTVdpbmRvdyogd2luZG93KQogICAgICAgICByZXR1cm47CiAKICAgICBtX2xpc3Rl
bmVycy5yZW1vdmVBbGwod2luZG93KTsKKyAgICBtX3N1c3BlbmRlZExpc3RlbmVycy5yZW1vdmVB
bGwod2luZG93KTsKICAgICBtX25ld0xpc3RlbmVycy5yZW1vdmUod2luZG93KTsKICAgICBpZiAo
bV9saXN0ZW5lcnMuaXNFbXB0eSgpKQogICAgICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7
CiB9CiAKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kRXZlbnRzRm9y
QWxsTGlzdGVuZXJzKERPTVdpbmRvdyogd2luZG93KQoreworICAgIGlmICghbV9saXN0ZW5lcnMu
Y29udGFpbnMod2luZG93KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW50IGNvdW50ID0gbV9s
aXN0ZW5lcnMuY291bnQod2luZG93KTsKKyAgICByZW1vdmVBbGxMaXN0ZW5lcnMod2luZG93KTsK
KyAgICB3aGlsZSAoY291bnQtLSkKKyAgICAgICAgbV9zdXNwZW5kZWRMaXN0ZW5lcnMuYWRkKHdp
bmRvdyk7Cit9CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWVFdmVu
dHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCit7CisgICAgaWYgKCFtX3N1c3Bl
bmRlZExpc3RlbmVycy5jb250YWlucyh3aW5kb3cpKQorICAgICAgICByZXR1cm47CisKKyAgICBp
bnQgY291bnQgPSBtX3N1c3BlbmRlZExpc3RlbmVycy5jb3VudCh3aW5kb3cpOworICAgIG1fc3Vz
cGVuZGVkTGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOworICAgIHdoaWxlIChjb3VudC0tKQor
ICAgICAgICBhZGRMaXN0ZW5lcih3aW5kb3cpOworfQorCiB2b2lkIERldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb24q
IG9yaWVudGF0aW9uKQogewogICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBldmVu
dCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlb3Jp
ZW50YXRpb25FdmVudCwgb3JpZW50YXRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCmluZGV4IDVlMDY3NzEuLmJiZWE2ZDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKQEAg
LTQ2LDYgKzQ2LDkgQEAgcHVibGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoRE9NV2luZG93
Kik7CiAgICAgdm9pZCByZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKKyAgICB2b2lk
IHN1c3BlbmRFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CisgICAgdm9pZCByZXN1
bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CisKICAgICB2b2lkIGRpZENoYW5n
ZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CiAKICAgICBib29sIGlzQWN0
aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpAQCAtNTcsNiArNjAsNyBA
QCBwcml2YXRlOgogICAgIERldmljZU9yaWVudGF0aW9uQ2xpZW50KiBtX2NsaWVudDsKICAgICB0
eXBlZGVmIEhhc2hDb3VudGVkU2V0PFJlZlB0cjxET01XaW5kb3c+ID4gTGlzdGVuZXJzQ291bnRl
ZFNldDsKICAgICBMaXN0ZW5lcnNDb3VudGVkU2V0IG1fbGlzdGVuZXJzOworICAgIExpc3RlbmVy
c0NvdW50ZWRTZXQgbV9zdXNwZW5kZWRMaXN0ZW5lcnM7CiAgICAgdHlwZWRlZiBIYXNoU2V0PFJl
ZlB0cjxET01XaW5kb3c+ID4gTGlzdGVuZXJzU2V0OwogICAgIExpc3RlbmVyc1NldCBtX25ld0xp
c3RlbmVyczsKICAgICBUaW1lcjxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI+IG1fdGltZXI7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBiM2E1YWIxLi5lMTkwZjRhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKQEAgLTQ3LDYgKzQ3LDEwIEBACiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50
YXRpb24uaCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50
cy5oIgorI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEZXZp
Y2VNb3Rpb25FdmVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
IgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJEb2N1bWVu
dEZyYWdtZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKICNpbmNsdWRlICJEb2N1
bWVudE1hcmtlckNvbnRyb2xsZXIuaCIKQEAgLTcwLDYgKzc0LDcgQEAKICNpbmNsdWRlICJGcmFt
ZVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkZyYW1lVmll
dy5oIgorI2luY2x1ZGUgIkdlb2xvY2F0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkhhc2hD
aGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIkhUTUxBbGxDb2xsZWN0aW9uLmgiCiAjaW5jbHVkZSAi
SFRNTEFuY2hvckVsZW1lbnQuaCIKQEAgLTE4MzUsNiArMTg0MCwzNiBAQCB2b2lkIERvY3VtZW50
OjpyZW1vdmVBbGxFdmVudExpc3RlbmVycygpCiAgICAgICAgIG5vZGUtPnJlbW92ZUFsbEV2ZW50
TGlzdGVuZXJzKCk7CiB9CiAKK3ZvaWQgRG9jdW1lbnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3Rz
KEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCit7CisgICAgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMod2h5KTsKKworI2lmIEVO
QUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKCFwYWdlKCkpCisgICAgICAgIHJldHVy
bjsKKworICAgIGlmIChwYWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAg
cGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCktPnN1c3BlbmRFdmVudHNGb3JBbGxMaXN0
ZW5lcnModGhpcyk7CisgICAgaWYgKHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
KCkpCisgICAgICAgIHBhZ2UoKS0+ZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKCktPnN1c3Bl
bmRFdmVudHNGb3JBbGxMaXN0ZW5lcnModGhpcyk7CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVu
dDo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpCit7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dDo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOworCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRB
VElPTikKKyAgICBpZiAoIXBhZ2UoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKHBhZ2Uo
KS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU1vdGlv
bkNvbnRyb2xsZXIoKS0+cmVzdW1lRXZlbnRzRm9yQWxsTGlzdGVuZXJzKHRoaXMpOworICAgIGlm
IChwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpKQorICAgICAgICBwYWdlKCkt
PmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpLT5yZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5l
cnModGhpcyk7CisjZW5kaWYKK30KKwogUmVuZGVyVmlldyogRG9jdW1lbnQ6OnJlbmRlclZpZXco
KSBjb25zdAogewogICAgIHJldHVybiB0b1JlbmRlclZpZXcocmVuZGVyZXIoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5oCmluZGV4IDcyNzA1ZjAuLjJkNThjNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBA
IC01NjQsNiArNTY0LDEwIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoKCk7CiAg
ICAgdmlydHVhbCB2b2lkIGRldGFjaCgpOwogCisgICAgLy8gT3ZlcnJpZGUgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCBtZXRob2RzIHRvIGRvIGFkZGl0aW9uYWwgd29yaworICAgIHZpcnR1YWwgdm9p
ZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3Bl
bnNpb24pIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCByZXN1bWVBY3RpdmVET01PYmplY3Rz
KCkgT1ZFUlJJREU7CisKICAgICBSZW5kZXJBcmVuYSogcmVuZGVyQXJlbmEoKSB7IHJldHVybiBt
X3JlbmRlckFyZW5hLmdldCgpOyB9CiAKICAgICBSZW5kZXJWaWV3KiByZW5kZXJWaWV3KCkgY29u
c3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4
dC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAppbmRleCBk
NDQyZTYyLi5lMTZmYWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25D
b250ZXh0LmgKQEAgLTEwOSw5ICsxMDksMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICBib29sIGNhblN1c3BlbmRBY3RpdmVET01PYmplY3RzKCk7CiAgICAgICAgIC8vIEFjdGl2ZSBv
YmplY3RzIGNhbiBiZSBhc2tlZCB0byBzdXNwZW5kIGV2ZW4gaWYgY2FuU3VzcGVuZEFjdGl2ZURP
TU9iamVjdHMoKSByZXR1cm5zICdmYWxzZScgLQogICAgICAgICAvLyBzdGVwLWJ5LXN0ZXAgSlMg
ZGVidWdnaW5nIGlzIG9uZSBleGFtcGxlLgotICAgICAgICB2b2lkIHN1c3BlbmRBY3RpdmVET01P
YmplY3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbik7Ci0gICAgICAgIHZv
aWQgcmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOwotICAgICAgICB2b2lkIHN0b3BBY3RpdmVET01P
YmplY3RzKCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhB
Y3RpdmVET01PYmplY3Q6OlJlYXNvbkZvclN1c3BlbnNpb24pOworICAgICAgICB2aXJ0dWFsIHZv
aWQgcmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZvaWQgc3RvcEFj
dGl2ZURPTU9iamVjdHMoKTsKKwogICAgICAgICB2b2lkIGNyZWF0ZWRBY3RpdmVET01PYmplY3Qo
QWN0aXZlRE9NT2JqZWN0Kiwgdm9pZCogdXBjYXN0UG9pbnRlcik7CiAgICAgICAgIHZvaWQgZGVz
dHJveWVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCopOwogICAgICAgICB0eXBlZGVm
IGNvbnN0IEhhc2hNYXA8QWN0aXZlRE9NT2JqZWN0Kiwgdm9pZCo+IEFjdGl2ZURPTU9iamVjdHNN
YXA7Ci0tIAoxLjcuNC4xCgo=
</data>
<flag name="review"
          id="110565"
          type_id="1"
          status="+"
          setter="hausmann"
    />
    <flag name="commit-queue"
          id="110566"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112480</attachid>
            <date>2011-10-26 04:33:14 -0700</date>
            <delta_ts>2011-10-26 07:55:18 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>0001-Properly-suspend-resume-DeviceMotion-DeviceOrientati.patch</filename>
            <type>text/plain</type>
            <size>14295</size>
            <attacher name="Kenneth Rohde Christiansen">kenneth</attacher>
            
              <data encoding="base64">RnJvbSBlYWRmN2RjNDY0NDk5NDcwN2ZkMDkwNjA0NWUxNWZlMDc5MGEyMDMzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiA8a2VubmV0aEB3
ZWJraXQub3JnPgpEYXRlOiBXZWQsIDI2IE9jdCAyMDExIDEwOjQxOjA2ICswMjAwClN1YmplY3Q6
IFtQQVRDSF0gUHJvcGVybHkgc3VzcGVuZC9yZXN1bWUgRGV2aWNlTW90aW9uL0RldmljZU9yaWVu
dGF0aW9uIG9iamVjdHMKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
MDMyOAoKUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCgpCYXNlZCBvbiBjb2RlIGZyb20gaU9T
IGFuZCB0aGUgTjkuIEFsc28gcmVtb3ZlIGNoZWNrcyBmb3IgbV9jbGllbnQgaW4KRGV2aWNlTW90
aW9uQ29udHJvbGxlciBhcyBpdCBjYW4gbmV2ZXIgYmUgbnVsbC4KClRoZSBHZW9sb2NhdGlvbiBp
cyBsZWZ0IG91dCBmb3Igbm93IGFzIGl0IGlzIG5vdCBhIHBlciBkb2N1bWVudApvYmplY3QuCgpO
byBuZXcgdGVzdHMsIGFzIHN1c3BlbmQvcmVzdW1lIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGZ1bGx5
IHdvcmtpbmcgeWV0LgoKKiBkb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5jcHA6CihXZWJDb3Jl
OjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKToKKFdlYkNvcmU6OkRldmljZU1v
dGlvbkNvbnRyb2xsZXI6OmFkZExpc3RlbmVyKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnJlbW92ZUxpc3RlbmVyKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRyb2xsZXI6
OnJlbW92ZUFsbExpc3RlbmVycyk6CihXZWJDb3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpz
dXNwZW5kRXZlbnRzRm9yQWxsTGlzdGVuZXJzKToKKFdlYkNvcmU6OkRldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnJlc3VtZUV2ZW50c0ZvckFsbExpc3RlbmVycyk6CiogZG9tL0RldmljZU1vdGlvbkNv
bnRyb2xsZXIuaDoKKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmNwcDoKKFdlYkNv
cmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlTGlzdGVuZXIpOgooV2ViQ29y
ZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMpOgooV2Vi
Q29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kRXZlbnRzRm9yQWxsTGlz
dGVuZXJzKToKKFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVzdW1lRXZl
bnRzRm9yQWxsTGlzdGVuZXJzKToKKiBkb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmg6
CiogZG9tL0RvY3VtZW50LmNwcDoKKFdlYkNvcmU6OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9N
T2JqZWN0cyk6CihXZWJDb3JlOjpEb2N1bWVudDo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyk6CihX
ZWJDb3JlOjpEb2N1bWVudDo6c3RvcEFjdGl2ZURPTU9iamVjdHMpOgoqIGRvbS9Eb2N1bWVudC5o
OgoqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6Ci0tLQogU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICsrKysrKysrKysrKysrKysr
KwogU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwICAgICAgfCAg
IDM4ICsrKysrKysrKysrKysrKystLS0tCiBTb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9u
Q29udHJvbGxlci5oICAgICAgICB8ICAgIDQgKysKIFNvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIHwgICAyNCArKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCAgIHwgICAgNCArKwogU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCAgICAgICAgICAgICAgICAgICAgfCAgIDM1ICsrKysr
KysrKysrKysrKysrKwogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggICAgICAgICAgICAg
ICAgICAgICAgfCAgICA0ICsrCiBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dC5oICAgICAgICB8ICAgIDcgKystLQogOCBmaWxlcyBjaGFuZ2VkLCAxNDIgaW5zZXJ0aW9u
cygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU0NjEzMDUuLmIzMzNiNTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwzOSBAQAorMjAxMS0xMC0yMSAgS2VubmV0aCBSb2hkZSBDaHJp
c3RpYW5zZW4gIDxrZW5uZXRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUHJvcGVybHkgc3VzcGVu
ZC9yZXN1bWUgR2VvbG9jYXRpb24vRGV2aWNlTW90aW9uL0RldmljZU9yaWVudGF0aW9uIG9iamVj
dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwMzI4
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gSGF1c21hbm4uCisKKyAgICAgICAgQWxzbyBy
ZW1vdmUgY2hlY2tzIGZvciBtX2NsaWVudCBpbiBEZXZpY2VNb3Rpb25Db250cm9sbGVyIGFzIGl0
IGNhbiBuZXZlciBiZSBudWxsLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYXMgdGhlIHN1c3Bl
bmQvcmVzdW1lIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGZ1bGx5IHdvcmtpbmcgeWV0LgorCisgICAg
ICAgICogZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6dGltZXJGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VNb3Rpb25Db250cm9sbGVyOjphZGRMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3JlOjpE
ZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVMaXN0ZW5lcik6CisgICAgICAgIChXZWJDb3Jl
OjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMpOgorICAgICAgICAo
V2ViQ29yZTo6RGV2aWNlTW90aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJD
b3JlOjpEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZp
Y2VNb3Rpb25Db250cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyOjpyZXN1bWUpOgorICAgICAgICAqIGRvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIu
aDoKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1l
bnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50
OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojpz
dG9wQWN0aXZlRE9NT2JqZWN0cyk6CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAg
ICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAgKiBwYWdlL0dlb2xvY2F0
aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbkNvbnRyb2xs
ZXI6Okdlb2xvY2F0aW9uQ29udHJvbGxlcik6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlv
bkNvbnRyb2xsZXI6OnJlbW92ZU9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uQ29udHJvbGxlcjo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2NhdGlvbkNv
bnRyb2xsZXI6OnJlc3VtZSk6CisgICAgICAgICogcGFnZS9HZW9sb2NhdGlvbkNvbnRyb2xsZXIu
aDoKKwogMjAxMS0xMC0yNiAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjk4MzkzLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDI4ZTIwMWUuLmNk
ZWI5ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9s
bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5j
cHAKQEAgLTQ4LDEwICs0OCwxMCBAQCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjp+RGV2aWNlTW90
aW9uQ29udHJvbGxlcigpCiB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6OnRpbWVyRmlyZWQo
VGltZXI8RGV2aWNlTW90aW9uQ29udHJvbGxlcj4qIHRpbWVyKQogewogICAgIEFTU0VSVF9VTlVT
RUQodGltZXIsIHRpbWVyID09ICZtX3RpbWVyKTsKLSAgICBBU1NFUlQoIW1fY2xpZW50IHx8IG1f
Y2xpZW50LT5jdXJyZW50RGV2aWNlTW90aW9uKCkpOworICAgIEFTU0VSVChtX2NsaWVudC0+Y3Vy
cmVudERldmljZU1vdGlvbigpKTsKICAgICBtX3RpbWVyLnN0b3AoKTsKICAgICAKLSAgICBSZWZQ
dHI8RGV2aWNlTW90aW9uRGF0YT4gZGV2aWNlTW90aW9uRGF0YSA9IG1fY2xpZW50ID8gbV9jbGll
bnQtPmN1cnJlbnREZXZpY2VNb3Rpb24oKSA6IERldmljZU1vdGlvbkRhdGE6OmNyZWF0ZSgpOwor
ICAgIFJlZlB0cjxEZXZpY2VNb3Rpb25EYXRhPiBkZXZpY2VNb3Rpb25EYXRhID0gbV9jbGllbnQt
PmN1cnJlbnREZXZpY2VNb3Rpb24oKTsKICAgICBSZWZQdHI8RGV2aWNlTW90aW9uRXZlbnQ+IGV2
ZW50ID0gRGV2aWNlTW90aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlbW90aW9u
RXZlbnQsIGRldmljZU1vdGlvbkRhdGEuZ2V0KCkpOwogIAogICAgIFZlY3RvcjxSZWZQdHI8RE9N
V2luZG93PiA+IGxpc3RlbmVyc1ZlY3RvcjsKQEAgLTYzLDkgKzYzLDkgQEAgdm9pZCBEZXZpY2VN
b3Rpb25Db250cm9sbGVyOjp0aW1lckZpcmVkKFRpbWVyPERldmljZU1vdGlvbkNvbnRyb2xsZXI+
KiB0aW1lcikKICAgICAKIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6YWRkTGlzdGVuZXIo
RE9NV2luZG93KiB3aW5kb3cpCiB7Ci0gICAgLy8gSWYgbm8gY2xpZW50IGlzIHByZXNlbnQgb3Ig
dGhlIGNsaWVudCBhbHJlYWR5IGhhcyBtb3Rpb24gZGF0YSwKKyAgICAvLyBJZiB0aGUgY2xpZW50
IGFscmVhZHkgaGFzIG1vdGlvbiBkYXRhLAogICAgIC8vIGltbWVkaWF0ZWx5IHRyaWdnZXIgYW4g
YXN5bmNocm9ub3VzIHJlc3BvbnNlLgotICAgIGlmICghbV9jbGllbnQgfHwgbV9jbGllbnQtPmN1
cnJlbnREZXZpY2VNb3Rpb24oKSkgeworICAgIGlmIChtX2NsaWVudC0+Y3VycmVudERldmljZU1v
dGlvbigpKSB7CiAgICAgICAgIG1fbmV3TGlzdGVuZXJzLmFkZCh3aW5kb3cpOwogICAgICAgICBp
ZiAoIW1fdGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgICAgIG1fdGltZXIuc3RhcnRPbmVTaG90
KDApOwpAQCAtNzMsMTUgKzczLDE2IEBAIHZvaWQgRGV2aWNlTW90aW9uQ29udHJvbGxlcjo6YWRk
TGlzdGVuZXIoRE9NV2luZG93KiB3aW5kb3cpCiAgICAgCiAgICAgYm9vbCB3YXNFbXB0eSA9IG1f
bGlzdGVuZXJzLmlzRW1wdHkoKTsKICAgICBtX2xpc3RlbmVycy5hZGQod2luZG93KTsKLSAgICBp
ZiAod2FzRW1wdHkgJiYgbV9jbGllbnQpCisgICAgaWYgKHdhc0VtcHR5KQogICAgICAgICBtX2Ns
aWVudC0+c3RhcnRVcGRhdGluZygpOwogfQogCiB2b2lkIERldmljZU1vdGlvbkNvbnRyb2xsZXI6
OnJlbW92ZUxpc3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogewogICAgIG1fbGlzdGVuZXJzLnJl
bW92ZSh3aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwog
ICAgIG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5p
c0VtcHR5KCkgJiYgbV9jbGllbnQpCisgICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAg
ICAgICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCkBAIC05MiwxMSArOTMsMzQgQEAg
dm9pZCBEZXZpY2VNb3Rpb25Db250cm9sbGVyOjpyZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93
KiB3aW5kb3cpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fbGlzdGVuZXJzLnJlbW92ZUFsbCh3
aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOwogICAg
IG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwotICAgIGlmIChtX2xpc3RlbmVycy5pc0Vt
cHR5KCkgJiYgbV9jbGllbnQpCisgICAgaWYgKG1fbGlzdGVuZXJzLmlzRW1wdHkoKSkKICAgICAg
ICAgbV9jbGllbnQtPnN0b3BVcGRhdGluZygpOwogfQogCit2b2lkIERldmljZU1vdGlvbkNvbnRy
b2xsZXI6OnN1c3BlbmRFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCit7
CisgICAgaWYgKCFtX2xpc3RlbmVycy5jb250YWlucyh3aW5kb3cpKQorICAgICAgICByZXR1cm47
CisKKyAgICBpbnQgY291bnQgPSBtX2xpc3RlbmVycy5jb3VudCh3aW5kb3cpOworICAgIHJlbW92
ZUFsbExpc3RlbmVycyh3aW5kb3cpOworICAgIHdoaWxlIChjb3VudC0tKQorICAgICAgICBtX3N1
c3BlbmRlZExpc3RlbmVycy5hZGQod2luZG93KTsKK30KKwordm9pZCBEZXZpY2VNb3Rpb25Db250
cm9sbGVyOjpyZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCit7
CisgICAgaWYgKCFtX3N1c3BlbmRlZExpc3RlbmVycy5jb250YWlucyh3aW5kb3cpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpbnQgY291bnQgPSBtX3N1c3BlbmRlZExpc3RlbmVycy5jb3VudCh3
aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOworICAg
IHdoaWxlIChjb3VudC0tKQorICAgICAgICBhZGRMaXN0ZW5lcih3aW5kb3cpOworfQorCiB2b2lk
IERldmljZU1vdGlvbkNvbnRyb2xsZXI6OmRpZENoYW5nZURldmljZU1vdGlvbihEZXZpY2VNb3Rp
b25EYXRhKiBkZXZpY2VNb3Rpb25EYXRhKQogewogICAgIFJlZlB0cjxEZXZpY2VNb3Rpb25FdmVu
dD4gZXZlbnQgPSBEZXZpY2VNb3Rpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5kZXZpY2Vt
b3Rpb25FdmVudCwgZGV2aWNlTW90aW9uRGF0YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIuaAppbmRleCA4MGM5ZDk0Li5lNzE1NjRjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlTW90aW9uQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9EZXZpY2VNb3Rpb25Db250cm9sbGVyLmgKQEAgLTQ0LDYgKzQ0LDkgQEAgcHVi
bGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoRE9NV2luZG93Kik7CiAgICAgdm9pZCByZW1v
dmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKKyAgICB2b2lkIHN1c3BlbmRFdmVudHNGb3JB
bGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CisgICAgdm9pZCByZXN1bWVFdmVudHNGb3JBbGxMaXN0
ZW5lcnMoRE9NV2luZG93Kik7CisKICAgICB2b2lkIGRpZENoYW5nZURldmljZU1vdGlvbihEZXZp
Y2VNb3Rpb25EYXRhKik7CiAKICAgICBib29sIGlzQWN0aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVu
ZXJzLmlzRW1wdHkoKTsgfQpAQCAtNTQsNiArNTcsNyBAQCBwcml2YXRlOgogICAgIERldmljZU1v
dGlvbkNsaWVudCogbV9jbGllbnQ7CiAgICAgdHlwZWRlZiBIYXNoQ291bnRlZFNldDxSZWZQdHI8
RE9NV2luZG93PiA+IExpc3RlbmVyc0NvdW50ZWRTZXQ7CiAgICAgTGlzdGVuZXJzQ291bnRlZFNl
dCBtX2xpc3RlbmVyczsKKyAgICBMaXN0ZW5lcnNDb3VudGVkU2V0IG1fc3VzcGVuZGVkTGlzdGVu
ZXJzOwogICAgIHR5cGVkZWYgSGFzaFNldDxSZWZQdHI8RE9NV2luZG93PiA+IExpc3RlbmVyc1Nl
dDsKICAgICBMaXN0ZW5lcnNTZXQgbV9uZXdMaXN0ZW5lcnM7CiAgICAgVGltZXI8RGV2aWNlTW90
aW9uQ29udHJvbGxlcj4gbV90aW1lcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAKaW5kZXggZGE0MmJlYy4uOTUzYmU1NiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAK
QEAgLTgyLDYgKzgyLDcgQEAgdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI6OmFkZExp
c3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogdm9pZCBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXI6OnJlbW92ZUxpc3RlbmVyKERPTVdpbmRvdyogd2luZG93KQogewogICAgIG1fbGlzdGVuZXJz
LnJlbW92ZSh3aW5kb3cpOworICAgIG1fc3VzcGVuZGVkTGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cp
OwogICAgIG1fbmV3TGlzdGVuZXJzLnJlbW92ZSh3aW5kb3cpOwogICAgIGlmIChtX2xpc3RlbmVy
cy5pc0VtcHR5KCkpCiAgICAgICAgIG1fY2xpZW50LT5zdG9wVXBkYXRpbmcoKTsKQEAgLTk0LDEx
ICs5NSwzNCBAQCB2b2lkIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcjo6cmVtb3ZlQWxsTGlz
dGVuZXJzKERPTVdpbmRvdyogd2luZG93KQogICAgICAgICByZXR1cm47CiAKICAgICBtX2xpc3Rl
bmVycy5yZW1vdmVBbGwod2luZG93KTsKKyAgICBtX3N1c3BlbmRlZExpc3RlbmVycy5yZW1vdmVB
bGwod2luZG93KTsKICAgICBtX25ld0xpc3RlbmVycy5yZW1vdmUod2luZG93KTsKICAgICBpZiAo
bV9saXN0ZW5lcnMuaXNFbXB0eSgpKQogICAgICAgICBtX2NsaWVudC0+c3RvcFVwZGF0aW5nKCk7
CiB9CiAKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpzdXNwZW5kRXZlbnRzRm9y
QWxsTGlzdGVuZXJzKERPTVdpbmRvdyogd2luZG93KQoreworICAgIGlmICghbV9saXN0ZW5lcnMu
Y29udGFpbnMod2luZG93KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaW50IGNvdW50ID0gbV9s
aXN0ZW5lcnMuY291bnQod2luZG93KTsKKyAgICByZW1vdmVBbGxMaXN0ZW5lcnMod2luZG93KTsK
KyAgICB3aGlsZSAoY291bnQtLSkKKyAgICAgICAgbV9zdXNwZW5kZWRMaXN0ZW5lcnMuYWRkKHdp
bmRvdyk7Cit9CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyOjpyZXN1bWVFdmVu
dHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93KiB3aW5kb3cpCit7CisgICAgaWYgKCFtX3N1c3Bl
bmRlZExpc3RlbmVycy5jb250YWlucyh3aW5kb3cpKQorICAgICAgICByZXR1cm47CisKKyAgICBp
bnQgY291bnQgPSBtX3N1c3BlbmRlZExpc3RlbmVycy5jb3VudCh3aW5kb3cpOworICAgIG1fc3Vz
cGVuZGVkTGlzdGVuZXJzLnJlbW92ZUFsbCh3aW5kb3cpOworICAgIHdoaWxlIChjb3VudC0tKQor
ICAgICAgICBhZGRMaXN0ZW5lcih3aW5kb3cpOworfQorCiB2b2lkIERldmljZU9yaWVudGF0aW9u
Q29udHJvbGxlcjo6ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24oRGV2aWNlT3JpZW50YXRpb24q
IG9yaWVudGF0aW9uKQogewogICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbkV2ZW50PiBldmVu
dCA9IERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZGV2aWNlb3Jp
ZW50YXRpb25FdmVudCwgb3JpZW50YXRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0Rl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5oCmluZGV4IDVlMDY3NzEuLmJiZWE2ZDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9EZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgKQEAg
LTQ2LDYgKzQ2LDkgQEAgcHVibGljOgogICAgIHZvaWQgcmVtb3ZlTGlzdGVuZXIoRE9NV2luZG93
Kik7CiAgICAgdm9pZCByZW1vdmVBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CiAKKyAgICB2b2lk
IHN1c3BlbmRFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CisgICAgdm9pZCByZXN1
bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoRE9NV2luZG93Kik7CisKICAgICB2b2lkIGRpZENoYW5n
ZURldmljZU9yaWVudGF0aW9uKERldmljZU9yaWVudGF0aW9uKik7CiAKICAgICBib29sIGlzQWN0
aXZlKCkgeyByZXR1cm4gIW1fbGlzdGVuZXJzLmlzRW1wdHkoKTsgfQpAQCAtNTcsNiArNjAsNyBA
QCBwcml2YXRlOgogICAgIERldmljZU9yaWVudGF0aW9uQ2xpZW50KiBtX2NsaWVudDsKICAgICB0
eXBlZGVmIEhhc2hDb3VudGVkU2V0PFJlZlB0cjxET01XaW5kb3c+ID4gTGlzdGVuZXJzQ291bnRl
ZFNldDsKICAgICBMaXN0ZW5lcnNDb3VudGVkU2V0IG1fbGlzdGVuZXJzOworICAgIExpc3RlbmVy
c0NvdW50ZWRTZXQgbV9zdXNwZW5kZWRMaXN0ZW5lcnM7CiAgICAgdHlwZWRlZiBIYXNoU2V0PFJl
ZlB0cjxET01XaW5kb3c+ID4gTGlzdGVuZXJzU2V0OwogICAgIExpc3RlbmVyc1NldCBtX25ld0xp
c3RlbmVyczsKICAgICBUaW1lcjxEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI+IG1fdGltZXI7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCBiM2E1YWIxLi5kOTBmZjIxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKQEAgLTQ3LDYgKzQ3LDEwIEBACiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50
YXRpb24uaCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50
cy5oIgorI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEZXZp
Y2VNb3Rpb25FdmVudC5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5o
IgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uRXZlbnQuaCIKICNpbmNsdWRlICJEb2N1bWVu
dEZyYWdtZW50LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIKICNpbmNsdWRlICJEb2N1
bWVudE1hcmtlckNvbnRyb2xsZXIuaCIKQEAgLTcwLDYgKzc0LDcgQEAKICNpbmNsdWRlICJGcmFt
ZVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkZyYW1lVmll
dy5oIgorI2luY2x1ZGUgIkdlb2xvY2F0aW9uQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkhhc2hD
aGFuZ2VFdmVudC5oIgogI2luY2x1ZGUgIkhUTUxBbGxDb2xsZWN0aW9uLmgiCiAjaW5jbHVkZSAi
SFRNTEFuY2hvckVsZW1lbnQuaCIKQEAgLTE4MzUsNiArMTg0MCwzNiBAQCB2b2lkIERvY3VtZW50
OjpyZW1vdmVBbGxFdmVudExpc3RlbmVycygpCiAgICAgICAgIG5vZGUtPnJlbW92ZUFsbEV2ZW50
TGlzdGVuZXJzKCk7CiB9CiAKK3ZvaWQgRG9jdW1lbnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3Rz
KEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCit7CisgICAgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMod2h5KTsKKworI2lmIEVO
QUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgaWYgKCFwYWdlKCkpCisgICAgICAgIHJldHVy
bjsKKworICAgIGlmIChwYWdlKCktPmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSkKKyAgICAgICAg
cGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCktPnN1c3BlbmRFdmVudHNGb3JBbGxMaXN0
ZW5lcnMoZG9tV2luZG93KCkpOworICAgIGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29u
dHJvbGxlcigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigp
LT5zdXNwZW5kRXZlbnRzRm9yQWxsTGlzdGVuZXJzKGRvbVdpbmRvdygpKTsKKyNlbmRpZgorfQor
Cit2b2lkIERvY3VtZW50OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKCkKK3sKKyAgICBTY3JpcHRF
eGVjdXRpb25Db250ZXh0OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKCk7CisKKyNpZiBFTkFCTEUo
REVWSUNFX09SSUVOVEFUSU9OKQorICAgIGlmICghcGFnZSgpKQorICAgICAgICByZXR1cm47CisK
KyAgICBpZiAocGFnZSgpLT5kZXZpY2VNb3Rpb25Db250cm9sbGVyKCkpCisgICAgICAgIHBhZ2Uo
KS0+ZGV2aWNlTW90aW9uQ29udHJvbGxlcigpLT5yZXN1bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMo
ZG9tV2luZG93KCkpOworICAgIGlmIChwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
cigpKQorICAgICAgICBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcigpLT5yZXN1
bWVFdmVudHNGb3JBbGxMaXN0ZW5lcnMoZG9tV2luZG93KCkpOworI2VuZGlmCit9CisKIFJlbmRl
clZpZXcqIERvY3VtZW50OjpyZW5kZXJWaWV3KCkgY29uc3QKIHsKICAgICByZXR1cm4gdG9SZW5k
ZXJWaWV3KHJlbmRlcmVyKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA3MjcwNWYwLi4yZDU4
YzVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtNTY0LDYgKzU2NCwxMCBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIGF0dGFjaCgpOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goKTsKIAor
ICAgIC8vIE92ZXJyaWRlIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgbWV0aG9kcyB0byBkbyBhZGRp
dGlvbmFsIHdvcmsKKyAgICB2aXJ0dWFsIHZvaWQgc3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0
aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9uKSBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IHZvaWQgcmVzdW1lQWN0aXZlRE9NT2JqZWN0cygpIE9WRVJSSURFOworCiAgICAgUmVuZGVyQXJl
bmEqIHJlbmRlckFyZW5hKCkgeyByZXR1cm4gbV9yZW5kZXJBcmVuYS5nZXQoKTsgfQogCiAgICAg
UmVuZGVyVmlldyogcmVuZGVyVmlldygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3Jp
cHRFeGVjdXRpb25Db250ZXh0LmgKaW5kZXggZDQ0MmU2Mi4uZTE2ZmFiNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCkBAIC0xMDksOSArMTA5LDEwIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBjYW5TdXNwZW5kQWN0aXZlRE9NT2Jq
ZWN0cygpOwogICAgICAgICAvLyBBY3RpdmUgb2JqZWN0cyBjYW4gYmUgYXNrZWQgdG8gc3VzcGVu
ZCBldmVuIGlmIGNhblN1c3BlbmRBY3RpdmVET01PYmplY3RzKCkgcmV0dXJucyAnZmFsc2UnIC0K
ICAgICAgICAgLy8gc3RlcC1ieS1zdGVwIEpTIGRlYnVnZ2luZyBpcyBvbmUgZXhhbXBsZS4KLSAg
ICAgICAgdm9pZCBzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyhBY3RpdmVET01PYmplY3Q6OlJlYXNv
bkZvclN1c3BlbnNpb24pOwotICAgICAgICB2b2lkIHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsK
LSAgICAgICAgdm9pZCBzdG9wQWN0aXZlRE9NT2JqZWN0cygpOworICAgICAgICB2aXJ0dWFsIHZv
aWQgc3VzcGVuZEFjdGl2ZURPTU9iamVjdHMoQWN0aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNw
ZW5zaW9uKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIHJlc3VtZUFjdGl2ZURPTU9iamVjdHMoKTsK
KyAgICAgICAgdmlydHVhbCB2b2lkIHN0b3BBY3RpdmVET01PYmplY3RzKCk7CisKICAgICAgICAg
dm9pZCBjcmVhdGVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCosIHZvaWQqIHVwY2Fz
dFBvaW50ZXIpOwogICAgICAgICB2b2lkIGRlc3Ryb3llZEFjdGl2ZURPTU9iamVjdChBY3RpdmVE
T01PYmplY3QqKTsKICAgICAgICAgdHlwZWRlZiBjb25zdCBIYXNoTWFwPEFjdGl2ZURPTU9iamVj
dCosIHZvaWQqPiBBY3RpdmVET01PYmplY3RzTWFwOwotLSAKMS43LjQuMQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>