<?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>158651</bug_id>
          
          <creation_ts>2016-06-10 18:15:30 -0700</creation_ts>
          <short_desc>run-safari/run-webkit-app fail to quit iOS simulator after Xcode installation</short_desc>
          <delta_ts>2016-06-12 20:55:52 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aakash Jain">aakash_jain</reporter>
          <assigned_to name="Aakash Jain">aakash_jain</assigned_to>
          <cc>aakash_jain</cc>
    
    <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>lforschler</cc>
    
    <cc>ryanhaddad</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1201472</commentid>
    <comment_count>0</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-10 18:15:30 -0700</bug_when>
    <thetext>Sometimes iOS Simulator fails to quit and following message is displayed in logs:

syntax error: Can’t get application id “com.apple.iphonesimulator”. (-1728)
Failed to quit iOS Simulator: Bad file descriptor at OpenSource/Tools/Scripts/webkitdirs.pm line 2291.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201473</commentid>
    <comment_count>1</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-10 18:15:40 -0700</bug_when>
    <thetext>see rdar://problem/26499824</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201478</commentid>
    <comment_count>2</comment_count>
      <attachid>281070</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-10 18:22:39 -0700</bug_when>
    <thetext>Created attachment 281070
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201512</commentid>
    <comment_count>3</comment_count>
      <attachid>281070</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-06-10 22:38:01 -0700</bug_when>
    <thetext>Comment on attachment 281070
Proposed patch

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

&gt; Tools/Scripts/webkitdirs.pm:77
&gt; +       &amp;registerIOSSimulator

Please remove this because it seems unnecessary to export this function for use outside this module. Scripts should not need to explicitly concern themselves with the Launch Services registration state of the iOS Simulator app, including registering the iOS Simulator app with Launch Services. Registering with Launch Services is an implementation detail.

&gt; Tools/Scripts/webkitdirs.pm:2259
&gt; +sub trim($)
&gt; +{
&gt; +    my $string = shift;
&gt; +    $string =~ s/^\s+//;
&gt; +    $string =~ s/\s+$//;
&gt; +    return $string;
&gt; +}

Please remove this function. It should be sufficient to remove trailing newline by making use of the built-in function chomp(). See &lt;http://perldoc.perl.org/functions/chomp.html&gt; for more details.

&gt; Tools/Scripts/webkitdirs.pm:2265
&gt; +    print &quot;Waiting for iOS Simulator to be in state: $waitUntilState, current state: $device-&gt;{state}\n&quot;;

Please do not print such a message as it just adds noise that is emitted to standard output for all callers of this function. I know that we have existing code that prints messages with status information when launching/quitting/relaunching the simulator. We should look to remove such messages. It should be the responsibility of the calling script to decide whether to emit a message to standard output/error based on the verbosity it wants to provide to a person. In general, WebKit tools tend to follow the Unix tool convention of being silent on success and noisy on failure.

&gt; Tools/Scripts/webkitdirs.pm:2299
&gt; +sub registerIOSSimulator(;$)

This prototype implies that this function takes an optional scalar value. But this function does not take an optional scalar value. See &lt;http://perldoc.perl.org/perlsub.html#Prototypes&gt; for more details.

&gt; Tools/Scripts/webkitdirs.pm:2301
&gt; +    print &quot;Registering iOS Simulator.\n&quot;;

Ditto.

&gt; Tools/Scripts/webkitdirs.pm:2303
&gt; +    my $simulatorPath = trim(`xcode-select --print-path`).&quot;/Applications/Simulator.app&quot;;
&gt; +    system(&quot;/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister&quot;, &quot;-v&quot;, &quot;-f&quot;, &quot;$simulatorPath&quot;);

I would write this as:

chomp(my $developerDirectory = `xcode-select --print-path`);
my $simulatorApp = File::Spec-&gt;catfile($developerDirectory, &quot;Applications&quot;, &quot;Simulator.app&quot;);
my $result = system(&quot;/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister&quot;, &quot;-f&quot;, $simulatorApp);
die &quot;Failed to register Simulator.app with Launch Services: $result&quot; if $result;

Notice that I explicitly omitted passing the command line flag -v, which will display progress information, to lsregister so that we do not make extra noise.

&gt; Tools/Scripts/webkitdirs.pm:2311
&gt; +    exitStatus(system {&quot;osascript&quot;} &quot;osascript&quot;, &quot;-e&quot;, &apos;tell application id &quot;com.apple.iphonesimulator&quot; to quit&apos;) == 0 or registerIOSSimulator;

As far as I can tell this will not fix the initial occurrence of &quot;Can’t get application id “com.apple.iphonesimulator”. (-1728)&quot; and only prevents such failure on subsequent calls to quitIOSSimulator(). That is, when &quot;Can’t get application id “com.apple.iphonesimulator”. (-1728)&quot; we do not try to quit the simulator app after registering it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201514</commentid>
    <comment_count>4</comment_count>
      <attachid>281070</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-06-10 22:56:36 -0700</bug_when>
    <thetext>Comment on attachment 281070
Proposed patch

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

&gt;&gt; Tools/Scripts/webkitdirs.pm:2311
&gt;&gt; +    exitStatus(system {&quot;osascript&quot;} &quot;osascript&quot;, &quot;-e&quot;, &apos;tell application id &quot;com.apple.iphonesimulator&quot; to quit&apos;) == 0 or registerIOSSimulator;
&gt; 
&gt; As far as I can tell this will not fix the initial occurrence of &quot;Can’t get application id “com.apple.iphonesimulator”. (-1728)&quot; and only prevents such failure on subsequent calls to quitIOSSimulator(). That is, when &quot;Can’t get application id “com.apple.iphonesimulator”. (-1728)&quot; we do not try to quit the simulator app after registering it.

Disregard this remark.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201515</commentid>
    <comment_count>5</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-06-10 22:59:09 -0700</bug_when>
    <thetext> &gt; &gt; Tools/Scripts/webkitdirs.pm:2303
&gt; &gt; +    my $simulatorPath = trim(`xcode-select --print-path`).&quot;/Applications/Simulator.app&quot;;
&gt; &gt; +    system(&quot;/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister&quot;, &quot;-v&quot;, &quot;-f&quot;, &quot;$simulatorPath&quot;);
&gt; 
&gt; I would write this as:
&gt; 
&gt; chomp(my $developerDirectory = `xcode-select --print-path`);
&gt; my $simulatorApp = File::Spec-&gt;catfile($developerDirectory, &quot;Applications&quot;,
&gt; &quot;Simulator.app&quot;);
&gt; my $result = system(&quot;/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister&quot;, &quot;-f&quot;, $simulatorApp);

The last line should read:

my $result = exitStatus(system(&quot;/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister&quot;, &quot;-f&quot;, $simulatorApp));</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201518</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-06-10 23:11:25 -0700</bug_when>
    <thetext>&gt; Tools/Scripts/webkitdirs.pm:2311
&gt; +    exitStatus(system {&quot;osascript&quot;} &quot;osascript&quot;, &quot;-e&quot;, &apos;tell application id &quot;com.apple.iphonesimulator&quot; to quit&apos;) == 0 or registerIOSSimulator;

Is it necessary that we register Simulator.app with Launch Services if osascript returns a non-zero exit status? Would it be sufficient to bail out early if osascript returns a non-zero exit status?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201548</commentid>
    <comment_count>7</comment_count>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-11 02:43:31 -0700</bug_when>
    <thetext>This is the behavior currently. We bail out early if osascript returns a non-zero exit status.

In various scripts, we do relaunchIOSSimulator at the beginning. If for some reason, Simulator app is not registered with LaunchServices, we bail out, causing the tests to prematurely stop. Instead if we register the Simulator app, relaunchIOSSimulator() would succeed and tests would run normally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201549</commentid>
    <comment_count>8</comment_count>
      <attachid>281095</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-11 02:47:41 -0700</bug_when>
    <thetext>Created attachment 281095
Updated patch

Thanks for the careful review. Useful review comments, I have incorporated them. Please review again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201565</commentid>
    <comment_count>9</comment_count>
      <attachid>281095</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-06-11 07:11:27 -0700</bug_when>
    <thetext>Comment on attachment 281095
Updated patch

(In reply to comment #7)
&gt; This is the behavior currently. We bail out early if osascript returns a
&gt; non-zero exit status.
&gt; 
&gt; In various scripts, we do relaunchIOSSimulator at the beginning. If for some
&gt; reason, Simulator app is not registered with LaunchServices, we bail out,
&gt; causing the tests to prematurely stop. 

By &quot;bail out early&quot; I meant return early without calling die(). That is, change the line in quitIOSSimulator() from:

exitStatus(system {&quot;osascript&quot;} &quot;osascript&quot;, &quot;-e&quot;, &apos;tell application id &quot;com.apple.iphonesimulator&quot; to quit&apos;) == 0 or die &quot;Failed to quit iOS Simulator: $!&quot;;

to

if (exitStatus(system {&quot;osascript&quot;} &quot;osascript&quot;, &quot;-e&quot;, &apos;tell application id &quot;com.apple.iphonesimulator&quot; to quit&apos;)) {
    return;
}

&gt; Instead if we register the Simulator app, relaunchIOSSimulator() would succeed and tests would run normally.

I propose that we make the above change to early return from quitIOSSimulator() when osascript returns a non-zero exit status and that we partially or fully revert &lt;http://trac.webkit.org/changeset/184202&gt; such that relaunchIOSSimulator() launches the simulator using its filesystem path instead of its bundle ID. Launching the simulator using open(1) by its filesystem path will implicitly register it with Launch Services.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201624</commentid>
    <comment_count>10</comment_count>
      <attachid>281109</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-11 13:17:10 -0700</bug_when>
    <thetext>Created attachment 281109
Updated patch

Agree. Made the changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201723</commentid>
    <comment_count>11</comment_count>
      <attachid>281109</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2016-06-12 14:58:37 -0700</bug_when>
    <thetext>Comment on attachment 281109
Updated patch

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

&gt; Tools/ChangeLog:3
&gt; +        iOS Simulator fails to quit intermittently

I updated the title of this bug to better reflect what I suspect is the cause of this failure. Please update the title in this ChangeLog.

&gt; Tools/ChangeLog:8
&gt; +

It would be good to explain the motivation for this fix is to make our tooling more robust if for some reason Simulator.app was not registered with LaunchServices. My guess is that this can happen if a person never launches Simulator.app after an Xcode install. It would be good to validate this hypothesis. Regardless, it does not seem ridiculous to make our tools more robust by not die()ing when it cannot quit Simulator.app because osascript exits with a non-zero exit status that is most likely caused by a lack of an entry for Simulator.app in the LaunchServices database.

&gt; Tools/ChangeLog:12
&gt; +        Launch iOS Simulator using complete path.
&gt; +        Partially reverting http://trac.webkit.org/changeset/184202

Very minor: Please end each sentence with a period. I also do not see the need to have each sentence on its own line.

&gt; Tools/ChangeLog:15
&gt; +        Do not die if quitting ios Simulator fails, so that relaunchIOSSimulator can 
&gt; +        still attempt to launch the simulator.

Although the change to quitIOSSimulator() has the side effect of not killing a script that called it implicitly via relaunchIOSSimulator(), the motivation for teaching quitIOSSimulator() is to handle the scenario where LaunchServices is not aware of Simulator.app for some reason. This is the reason for making quitIOSSimulator() early return when it fails to terminate Simulator.app by its bundle identifier.

&gt; Tools/Scripts/webkitdirs.pm:-2280
&gt; -    # FIXME: &lt;rdar://problem/20916140&gt; Switch to using CoreSimulator.framework for launching and quitting iOS Simulator

Is this FIXME no longer applicable?

&gt; Tools/Scripts/webkitdirs.pm:2292
&gt; +    if (exitStatus(system {&quot;osascript&quot;} &quot;osascript&quot;, &quot;-e&quot;, &apos;tell application id &quot;com.apple.iphonesimulator&quot; to quit&apos;)) {

This is OK as-is. We could special case this early return behavior to only happen if osascript exited unsuccessfully because it could not find com.apple.iphonesimulator (assuming this is straightforward to do) and die() otherwise so that we can diagnose other osascript failures. Though there may not be much value to do so or at least I cannot think of any other reason for osascript exiting unsuccessfully other than for something catastrophic and out of our control.

&gt; Tools/Scripts/webkitdirs.pm:2293
&gt; +        return;

I suggest that we add a comment above this line to explain that osascript can return a non-zero exit status if Simulator.app is not registered in LaunchServices. My guess is that this could happen if Simulator.app is never launched after a new Xcode install.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201771</commentid>
    <comment_count>12</comment_count>
      <attachid>281109</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-12 20:31:03 -0700</bug_when>
    <thetext>Comment on attachment 281109
Updated patch

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

&gt;&gt; Tools/ChangeLog:8
&gt;&gt; +
&gt; 
&gt; It would be good to explain the motivation for this fix is to make our tooling more robust if for some reason Simulator.app was not registered with LaunchServices. My guess is that this can happen if a person never launches Simulator.app after an Xcode install. It would be good to validate this hypothesis. Regardless, it does not seem ridiculous to make our tools more robust by not die()ing when it cannot quit Simulator.app because osascript exits with a non-zero exit status that is most likely caused by a lack of an entry for Simulator.app in the LaunchServices database.

Added.

&gt;&gt; Tools/ChangeLog:12
&gt;&gt; +        Partially reverting http://trac.webkit.org/changeset/184202
&gt; 
&gt; Very minor: Please end each sentence with a period. I also do not see the need to have each sentence on its own line.

Done.

&gt;&gt; Tools/Scripts/webkitdirs.pm:-2280
&gt;&gt; -    # FIXME: &lt;rdar://problem/20916140&gt; Switch to using CoreSimulator.framework for launching and quitting iOS Simulator
&gt; 
&gt; Is this FIXME no longer applicable?

good catch, added it back.

&gt;&gt; Tools/Scripts/webkitdirs.pm:2293
&gt;&gt; +        return;
&gt; 
&gt; I suggest that we add a comment above this line to explain that osascript can return a non-zero exit status if Simulator.app is not registered in LaunchServices. My guess is that this could happen if Simulator.app is never launched after a new Xcode install.

added</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201772</commentid>
    <comment_count>13</comment_count>
      <attachid>281151</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-12 20:31:57 -0700</bug_when>
    <thetext>Created attachment 281151
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201773</commentid>
    <comment_count>14</comment_count>
      <attachid>281151</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-12 20:32:52 -0700</bug_when>
    <thetext>Comment on attachment 281151
Updated patch

Rejecting attachment 281151 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-03&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 281151, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in Tools/ChangeLog contains OOPS!.

Full output: http://webkit-queues.webkit.org/results/1492581</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201774</commentid>
    <comment_count>15</comment_count>
      <attachid>281152</attachid>
    <who name="Aakash Jain">aakash_jain</who>
    <bug_when>2016-06-12 20:33:45 -0700</bug_when>
    <thetext>Created attachment 281152
Updated patch

Added the &quot;Reviewed by&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201777</commentid>
    <comment_count>16</comment_count>
      <attachid>281152</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-12 20:55:48 -0700</bug_when>
    <thetext>Comment on attachment 281152
Updated patch

Clearing flags on attachment: 281152

Committed r201986: &lt;http://trac.webkit.org/changeset/201986&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1201778</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-12 20:55:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281070</attachid>
            <date>2016-06-10 18:22:39 -0700</date>
            <delta_ts>2016-06-11 02:47:41 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>patch_lsregister1</filename>
            <type>text/plain</type>
            <size>4204</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIwMTk1NykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE5IEBACisyMDE2LTA2LTEwICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1MgU2ltdWxhdG9yIGZhaWxzIHRvIHF1aXQgaW50ZXJtaXR0ZW50bHkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODY1MQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0
cy93ZWJraXRkaXJzLnBtOgorICAgICAgICAocmVnaXN0ZXJJT1NTaW11bGF0b3IpOgorICAgICAg
ICBSZWdpc3RlciBpT1MgU2ltdWxhdG9yIHdpdGggbGF1bmNoIHNlcnZpY2VzIHVzaW5nIGxzcmVn
aXN0ZXIuCisgICAgICAgIChxdWl0SU9TU2ltdWxhdG9yKTogCisgICAgICAgIFdoZW4gcXVpdHRp
bmcgc2ltdWxhdG9yIGZhaWxzLCB0cnkgdG8gcmVnaXN0ZXIgdGhlIHNpbXVsYXRvci4KKyAgICAg
ICAgKHdhaXRVbnRpbElPU1NpbXVsYXRvckRldmljZUlzSW5TdGF0ZSk6CisgICAgICAgIEFkZGVk
IGEgRklYTUUgYW5kIGEgcHJpbnQgbWVzc2FnZSB0byBtYWtlIGl0IGVhc3kgdG8gZGVidWcgd2hl
biB3ZSB3YWl0IGluZmluaXRlbHkuCisgICAgICAgICh0cmltKTogQWRkZWQgbWV0aG9kIHRvIHRy
aW0gYSBzdHJpbmcuCisKIDIwMTYtMDYtMTAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggQ01ha2UgYnVpbGQuCkluZGV4OiBUb29scy9T
Y3JpcHRzL3dlYmtpdGRpcnMucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRk
aXJzLnBtCShyZXZpc2lvbiAyMDE5NTcpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0J
KHdvcmtpbmcgY29weSkKQEAgLTc0LDYgKzc0LDcgQEAgQkVHSU4gewogICAgICAgICZwcmludEhl
bHBBbmRFeGl0Rm9yUnVuQW5kRGVidWdXZWJLaXRBcHBJZk5lZWRlZAogICAgICAgICZwcm9kdWN0
RGlyCiAgICAgICAgJnF1aXRJT1NTaW11bGF0b3IKKyAgICAgICAmcmVnaXN0ZXJJT1NTaW11bGF0
b3IKICAgICAgICAmcmVsYXVuY2hJT1NTaW11bGF0b3IKICAgICAgICAmcmVzdGFydElPU1NpbXVs
YXRvckRldmljZQogICAgICAgICZydW5JT1NXZWJLaXRBcHAKQEAgLTg1LDYgKzg2LDcgQEAgQkVH
SU4gewogICAgICAgICZzaGFyZWRDb21tYW5kTGluZU9wdGlvbnMKICAgICAgICAmc2hhcmVkQ29t
bWFuZExpbmVPcHRpb25zVXNhZ2UKICAgICAgICAmc2h1dERvd25JT1NTaW11bGF0b3JEZXZpY2UK
KyAgICAgICAmdHJpbQogICAgICAgICZ3aWxsVXNlSU9TRGV2aWNlU0RLCiAgICAgICAgJndpbGxV
c2VJT1NTaW11bGF0b3JTREsKICAgICAgICBTSU1VTEFUT1JfREVWSUNFX1NVRkZJWF9GT1JfV0VC
S0lUX0RFVkVMT1BNRU5UCkBAIC0yMjQ4LDEwICsyMjUwLDIwIEBAIHN1YiBhcHBEaXNwbGF5TmFt
ZUZyb21CdW5kbGUoJCkKICAgICByZXR1cm4gJGJ1bmRsZURpc3BsYXlOYW1lOwogfQogCitzdWIg
dHJpbSgkKQoreworICAgIG15ICRzdHJpbmcgPSBzaGlmdDsKKyAgICAkc3RyaW5nID1+IHMvXlxz
Ky8vOworICAgICRzdHJpbmcgPX4gcy9ccyskLy87CisgICAgcmV0dXJuICRzdHJpbmc7Cit9CisK
IHN1YiB3YWl0VW50aWxJT1NTaW11bGF0b3JEZXZpY2VJc0luU3RhdGUoJCQpCiB7CiAgICAgbXkg
KCRkZXZpY2VVRElELCAkd2FpdFVudGlsU3RhdGUpID0gQF87CiAgICAgbXkgJGRldmljZSA9IGlv
c1NpbXVsYXRvckRldmljZUJ5VURJRCgkZGV2aWNlVURJRCk7CisgICAgcHJpbnQgIldhaXRpbmcg
Zm9yIGlPUyBTaW11bGF0b3IgdG8gYmUgaW4gc3RhdGU6ICR3YWl0VW50aWxTdGF0ZSwgY3VycmVu
dCBzdGF0ZTogJGRldmljZS0+e3N0YXRlfVxuIjsKKyAgICAjIEZJWE1FOiBXZSBzaG91bGQgYWRk
IGEgbWF4aW11bSB0aW1lIGxpbWl0IHRvIHdhaXQgaGVyZS4KICAgICB3aGlsZSAoJGRldmljZS0+
e3N0YXRlfSBuZSAkd2FpdFVudGlsU3RhdGUpIHsKICAgICAgICAgdXNsZWVwKDUwMCAqIDEwMDAp
OyAjIFdhaXRpbmcgNTAwbXMgYmV0d2VlbiBmaWxlIHN5c3RlbSBwb2xscyBkb2VzIG5vdCBtYWtl
IHNjcmlwdCBydW4tc2FmYXJpIGZlZWwgc2x1Z2dpc2guCiAgICAgICAgICRkZXZpY2UgPSBpb3NT
aW11bGF0b3JEZXZpY2VCeVVESUQoJGRldmljZVVESUQpOwpAQCAtMjI4NCwxMSArMjI5NiwxOSBA
QCBzdWIgcmVsYXVuY2hJT1NTaW11bGF0b3IoJCkKICAgICB3YWl0VW50aWxJT1NTaW11bGF0b3JE
ZXZpY2VJc0luU3RhdGUoJHNpbXVsYXRlZERldmljZS0+e1VESUR9LCBTSU1VTEFUT1JfREVWSUNF
X1NUQVRFX0JPT1RFRCk7CiB9CiAKK3N1YiByZWdpc3RlcklPU1NpbXVsYXRvcig7JCkKK3sKKyAg
ICBwcmludCAiUmVnaXN0ZXJpbmcgaU9TIFNpbXVsYXRvci5cbiI7CisgICAgbXkgJHNpbXVsYXRv
clBhdGggPSB0cmltKGB4Y29kZS1zZWxlY3QgLS1wcmludC1wYXRoYCkuIi9BcHBsaWNhdGlvbnMv
U2ltdWxhdG9yLmFwcCI7CisgICAgc3lzdGVtKCIvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9D
b3JlU2VydmljZXMuZnJhbWV3b3JrL0ZyYW1ld29ya3MvTGF1bmNoU2VydmljZXMuZnJhbWV3b3Jr
L1ZlcnNpb25zL0N1cnJlbnQvU3VwcG9ydC9sc3JlZ2lzdGVyIiwgIi12IiwgIi1mIiwgIiRzaW11
bGF0b3JQYXRoIik7Cit9CisKIHN1YiBxdWl0SU9TU2ltdWxhdG9yKDskKQogeworICAgIHByaW50
ICJRdWl0dGluZyBpT1MgU2ltdWxhdG9yLi4uXG4iOwogICAgIG15ICgkd2FpdEZvclNodXRkb3du
T2ZTaW11bGF0ZWREZXZpY2VVRElEKSA9IEBfOwogICAgICMgRklYTUU6IDxyZGFyOi8vcHJvYmxl
bS8yMDkxNjE0MD4gU3dpdGNoIHRvIHVzaW5nIENvcmVTaW11bGF0b3IuZnJhbWV3b3JrIGZvciBs
YXVuY2hpbmcgYW5kIHF1aXR0aW5nIGlPUyBTaW11bGF0b3IKLSAgICBleGl0U3RhdHVzKHN5c3Rl
bSB7Im9zYXNjcmlwdCJ9ICJvc2FzY3JpcHQiLCAiLWUiLCAndGVsbCBhcHBsaWNhdGlvbiBpZCAi
Y29tLmFwcGxlLmlwaG9uZXNpbXVsYXRvciIgdG8gcXVpdCcpID09IDAgb3IgZGllICJGYWlsZWQg
dG8gcXVpdCBpT1MgU2ltdWxhdG9yOiAkISI7CisgICAgZXhpdFN0YXR1cyhzeXN0ZW0geyJvc2Fz
Y3JpcHQifSAib3Nhc2NyaXB0IiwgIi1lIiwgJ3RlbGwgYXBwbGljYXRpb24gaWQgImNvbS5hcHBs
ZS5pcGhvbmVzaW11bGF0b3IiIHRvIHF1aXQnKSA9PSAwIG9yIHJlZ2lzdGVySU9TU2ltdWxhdG9y
OwogICAgIGlmICghZGVmaW5lZCgkd2FpdEZvclNodXRkb3duT2ZTaW11bGF0ZWREZXZpY2VVRElE
KSkgewogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMjQwOSw3ICsyNDI5LDYgQEAgc3ViIHJ1
bklPU1dlYktpdEFwcEluU2ltdWxhdG9yKCQ7JCkKICAgICAgICAgICAgICMgUmVzdG9yZSB0aGUg
c3lzdGVtLWluc3RhbGxlZCBhcHAgaW4gdGhlIHNpbXVsYXRvciBkZXZpY2UgY29ycmVzcG9uZGlu
ZyB0byAkYXBwQnVuZGxlIGFzIGl0CiAgICAgICAgICAgICAjIHdhcyBwcmV2aW91c2x5IG92ZXJ3
cml0dGVuIHdpdGggYSBjdXN0b20gYnVpbHQgdmVyc2lvbiBvZiB0aGUgYXBwLgogICAgICAgICAg
ICAgIyBGSVhNRTogT25seSByZXN0b3JlIHRoZSBzeXN0ZW0taW5zdGFsbGVkIHZlcnNpb24gb2Yg
dGhlIGFwcCBpbnN0ZWFkIG9mIGVyYXNpbmcgYWxsIGNvbnRlbnRzIGFuZCBzZXR0aW5ncy4KLSAg
ICAgICAgICAgIHByaW50ICJRdWl0dGluZyBpT1MgU2ltdWxhdG9yLi4uXG4iOwogICAgICAgICAg
ICAgcXVpdElPU1NpbXVsYXRvcigkc2ltdWxhdGVkRGV2aWNlVURJRCk7CiAgICAgICAgICAgICBw
cmludCAiRXJhc2luZyBjb250ZW50cyBhbmQgc2V0dGluZ3MgZm9yIHNpbXVsYXRvciBkZXZpY2Ug
XCIkc2ltdWxhdGVkRGV2aWNlLT57bmFtZX1cIi5cbiI7CiAgICAgICAgICAgICBleGl0U3RhdHVz
KHN5c3RlbSgieGNydW4iLCAiLS1zZGsiLCAiaXBob25lc2ltdWxhdG9yIiwgInNpbWN0bCIsICJl
cmFzZSIsICRzaW11bGF0ZWREZXZpY2VVRElEKSkgPT0gMCBvciBkaWU7Cg==
</data>
<flag name="review"
          id="304936"
          type_id="1"
          status="-"
          setter="dbates"
    />
    <flag name="commit-queue"
          id="304937"
          type_id="3"
          status="-"
          setter="dbates"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281095</attachid>
            <date>2016-06-11 02:47:41 -0700</date>
            <delta_ts>2016-06-11 13:17:10 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_lsregister3</filename>
            <type>text/plain</type>
            <size>2867</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIwMTk2NikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIxIEBACisyMDE2LTA2LTExICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1MgU2ltdWxhdG9yIGZhaWxzIHRvIHF1aXQgaW50ZXJtaXR0ZW50bHkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODY1MQor
ICAgICAgICByZGFyOi8vcHJvYmxlbS8yNjQ5OTgyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAg
ICAocmVnaXN0ZXJJT1NTaW11bGF0b3IpOgorICAgICAgICBSZWdpc3RlciBpT1MgU2ltdWxhdG9y
IHdpdGggbGF1bmNoIHNlcnZpY2VzIHVzaW5nIGxzcmVnaXN0ZXIuCisgICAgICAgIChxdWl0SU9T
U2ltdWxhdG9yKToKKyAgICAgICAgV2hlbiBxdWl0dGluZyBpT1MgU2ltdWxhdG9yIGZhaWxzLCB0
cnkgdG8gcmVnaXN0ZXIgdGhlIHNpbXVsYXRvci4gVGhpcyBpcyB0bworICAgICAgICBlbnN1cmUg
dGhhdCBzdWJzZXF1ZW50IGF0dGVtcHRzIHRvIG9wZW4gYW5kIHF1aXQgdGhlIHNpbXVsYXRvciBk
byBub3QgZmFpbC4KKyAgICAgICAgRXNwZWNpYWxseSwgaXQgbWFrZXMgcmVsYXVuY2hJT1NTaW11
bGF0b3IgbWV0aG9kIG1vcmUgcm9idXN0LiAKKyAgICAgICAgKHdhaXRVbnRpbElPU1NpbXVsYXRv
ckRldmljZUlzSW5TdGF0ZSk6CisgICAgICAgIEFkZGVkIGEgRklYTUUuCisKIDIwMTYtMDYtMTAg
IEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBG
aXggQ01ha2UgYnVpbGQuCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCShyZXZpc2lvbiAyMDE5NjYpCisr
KyBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0JKHdvcmtpbmcgY29weSkKQEAgLTIyNTIsNiAr
MjI1Miw3IEBAIHN1YiB3YWl0VW50aWxJT1NTaW11bGF0b3JEZXZpY2VJc0luU3RhdGUKIHsKICAg
ICBteSAoJGRldmljZVVESUQsICR3YWl0VW50aWxTdGF0ZSkgPSBAXzsKICAgICBteSAkZGV2aWNl
ID0gaW9zU2ltdWxhdG9yRGV2aWNlQnlVRElEKCRkZXZpY2VVRElEKTsKKyAgICAjIEZJWE1FOiBX
ZSBzaG91bGQgYWRkIGEgbWF4aW11bSB0aW1lIGxpbWl0IHRvIHdhaXQgaGVyZS4KICAgICB3aGls
ZSAoJGRldmljZS0+e3N0YXRlfSBuZSAkd2FpdFVudGlsU3RhdGUpIHsKICAgICAgICAgdXNsZWVw
KDUwMCAqIDEwMDApOyAjIFdhaXRpbmcgNTAwbXMgYmV0d2VlbiBmaWxlIHN5c3RlbSBwb2xscyBk
b2VzIG5vdCBtYWtlIHNjcmlwdCBydW4tc2FmYXJpIGZlZWwgc2x1Z2dpc2guCiAgICAgICAgICRk
ZXZpY2UgPSBpb3NTaW11bGF0b3JEZXZpY2VCeVVESUQoJGRldmljZVVESUQpOwpAQCAtMjI4NCwx
MSArMjI4NSwxOSBAQCBzdWIgcmVsYXVuY2hJT1NTaW11bGF0b3IoJCkKICAgICB3YWl0VW50aWxJ
T1NTaW11bGF0b3JEZXZpY2VJc0luU3RhdGUoJHNpbXVsYXRlZERldmljZS0+e1VESUR9LCBTSU1V
TEFUT1JfREVWSUNFX1NUQVRFX0JPT1RFRCk7CiB9CiAKK3N1YiByZWdpc3RlcklPU1NpbXVsYXRv
cigpCit7CisgICAgY2hvbXAobXkgJGRldmVsb3BlckRpcmVjdG9yeSA9IGB4Y29kZS1zZWxlY3Qg
LS1wcmludC1wYXRoYCk7CisgICAgbXkgJHNpbXVsYXRvckFwcCA9IEZpbGU6OlNwZWMtPmNhdGZp
bGUoJGRldmVsb3BlckRpcmVjdG9yeSwgIkFwcGxpY2F0aW9ucyIsICJTaW11bGF0b3IuYXBwIik7
CisgICAgbXkgJHJlc3VsdCA9IGV4aXRTdGF0dXMoc3lzdGVtKCIvU3lzdGVtL0xpYnJhcnkvRnJh
bWV3b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3b3JrL0ZyYW1ld29ya3MvTGF1bmNoU2VydmljZXMu
ZnJhbWV3b3JrL1ZlcnNpb25zL0N1cnJlbnQvU3VwcG9ydC9sc3JlZ2lzdGVyIiwgIi1mIiwgJHNp
bXVsYXRvckFwcCkpOworICAgIGRpZSAiRmFpbGVkIHRvIHJlZ2lzdGVyIFNpbXVsYXRvci5hcHAg
d2l0aCBMYXVuY2ggU2VydmljZXM6ICRyZXN1bHQiIGlmICRyZXN1bHQ7Cit9CisKIHN1YiBxdWl0
SU9TU2ltdWxhdG9yKDskKQogewogICAgIG15ICgkd2FpdEZvclNodXRkb3duT2ZTaW11bGF0ZWRE
ZXZpY2VVRElEKSA9IEBfOwogICAgICMgRklYTUU6IDxyZGFyOi8vcHJvYmxlbS8yMDkxNjE0MD4g
U3dpdGNoIHRvIHVzaW5nIENvcmVTaW11bGF0b3IuZnJhbWV3b3JrIGZvciBsYXVuY2hpbmcgYW5k
IHF1aXR0aW5nIGlPUyBTaW11bGF0b3IKLSAgICBleGl0U3RhdHVzKHN5c3RlbSB7Im9zYXNjcmlw
dCJ9ICJvc2FzY3JpcHQiLCAiLWUiLCAndGVsbCBhcHBsaWNhdGlvbiBpZCAiY29tLmFwcGxlLmlw
aG9uZXNpbXVsYXRvciIgdG8gcXVpdCcpID09IDAgb3IgZGllICJGYWlsZWQgdG8gcXVpdCBpT1Mg
U2ltdWxhdG9yOiAkISI7CisgICAgZXhpdFN0YXR1cyhzeXN0ZW0geyJvc2FzY3JpcHQifSAib3Nh
c2NyaXB0IiwgIi1lIiwgJ3RlbGwgYXBwbGljYXRpb24gaWQgImNvbS5hcHBsZS5pcGhvbmVzaW11
bGF0b3IiIHRvIHF1aXQnKSA9PSAwIG9yIHJlZ2lzdGVySU9TU2ltdWxhdG9yOwogICAgIGlmICgh
ZGVmaW5lZCgkd2FpdEZvclNodXRkb3duT2ZTaW11bGF0ZWREZXZpY2VVRElEKSkgewogICAgICAg
ICByZXR1cm47CiAgICAgfQo=
</data>
<flag name="review"
          id="304957"
          type_id="1"
          status="-"
          setter="dbates"
    />
    <flag name="commit-queue"
          id="304958"
          type_id="3"
          status="-"
          setter="dbates"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281109</attachid>
            <date>2016-06-11 13:17:10 -0700</date>
            <delta_ts>2016-06-12 20:31:57 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_lsregister5</filename>
            <type>text/plain</type>
            <size>3139</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIwMTk3NykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDIxIEBACisyMDE2LTA2LTExICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1MgU2ltdWxhdG9yIGZhaWxzIHRvIHF1aXQgaW50ZXJtaXR0ZW50bHkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODY1MQor
ICAgICAgICByZGFyOi8vcHJvYmxlbS8yNjQ5OTgyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgorICAgICAg
ICAocmVsYXVuY2hJT1NTaW11bGF0b3IpOgorICAgICAgICBMYXVuY2ggaU9TIFNpbXVsYXRvciB1
c2luZyBjb21wbGV0ZSBwYXRoLgorICAgICAgICBQYXJ0aWFsbHkgcmV2ZXJ0aW5nIGh0dHA6Ly90
cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE4NDIwMgorICAgICAgICAocXVpdElPU1NpbXVsYXRv
cik6CisgICAgICAgIERvIG5vdCBkaWUgaWYgcXVpdHRpbmcgaW9zIFNpbXVsYXRvciBmYWlscywg
c28gdGhhdCByZWxhdW5jaElPU1NpbXVsYXRvciBjYW4gCisgICAgICAgIHN0aWxsIGF0dGVtcHQg
dG8gbGF1bmNoIHRoZSBzaW11bGF0b3IuCisgICAgICAgICh3YWl0VW50aWxJT1NTaW11bGF0b3JE
ZXZpY2VJc0luU3RhdGUpOgorICAgICAgICBBZGRlZCBhIEZJWE1FLgorCiAyMDE2LTA2LTEwICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRml4
IENNYWtlIGJ1aWxkLgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQkocmV2aXNpb24gMjAxOTc1KQorKysg
VG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCSh3b3JraW5nIGNvcHkpCkBAIC0yMjUyLDYgKzIy
NTIsNyBAQCBzdWIgd2FpdFVudGlsSU9TU2ltdWxhdG9yRGV2aWNlSXNJblN0YXRlCiB7CiAgICAg
bXkgKCRkZXZpY2VVRElELCAkd2FpdFVudGlsU3RhdGUpID0gQF87CiAgICAgbXkgJGRldmljZSA9
IGlvc1NpbXVsYXRvckRldmljZUJ5VURJRCgkZGV2aWNlVURJRCk7CisgICAgIyBGSVhNRTogV2Ug
c2hvdWxkIGFkZCBhIG1heGltdW0gdGltZSBsaW1pdCB0byB3YWl0IGhlcmUuCiAgICAgd2hpbGUg
KCRkZXZpY2UtPntzdGF0ZX0gbmUgJHdhaXRVbnRpbFN0YXRlKSB7CiAgICAgICAgIHVzbGVlcCg1
MDAgKiAxMDAwKTsgIyBXYWl0aW5nIDUwMG1zIGJldHdlZW4gZmlsZSBzeXN0ZW0gcG9sbHMgZG9l
cyBub3QgbWFrZSBzY3JpcHQgcnVuLXNhZmFyaSBmZWVsIHNsdWdnaXNoLgogICAgICAgICAkZGV2
aWNlID0gaW9zU2ltdWxhdG9yRGV2aWNlQnlVRElEKCRkZXZpY2VVRElEKTsKQEAgLTIyNzcsOSAr
MjI3OCw5IEBAIHN1YiByZWxhdW5jaElPU1NpbXVsYXRvcigkKQogICAgIG15ICgkc2ltdWxhdGVk
RGV2aWNlKSA9IEBfOwogICAgIHF1aXRJT1NTaW11bGF0b3IoJHNpbXVsYXRlZERldmljZS0+e1VE
SUR9KTsKIAotICAgICMgRklYTUU6IDxyZGFyOi8vcHJvYmxlbS8yMDkxNjE0MD4gU3dpdGNoIHRv
IHVzaW5nIENvcmVTaW11bGF0b3IuZnJhbWV3b3JrIGZvciBsYXVuY2hpbmcgYW5kIHF1aXR0aW5n
IGlPUyBTaW11bGF0b3IKLSAgICBteSAkaW9zU2ltdWxhdG9yQnVuZGxlSUQgPSAiY29tLmFwcGxl
LmlwaG9uZXNpbXVsYXRvciI7Ci0gICAgc3lzdGVtKCJvcGVuIiwgIi1iIiwgJGlvc1NpbXVsYXRv
ckJ1bmRsZUlELCAiLS1hcmdzIiwgIi1DdXJyZW50RGV2aWNlVURJRCIsICRzaW11bGF0ZWREZXZp
Y2UtPntVRElEfSkgPT0gMCBvciBkaWUgIkZhaWxlZCB0byBvcGVuICRpb3NTaW11bGF0b3JCdW5k
bGVJRDogJCEiOworICAgIGNob21wKG15ICRkZXZlbG9wZXJEaXJlY3RvcnkgPSAkRU5We0RFVkVM
T1BFUl9ESVJ9IHx8IGB4Y29kZS1zZWxlY3QgLS1wcmludC1wYXRoYCk7IAorICAgIG15ICRpb3NT
aW11bGF0b3JQYXRoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGV2ZWxvcGVyRGlyZWN0b3J5LCAi
QXBwbGljYXRpb25zIiwgIlNpbXVsYXRvci5hcHAiKTsgCisgICAgc3lzdGVtKCJvcGVuIiwgIi1h
IiwgJGlvc1NpbXVsYXRvclBhdGgsICItLWFyZ3MiLCAiLUN1cnJlbnREZXZpY2VVRElEIiwgJHNp
bXVsYXRlZERldmljZS0+e1VESUR9KSA9PSAwIG9yIGRpZSAiRmFpbGVkIHRvIG9wZW4gJGlvc1Np
bXVsYXRvclBhdGg6ICQhIjsgCiAKICAgICB3YWl0VW50aWxJT1NTaW11bGF0b3JEZXZpY2VJc0lu
U3RhdGUoJHNpbXVsYXRlZERldmljZS0+e1VESUR9LCBTSU1VTEFUT1JfREVWSUNFX1NUQVRFX0JP
T1RFRCk7CiB9CkBAIC0yMjg4LDcgKzIyODksMTAgQEAgc3ViIHF1aXRJT1NTaW11bGF0b3IoOyQp
CiB7CiAgICAgbXkgKCR3YWl0Rm9yU2h1dGRvd25PZlNpbXVsYXRlZERldmljZVVESUQpID0gQF87
CiAgICAgIyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzIwOTE2MTQwPiBTd2l0Y2ggdG8gdXNpbmcg
Q29yZVNpbXVsYXRvci5mcmFtZXdvcmsgZm9yIGxhdW5jaGluZyBhbmQgcXVpdHRpbmcgaU9TIFNp
bXVsYXRvcgotICAgIGV4aXRTdGF0dXMoc3lzdGVtIHsib3Nhc2NyaXB0In0gIm9zYXNjcmlwdCIs
ICItZSIsICd0ZWxsIGFwcGxpY2F0aW9uIGlkICJjb20uYXBwbGUuaXBob25lc2ltdWxhdG9yIiB0
byBxdWl0JykgPT0gMCBvciBkaWUgIkZhaWxlZCB0byBxdWl0IGlPUyBTaW11bGF0b3I6ICQhIjsK
KyAgICBpZiAoZXhpdFN0YXR1cyhzeXN0ZW0geyJvc2FzY3JpcHQifSAib3Nhc2NyaXB0IiwgIi1l
IiwgJ3RlbGwgYXBwbGljYXRpb24gaWQgImNvbS5hcHBsZS5pcGhvbmVzaW11bGF0b3IiIHRvIHF1
aXQnKSkgeworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKCFkZWZpbmVkKCR3YWl0
Rm9yU2h1dGRvd25PZlNpbXVsYXRlZERldmljZVVESUQpKSB7CiAgICAgICAgIHJldHVybjsKICAg
ICB9Cg==
</data>
<flag name="review"
          id="304973"
          type_id="1"
          status="+"
          setter="dbates"
    />
    <flag name="commit-queue"
          id="304974"
          type_id="3"
          status="-"
          setter="dbates"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281151</attachid>
            <date>2016-06-12 20:31:57 -0700</date>
            <delta_ts>2016-06-12 20:33:45 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_lsregister6</filename>
            <type>text/plain</type>
            <size>3870</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIwMTk4NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI3IEBACisyMDE2LTA2LTEyICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBydW4tc2FmYXJpL3J1bi13ZWJraXQtYXBwIGZhaWwgdG8gcXVpdCBpT1Mg
c2ltdWxhdG9yIGFmdGVyIFhjb2RlIGluc3RhbGxhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4NjUxCisgICAgICAgIHJkYXI6Ly9wcm9ibGVt
LzI2NDk5ODI0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVGhpcyBjaGFuZ2UgaXMgdG8gbWFrZSBvdXIgdG9vbHMgbW9yZSByb2J1c3QuIFNvbWV0aW1l
cyBydW4tc2FmYXJpL3J1bi13ZWJraXQtYXBwIGZhaWxzIAorICAgICAgICB0byBzdGFydCB0aGUg
dGVzdHMgYXMgb25lIG9mIHRoZSBmaXJzdCB0aGluZyB0aGVzZSBzY3JpcHRzIGRvIGlzIHRvIHJl
bGF1bmNoIGlPUyBTaW11bGF0b3JzLAorICAgICAgICBhbmQgaW4gcHJvY2VzcyBjYWxsIHF1aXRJ
T1NTaW11bGF0b3IuIEluIGNhc2UgdGhlIFNpbXVsYXRvciBpcyBub3QgcmVnaXN0ZXJlZCBpbiBM
YXVuY2hTZXJ2aWNlcworICAgICAgICBmb3Igc29tZSByZWFzb24sIHF1aXRJT1NTaW11bGF0b3Ig
ZmFpbHMgYW5kIHRoZSBzY3JpcHQgc3RvcHMuIFRoaXMgY2hhbmdlIHdpbGwgbWFrZSB0aGUgc2Ny
aXB0cworICAgICAgICBzdGlsbCBjb250aW51ZSB3aGVuIHRoZXkgZmFpbCB0byBxdWl0IGlPUyBT
aW11YXRvciwgYW5kIG1vZGlmeSB0aGUgd2F5IFNpbXVsYXRvciBpcyBvcGVuZWQsIAorICAgICAg
ICBzbyB0aGF0IFNpbXVsYXRvciBpcyBpbXBsaWNpdGx5IHJlZ2lzdGVyZWQgd2l0aCBMYXVuY2hT
ZXJ2aWNlcyB3aGlsZSBvcGVuaW5nIGl0LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJz
LnBtOgorICAgICAgICAocmVsYXVuY2hJT1NTaW11bGF0b3IpOgorICAgICAgICBMYXVuY2ggaU9T
IFNpbXVsYXRvciB1c2luZyBjb21wbGV0ZSBwYXRoLiBQYXJ0aWFsbHkgcmV2ZXJ0aW5nIGh0dHA6
Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE4NDIwMi4KKyAgICAgICAgKHF1aXRJT1NTaW11
bGF0b3IpOgorICAgICAgICBEbyBub3QgZGllIGlmIHF1aXR0aW5nIGlvcyBTaW11bGF0b3IgZmFp
bHMsIHNvIHRoYXQgcmVsYXVuY2hJT1NTaW11bGF0b3IgY2FuIHN0aWxsIAorICAgICAgICBhdHRl
bXB0IHRvIGxhdW5jaCB0aGUgc2ltdWxhdG9yLgorICAgICAgICAod2FpdFVudGlsSU9TU2ltdWxh
dG9yRGV2aWNlSXNJblN0YXRlKToKKyAgICAgICAgQWRkZWQgYSBGSVhNRS4KKwogMjAxNi0wNi0x
MSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIEFk
ZHJlc3NpbmcgcG9zdC1yZXZpZXcgY29tbWVudHMgYWZ0ZXIgcjIwMTk3OC4KSW5kZXg6IFRvb2xz
L1NjcmlwdHMvd2Via2l0ZGlycy5wbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtp
dGRpcnMucG0JKHJldmlzaW9uIDIwMTk4NSkKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5w
bQkod29ya2luZyBjb3B5KQpAQCAtMjI1Miw2ICsyMjUyLDcgQEAgc3ViIHdhaXRVbnRpbElPU1Np
bXVsYXRvckRldmljZUlzSW5TdGF0ZQogewogICAgIG15ICgkZGV2aWNlVURJRCwgJHdhaXRVbnRp
bFN0YXRlKSA9IEBfOwogICAgIG15ICRkZXZpY2UgPSBpb3NTaW11bGF0b3JEZXZpY2VCeVVESUQo
JGRldmljZVVESUQpOworICAgICMgRklYTUU6IFdlIHNob3VsZCBhZGQgYSBtYXhpbXVtIHRpbWUg
bGltaXQgdG8gd2FpdCBoZXJlLgogICAgIHdoaWxlICgkZGV2aWNlLT57c3RhdGV9IG5lICR3YWl0
VW50aWxTdGF0ZSkgewogICAgICAgICB1c2xlZXAoNTAwICogMTAwMCk7ICMgV2FpdGluZyA1MDBt
cyBiZXR3ZWVuIGZpbGUgc3lzdGVtIHBvbGxzIGRvZXMgbm90IG1ha2Ugc2NyaXB0IHJ1bi1zYWZh
cmkgZmVlbCBzbHVnZ2lzaC4KICAgICAgICAgJGRldmljZSA9IGlvc1NpbXVsYXRvckRldmljZUJ5
VURJRCgkZGV2aWNlVURJRCk7CkBAIC0yMjc4LDggKzIyNzksOSBAQCBzdWIgcmVsYXVuY2hJT1NT
aW11bGF0b3IoJCkKICAgICBxdWl0SU9TU2ltdWxhdG9yKCRzaW11bGF0ZWREZXZpY2UtPntVRElE
fSk7CiAKICAgICAjIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vMjA5MTYxNDA+IFN3aXRjaCB0byB1
c2luZyBDb3JlU2ltdWxhdG9yLmZyYW1ld29yayBmb3IgbGF1bmNoaW5nIGFuZCBxdWl0dGluZyBp
T1MgU2ltdWxhdG9yCi0gICAgbXkgJGlvc1NpbXVsYXRvckJ1bmRsZUlEID0gImNvbS5hcHBsZS5p
cGhvbmVzaW11bGF0b3IiOwotICAgIHN5c3RlbSgib3BlbiIsICItYiIsICRpb3NTaW11bGF0b3JC
dW5kbGVJRCwgIi0tYXJncyIsICItQ3VycmVudERldmljZVVESUQiLCAkc2ltdWxhdGVkRGV2aWNl
LT57VURJRH0pID09IDAgb3IgZGllICJGYWlsZWQgdG8gb3BlbiAkaW9zU2ltdWxhdG9yQnVuZGxl
SUQ6ICQhIjsKKyAgICBjaG9tcChteSAkZGV2ZWxvcGVyRGlyZWN0b3J5ID0gJEVOVntERVZFTE9Q
RVJfRElSfSB8fCBgeGNvZGUtc2VsZWN0IC0tcHJpbnQtcGF0aGApOyAKKyAgICBteSAkaW9zU2lt
dWxhdG9yUGF0aCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRldmVsb3BlckRpcmVjdG9yeSwgIkFw
cGxpY2F0aW9ucyIsICJTaW11bGF0b3IuYXBwIik7IAorICAgIHN5c3RlbSgib3BlbiIsICItYSIs
ICRpb3NTaW11bGF0b3JQYXRoLCAiLS1hcmdzIiwgIi1DdXJyZW50RGV2aWNlVURJRCIsICRzaW11
bGF0ZWREZXZpY2UtPntVRElEfSkgPT0gMCBvciBkaWUgIkZhaWxlZCB0byBvcGVuICRpb3NTaW11
bGF0b3JQYXRoOiAkISI7IAogCiAgICAgd2FpdFVudGlsSU9TU2ltdWxhdG9yRGV2aWNlSXNJblN0
YXRlKCRzaW11bGF0ZWREZXZpY2UtPntVRElEfSwgU0lNVUxBVE9SX0RFVklDRV9TVEFURV9CT09U
RUQpOwogfQpAQCAtMjI4OCw3ICsyMjkwLDExIEBAIHN1YiBxdWl0SU9TU2ltdWxhdG9yKDskKQog
ewogICAgIG15ICgkd2FpdEZvclNodXRkb3duT2ZTaW11bGF0ZWREZXZpY2VVRElEKSA9IEBfOwog
ICAgICMgRklYTUU6IDxyZGFyOi8vcHJvYmxlbS8yMDkxNjE0MD4gU3dpdGNoIHRvIHVzaW5nIENv
cmVTaW11bGF0b3IuZnJhbWV3b3JrIGZvciBsYXVuY2hpbmcgYW5kIHF1aXR0aW5nIGlPUyBTaW11
bGF0b3IKLSAgICBleGl0U3RhdHVzKHN5c3RlbSB7Im9zYXNjcmlwdCJ9ICJvc2FzY3JpcHQiLCAi
LWUiLCAndGVsbCBhcHBsaWNhdGlvbiBpZCAiY29tLmFwcGxlLmlwaG9uZXNpbXVsYXRvciIgdG8g
cXVpdCcpID09IDAgb3IgZGllICJGYWlsZWQgdG8gcXVpdCBpT1MgU2ltdWxhdG9yOiAkISI7Cisg
ICAgaWYgKGV4aXRTdGF0dXMoc3lzdGVtIHsib3Nhc2NyaXB0In0gIm9zYXNjcmlwdCIsICItZSIs
ICd0ZWxsIGFwcGxpY2F0aW9uIGlkICJjb20uYXBwbGUuaXBob25lc2ltdWxhdG9yIiB0byBxdWl0
JykpIHsKKyAgICAgICAgIyBvc2FzY3JpcHQgcmV0dXJucyBhIG5vbi16ZXJvIGV4aXQgc3RhdHVz
IGlmIFNpbXVsYXRvci5hcHAgaXMgbm90IHJlZ2lzdGVyZWQgaW4gTGF1bmNoU2VydmljZXMuCisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBpZiAoIWRlZmluZWQoJHdhaXRGb3JTaHV0ZG93
bk9mU2ltdWxhdGVkRGV2aWNlVURJRCkpIHsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
</data>
<flag name="commit-queue"
          id="305006"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281152</attachid>
            <date>2016-06-12 20:33:45 -0700</date>
            <delta_ts>2016-06-12 20:55:48 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_lsregister7</filename>
            <type>text/plain</type>
            <size>3868</size>
            <attacher name="Aakash Jain">aakash_jain</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIwMTk4NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI3IEBACisyMDE2LTA2LTEyICBBYWthc2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNv
bT4KKworICAgICAgICBydW4tc2FmYXJpL3J1bi13ZWJraXQtYXBwIGZhaWwgdG8gcXVpdCBpT1Mg
c2ltdWxhdG9yIGFmdGVyIFhjb2RlIGluc3RhbGxhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4NjUxCisgICAgICAgIHJkYXI6Ly9wcm9ibGVt
LzI2NDk5ODI0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFuaWVsIEJhdGVzLgorCisgICAgICAg
IFRoaXMgY2hhbmdlIGlzIHRvIG1ha2Ugb3VyIHRvb2xzIG1vcmUgcm9idXN0LiBTb21ldGltZXMg
cnVuLXNhZmFyaS9ydW4td2Via2l0LWFwcCBmYWlscyAKKyAgICAgICAgdG8gc3RhcnQgdGhlIHRl
c3RzIGFzIG9uZSBvZiB0aGUgZmlyc3QgdGhpbmcgdGhlc2Ugc2NyaXB0cyBkbyBpcyB0byByZWxh
dW5jaCBpT1MgU2ltdWxhdG9ycywKKyAgICAgICAgYW5kIGluIHByb2Nlc3MgY2FsbCBxdWl0SU9T
U2ltdWxhdG9yLiBJbiBjYXNlIHRoZSBTaW11bGF0b3IgaXMgbm90IHJlZ2lzdGVyZWQgaW4gTGF1
bmNoU2VydmljZXMKKyAgICAgICAgZm9yIHNvbWUgcmVhc29uLCBxdWl0SU9TU2ltdWxhdG9yIGZh
aWxzIGFuZCB0aGUgc2NyaXB0IHN0b3BzLiBUaGlzIGNoYW5nZSB3aWxsIG1ha2UgdGhlIHNjcmlw
dHMKKyAgICAgICAgc3RpbGwgY29udGludWUgd2hlbiB0aGV5IGZhaWwgdG8gcXVpdCBpT1MgU2lt
dWF0b3IsIGFuZCBtb2RpZnkgdGhlIHdheSBTaW11bGF0b3IgaXMgb3BlbmVkLCAKKyAgICAgICAg
c28gdGhhdCBTaW11bGF0b3IgaXMgaW1wbGljaXRseSByZWdpc3RlcmVkIHdpdGggTGF1bmNoU2Vy
dmljZXMgd2hpbGUgb3BlbmluZyBpdC4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0ZGlycy5w
bToKKyAgICAgICAgKHJlbGF1bmNoSU9TU2ltdWxhdG9yKToKKyAgICAgICAgTGF1bmNoIGlPUyBT
aW11bGF0b3IgdXNpbmcgY29tcGxldGUgcGF0aC4gUGFydGlhbGx5IHJldmVydGluZyBodHRwOi8v
dHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xODQyMDIuCisgICAgICAgIChxdWl0SU9TU2ltdWxh
dG9yKToKKyAgICAgICAgRG8gbm90IGRpZSBpZiBxdWl0dGluZyBpb3MgU2ltdWxhdG9yIGZhaWxz
LCBzbyB0aGF0IHJlbGF1bmNoSU9TU2ltdWxhdG9yIGNhbiBzdGlsbCAKKyAgICAgICAgYXR0ZW1w
dCB0byBsYXVuY2ggdGhlIHNpbXVsYXRvci4KKyAgICAgICAgKHdhaXRVbnRpbElPU1NpbXVsYXRv
ckRldmljZUlzSW5TdGF0ZSk6CisgICAgICAgIEFkZGVkIGEgRklYTUUuCisKIDIwMTYtMDYtMTEg
IE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGRy
ZXNzaW5nIHBvc3QtcmV2aWV3IGNvbW1lbnRzIGFmdGVyIHIyMDE5NzguCkluZGV4OiBUb29scy9T
Y3JpcHRzL3dlYmtpdGRpcnMucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRk
aXJzLnBtCShyZXZpc2lvbiAyMDE5ODUpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0J
KHdvcmtpbmcgY29weSkKQEAgLTIyNTIsNiArMjI1Miw3IEBAIHN1YiB3YWl0VW50aWxJT1NTaW11
bGF0b3JEZXZpY2VJc0luU3RhdGUKIHsKICAgICBteSAoJGRldmljZVVESUQsICR3YWl0VW50aWxT
dGF0ZSkgPSBAXzsKICAgICBteSAkZGV2aWNlID0gaW9zU2ltdWxhdG9yRGV2aWNlQnlVRElEKCRk
ZXZpY2VVRElEKTsKKyAgICAjIEZJWE1FOiBXZSBzaG91bGQgYWRkIGEgbWF4aW11bSB0aW1lIGxp
bWl0IHRvIHdhaXQgaGVyZS4KICAgICB3aGlsZSAoJGRldmljZS0+e3N0YXRlfSBuZSAkd2FpdFVu
dGlsU3RhdGUpIHsKICAgICAgICAgdXNsZWVwKDUwMCAqIDEwMDApOyAjIFdhaXRpbmcgNTAwbXMg
YmV0d2VlbiBmaWxlIHN5c3RlbSBwb2xscyBkb2VzIG5vdCBtYWtlIHNjcmlwdCBydW4tc2FmYXJp
IGZlZWwgc2x1Z2dpc2guCiAgICAgICAgICRkZXZpY2UgPSBpb3NTaW11bGF0b3JEZXZpY2VCeVVE
SUQoJGRldmljZVVESUQpOwpAQCAtMjI3OCw4ICsyMjc5LDkgQEAgc3ViIHJlbGF1bmNoSU9TU2lt
dWxhdG9yKCQpCiAgICAgcXVpdElPU1NpbXVsYXRvcigkc2ltdWxhdGVkRGV2aWNlLT57VURJRH0p
OwogCiAgICAgIyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzIwOTE2MTQwPiBTd2l0Y2ggdG8gdXNp
bmcgQ29yZVNpbXVsYXRvci5mcmFtZXdvcmsgZm9yIGxhdW5jaGluZyBhbmQgcXVpdHRpbmcgaU9T
IFNpbXVsYXRvcgotICAgIG15ICRpb3NTaW11bGF0b3JCdW5kbGVJRCA9ICJjb20uYXBwbGUuaXBo
b25lc2ltdWxhdG9yIjsKLSAgICBzeXN0ZW0oIm9wZW4iLCAiLWIiLCAkaW9zU2ltdWxhdG9yQnVu
ZGxlSUQsICItLWFyZ3MiLCAiLUN1cnJlbnREZXZpY2VVRElEIiwgJHNpbXVsYXRlZERldmljZS0+
e1VESUR9KSA9PSAwIG9yIGRpZSAiRmFpbGVkIHRvIG9wZW4gJGlvc1NpbXVsYXRvckJ1bmRsZUlE
OiAkISI7CisgICAgY2hvbXAobXkgJGRldmVsb3BlckRpcmVjdG9yeSA9ICRFTlZ7REVWRUxPUEVS
X0RJUn0gfHwgYHhjb2RlLXNlbGVjdCAtLXByaW50LXBhdGhgKTsgCisgICAgbXkgJGlvc1NpbXVs
YXRvclBhdGggPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkZXZlbG9wZXJEaXJlY3RvcnksICJBcHBs
aWNhdGlvbnMiLCAiU2ltdWxhdG9yLmFwcCIpOyAKKyAgICBzeXN0ZW0oIm9wZW4iLCAiLWEiLCAk
aW9zU2ltdWxhdG9yUGF0aCwgIi0tYXJncyIsICItQ3VycmVudERldmljZVVESUQiLCAkc2ltdWxh
dGVkRGV2aWNlLT57VURJRH0pID09IDAgb3IgZGllICJGYWlsZWQgdG8gb3BlbiAkaW9zU2ltdWxh
dG9yUGF0aDogJCEiOyAKIAogICAgIHdhaXRVbnRpbElPU1NpbXVsYXRvckRldmljZUlzSW5TdGF0
ZSgkc2ltdWxhdGVkRGV2aWNlLT57VURJRH0sIFNJTVVMQVRPUl9ERVZJQ0VfU1RBVEVfQk9PVEVE
KTsKIH0KQEAgLTIyODgsNyArMjI5MCwxMSBAQCBzdWIgcXVpdElPU1NpbXVsYXRvcig7JCkKIHsK
ICAgICBteSAoJHdhaXRGb3JTaHV0ZG93bk9mU2ltdWxhdGVkRGV2aWNlVURJRCkgPSBAXzsKICAg
ICAjIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0vMjA5MTYxNDA+IFN3aXRjaCB0byB1c2luZyBDb3Jl
U2ltdWxhdG9yLmZyYW1ld29yayBmb3IgbGF1bmNoaW5nIGFuZCBxdWl0dGluZyBpT1MgU2ltdWxh
dG9yCi0gICAgZXhpdFN0YXR1cyhzeXN0ZW0geyJvc2FzY3JpcHQifSAib3Nhc2NyaXB0IiwgIi1l
IiwgJ3RlbGwgYXBwbGljYXRpb24gaWQgImNvbS5hcHBsZS5pcGhvbmVzaW11bGF0b3IiIHRvIHF1
aXQnKSA9PSAwIG9yIGRpZSAiRmFpbGVkIHRvIHF1aXQgaU9TIFNpbXVsYXRvcjogJCEiOworICAg
IGlmIChleGl0U3RhdHVzKHN5c3RlbSB7Im9zYXNjcmlwdCJ9ICJvc2FzY3JpcHQiLCAiLWUiLCAn
dGVsbCBhcHBsaWNhdGlvbiBpZCAiY29tLmFwcGxlLmlwaG9uZXNpbXVsYXRvciIgdG8gcXVpdCcp
KSB7CisgICAgICAgICMgb3Nhc2NyaXB0IHJldHVybnMgYSBub24temVybyBleGl0IHN0YXR1cyBp
ZiBTaW11bGF0b3IuYXBwIGlzIG5vdCByZWdpc3RlcmVkIGluIExhdW5jaFNlcnZpY2VzLgorICAg
ICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKCFkZWZpbmVkKCR3YWl0Rm9yU2h1dGRvd25P
ZlNpbXVsYXRlZERldmljZVVESUQpKSB7CiAgICAgICAgIHJldHVybjsKICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>