<?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>192026</bug_id>
          
          <creation_ts>2018-11-27 12:17:04 -0800</creation_ts>
          <short_desc>[WebRTC][GStreamer] Make sure to have the default microphone on the top of the list</short_desc>
          <delta_ts>2018-11-28 06:57:57 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Thibault Saunier">tsaunier</reporter>
          <assigned_to name="Thibault Saunier">tsaunier</assigned_to>
          <cc>calvaris</cc>
    
    <cc>commit-queue</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1482035</commentid>
    <comment_count>0</comment_count>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-27 12:17:04 -0800</bug_when>
    <thetext>[WebRTC][GStreamer] Make sure to have the default microphone on the top of the list</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482037</commentid>
    <comment_count>1</comment_count>
      <attachid>355759</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-27 12:17:46 -0800</bug_when>
    <thetext>Created attachment 355759
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482391</commentid>
    <comment_count>2</comment_count>
      <attachid>355759</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2018-11-28 04:14:35 -0800</bug_when>
    <thetext>Comment on attachment 355759
Patch

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

Looks good, just a couple nits

&gt; Source/WebCore/ChangeLog:8
&gt; +        [WebRTC][GStreamer] Make sure to have the default microphone on the top of the list

Remove this :)

&gt; Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp:33
&gt; +static gint
&gt; +sortDevices(gconstpointer a, gconstpointer b)
&gt; +{

In one line please!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482409</commentid>
    <comment_count>3</comment_count>
      <attachid>355866</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-28 05:56:13 -0800</bug_when>
    <thetext>Created attachment 355866
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482410</commentid>
    <comment_count>4</comment_count>
      <attachid>355867</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-28 05:56:41 -0800</bug_when>
    <thetext>Created attachment 355867
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482411</commentid>
    <comment_count>5</comment_count>
      <attachid>355867</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-28 05:57:25 -0800</bug_when>
    <thetext>Comment on attachment 355867
Patch for landing

Rejecting attachment 355867 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-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 355867, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Logging in as commit-queue@webkit.org...
Fetching: https://bugs.webkit.org/attachment.cgi?id=355867&amp;action=edit
Fetching: https://bugs.webkit.org/show_bug.cgi?id=192026&amp;ctype=xml&amp;excludefield=attachmentdata
Processing 1 patch from 1 bug.
Processing patch 355867 from bug 192026.
Fetching: https://bugs.webkit.org/attachment.cgi?id=355867
Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Parsed 7 diffs from patch file(s).
patching file Source/WebCore/ChangeLog
patching file Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp
patching file Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h
patching file Tools/ChangeLog
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file Tools/ChangeLog.rej
patching file Tools/flatpak/org.webkit.CommonModules.yaml
patching file Tools/gstreamer/jhbuild.modules
patching file Tools/gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: https://webkit-queues.webkit.org/results/10181753</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482412</commentid>
    <comment_count>6</comment_count>
      <attachid>355868</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-28 06:04:45 -0800</bug_when>
    <thetext>Created attachment 355868
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482413</commentid>
    <comment_count>7</comment_count>
      <attachid>355868</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-28 06:06:58 -0800</bug_when>
    <thetext>Comment on attachment 355868
Patch for landing

Rejecting attachment 355868 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;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 355868, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Logging in as commit-queue@webkit.org...
Fetching: https://bugs.webkit.org/attachment.cgi?id=355868&amp;action=edit
Fetching: https://bugs.webkit.org/show_bug.cgi?id=192026&amp;ctype=xml&amp;excludefield=attachmentdata
Processing 1 patch from 1 bug.
Processing patch 355868 from bug 192026.
Fetching: https://bugs.webkit.org/attachment.cgi?id=355868
Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Parsed 7 diffs from patch file(s).
patching file Source/WebCore/ChangeLog
patching file Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp
patching file Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h
patching file Tools/ChangeLog
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file Tools/ChangeLog.rej
patching file Tools/flatpak/org.webkit.CommonModules.yaml
patching file Tools/gstreamer/jhbuild.modules
patching file Tools/gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: https://webkit-queues.webkit.org/results/10181801</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482415</commentid>
    <comment_count>8</comment_count>
      <attachid>355869</attachid>
    <who name="Thibault Saunier">tsaunier</who>
    <bug_when>2018-11-28 06:19:18 -0800</bug_when>
    <thetext>Created attachment 355869
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482418</commentid>
    <comment_count>9</comment_count>
      <attachid>355869</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-28 06:56:18 -0800</bug_when>
    <thetext>Comment on attachment 355869
Patch for landing

Clearing flags on attachment: 355869

Committed r238609: &lt;https://trac.webkit.org/changeset/238609&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482419</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-28 06:56:20 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482420</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-28 06:57:57 -0800</bug_when>
    <thetext>&lt;rdar://problem/46308940&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355759</attachid>
            <date>2018-11-27 12:17:46 -0800</date>
            <delta_ts>2018-11-28 05:56:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192026-20181127171745.patch</filename>
            <type>text/plain</type>
            <size>18444</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTdhYjEyODg0NTY4ZDhi
ZTc4MjJhYWI4N2M0Y2IzMjVhYWI0NzJjYy4uNmIxMmMwOWNlNGI2ODgxNGEzNDFlMjA1N2U0NDc1
ZWUyY2Q3ZjVhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE4LTExLTI3ICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRDXVtH
U3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24gdGhl
IHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW1dlYlJUQ11bR1N0cmVhbWVyXSBNYWtlIHN1cmUgdG8gaGF2ZSB0aGUgZGVmYXVs
dCBtaWNyb3Bob25lIG9uIHRoZSB0b3Agb2YgdGhlIGxpc3QKKworICAgICAgICBPdGhlcndpc2Ug
d2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNzIG9uZSBpbiBzb21lIGFwcGxpY2F0aW9u
cworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBhcHBsaWNhdGlvbiBkbyB0aG91Z2gpLgor
CisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3NlZCBhcyBodHRwczovL2dpdGxhYi5mcmVl
ZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5zLWdvb2QvbWVyZ2VfcmVxdWVzdHMvMzQv
ZGlmZnMKKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFt
ZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzb3J0RGV2aWNl
cyk6CisgICAgICAgIChXZWJDb3JlOjpHU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6YWRk
RGV2aWNlKToKKyAgICAgICAgKFdlYkNvcmU6OkdTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2Vy
OjpyZWZyZXNoQ2FwdHVyZURldmljZXMpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFt
L2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oOgorCiAyMDE4LTExLTIy
ICBUaGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1N0
cmVhbWVyXVtXZWJSVENdIERvIG5vdCBydW4gZGV2aWNlIG1vbml0b3IgZm9yIGRldmljZSB0eXBl
IHdlIGRvIG5vdCBoYW5kbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2Fw
dHVyZURldmljZU1hbmFnZXIuY3BwCmluZGV4IGEyNzNkNDRhNTgxZGM1ZjYzNzgwYTg3NWE1ZGZj
OTY4NTIyZDhiNmIuLjc2MjI3Y2RjOTI1Y2NmMGRhZGQzZGQzNmNmYmU1YjU3ZTc2M2ViYzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9H
U3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2Vy
LmNwcApAQCAtMjgsNiArMjgsMjcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitzdGF0aWMg
Z2ludAorc29ydERldmljZXMoZ2NvbnN0cG9pbnRlciBhLCBnY29uc3Rwb2ludGVyIGIpCit7Cisg
ICAgR3N0RGV2aWNlKiBhZGV2ID0gR1NUX0RFVklDRShhKSwgKmJkZXYgPSBHU1RfREVWSUNFKGIp
OworICAgIEdVbmlxdWVQdHI8R3N0U3RydWN0dXJlPiBhcHJvcHMoZ3N0X2RldmljZV9nZXRfcHJv
cGVydGllcyhhZGV2KSk7CisgICAgR1VuaXF1ZVB0cjxHc3RTdHJ1Y3R1cmU+IGJwcm9wcyhnc3Rf
ZGV2aWNlX2dldF9wcm9wZXJ0aWVzKGJkZXYpKTsKKyAgICBnYm9vbGVhbiBhSXNEZWZhdWx0ID0g
RkFMU0UsIGJJc0RlZmF1bHQgPSBGQUxTRTsKKworICAgIGdzdF9zdHJ1Y3R1cmVfZ2V0X2Jvb2xl
YW4oYXByb3BzLmdldCgpLCAiaXMtZGVmYXVsdCIsICZhSXNEZWZhdWx0KTsKKyAgICBnc3Rfc3Ry
dWN0dXJlX2dldF9ib29sZWFuKGJwcm9wcy5nZXQoKSwgImlzLWRlZmF1bHQiLCAmYklzRGVmYXVs
dCk7CisKKyAgICBpZiAoYUlzRGVmYXVsdCA9PSBiSXNEZWZhdWx0KSB7CisgICAgICAgIEdVbmlx
dWVQdHI8Y2hhcj4gYU5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxheV9uYW1lKGFkZXYpKTsKKyAg
ICAgICAgR1VuaXF1ZVB0cjxjaGFyPiBiTmFtZShnc3RfZGV2aWNlX2dldF9kaXNwbGF5X25hbWUo
YmRldikpOworCisgICAgICAgIHJldHVybiBnX3N0cmNtcDAoYU5hbWUuZ2V0KCksIGJOYW1lLmdl
dCgpKTsKKyAgICB9CisKKyAgICByZXR1cm4gYUlzRGVmYXVsdCA+IGJJc0RlZmF1bHQgPyAtMSA6
IDE7Cit9CisKIEdTdHJlYW1lckF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXImIEdTdHJlYW1lckF1
ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI6OnNpbmdsZXRvbigpCiB7CiAgICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPEdTdHJlYW1lckF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI+IG1hbmFnZXI7CkBA
IC02Niw3ICs4Nyw3IEBAIGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYgR1N0cmVhbWVyQ2Fw
dHVyZURldmljZU1hbmFnZXI6OmNhcHR1cmVEZXZpY2VzKCkKICAgICByZXR1cm4gbV9kZXZpY2Vz
OwogfQogCi12b2lkIEdTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpkZXZpY2VBZGRlZChH
UmVmUHRyPEdzdERldmljZT4mJiBkZXZpY2UpCit2b2lkIEdTdHJlYW1lckNhcHR1cmVEZXZpY2VN
YW5hZ2VyOjphZGREZXZpY2UoR1JlZlB0cjxHc3REZXZpY2U+JiYgZGV2aWNlKQogewogICAgIEdV
bmlxdWVQdHI8R3N0U3RydWN0dXJlPiBwcm9wZXJ0aWVzKGdzdF9kZXZpY2VfZ2V0X3Byb3BlcnRp
ZXMoZGV2aWNlLmdldCgpKSk7CiAgICAgY29uc3QgY2hhcioga2xhc3MgPSBnc3Rfc3RydWN0dXJl
X2dldF9zdHJpbmcocHJvcGVydGllcy5nZXQoKSwgImRldmljZS5jbGFzcyIpOwpAQCAtODUsNyAr
MTA2LDEwIEBAIHZvaWQgR1N0cmVhbWVyQ2FwdHVyZURldmljZU1hbmFnZXI6OmRldmljZUFkZGVk
KEdSZWZQdHI8R3N0RGV2aWNlPiYmIGRldmljZSkKICAgICAvLyBUaGlzIGlzbid0IHJlYWxseSBh
IFVJRCBidXQgc2hvdWxkIGJlIGdvb2QgZW5vdWdoIChsaWJ3ZWJydGMKICAgICAvLyBpdHNlbGYg
ZG9lcyB0aGF0IGF0IGxlYXN0IGZvciBwdWxzZWF1ZGlvIGRldmljZXMpLgogICAgIEdVbmlxdWVQ
dHI8Y2hhcj4gZGV2aWNlTmFtZShnc3RfZGV2aWNlX2dldF9kaXNwbGF5X25hbWUoZGV2aWNlLmdl
dCgpKSk7Ci0gICAgU3RyaW5nIGlkZW50aWZpZXIgPSBTdHJpbmc6OmZyb21VVEY4KGRldmljZU5h
bWUuZ2V0KCkpOworICAgIGdib29sZWFuIGlzRGVmYXVsdCA9IEZBTFNFOworICAgIGdzdF9zdHJ1
Y3R1cmVfZ2V0X2Jvb2xlYW4ocHJvcGVydGllcy5nZXQoKSwgImlzLWRlZmF1bHQiLCAmaXNEZWZh
dWx0KTsKKworICAgIFN0cmluZyBpZGVudGlmaWVyID0gU3RyaW5nOjpmb3JtYXQoIiVzJXMiLCBp
c0RlZmF1bHQgPyAiZGVmYXVsdDogIiA6ICIiLCBkZXZpY2VOYW1lLmdldCgpKTsKIAogICAgIGF1
dG8gZ3N0Q2FwdHVyZURldmljZSA9IEdTdHJlYW1lckNhcHR1cmVEZXZpY2UoV1RGTW92ZShkZXZp
Y2UpLCBpZGVudGlmaWVyLCB0eXBlLCBpZGVudGlmaWVyKTsKICAgICBnc3RDYXB0dXJlRGV2aWNl
LnNldEVuYWJsZWQodHJ1ZSk7CkBAIC0xMjAsMTAgKzE0NCwxMSBAQCB2b2lkIEdTdHJlYW1lckNh
cHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQ2FwdHVyZURldmljZXMoKQogICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgR0xpc3QqIGRldmljZXMgPSBnc3RfZGV2aWNlX21vbml0b3JfZ2V0
X2RldmljZXMobV9kZXZpY2VNb25pdG9yLmdldCgpKTsKKyAgICBHTGlzdCogZGV2aWNlcyA9IGdf
bGlzdF9zb3J0KGdzdF9kZXZpY2VfbW9uaXRvcl9nZXRfZGV2aWNlcyhtX2RldmljZU1vbml0b3Iu
Z2V0KCkpLCBzb3J0RGV2aWNlcyk7CiAgICAgd2hpbGUgKGRldmljZXMpIHsKICAgICAgICAgR1Jl
ZlB0cjxHc3REZXZpY2U+IGRldmljZSA9IGFkb3B0R1JlZihHU1RfREVWSUNFX0NBU1QoZGV2aWNl
cy0+ZGF0YSkpOwotICAgICAgICBkZXZpY2VBZGRlZChXVEZNb3ZlKGRldmljZSkpOworCisgICAg
ICAgIGFkZERldmljZShXVEZNb3ZlKGRldmljZSkpOwogICAgICAgICBkZXZpY2VzID0gZ19saXN0
X2RlbGV0ZV9saW5rKGRldmljZXMsIGRldmljZXMpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1
cmVEZXZpY2VNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9n
c3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmljZU1hbmFnZXIuaAppbmRleCAyYTY0MmYzZDFl
MzkwNTVmYmZkOWY2MzZjNGRmZjNhZjk4NWVjMGI4Li5jZTExYzRmM2E4YzNmZjE1NmE4NWVjYWQz
MjMyYzg1ZjA3OTY3MWY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRp
YXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmljZU1hbmFnZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2Fw
dHVyZURldmljZU1hbmFnZXIuaApAQCAtMzgsNyArMzgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCBDYXB0dXJlRGV2aWNlOjpEZXZpY2VUeXBlIGRldmljZVR5cGUoKSA9IDA7CiAKIHByaXZhdGU6
Ci0gICAgdm9pZCBkZXZpY2VBZGRlZChHUmVmUHRyPEdzdERldmljZT4mJik7CisgICAgdm9pZCBh
ZGREZXZpY2UoR1JlZlB0cjxHc3REZXZpY2U+JiYpOwogICAgIHZvaWQgcmVmcmVzaENhcHR1cmVE
ZXZpY2VzKCk7CiAKICAgICBHUmVmUHRyPEdzdERldmljZU1vbml0b3I+IG1fZGV2aWNlTW9uaXRv
cjsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBk
MDNmNDEwNDc1NzQwMThhYjcxMDU2OTU2NTcxOWY5OWNhMTk5ZDE1Li40Nzg1ZWY0MTA3YjQ0NThk
MWVkMjMzNzMyZGNkMzdiOWM4MDIxN2E0IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysr
IGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTgtMTEtMjcgIFRoaWJhdWx0
IFNhdW5pZXIgIDx0c2F1bmllckBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXZWJSVENdW0dTdHJl
YW1lcl0gTWFrZSBzdXJlIHRvIGhhdmUgdGhlIGRlZmF1bHQgbWljcm9waG9uZSBvbiB0aGUgdG9w
IG9mIHRoZSBsaXN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xOTIwMjYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNzIG9uZSBpbiBz
b21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBhcHBsaWNhdGlv
biBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3NlZCBhcyBodHRw
czovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5zLWdvb2QvbWVy
Z2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIGZsYXRwYWsvb3JnLndlYmtpdC5Db21t
b25Nb2R1bGVzLnlhbWw6CisgICAgICAgICogZ3N0cmVhbWVyL2poYnVpbGQubW9kdWxlczoKKyAg
ICAgICAgKiBnc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQtcHVsc2UtTWFy
ay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaDogQWRkZWQuCisKIDIwMTgtMTEtMTMg
IFRoaWJhdWx0IFNhdW5pZXIgIDx0c2F1bmllckBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtd
W01pbmlCcm93c2VyXSBIYW5kbGUgRGV2aWNlIEluZm8gcGVybWlzc2lvbiByZXF1ZXN0cwpkaWZm
IC0tZ2l0IGEvVG9vbHMvZmxhdHBhay9vcmcud2Via2l0LkNvbW1vbk1vZHVsZXMueWFtbCBiL1Rv
b2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21tb25Nb2R1bGVzLnlhbWwKaW5kZXggNmJmN2Q4NmFm
YzIzY2JkMTUxZWIwNmJlOTdiYzlkMjE5ZmM3MGExNy4uMjQ3NTk2ZTA4ZGJjMmM5ZGJhNDhmMjcy
NDUwY2FkMzllMjEwNDRkMiAxMDA2NDQKLS0tIGEvVG9vbHMvZmxhdHBhay9vcmcud2Via2l0LkNv
bW1vbk1vZHVsZXMueWFtbAorKysgYi9Ub29scy9mbGF0cGFrL29yZy53ZWJraXQuQ29tbW9uTW9k
dWxlcy55YW1sCkBAIC0xNzEsNiArMTcxLDggQEAKICAgICAgIHBhdGg6IC4uL2dzdHJlYW1lci9w
YXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxMi1tYXRyb3NrZGVtdXgtZG8tbm90LXVzZS1NYXBJ
bmZvLmRhdGEtYWZ0ZXItdW5tYXBwaW5nLnBhdGNoCiAgICAgLSB0eXBlOiBwYXRjaAogICAgICAg
cGF0aDogLi4vZ3N0cmVhbWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDEzLUF2b2lkLXdh
cm5pbmctd2hlbi1yZXBvcnRpbmctYWJvdXQtZGVjcnlwdG9ycy5wYXRjaAorICAgIC0gdHlwZTog
cGF0Y2gKKyAgICAgIHBhdGg6IC4uL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2Qt
MDAxNC1wdWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0LnBhdGNoCiAgIGNvbmZp
Zy1vcHRzOgogICAgIC0gLURkaXNhYmxlX2d0a2RvYz10cnVlCiAtIG5hbWU6IHgyNjQKZGlmZiAt
LWdpdCBhL1Rvb2xzL2dzdHJlYW1lci9qaGJ1aWxkLm1vZHVsZXMgYi9Ub29scy9nc3RyZWFtZXIv
amhidWlsZC5tb2R1bGVzCmluZGV4IDYwZGUwMTk0ZjM1ZWNhZDZlZGY1NzQ3NTQ2YTAyYzFjNDE3
ZmU2ZGUuLmM3Y2Q0ZDk3YjRjNzcwNjVkNjA5NjQ2MGYwM2JhMjFlNDFmNmQ2NTUgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL2dzdHJlYW1lci9qaGJ1aWxkLm1vZHVsZXMKKysrIGIvVG9vbHMvZ3N0cmVhbWVy
L2poYnVpbGQubW9kdWxlcwpAQCAtOTAsNiArOTAsNyBAQAogICAgICAgPHBhdGNoIGZpbGU9Imdz
dC1wbHVnaW5zLWdvb2QtMDAxMS1tYXRyb3NrYS1BZGQtdGhlLVdlYk0tZW5jcnlwdGVkLWNvbnRl
bnQtc3VwcG9ydC1pbi1tLnBhdGNoIiBzdHJpcD0iMSIgLz4gPCEtLSBNZXJnZWQgYXMgMDQzMjgy
Njk1MGQ0ZDgwZmUyYjUwZmZkMzc1N2RjMDgxNTVkZTllMyAtLT4KICAgICAgIDxwYXRjaCBmaWxl
PSJnc3QtcGx1Z2lucy1nb29kLTAwMTItbWF0cm9za2RlbXV4LWRvLW5vdC11c2UtTWFwSW5mby5k
YXRhLWFmdGVyLXVubWFwcGluZy5wYXRjaCIgc3RyaXA9IjEiIC8+IDwhLS0gTWVyZ2VkIGFzIGRl
ZmFlMzUwMzU4NjYwZTU1N2M3NGU0MWE0ZmU4YThiYjMyN2U5YzggLS0+CiAgICAgICA8cGF0Y2gg
ZmlsZT0iZ3N0LXBsdWdpbnMtZ29vZC0wMDEzLUF2b2lkLXdhcm5pbmctd2hlbi1yZXBvcnRpbmct
YWJvdXQtZGVjcnlwdG9ycy5wYXRjaCIgc3RyaXA9IjEiIC8+IDwhLS0gTWVyZ2VkIGFzIDU2NjY5
MjA1ZWIyZDA4ODc1OTY1NzRlYWJiNzgwNmIzMWM1YmE1Y2YgLS0+CisgICAgICA8cGF0Y2ggZmls
ZT0iZ3N0LXBsdWdpbnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZpY2VzLWFzLWRl
ZmF1bHQucGF0Y2giIHN0cmlwPSIxIiAvPgogICAgIDwvYnJhbmNoPgogICA8L2F1dG90b29scz4K
IApkaWZmIC0tZ2l0IGEvVG9vbHMvZ3N0cmVhbWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0w
MDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZpY2VzLWFzLWRlZmF1bHQucGF0Y2ggYi9Ub29scy9n
c3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQtcHVsc2UtTWFyay1kZWZhdWx0
LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOWEyOWFlMWVlOWJkNDVhODRk
MTBiYjMxOTJjNzRkYzQ1NDE0MGVmCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3N0cmVhbWVy
L3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZpY2Vz
LWFzLWRlZmF1bHQucGF0Y2gKQEAgLTAsMCArMSwzMDYgQEAKK0Zyb20gMDE0YzQ0NjRkY2NiZjgz
ZDRkYzNhZmU2YTZhMTA2MmQ2YWY2ZjNhNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206
IFRoaWJhdWx0IFNhdW5pZXIgPHRzYXVuaWVyQGlnYWxpYS5jb20+CitEYXRlOiBNb24sIDI2IE5v
diAyMDE4IDEzOjQ4OjU2IC0wMzAwCitTdWJqZWN0OiBbUEFUQ0hdIHB1bHNlOiBNYXJrIGRlZmF1
bHQgZGV2aWNlcyBhcyAiZGVmYXVsdCIKKworLS0tCisgZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJv
dmlkZXIuYyB8IDExMiArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIGV4dC9wdWxz
ZS9wdWxzZWRldmljZXByb3ZpZGVyLmggfCAgIDMgKworIDIgZmlsZXMgY2hhbmdlZCwgNzQgaW5z
ZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9leHQvcHVsc2UvcHVs
c2VkZXZpY2Vwcm92aWRlci5jIGIvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuYworaW5k
ZXggYTE5NjRkYWIyLi42N2UwMzE0ODcgMTAwNjQ0CistLS0gYS9leHQvcHVsc2UvcHVsc2VkZXZp
Y2Vwcm92aWRlci5jCisrKysgYi9leHQvcHVsc2UvcHVsc2VkZXZpY2Vwcm92aWRlci5jCitAQCAt
NDAsNyArNDAsNyBAQCBHU1RfREVCVUdfQ0FURUdPUllfRVhURVJOIChwdWxzZV9kZWJ1Zyk7Cisg
Cisgc3RhdGljIEdzdERldmljZSAqZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50IGlkLAorICAg
ICBjb25zdCBnY2hhciAqIGRldmljZV9uYW1lLCBHc3RDYXBzICogY2FwcywgY29uc3QgZ2NoYXIg
KiBpbnRlcm5hbF9uYW1lLAorLSAgICBHc3RQdWxzZURldmljZVR5cGUgdHlwZSwgR3N0U3RydWN0
dXJlICogcHJvcGVydGllcyk7CisrICAgIEdzdFB1bHNlRGV2aWNlVHlwZSB0eXBlLCBHc3RTdHJ1
Y3R1cmUgKiBwcm9wZXJ0aWVzLCBnYm9vbGVhbiBpc19kZWZhdWx0KTsKKyAKKyBHX0RFRklORV9U
WVBFIChHc3RQdWxzZURldmljZVByb3ZpZGVyLCBnc3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyLAor
ICAgICBHU1RfVFlQRV9ERVZJQ0VfUFJPVklERVIpOworQEAgLTY1LDYgKzY1LDEyIEBAIGVudW0K
KyB9OworIAorIAorK3R5cGVkZWYgc3RydWN0CisreworKyAgR0xpc3QgKmRldmljZXM7CisrICBH
c3RQdWxzZURldmljZVByb3ZpZGVyICpzZWxmOworK30gTGlzdERldmljZXNEYXRhOworKworIHN0
YXRpYyB2b2lkCisgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9jbGFzc19pbml0IChHc3RQdWxz
ZURldmljZVByb3ZpZGVyQ2xhc3MgKiBrbGFzcykKKyB7CitAQCAtMTg2LDcgKzE5Miw3IEBAIGNv
bnRleHRfc3RhdGVfY2IgKHBhX2NvbnRleHQgKiBjLCB2b2lkICp1c2VyZGF0YSkKKyB9CisgCisg
c3RhdGljIEdzdERldmljZSAqCistbmV3X3NvdXJjZSAoY29uc3QgcGFfc291cmNlX2luZm8gKiBp
bmZvKQorK25ld19zb3VyY2UgKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKiBzZWxmLCBjb25zdCBw
YV9zb3VyY2VfaW5mbyAqIGluZm8pCisgeworICAgR3N0Q2FwcyAqY2FwczsKKyAgIEdzdFN0cnVj
dHVyZSAqcHJvcHM7CitAQCAtMjAwLDExICsyMDYsMTIgQEAgbmV3X3NvdXJjZSAoY29uc3QgcGFf
c291cmNlX2luZm8gKiBpbmZvKQorICAgcHJvcHMgPSBnc3RfcHVsc2VfbWFrZV9zdHJ1Y3R1cmUg
KGluZm8tPnByb3BsaXN0KTsKKyAKKyAgIHJldHVybiBnc3RfcHVsc2VfZGV2aWNlX25ldyAoaW5m
by0+aW5kZXgsIGluZm8tPmRlc2NyaXB0aW9uLAorLSAgICAgIGNhcHMsIGluZm8tPm5hbWUsIEdT
VF9QVUxTRV9ERVZJQ0VfVFlQRV9TT1VSQ0UsIHByb3BzKTsKKysgICAgICBjYXBzLCBpbmZvLT5u
YW1lLCBHU1RfUFVMU0VfREVWSUNFX1RZUEVfU09VUkNFLCBwcm9wcywKKysgICAgICAhZ19zdHJj
bXAwIChpbmZvLT5uYW1lLCBzZWxmLT5kZWZhdWx0X3NvdXJjZV9uYW1lKSk7CisgfQorIAorIHN0
YXRpYyBHc3REZXZpY2UgKgorLW5ld19zaW5rIChjb25zdCBwYV9zaW5rX2luZm8gKiBpbmZvKQor
K25ld19zaW5rIChHc3RQdWxzZURldmljZVByb3ZpZGVyICogc2VsZiwgY29uc3QgcGFfc2lua19p
bmZvICogaW5mbykKKyB7CisgICBHc3RDYXBzICpjYXBzOworICAgR3N0U3RydWN0dXJlICpwcm9w
czsKK0BAIC0yMTgsNyArMjI1LDggQEAgbmV3X3NpbmsgKGNvbnN0IHBhX3NpbmtfaW5mbyAqIGlu
Zm8pCisgICBwcm9wcyA9IGdzdF9wdWxzZV9tYWtlX3N0cnVjdHVyZSAoaW5mby0+cHJvcGxpc3Qp
OworIAorICAgcmV0dXJuIGdzdF9wdWxzZV9kZXZpY2VfbmV3IChpbmZvLT5pbmRleCwgaW5mby0+
ZGVzY3JpcHRpb24sCistICAgICAgY2FwcywgaW5mby0+bmFtZSwgR1NUX1BVTFNFX0RFVklDRV9U
WVBFX1NJTkssIHByb3BzKTsKKysgICAgICBjYXBzLCBpbmZvLT5uYW1lLCBHU1RfUFVMU0VfREVW
SUNFX1RZUEVfU0lOSywgcHJvcHMsCisrICAgICAgIWdfc3RyY21wMCAoaW5mby0+bmFtZSwgc2Vs
Zi0+ZGVmYXVsdF9zaW5rX25hbWUpKTsKKyB9CisgCisgc3RhdGljIHZvaWQKK0BAIC0yMzMsMTIg
KzI0MSwyMyBAQCBnZXRfc291cmNlX2luZm9fY2IgKHBhX2NvbnRleHQgKiBjb250ZXh0LAorICAg
ICByZXR1cm47CisgICB9CisgCistICBkZXYgPSBuZXdfc291cmNlIChpbmZvKTsKKysgIGRldiA9
IG5ld19zb3VyY2UgKHNlbGYsIGluZm8pOworIAorICAgaWYgKGRldikKKyAgICAgZ3N0X2Rldmlj
ZV9wcm92aWRlcl9kZXZpY2VfYWRkIChHU1RfREVWSUNFX1BST1ZJREVSIChzZWxmKSwgZGV2KTsK
KyB9CisgCisrc3RhdGljIHZvaWQKKytnZXRfc2VydmVyX2luZm9fY2IgKHBhX2NvbnRleHQgKiBj
b250ZXh0LCBjb25zdCBwYV9zZXJ2ZXJfaW5mbyAqIGluZm8sCisrICAgIHZvaWQgKnVzZXJkYXRh
KQorK3sKKysgIEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKnNlbGYgPSB1c2VyZGF0YTsKKysKKysg
IHNlbGYtPmRlZmF1bHRfc2lua19uYW1lID0gZ19zdHJkdXAgKGluZm8tPmRlZmF1bHRfc2lua19u
YW1lKTsKKysgIHNlbGYtPmRlZmF1bHRfc291cmNlX25hbWUgPSBnX3N0cmR1cCAoaW5mby0+ZGVm
YXVsdF9zb3VyY2VfbmFtZSk7CisrICBwYV90aHJlYWRlZF9tYWlubG9vcF9zaWduYWwgKHNlbGYt
Pm1haW5sb29wLCAwKTsKKyt9CisrCisgc3RhdGljIHZvaWQKKyBnZXRfc2lua19pbmZvX2NiIChw
YV9jb250ZXh0ICogY29udGV4dCwKKyAgICAgY29uc3QgcGFfc2lua19pbmZvICogaW5mbywgaW50
IGVvbCwgdm9pZCAqdXNlcmRhdGEpCitAQCAtMjUxLDcgKzI3MCw3IEBAIGdldF9zaW5rX2luZm9f
Y2IgKHBhX2NvbnRleHQgKiBjb250ZXh0LAorICAgICByZXR1cm47CisgICB9CisgCistICBkZXYg
PSBuZXdfc2luayAoaW5mbyk7CisrICBkZXYgPSBuZXdfc2luayAoc2VsZiwgaW5mbyk7CisgCisg
ICBpZiAoZGV2KQorICAgICBnc3RfZGV2aWNlX3Byb3ZpZGVyX2RldmljZV9hZGQgKEdTVF9ERVZJ
Q0VfUFJPVklERVIgKHNlbGYpLCBkZXYpOworQEAgLTMxMiwzNCArMzMxLDM4IEBAIHN0YXRpYyB2
b2lkCisgZ2V0X3NvdXJjZV9pbmZvX2xpc3RfY2IgKHBhX2NvbnRleHQgKiBjb250ZXh0LCBjb25z
dCBwYV9zb3VyY2VfaW5mbyAqIGluZm8sCisgICAgIGludCBlb2wsIHZvaWQgKnVzZXJkYXRhKQor
IHsKKy0gIEdMaXN0ICoqZGV2aWNlcyA9IHVzZXJkYXRhOworKyAgTGlzdERldmljZXNEYXRhICpk
YXRhID0gdXNlcmRhdGE7CisgCisgICBpZiAoZW9sKQorICAgICByZXR1cm47CisgCistICAqZGV2
aWNlcyA9IGdfbGlzdF9wcmVwZW5kICgqZGV2aWNlcywgZ3N0X29iamVjdF9yZWZfc2luayAobmV3
X3NvdXJjZSAoaW5mbykpKTsKKysgIGRhdGEtPmRldmljZXMgPQorKyAgICAgIGdfbGlzdF9wcmVw
ZW5kIChkYXRhLT5kZXZpY2VzLAorKyAgICAgIGdzdF9vYmplY3RfcmVmX3NpbmsgKG5ld19zb3Vy
Y2UgKGRhdGEtPnNlbGYsIGluZm8pKSk7CisgfQorIAorIHN0YXRpYyB2b2lkCisgZ2V0X3Npbmtf
aW5mb19saXN0X2NiIChwYV9jb250ZXh0ICogY29udGV4dCwgY29uc3QgcGFfc2lua19pbmZvICog
aW5mbywKKyAgICAgaW50IGVvbCwgdm9pZCAqdXNlcmRhdGEpCisgeworLSAgR0xpc3QgKipkZXZp
Y2VzID0gdXNlcmRhdGE7CisrICBMaXN0RGV2aWNlc0RhdGEgKmRhdGEgPSB1c2VyZGF0YTsKKyAK
KyAgIGlmIChlb2wpCisgICAgIHJldHVybjsKKyAKKy0gICpkZXZpY2VzID0gZ19saXN0X3ByZXBl
bmQgKCpkZXZpY2VzLCBnc3Rfb2JqZWN0X3JlZl9zaW5rIChuZXdfc2luayAoaW5mbykpKTsKKysg
IGRhdGEtPmRldmljZXMgPQorKyAgICAgIGdfbGlzdF9wcmVwZW5kIChkYXRhLT5kZXZpY2VzLCBn
c3Rfb2JqZWN0X3JlZl9zaW5rIChuZXdfc2luayAoZGF0YS0+c2VsZiwKKysgICAgICAgICAgICAg
IGluZm8pKSk7CisgfQorIAorIHN0YXRpYyBHTGlzdCAqCisgZ3N0X3B1bHNlX2RldmljZV9wcm92
aWRlcl9wcm9iZSAoR3N0RGV2aWNlUHJvdmlkZXIgKiBwcm92aWRlcikKKyB7CisgICBHc3RQdWxz
ZURldmljZVByb3ZpZGVyICpzZWxmID0gR1NUX1BVTFNFX0RFVklDRV9QUk9WSURFUiAocHJvdmlk
ZXIpOworLSAgR0xpc3QgKmRldmljZXMgPSBOVUxMOworICAgcGFfbWFpbmxvb3AgKm0gPSBOVUxM
OworICAgcGFfY29udGV4dCAqYyA9IE5VTEw7CisgICBwYV9vcGVyYXRpb24gKm87CisrICBMaXN0
RGV2aWNlc0RhdGEgZGF0YSA9IHsgTlVMTCwgc2VsZiB9OworIAorICAgaWYgKCEobSA9IHBhX21h
aW5sb29wX25ldyAoKSkpCisgICAgIHJldHVybiBOVUxMOworQEAgLTM3Niw3ICszOTksNyBAQCBn
c3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3Zp
ZGVyKQorICAgfQorICAgR1NUX0RFQlVHX09CSkVDVCAoc2VsZiwgImNvbm5lY3RlZCIpOworIAor
LSAgbyA9IHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5mb19saXN0IChjLCBnZXRfc2lua19pbmZvX2xp
c3RfY2IsICZkZXZpY2VzKTsKKysgIG8gPSBwYV9jb250ZXh0X2dldF9zaW5rX2luZm9fbGlzdCAo
YywgZ2V0X3NpbmtfaW5mb19saXN0X2NiLCAmZGF0YSk7CisgICB3aGlsZSAocGFfb3BlcmF0aW9u
X2dldF9zdGF0ZSAobykgPT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcgJiYKKyAgICAgICBwYV9vcGVy
YXRpb25fZ2V0X3N0YXRlIChvKSA9PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworICAgICBpZiAo
cGFfbWFpbmxvb3BfaXRlcmF0ZSAobSwgVFJVRSwgTlVMTCkgPCAwKQorQEAgLTM4NCw3ICs0MDcs
NyBAQCBnc3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAq
IHByb3ZpZGVyKQorICAgfQorICAgcGFfb3BlcmF0aW9uX3VucmVmIChvKTsKKyAKKy0gIG8gPSBw
YV9jb250ZXh0X2dldF9zb3VyY2VfaW5mb19saXN0IChjLCBnZXRfc291cmNlX2luZm9fbGlzdF9j
YiwgJmRldmljZXMpOworKyAgbyA9IHBhX2NvbnRleHRfZ2V0X3NvdXJjZV9pbmZvX2xpc3QgKGMs
IGdldF9zb3VyY2VfaW5mb19saXN0X2NiLCAmZGF0YSk7CisgICB3aGlsZSAocGFfb3BlcmF0aW9u
X2dldF9zdGF0ZSAobykgPT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcgJiYKKyAgICAgICBwYV9vcGVy
YXRpb25fZ2V0X3N0YXRlIChvKSA9PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworICAgICBpZiAo
cGFfbWFpbmxvb3BfaXRlcmF0ZSAobSwgVFJVRSwgTlVMTCkgPCAwKQorQEAgLTM5NSwxOCArNDE4
LDM4IEBAIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfcHJvYmUgKEdzdERldmljZVByb3ZpZGVy
ICogcHJvdmlkZXIpCisgICBwYV9jb250ZXh0X2Rpc2Nvbm5lY3QgKGMpOworICAgcGFfbWFpbmxv
b3BfZnJlZSAobSk7CisgCistICByZXR1cm4gZGV2aWNlczsKKysgIHJldHVybiBkYXRhLmRldmlj
ZXM7CisgCisgZmFpbGVkOgorIAorICAgcmV0dXJuIE5VTEw7CisgfQorIAorK3N0YXRpYyBnYm9v
bGVhbgorK3J1bl9wdWxzZV9vcGVyYXRpb24gKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKiBzZWxm
LCBwYV9vcGVyYXRpb24gKiBvcGVyYXRpb24pCisreworKyAgaWYgKCFvcGVyYXRpb24pCisrICAg
IHJldHVybiBGQUxTRTsKKysKKysgIHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvcGVy
YXRpb24pID09IFBBX09QRVJBVElPTl9SVU5OSU5HKSB7CisrICAgIGlmICghUEFfQ09OVEVYVF9J
U19HT09EIChwYV9jb250ZXh0X2dldF9zdGF0ZSAoKHNlbGYtPmNvbnRleHQpKSkpIHsKKysgICAg
ICBwYV9vcGVyYXRpb25fY2FuY2VsIChvcGVyYXRpb24pOworKyAgICAgIHBhX29wZXJhdGlvbl91
bnJlZiAob3BlcmF0aW9uKTsKKysgICAgICByZXR1cm4gRkFMU0U7CisrICAgIH0KKysKKysgICAg
cGFfdGhyZWFkZWRfbWFpbmxvb3Bfd2FpdCAoc2VsZi0+bWFpbmxvb3ApOworKyAgfQorKworKyAg
cGFfb3BlcmF0aW9uX3VucmVmIChvcGVyYXRpb24pOworKworKyAgcmV0dXJuIFRSVUU7CisrfQor
KworIHN0YXRpYyBnYm9vbGVhbgorIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfc3RhcnQgKEdz
dERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisgeworICAgR3N0UHVsc2VEZXZpY2VQcm92aWRl
ciAqc2VsZiA9IEdTVF9QVUxTRV9ERVZJQ0VfUFJPVklERVIgKHByb3ZpZGVyKTsKKy0gIHBhX29w
ZXJhdGlvbiAqaW5pdGlhbF9vcGVyYXRpb247CisgCisgICBpZiAoIShzZWxmLT5tYWlubG9vcCA9
IHBhX3RocmVhZGVkX21haW5sb29wX25ldyAoKSkpIHsKKyAgICAgR1NUX0VSUk9SX09CSkVDVCAo
c2VsZiwgIkNvdWxkIG5vdCBjcmVhdGUgcHVsc2VhdWRpbyBtYWlubG9vcCIpOworQEAgLTQ2Miwy
NyArNTA1LDE4IEBAIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfc3RhcnQgKEdzdERldmljZVBy
b3ZpZGVyICogcHJvdmlkZXIpCisgICBwYV9jb250ZXh0X3N1YnNjcmliZSAoc2VsZi0+Y29udGV4
dCwKKyAgICAgICBQQV9TVUJTQ1JJUFRJT05fTUFTS19TT1VSQ0UgfCBQQV9TVUJTQ1JJUFRJT05f
TUFTS19TSU5LLCBOVUxMLCBOVUxMKTsKKyAKKy0gIGluaXRpYWxfb3BlcmF0aW9uID0gcGFfY29u
dGV4dF9nZXRfc291cmNlX2luZm9fbGlzdCAoc2VsZi0+Y29udGV4dCwKKy0gICAgICBnZXRfc291
cmNlX2luZm9fY2IsIHNlbGYpOworLSAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUgKGlu
aXRpYWxfb3BlcmF0aW9uKSA9PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworLSAgICBpZiAoIVBB
X0NPTlRFWFRfSVNfR09PRCAocGFfY29udGV4dF9nZXRfc3RhdGUgKChzZWxmLT5jb250ZXh0KSkp
KQorLSAgICAgIGdvdG8gY2FuY2VsX2FuZF9mYWlsOworLQorLSAgICBwYV90aHJlYWRlZF9tYWlu
bG9vcF93YWl0IChzZWxmLT5tYWlubG9vcCk7CistICB9CistICBwYV9vcGVyYXRpb25fdW5yZWYg
KGluaXRpYWxfb3BlcmF0aW9uKTsKKysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwg
cGFfY29udGV4dF9nZXRfc2VydmVyX2luZm8gKHNlbGYtPmNvbnRleHQsCisrICAgICAgICAgICAg
ICBnZXRfc2VydmVyX2luZm9fY2IsIHNlbGYpKSkKKysgICAgZ290byB1bmxvY2tfYW5kX2ZhaWw7
CisgCistICBpbml0aWFsX29wZXJhdGlvbiA9IHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5mb19saXN0
IChzZWxmLT5jb250ZXh0LAorLSAgICAgIGdldF9zaW5rX2luZm9fY2IsIHNlbGYpOworLSAgaWYg
KCFpbml0aWFsX29wZXJhdGlvbikKKysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwK
KysgICAgICAgICAgcGFfY29udGV4dF9nZXRfc291cmNlX2luZm9fbGlzdCAoc2VsZi0+Y29udGV4
dCwgZ2V0X3NvdXJjZV9pbmZvX2NiLAorKyAgICAgICAgICAgICAgc2VsZikpKQorICAgICBnb3Rv
IHVubG9ja19hbmRfZmFpbDsKKy0gIHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChpbml0
aWFsX29wZXJhdGlvbikgPT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcpIHsKKy0gICAgaWYgKCFQQV9D
T05URVhUX0lTX0dPT0QgKHBhX2NvbnRleHRfZ2V0X3N0YXRlICgoc2VsZi0+Y29udGV4dCkpKSkK
Ky0gICAgICBnb3RvIGNhbmNlbF9hbmRfZmFpbDsKKyAKKy0gICAgcGFfdGhyZWFkZWRfbWFpbmxv
b3Bfd2FpdCAoc2VsZi0+bWFpbmxvb3ApOworLSAgfQorLSAgcGFfb3BlcmF0aW9uX3VucmVmIChp
bml0aWFsX29wZXJhdGlvbik7CisrICBpZiAoIXJ1bl9wdWxzZV9vcGVyYXRpb24gKHNlbGYsIHBh
X2NvbnRleHRfZ2V0X3NpbmtfaW5mb19saXN0IChzZWxmLT5jb250ZXh0LAorKyAgICAgICAgICAg
ICAgZ2V0X3NpbmtfaW5mb19jYiwgc2VsZikpKQorKyAgICBnb3RvIHVubG9ja19hbmRfZmFpbDsK
KyAKKyAgIHBhX3RocmVhZGVkX21haW5sb29wX3VubG9jayAoc2VsZi0+bWFpbmxvb3ApOworIAor
QEAgLTQ5NSwxMSArNTI5LDYgQEAgdW5sb2NrX2FuZF9mYWlsOgorIAorIG1haW5sb29wX2ZhaWxl
ZDoKKyAgIHJldHVybiBGQUxTRTsKKy0KKy1jYW5jZWxfYW5kX2ZhaWw6CistICBwYV9vcGVyYXRp
b25fY2FuY2VsIChpbml0aWFsX29wZXJhdGlvbik7CistICBwYV9vcGVyYXRpb25fdW5yZWYgKGlu
aXRpYWxfb3BlcmF0aW9uKTsKKy0gIGdvdG8gdW5sb2NrX2FuZF9mYWlsOworIH0KKyAKKyBzdGF0
aWMgdm9pZAorQEAgLTYxMSw3ICs2NDAsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX3JlY29uZmlndXJl
X2VsZW1lbnQgKEdzdERldmljZSAqIGRldmljZSwgR3N0RWxlbWVudCAqIGVsZW1lbnQpCisgc3Rh
dGljIEdzdERldmljZSAqCisgZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50IGRldmljZV9pbmRl
eCwgY29uc3QgZ2NoYXIgKiBkZXZpY2VfbmFtZSwKKyAgICAgR3N0Q2FwcyAqIGNhcHMsIGNvbnN0
IGdjaGFyICogaW50ZXJuYWxfbmFtZSwgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGUsCistICAgIEdz
dFN0cnVjdHVyZSAqIHByb3BzKQorKyAgICBHc3RTdHJ1Y3R1cmUgKiBwcm9wcywgZ2Jvb2xlYW4g
aXNfZGVmYXVsdCkKKyB7CisgICBHc3RQdWxzZURldmljZSAqZ3N0ZGV2OworICAgY29uc3QgZ2No
YXIgKmVsZW1lbnQgPSBOVUxMOworQEAgLTYzNiw3ICs2NjUsNyBAQCBnc3RfcHVsc2VfZGV2aWNl
X25ldyAoZ3VpbnQgZGV2aWNlX2luZGV4LCBjb25zdCBnY2hhciAqIGRldmljZV9uYW1lLAorICAg
ICAgIGJyZWFrOworICAgfQorIAorLQorKyAgZ3N0X3N0cnVjdHVyZV9zZXQgKHByb3BzLCAiaXMt
ZGVmYXVsdCIsIEdfVFlQRV9CT09MRUFOLCBpc19kZWZhdWx0LCBOVUxMKTsKKyAgIGdzdGRldiA9
IGdfb2JqZWN0X25ldyAoR1NUX1RZUEVfUFVMU0VfREVWSUNFLAorICAgICAgICJkaXNwbGF5LW5h
bWUiLCBkZXZpY2VfbmFtZSwgImNhcHMiLCBjYXBzLCAiZGV2aWNlLWNsYXNzIiwga2xhc3MsCisg
ICAgICAgImludGVybmFsLW5hbWUiLCBpbnRlcm5hbF9uYW1lLCAicHJvcGVydGllcyIsIHByb3Bz
LCBOVUxMKTsKK0BAIC02NDQsNiArNjczLDcgQEAgZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50
IGRldmljZV9pbmRleCwgY29uc3QgZ2NoYXIgKiBkZXZpY2VfbmFtZSwKKyAgIGdzdGRldi0+dHlw
ZSA9IHR5cGU7CisgICBnc3RkZXYtPmRldmljZV9pbmRleCA9IGRldmljZV9pbmRleDsKKyAgIGdz
dGRldi0+ZWxlbWVudCA9IGVsZW1lbnQ7CisrICBnc3RkZXYtPmlzX2RlZmF1bHQgPSBpc19kZWZh
dWx0OworIAorICAgZ3N0X3N0cnVjdHVyZV9mcmVlIChwcm9wcyk7CisgICBnc3RfY2Fwc191bnJl
ZiAoY2Fwcyk7CitkaWZmIC0tZ2l0IGEvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaCBi
L2V4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmgKK2luZGV4IDA4OTJhZDU4Ni4uN2JjZDFi
YzQ3IDEwMDY0NAorLS0tIGEvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaAorKysrIGIv
ZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaAorQEAgLTUwLDYgKzUwLDggQEAgc3RydWN0
IF9Hc3RQdWxzZURldmljZVByb3ZpZGVyIHsKKyAKKyAgIGdjaGFyICpzZXJ2ZXI7CisgICBnY2hh
ciAqY2xpZW50X25hbWU7CisrICBnY2hhciAqZGVmYXVsdF9zb3VyY2VfbmFtZTsKKysgIGdjaGFy
ICpkZWZhdWx0X3NpbmtfbmFtZTsKKyAKKyAgIHBhX3RocmVhZGVkX21haW5sb29wICptYWlubG9v
cDsKKyAgIHBhX2NvbnRleHQgKmNvbnRleHQ7CitAQCAtODQsNiArODYsNyBAQCBzdHJ1Y3QgX0dz
dFB1bHNlRGV2aWNlIHsKKyAgIEdzdFB1bHNlRGV2aWNlVHlwZSB0eXBlOworICAgZ3VpbnQgICAg
ICAgICAgICAgZGV2aWNlX2luZGV4OworICAgZ2NoYXIgICAgICAgICAgICAqaW50ZXJuYWxfbmFt
ZTsKKysgIGdib29sZWFuICAgICAgICAgaXNfZGVmYXVsdDsKKyAgIGNvbnN0IGdjaGFyICAgICAg
KmVsZW1lbnQ7CisgfTsKKyAKKy0tIAorMi4xOS4xCisK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355866</attachid>
            <date>2018-11-28 05:56:13 -0800</date>
            <delta_ts>2018-11-28 05:56:36 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-192026-20181128105612.patch</filename>
            <type>text/plain</type>
            <size>18718</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NjA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI4ZDlkZTE3ZTIwYmFm
NTRiYmNhNzVhZDJhMzBjN2VjYmMzZWVmZC4uOWRlZWRjZjVhOWEzMzBjN2E1NjJkOWExYTQ1ZGUw
ZTk4ZWUyNTM0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTI3ICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRDXVtH
U3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24gdGhl
IHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgT3RoZXJ3aXNlIHdlIG1pZ2h0IGVuZCB1cCBwaWNraW5nIGEgdXNlbGVzcyBvbmUg
aW4gc29tZSBhcHBsaWNhdGlvbnMKKyAgICAgICAgKG5vdCBzdXJlIHdoYXQgdGhvc2UgYXBwbGlj
YXRpb24gZG8gdGhvdWdoKS4KKworICAgICAgICBHU3RyZWFtZXIgcGF0Y2ggcHJvcG9zZWQgYXMg
aHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL2dzdHJlYW1lci9nc3QtcGx1Z2lucy1nb29k
L21lcmdlX3JlcXVlc3RzLzM0L2RpZmZzCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVh
bS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6c29ydERldmljZXMpOgorICAgICAgICAoV2ViQ29yZTo6R1N0cmVhbWVyQ2FwdHVy
ZURldmljZU1hbmFnZXI6OmFkZERldmljZSk6CisgICAgICAgIChXZWJDb3JlOjpHU3RyZWFtZXJD
YXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaENhcHR1cmVEZXZpY2VzKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmljZU1hbmFn
ZXIuaDoKKwogMjAxOC0xMS0yOCAgVGhpYmF1bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW1dlYlJUQ11bR1N0cmVhbWVyXSBUYWcgYWxsIGNhbWVyYXMgd2l0aCBh
cyAnVW5rbm93bicgZmFjaW5nIG1vZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVh
bWVyQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwCmluZGV4IGEyNzNkNDRhNTgxZGM1ZjYzNzgwYTg3
NWE1ZGZjOTY4NTIyZDhiNmIuLmM3Y2YzM2I4YmQ2ZDkyNGIzODE4MmNkZjQ4NWEwM2ZkZDIyOTIy
MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJl
YW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VN
YW5hZ2VyLmNwcApAQCAtMjgsNiArMjgsMjYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitz
dGF0aWMgZ2ludCBzb3J0RGV2aWNlcyhnY29uc3Rwb2ludGVyIGEsIGdjb25zdHBvaW50ZXIgYikK
K3sKKyAgICBHc3REZXZpY2UqIGFkZXYgPSBHU1RfREVWSUNFKGEpLCAqYmRldiA9IEdTVF9ERVZJ
Q0UoYik7CisgICAgR1VuaXF1ZVB0cjxHc3RTdHJ1Y3R1cmU+IGFwcm9wcyhnc3RfZGV2aWNlX2dl
dF9wcm9wZXJ0aWVzKGFkZXYpKTsKKyAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gYnByb3Bz
KGdzdF9kZXZpY2VfZ2V0X3Byb3BlcnRpZXMoYmRldikpOworICAgIGdib29sZWFuIGFJc0RlZmF1
bHQgPSBGQUxTRSwgYklzRGVmYXVsdCA9IEZBTFNFOworCisgICAgZ3N0X3N0cnVjdHVyZV9nZXRf
Ym9vbGVhbihhcHJvcHMuZ2V0KCksICJpcy1kZWZhdWx0IiwgJmFJc0RlZmF1bHQpOworICAgIGdz
dF9zdHJ1Y3R1cmVfZ2V0X2Jvb2xlYW4oYnByb3BzLmdldCgpLCAiaXMtZGVmYXVsdCIsICZiSXNE
ZWZhdWx0KTsKKworICAgIGlmIChhSXNEZWZhdWx0ID09IGJJc0RlZmF1bHQpIHsKKyAgICAgICAg
R1VuaXF1ZVB0cjxjaGFyPiBhTmFtZShnc3RfZGV2aWNlX2dldF9kaXNwbGF5X25hbWUoYWRldikp
OworICAgICAgICBHVW5pcXVlUHRyPGNoYXI+IGJOYW1lKGdzdF9kZXZpY2VfZ2V0X2Rpc3BsYXlf
bmFtZShiZGV2KSk7CisKKyAgICAgICAgcmV0dXJuIGdfc3RyY21wMChhTmFtZS5nZXQoKSwgYk5h
bWUuZ2V0KCkpOworICAgIH0KKworICAgIHJldHVybiBhSXNEZWZhdWx0ID4gYklzRGVmYXVsdCA/
IC0xIDogMTsKK30KKwogR1N0cmVhbWVyQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlciYgR1N0cmVh
bWVyQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcjo6c2luZ2xldG9uKCkKIHsKICAgICBzdGF0aWMg
TmV2ZXJEZXN0cm95ZWQ8R1N0cmVhbWVyQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcj4gbWFuYWdl
cjsKQEAgLTY2LDcgKzg2LDcgQEAgY29uc3QgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBHU3RyZWFt
ZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6Y2FwdHVyZURldmljZXMoKQogICAgIHJldHVybiBtX2Rl
dmljZXM7CiB9CiAKLXZvaWQgR1N0cmVhbWVyQ2FwdHVyZURldmljZU1hbmFnZXI6OmRldmljZUFk
ZGVkKEdSZWZQdHI8R3N0RGV2aWNlPiYmIGRldmljZSkKK3ZvaWQgR1N0cmVhbWVyQ2FwdHVyZURl
dmljZU1hbmFnZXI6OmFkZERldmljZShHUmVmUHRyPEdzdERldmljZT4mJiBkZXZpY2UpCiB7CiAg
ICAgR1VuaXF1ZVB0cjxHc3RTdHJ1Y3R1cmU+IHByb3BlcnRpZXMoZ3N0X2RldmljZV9nZXRfcHJv
cGVydGllcyhkZXZpY2UuZ2V0KCkpKTsKICAgICBjb25zdCBjaGFyKiBrbGFzcyA9IGdzdF9zdHJ1
Y3R1cmVfZ2V0X3N0cmluZyhwcm9wZXJ0aWVzLmdldCgpLCAiZGV2aWNlLmNsYXNzIik7CkBAIC04
NSw3ICsxMDUsMTAgQEAgdm9pZCBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6ZGV2aWNl
QWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYgZGV2aWNlKQogICAgIC8vIFRoaXMgaXNuJ3QgcmVh
bGx5IGEgVUlEIGJ1dCBzaG91bGQgYmUgZ29vZCBlbm91Z2ggKGxpYndlYnJ0YwogICAgIC8vIGl0
c2VsZiBkb2VzIHRoYXQgYXQgbGVhc3QgZm9yIHB1bHNlYXVkaW8gZGV2aWNlcykuCiAgICAgR1Vu
aXF1ZVB0cjxjaGFyPiBkZXZpY2VOYW1lKGdzdF9kZXZpY2VfZ2V0X2Rpc3BsYXlfbmFtZShkZXZp
Y2UuZ2V0KCkpKTsKLSAgICBTdHJpbmcgaWRlbnRpZmllciA9IFN0cmluZzo6ZnJvbVVURjgoZGV2
aWNlTmFtZS5nZXQoKSk7CisgICAgZ2Jvb2xlYW4gaXNEZWZhdWx0ID0gRkFMU0U7CisgICAgZ3N0
X3N0cnVjdHVyZV9nZXRfYm9vbGVhbihwcm9wZXJ0aWVzLmdldCgpLCAiaXMtZGVmYXVsdCIsICZp
c0RlZmF1bHQpOworCisgICAgU3RyaW5nIGlkZW50aWZpZXIgPSBTdHJpbmc6OmZvcm1hdCgiJXMl
cyIsIGlzRGVmYXVsdCA/ICJkZWZhdWx0OiAiIDogIiIsIGRldmljZU5hbWUuZ2V0KCkpOwogCiAg
ICAgYXV0byBnc3RDYXB0dXJlRGV2aWNlID0gR1N0cmVhbWVyQ2FwdHVyZURldmljZShXVEZNb3Zl
KGRldmljZSksIGlkZW50aWZpZXIsIHR5cGUsIGlkZW50aWZpZXIpOwogICAgIGdzdENhcHR1cmVE
ZXZpY2Uuc2V0RW5hYmxlZCh0cnVlKTsKQEAgLTEyMCwxMCArMTQzLDExIEBAIHZvaWQgR1N0cmVh
bWVyQ2FwdHVyZURldmljZU1hbmFnZXI6OnJlZnJlc2hDYXB0dXJlRGV2aWNlcygpCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBHTGlzdCogZGV2aWNlcyA9IGdzdF9kZXZpY2VfbW9uaXRv
cl9nZXRfZGV2aWNlcyhtX2RldmljZU1vbml0b3IuZ2V0KCkpOworICAgIEdMaXN0KiBkZXZpY2Vz
ID0gZ19saXN0X3NvcnQoZ3N0X2RldmljZV9tb25pdG9yX2dldF9kZXZpY2VzKG1fZGV2aWNlTW9u
aXRvci5nZXQoKSksIHNvcnREZXZpY2VzKTsKICAgICB3aGlsZSAoZGV2aWNlcykgewogICAgICAg
ICBHUmVmUHRyPEdzdERldmljZT4gZGV2aWNlID0gYWRvcHRHUmVmKEdTVF9ERVZJQ0VfQ0FTVChk
ZXZpY2VzLT5kYXRhKSk7Ci0gICAgICAgIGRldmljZUFkZGVkKFdURk1vdmUoZGV2aWNlKSk7CisK
KyAgICAgICAgYWRkRGV2aWNlKFdURk1vdmUoZGV2aWNlKSk7CiAgICAgICAgIGRldmljZXMgPSBn
X2xpc3RfZGVsZXRlX2xpbmsoZGV2aWNlcywgZGV2aWNlcyk7CiAgICAgfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVy
Q2FwdHVyZURldmljZU1hbmFnZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oCmluZGV4IDJhNjQy
ZjNkMWUzOTA1NWZiZmQ5ZjYzNmM0ZGZmM2FmOTg1ZWMwYjguLmNlMTFjNGYzYThjM2ZmMTU2YTg1
ZWNhZDMyMzJjODVmMDc5NjcxZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFt
ZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oCkBAIC0zOCw3ICszOCw3IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIENhcHR1cmVEZXZpY2U6OkRldmljZVR5cGUgZGV2aWNlVHlwZSgpID0gMDsKIAogcHJp
dmF0ZToKLSAgICB2b2lkIGRldmljZUFkZGVkKEdSZWZQdHI8R3N0RGV2aWNlPiYmKTsKKyAgICB2
b2lkIGFkZERldmljZShHUmVmUHRyPEdzdERldmljZT4mJik7CiAgICAgdm9pZCByZWZyZXNoQ2Fw
dHVyZURldmljZXMoKTsKIAogICAgIEdSZWZQdHI8R3N0RGV2aWNlTW9uaXRvcj4gbV9kZXZpY2VN
b25pdG9yOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmlu
ZGV4IGY4NmI4ZmNkMDM3ODQ1NjEzYjY1YmMxMmNmMmY2OWQ1MGZiOGQ2NzMuLmZmN2Q4MGI4OTRm
NGRjMzEwMTA1MzEyNWYxMjhlNDJjZTUzNzQ2N2QgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxOC0xMS0yNyAgVGhp
YmF1bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1dlYlJUQ11b
R1N0cmVhbWVyXSBNYWtlIHN1cmUgdG8gaGF2ZSB0aGUgZGVmYXVsdCBtaWNyb3Bob25lIG9uIHRo
ZSB0b3Agb2YgdGhlIGxpc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5MjAyNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIE90aGVyd2lzZSB3ZSBtaWdodCBlbmQgdXAgcGlja2luZyBhIHVzZWxlc3Mgb25l
IGluIHNvbWUgYXBwbGljYXRpb25zCisgICAgICAgIChub3Qgc3VyZSB3aGF0IHRob3NlIGFwcGxp
Y2F0aW9uIGRvIHRob3VnaCkuCisKKyAgICAgICAgR1N0cmVhbWVyIHBhdGNoIHByb3Bvc2VkIGFz
IGh0dHBzOi8vZ2l0bGFiLmZyZWVkZXNrdG9wLm9yZy9nc3RyZWFtZXIvZ3N0LXBsdWdpbnMtZ29v
ZC9tZXJnZV9yZXF1ZXN0cy8zNC9kaWZmcworCisgICAgICAgICogZmxhdHBhay9vcmcud2Via2l0
LkNvbW1vbk1vZHVsZXMueWFtbDoKKyAgICAgICAgKiBnc3RyZWFtZXIvamhidWlsZC5tb2R1bGVz
OgorICAgICAgICAqIGdzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxNC1wdWxz
ZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0LnBhdGNoOiBBZGRlZC4KKwogMjAxOC0x
MS0xMyAgVGhpYmF1bHQgU2F1bmllciAgPHRzYXVuaWVyQGlnYWxpYS5jb20+CiAKICAgICAgICAg
W0dUS11bTWluaUJyb3dzZXJdIEhhbmRsZSBEZXZpY2UgSW5mbyBwZXJtaXNzaW9uIHJlcXVlc3Rz
CmRpZmYgLS1naXQgYS9Ub29scy9mbGF0cGFrL29yZy53ZWJraXQuQ29tbW9uTW9kdWxlcy55YW1s
IGIvVG9vbHMvZmxhdHBhay9vcmcud2Via2l0LkNvbW1vbk1vZHVsZXMueWFtbAppbmRleCA2YmY3
ZDg2YWZjMjNjYmQxNTFlYjA2YmU5N2JjOWQyMTlmYzcwYTE3Li4yNDc1OTZlMDhkYmMyYzlkYmE0
OGYyNzI0NTBjYWQzOWUyMTA0NGQyIDEwMDY0NAotLS0gYS9Ub29scy9mbGF0cGFrL29yZy53ZWJr
aXQuQ29tbW9uTW9kdWxlcy55YW1sCisrKyBiL1Rvb2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21t
b25Nb2R1bGVzLnlhbWwKQEAgLTE3MSw2ICsxNzEsOCBAQAogICAgICAgcGF0aDogLi4vZ3N0cmVh
bWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDEyLW1hdHJvc2tkZW11eC1kby1ub3QtdXNl
LU1hcEluZm8uZGF0YS1hZnRlci11bm1hcHBpbmcucGF0Y2gKICAgICAtIHR5cGU6IHBhdGNoCiAg
ICAgICBwYXRoOiAuLi9nc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTMtQXZv
aWQtd2FybmluZy13aGVuLXJlcG9ydGluZy1hYm91dC1kZWNyeXB0b3JzLnBhdGNoCisgICAgLSB0
eXBlOiBwYXRjaAorICAgICAgcGF0aDogLi4vZ3N0cmVhbWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMt
Z29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZpY2VzLWFzLWRlZmF1bHQucGF0Y2gKICAg
Y29uZmlnLW9wdHM6CiAgICAgLSAtRGRpc2FibGVfZ3RrZG9jPXRydWUKIC0gbmFtZTogeDI2NApk
aWZmIC0tZ2l0IGEvVG9vbHMvZ3N0cmVhbWVyL2poYnVpbGQubW9kdWxlcyBiL1Rvb2xzL2dzdHJl
YW1lci9qaGJ1aWxkLm1vZHVsZXMKaW5kZXggNjBkZTAxOTRmMzVlY2FkNmVkZjU3NDc1NDZhMDJj
MWM0MTdmZTZkZS4uYzdjZDRkOTdiNGM3NzA2NWQ2MDk2NDYwZjAzYmEyMWU0MWY2ZDY1NSAxMDA2
NDQKLS0tIGEvVG9vbHMvZ3N0cmVhbWVyL2poYnVpbGQubW9kdWxlcworKysgYi9Ub29scy9nc3Ry
ZWFtZXIvamhidWlsZC5tb2R1bGVzCkBAIC05MCw2ICs5MCw3IEBACiAgICAgICA8cGF0Y2ggZmls
ZT0iZ3N0LXBsdWdpbnMtZ29vZC0wMDExLW1hdHJvc2thLUFkZC10aGUtV2ViTS1lbmNyeXB0ZWQt
Y29udGVudC1zdXBwb3J0LWluLW0ucGF0Y2giIHN0cmlwPSIxIiAvPiA8IS0tIE1lcmdlZCBhcyAw
NDMyODI2OTUwZDRkODBmZTJiNTBmZmQzNzU3ZGMwODE1NWRlOWUzIC0tPgogICAgICAgPHBhdGNo
IGZpbGU9ImdzdC1wbHVnaW5zLWdvb2QtMDAxMi1tYXRyb3NrZGVtdXgtZG8tbm90LXVzZS1NYXBJ
bmZvLmRhdGEtYWZ0ZXItdW5tYXBwaW5nLnBhdGNoIiBzdHJpcD0iMSIgLz4gPCEtLSBNZXJnZWQg
YXMgZGVmYWUzNTAzNTg2NjBlNTU3Yzc0ZTQxYTRmZThhOGJiMzI3ZTljOCAtLT4KICAgICAgIDxw
YXRjaCBmaWxlPSJnc3QtcGx1Z2lucy1nb29kLTAwMTMtQXZvaWQtd2FybmluZy13aGVuLXJlcG9y
dGluZy1hYm91dC1kZWNyeXB0b3JzLnBhdGNoIiBzdHJpcD0iMSIgLz4gPCEtLSBNZXJnZWQgYXMg
NTY2NjkyMDVlYjJkMDg4NzU5NjU3NGVhYmI3ODA2YjMxYzViYTVjZiAtLT4KKyAgICAgIDxwYXRj
aCBmaWxlPSJnc3QtcGx1Z2lucy1nb29kLTAwMTQtcHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMt
YXMtZGVmYXVsdC5wYXRjaCIgc3RyaXA9IjEiIC8+CiAgICAgPC9icmFuY2g+CiAgIDwvYXV0b3Rv
b2xzPgogCmRpZmYgLS1naXQgYS9Ub29scy9nc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1n
b29kLTAwMTQtcHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaCBiL1Rv
b2xzL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxNC1wdWxzZS1NYXJrLWRl
ZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQzNWI2ZDdkOTdmODQy
YjZjM2I1ZGY3NTgyZmE4ZGZhYzhjMWMzNmIKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9nc3Ry
ZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQtcHVsc2UtTWFyay1kZWZhdWx0LWRl
dmljZXMtYXMtZGVmYXVsdC5wYXRjaApAQCAtMCwwICsxLDMxOCBAQAorRnJvbSAzMmM4MzNlYmI0
MmI4ZThmNDZjNWE3MmExNmE4NzRiYzAwZmM1NTUzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor
RnJvbTogVGhpYmF1bHQgU2F1bmllciA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KK0RhdGU6IE1vbiwg
MjYgTm92IDIwMTggMTM6NDg6NTYgLTAzMDAKK1N1YmplY3Q6IFtQQVRDSF0gcHVsc2U6IE1hcmsg
ZGVmYXVsdCBkZXZpY2VzIGFzICJkZWZhdWx0IgorCistLS0KKyBleHQvcHVsc2UvcHVsc2VkZXZp
Y2Vwcm92aWRlci5jIHwgMTE3ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgZXh0
L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaCB8ICAgMyArCisgMiBmaWxlcyBjaGFuZ2VkLCA3
OSBpbnNlcnRpb25zKCspLCA0MSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2V4dC9wdWxz
ZS9wdWxzZWRldmljZXByb3ZpZGVyLmMgYi9leHQvcHVsc2UvcHVsc2VkZXZpY2Vwcm92aWRlci5j
CitpbmRleCBhMTk2NGRhYjIuLjliNjZhMGUzMyAxMDA2NDQKKy0tLSBhL2V4dC9wdWxzZS9wdWxz
ZWRldmljZXByb3ZpZGVyLmMKKysrKyBiL2V4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmMK
K0BAIC00MCw3ICs0MCw3IEBAIEdTVF9ERUJVR19DQVRFR09SWV9FWFRFUk4gKHB1bHNlX2RlYnVn
KTsKKyAKKyBzdGF0aWMgR3N0RGV2aWNlICpnc3RfcHVsc2VfZGV2aWNlX25ldyAoZ3VpbnQgaWQs
CisgICAgIGNvbnN0IGdjaGFyICogZGV2aWNlX25hbWUsIEdzdENhcHMgKiBjYXBzLCBjb25zdCBn
Y2hhciAqIGludGVybmFsX25hbWUsCistICAgIEdzdFB1bHNlRGV2aWNlVHlwZSB0eXBlLCBHc3RT
dHJ1Y3R1cmUgKiBwcm9wZXJ0aWVzKTsKKysgICAgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGUsIEdz
dFN0cnVjdHVyZSAqIHByb3BlcnRpZXMsIGdib29sZWFuIGlzX2RlZmF1bHQpOworIAorIEdfREVG
SU5FX1RZUEUgKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIsIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlk
ZXIsCisgICAgIEdTVF9UWVBFX0RFVklDRV9QUk9WSURFUik7CitAQCAtNjUsNiArNjUsMTIgQEAg
ZW51bQorIH07CisgCisgCisrdHlwZWRlZiBzdHJ1Y3QKKyt7CisrICBHTGlzdCAqZGV2aWNlczsK
KysgIEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKnNlbGY7CisrfSBMaXN0RGV2aWNlc0RhdGE7Cisr
Cisgc3RhdGljIHZvaWQKKyBnc3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyX2NsYXNzX2luaXQgKEdz
dFB1bHNlRGV2aWNlUHJvdmlkZXJDbGFzcyAqIGtsYXNzKQorIHsKK0BAIC0xMTQsNiArMTIwLDgg
QEAgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9maW5hbGl6ZSAoR09iamVjdCAqIG9iamVjdCkK
KyAKKyAgIGdfZnJlZSAoc2VsZi0+Y2xpZW50X25hbWUpOworICAgZ19mcmVlIChzZWxmLT5zZXJ2
ZXIpOworKyAgZ19mcmVlIChzZWxmLT5kZWZhdWx0X3NpbmtfbmFtZSk7CisrICBnX2ZyZWUgKHNl
bGYtPmRlZmF1bHRfc291cmNlX25hbWUpOworIAorICAgR19PQkpFQ1RfQ0xBU1MgKGdzdF9wdWxz
ZV9kZXZpY2VfcHJvdmlkZXJfcGFyZW50X2NsYXNzKS0+ZmluYWxpemUgKG9iamVjdCk7CisgfQor
QEAgLTE4Niw3ICsxOTQsNyBAQCBjb250ZXh0X3N0YXRlX2NiIChwYV9jb250ZXh0ICogYywgdm9p
ZCAqdXNlcmRhdGEpCisgfQorIAorIHN0YXRpYyBHc3REZXZpY2UgKgorLW5ld19zb3VyY2UgKGNv
bnN0IHBhX3NvdXJjZV9pbmZvICogaW5mbykKKytuZXdfc291cmNlIChHc3RQdWxzZURldmljZVBy
b3ZpZGVyICogc2VsZiwgY29uc3QgcGFfc291cmNlX2luZm8gKiBpbmZvKQorIHsKKyAgIEdzdENh
cHMgKmNhcHM7CisgICBHc3RTdHJ1Y3R1cmUgKnByb3BzOworQEAgLTIwMCwxMSArMjA4LDEyIEBA
IG5ld19zb3VyY2UgKGNvbnN0IHBhX3NvdXJjZV9pbmZvICogaW5mbykKKyAgIHByb3BzID0gZ3N0
X3B1bHNlX21ha2Vfc3RydWN0dXJlIChpbmZvLT5wcm9wbGlzdCk7CisgCisgICByZXR1cm4gZ3N0
X3B1bHNlX2RldmljZV9uZXcgKGluZm8tPmluZGV4LCBpbmZvLT5kZXNjcmlwdGlvbiwKKy0gICAg
ICBjYXBzLCBpbmZvLT5uYW1lLCBHU1RfUFVMU0VfREVWSUNFX1RZUEVfU09VUkNFLCBwcm9wcyk7
CisrICAgICAgY2FwcywgaW5mby0+bmFtZSwgR1NUX1BVTFNFX0RFVklDRV9UWVBFX1NPVVJDRSwg
cHJvcHMsCisrICAgICAgIWdfc3RyY21wMCAoaW5mby0+bmFtZSwgc2VsZi0+ZGVmYXVsdF9zb3Vy
Y2VfbmFtZSkpOworIH0KKyAKKyBzdGF0aWMgR3N0RGV2aWNlICoKKy1uZXdfc2luayAoY29uc3Qg
cGFfc2lua19pbmZvICogaW5mbykKKytuZXdfc2luayAoR3N0UHVsc2VEZXZpY2VQcm92aWRlciAq
IHNlbGYsIGNvbnN0IHBhX3NpbmtfaW5mbyAqIGluZm8pCisgeworICAgR3N0Q2FwcyAqY2FwczsK
KyAgIEdzdFN0cnVjdHVyZSAqcHJvcHM7CitAQCAtMjE4LDcgKzIyNyw4IEBAIG5ld19zaW5rIChj
b25zdCBwYV9zaW5rX2luZm8gKiBpbmZvKQorICAgcHJvcHMgPSBnc3RfcHVsc2VfbWFrZV9zdHJ1
Y3R1cmUgKGluZm8tPnByb3BsaXN0KTsKKyAKKyAgIHJldHVybiBnc3RfcHVsc2VfZGV2aWNlX25l
dyAoaW5mby0+aW5kZXgsIGluZm8tPmRlc2NyaXB0aW9uLAorLSAgICAgIGNhcHMsIGluZm8tPm5h
bWUsIEdTVF9QVUxTRV9ERVZJQ0VfVFlQRV9TSU5LLCBwcm9wcyk7CisrICAgICAgY2FwcywgaW5m
by0+bmFtZSwgR1NUX1BVTFNFX0RFVklDRV9UWVBFX1NJTkssIHByb3BzLAorKyAgICAgICFnX3N0
cmNtcDAgKGluZm8tPm5hbWUsIHNlbGYtPmRlZmF1bHRfc2lua19uYW1lKSk7CisgfQorIAorIHN0
YXRpYyB2b2lkCitAQCAtMjMzLDEyICsyNDMsMjYgQEAgZ2V0X3NvdXJjZV9pbmZvX2NiIChwYV9j
b250ZXh0ICogY29udGV4dCwKKyAgICAgcmV0dXJuOworICAgfQorIAorLSAgZGV2ID0gbmV3X3Nv
dXJjZSAoaW5mbyk7CisrICBkZXYgPSBuZXdfc291cmNlIChzZWxmLCBpbmZvKTsKKyAKKyAgIGlm
IChkZXYpCisgICAgIGdzdF9kZXZpY2VfcHJvdmlkZXJfZGV2aWNlX2FkZCAoR1NUX0RFVklDRV9Q
Uk9WSURFUiAoc2VsZiksIGRldik7CisgfQorIAorK3N0YXRpYyB2b2lkCisrZ2V0X3NlcnZlcl9p
bmZvX2NiIChwYV9jb250ZXh0ICogY29udGV4dCwgY29uc3QgcGFfc2VydmVyX2luZm8gKiBpbmZv
LAorKyAgICB2b2lkICp1c2VyZGF0YSkKKyt7CisrICBHc3RQdWxzZURldmljZVByb3ZpZGVyICpz
ZWxmID0gdXNlcmRhdGE7CisrCisrICBnX2ZyZWUgKHNlbGYtPmRlZmF1bHRfc2lua19uYW1lKTsK
KysgIGdfZnJlZSAoc2VsZi0+ZGVmYXVsdF9zb3VyY2VfbmFtZSk7CisrICBzZWxmLT5kZWZhdWx0
X3NpbmtfbmFtZSA9IGdfc3RyZHVwIChpbmZvLT5kZWZhdWx0X3NpbmtfbmFtZSk7CisrICBzZWxm
LT5kZWZhdWx0X3NvdXJjZV9uYW1lID0gZ19zdHJkdXAgKGluZm8tPmRlZmF1bHRfc291cmNlX25h
bWUpOworKworKyAgcGFfdGhyZWFkZWRfbWFpbmxvb3Bfc2lnbmFsIChzZWxmLT5tYWlubG9vcCwg
MCk7CisrfQorKworIHN0YXRpYyB2b2lkCisgZ2V0X3NpbmtfaW5mb19jYiAocGFfY29udGV4dCAq
IGNvbnRleHQsCisgICAgIGNvbnN0IHBhX3NpbmtfaW5mbyAqIGluZm8sIGludCBlb2wsIHZvaWQg
KnVzZXJkYXRhKQorQEAgLTI1MSw3ICsyNzUsNyBAQCBnZXRfc2lua19pbmZvX2NiIChwYV9jb250
ZXh0ICogY29udGV4dCwKKyAgICAgcmV0dXJuOworICAgfQorIAorLSAgZGV2ID0gbmV3X3Npbmsg
KGluZm8pOworKyAgZGV2ID0gbmV3X3NpbmsgKHNlbGYsIGluZm8pOworIAorICAgaWYgKGRldikK
KyAgICAgZ3N0X2RldmljZV9wcm92aWRlcl9kZXZpY2VfYWRkIChHU1RfREVWSUNFX1BST1ZJREVS
IChzZWxmKSwgZGV2KTsKK0BAIC0zMTIsMzQgKzMzNiwzOCBAQCBzdGF0aWMgdm9pZAorIGdldF9z
b3VyY2VfaW5mb19saXN0X2NiIChwYV9jb250ZXh0ICogY29udGV4dCwgY29uc3QgcGFfc291cmNl
X2luZm8gKiBpbmZvLAorICAgICBpbnQgZW9sLCB2b2lkICp1c2VyZGF0YSkKKyB7CistICBHTGlz
dCAqKmRldmljZXMgPSB1c2VyZGF0YTsKKysgIExpc3REZXZpY2VzRGF0YSAqZGF0YSA9IHVzZXJk
YXRhOworIAorICAgaWYgKGVvbCkKKyAgICAgcmV0dXJuOworIAorLSAgKmRldmljZXMgPSBnX2xp
c3RfcHJlcGVuZCAoKmRldmljZXMsIGdzdF9vYmplY3RfcmVmX3NpbmsgKG5ld19zb3VyY2UgKGlu
Zm8pKSk7CisrICBkYXRhLT5kZXZpY2VzID0KKysgICAgICBnX2xpc3RfcHJlcGVuZCAoZGF0YS0+
ZGV2aWNlcywKKysgICAgICBnc3Rfb2JqZWN0X3JlZl9zaW5rIChuZXdfc291cmNlIChkYXRhLT5z
ZWxmLCBpbmZvKSkpOworIH0KKyAKKyBzdGF0aWMgdm9pZAorIGdldF9zaW5rX2luZm9fbGlzdF9j
YiAocGFfY29udGV4dCAqIGNvbnRleHQsIGNvbnN0IHBhX3NpbmtfaW5mbyAqIGluZm8sCisgICAg
IGludCBlb2wsIHZvaWQgKnVzZXJkYXRhKQorIHsKKy0gIEdMaXN0ICoqZGV2aWNlcyA9IHVzZXJk
YXRhOworKyAgTGlzdERldmljZXNEYXRhICpkYXRhID0gdXNlcmRhdGE7CisgCisgICBpZiAoZW9s
KQorICAgICByZXR1cm47CisgCistICAqZGV2aWNlcyA9IGdfbGlzdF9wcmVwZW5kICgqZGV2aWNl
cywgZ3N0X29iamVjdF9yZWZfc2luayAobmV3X3NpbmsgKGluZm8pKSk7CisrICBkYXRhLT5kZXZp
Y2VzID0KKysgICAgICBnX2xpc3RfcHJlcGVuZCAoZGF0YS0+ZGV2aWNlcywgZ3N0X29iamVjdF9y
ZWZfc2luayAobmV3X3NpbmsgKGRhdGEtPnNlbGYsCisrICAgICAgICAgICAgICBpbmZvKSkpOwor
IH0KKyAKKyBzdGF0aWMgR0xpc3QgKgorIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfcHJvYmUg
KEdzdERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisgeworICAgR3N0UHVsc2VEZXZpY2VQcm92
aWRlciAqc2VsZiA9IEdTVF9QVUxTRV9ERVZJQ0VfUFJPVklERVIgKHByb3ZpZGVyKTsKKy0gIEdM
aXN0ICpkZXZpY2VzID0gTlVMTDsKKyAgIHBhX21haW5sb29wICptID0gTlVMTDsKKyAgIHBhX2Nv
bnRleHQgKmMgPSBOVUxMOworICAgcGFfb3BlcmF0aW9uICpvOworKyAgTGlzdERldmljZXNEYXRh
IGRhdGEgPSB7IE5VTEwsIHNlbGYgfTsKKyAKKyAgIGlmICghKG0gPSBwYV9tYWlubG9vcF9uZXcg
KCkpKQorICAgICByZXR1cm4gTlVMTDsKK0BAIC0zNzYsNyArNDA0LDcgQEAgZ3N0X3B1bHNlX2Rl
dmljZV9wcm92aWRlcl9wcm9iZSAoR3N0RGV2aWNlUHJvdmlkZXIgKiBwcm92aWRlcikKKyAgIH0K
KyAgIEdTVF9ERUJVR19PQkpFQ1QgKHNlbGYsICJjb25uZWN0ZWQiKTsKKyAKKy0gIG8gPSBwYV9j
b250ZXh0X2dldF9zaW5rX2luZm9fbGlzdCAoYywgZ2V0X3NpbmtfaW5mb19saXN0X2NiLCAmZGV2
aWNlcyk7CisrICBvID0gcGFfY29udGV4dF9nZXRfc2lua19pbmZvX2xpc3QgKGMsIGdldF9zaW5r
X2luZm9fbGlzdF9jYiwgJmRhdGEpOworICAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUg
KG8pID09IFBBX09QRVJBVElPTl9SVU5OSU5HICYmCisgICAgICAgcGFfb3BlcmF0aW9uX2dldF9z
dGF0ZSAobykgPT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcpIHsKKyAgICAgaWYgKHBhX21haW5sb29w
X2l0ZXJhdGUgKG0sIFRSVUUsIE5VTEwpIDwgMCkKK0BAIC0zODQsNyArNDEyLDcgQEAgZ3N0X3B1
bHNlX2RldmljZV9wcm92aWRlcl9wcm9iZSAoR3N0RGV2aWNlUHJvdmlkZXIgKiBwcm92aWRlcikK
KyAgIH0KKyAgIHBhX29wZXJhdGlvbl91bnJlZiAobyk7CisgCistICBvID0gcGFfY29udGV4dF9n
ZXRfc291cmNlX2luZm9fbGlzdCAoYywgZ2V0X3NvdXJjZV9pbmZvX2xpc3RfY2IsICZkZXZpY2Vz
KTsKKysgIG8gPSBwYV9jb250ZXh0X2dldF9zb3VyY2VfaW5mb19saXN0IChjLCBnZXRfc291cmNl
X2luZm9fbGlzdF9jYiwgJmRhdGEpOworICAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUg
KG8pID09IFBBX09QRVJBVElPTl9SVU5OSU5HICYmCisgICAgICAgcGFfb3BlcmF0aW9uX2dldF9z
dGF0ZSAobykgPT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcpIHsKKyAgICAgaWYgKHBhX21haW5sb29w
X2l0ZXJhdGUgKG0sIFRSVUUsIE5VTEwpIDwgMCkKK0BAIC0zOTUsMTggKzQyMywzOCBAQCBnc3Rf
cHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3ZpZGVy
KQorICAgcGFfY29udGV4dF9kaXNjb25uZWN0IChjKTsKKyAgIHBhX21haW5sb29wX2ZyZWUgKG0p
OworIAorLSAgcmV0dXJuIGRldmljZXM7CisrICByZXR1cm4gZGF0YS5kZXZpY2VzOworIAorIGZh
aWxlZDoKKyAKKyAgIHJldHVybiBOVUxMOworIH0KKyAKKytzdGF0aWMgZ2Jvb2xlYW4KKytydW5f
cHVsc2Vfb3BlcmF0aW9uIChHc3RQdWxzZURldmljZVByb3ZpZGVyICogc2VsZiwgcGFfb3BlcmF0
aW9uICogb3BlcmF0aW9uKQorK3sKKysgIGlmICghb3BlcmF0aW9uKQorKyAgICByZXR1cm4gRkFM
U0U7CisrCisrICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAob3BlcmF0aW9uKSA9PSBQ
QV9PUEVSQVRJT05fUlVOTklORykgeworKyAgICBpZiAoIVBBX0NPTlRFWFRfSVNfR09PRCAocGFf
Y29udGV4dF9nZXRfc3RhdGUgKChzZWxmLT5jb250ZXh0KSkpKSB7CisrICAgICAgcGFfb3BlcmF0
aW9uX2NhbmNlbCAob3BlcmF0aW9uKTsKKysgICAgICBwYV9vcGVyYXRpb25fdW5yZWYgKG9wZXJh
dGlvbik7CisrICAgICAgcmV0dXJuIEZBTFNFOworKyAgICB9CisrCisrICAgIHBhX3RocmVhZGVk
X21haW5sb29wX3dhaXQgKHNlbGYtPm1haW5sb29wKTsKKysgIH0KKysKKysgIHBhX29wZXJhdGlv
bl91bnJlZiAob3BlcmF0aW9uKTsKKysKKysgIHJldHVybiBUUlVFOworK30KKysKKyBzdGF0aWMg
Z2Jvb2xlYW4KKyBnc3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3N0YXJ0IChHc3REZXZpY2VQcm92
aWRlciAqIHByb3ZpZGVyKQorIHsKKyAgIEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKnNlbGYgPSBH
U1RfUFVMU0VfREVWSUNFX1BST1ZJREVSIChwcm92aWRlcik7CistICBwYV9vcGVyYXRpb24gKmlu
aXRpYWxfb3BlcmF0aW9uOworIAorICAgaWYgKCEoc2VsZi0+bWFpbmxvb3AgPSBwYV90aHJlYWRl
ZF9tYWlubG9vcF9uZXcgKCkpKSB7CisgICAgIEdTVF9FUlJPUl9PQkpFQ1QgKHNlbGYsICJDb3Vs
ZCBub3QgY3JlYXRlIHB1bHNlYXVkaW8gbWFpbmxvb3AiKTsKK0BAIC00NjIsMjcgKzUxMCwxOCBA
QCBnc3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3N0YXJ0IChHc3REZXZpY2VQcm92aWRlciAqIHBy
b3ZpZGVyKQorICAgcGFfY29udGV4dF9zdWJzY3JpYmUgKHNlbGYtPmNvbnRleHQsCisgICAgICAg
UEFfU1VCU0NSSVBUSU9OX01BU0tfU09VUkNFIHwgUEFfU1VCU0NSSVBUSU9OX01BU0tfU0lOSywg
TlVMTCwgTlVMTCk7CisgCistICBpbml0aWFsX29wZXJhdGlvbiA9IHBhX2NvbnRleHRfZ2V0X3Nv
dXJjZV9pbmZvX2xpc3QgKHNlbGYtPmNvbnRleHQsCistICAgICAgZ2V0X3NvdXJjZV9pbmZvX2Ni
LCBzZWxmKTsKKy0gIHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChpbml0aWFsX29wZXJh
dGlvbikgPT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcpIHsKKy0gICAgaWYgKCFQQV9DT05URVhUX0lT
X0dPT0QgKHBhX2NvbnRleHRfZ2V0X3N0YXRlICgoc2VsZi0+Y29udGV4dCkpKSkKKy0gICAgICBn
b3RvIGNhbmNlbF9hbmRfZmFpbDsKKy0KKy0gICAgcGFfdGhyZWFkZWRfbWFpbmxvb3Bfd2FpdCAo
c2VsZi0+bWFpbmxvb3ApOworLSAgfQorLSAgcGFfb3BlcmF0aW9uX3VucmVmIChpbml0aWFsX29w
ZXJhdGlvbik7CisrICBpZiAoIXJ1bl9wdWxzZV9vcGVyYXRpb24gKHNlbGYsIHBhX2NvbnRleHRf
Z2V0X3NlcnZlcl9pbmZvIChzZWxmLT5jb250ZXh0LAorKyAgICAgICAgICAgICAgZ2V0X3NlcnZl
cl9pbmZvX2NiLCBzZWxmKSkpCisrICAgIGdvdG8gdW5sb2NrX2FuZF9mYWlsOworIAorLSAgaW5p
dGlhbF9vcGVyYXRpb24gPSBwYV9jb250ZXh0X2dldF9zaW5rX2luZm9fbGlzdCAoc2VsZi0+Y29u
dGV4dCwKKy0gICAgICBnZXRfc2lua19pbmZvX2NiLCBzZWxmKTsKKy0gIGlmICghaW5pdGlhbF9v
cGVyYXRpb24pCisrICBpZiAoIXJ1bl9wdWxzZV9vcGVyYXRpb24gKHNlbGYsCisrICAgICAgICAg
IHBhX2NvbnRleHRfZ2V0X3NvdXJjZV9pbmZvX2xpc3QgKHNlbGYtPmNvbnRleHQsIGdldF9zb3Vy
Y2VfaW5mb19jYiwKKysgICAgICAgICAgICAgIHNlbGYpKSkKKyAgICAgZ290byB1bmxvY2tfYW5k
X2ZhaWw7CistICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAoaW5pdGlhbF9vcGVyYXRp
b24pID09IFBBX09QRVJBVElPTl9SVU5OSU5HKSB7CistICAgIGlmICghUEFfQ09OVEVYVF9JU19H
T09EIChwYV9jb250ZXh0X2dldF9zdGF0ZSAoKHNlbGYtPmNvbnRleHQpKSkpCistICAgICAgZ290
byBjYW5jZWxfYW5kX2ZhaWw7CisgCistICAgIHBhX3RocmVhZGVkX21haW5sb29wX3dhaXQgKHNl
bGYtPm1haW5sb29wKTsKKy0gIH0KKy0gIHBhX29wZXJhdGlvbl91bnJlZiAoaW5pdGlhbF9vcGVy
YXRpb24pOworKyAgaWYgKCFydW5fcHVsc2Vfb3BlcmF0aW9uIChzZWxmLCBwYV9jb250ZXh0X2dl
dF9zaW5rX2luZm9fbGlzdCAoc2VsZi0+Y29udGV4dCwKKysgICAgICAgICAgICAgIGdldF9zaW5r
X2luZm9fY2IsIHNlbGYpKSkKKysgICAgZ290byB1bmxvY2tfYW5kX2ZhaWw7CisgCisgICBwYV90
aHJlYWRlZF9tYWlubG9vcF91bmxvY2sgKHNlbGYtPm1haW5sb29wKTsKKyAKK0BAIC00OTUsMTEg
KzUzNCw2IEBAIHVubG9ja19hbmRfZmFpbDoKKyAKKyBtYWlubG9vcF9mYWlsZWQ6CisgICByZXR1
cm4gRkFMU0U7CistCistY2FuY2VsX2FuZF9mYWlsOgorLSAgcGFfb3BlcmF0aW9uX2NhbmNlbCAo
aW5pdGlhbF9vcGVyYXRpb24pOworLSAgcGFfb3BlcmF0aW9uX3VucmVmIChpbml0aWFsX29wZXJh
dGlvbik7CistICBnb3RvIHVubG9ja19hbmRfZmFpbDsKKyB9CisgCisgc3RhdGljIHZvaWQKK0BA
IC02MTEsNyArNjQ1LDcgQEAgZ3N0X3B1bHNlX2RldmljZV9yZWNvbmZpZ3VyZV9lbGVtZW50IChH
c3REZXZpY2UgKiBkZXZpY2UsIEdzdEVsZW1lbnQgKiBlbGVtZW50KQorIHN0YXRpYyBHc3REZXZp
Y2UgKgorIGdzdF9wdWxzZV9kZXZpY2VfbmV3IChndWludCBkZXZpY2VfaW5kZXgsIGNvbnN0IGdj
aGFyICogZGV2aWNlX25hbWUsCisgICAgIEdzdENhcHMgKiBjYXBzLCBjb25zdCBnY2hhciAqIGlu
dGVybmFsX25hbWUsIEdzdFB1bHNlRGV2aWNlVHlwZSB0eXBlLAorLSAgICBHc3RTdHJ1Y3R1cmUg
KiBwcm9wcykKKysgICAgR3N0U3RydWN0dXJlICogcHJvcHMsIGdib29sZWFuIGlzX2RlZmF1bHQp
CisgeworICAgR3N0UHVsc2VEZXZpY2UgKmdzdGRldjsKKyAgIGNvbnN0IGdjaGFyICplbGVtZW50
ID0gTlVMTDsKK0BAIC02MzYsNyArNjcwLDcgQEAgZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50
IGRldmljZV9pbmRleCwgY29uc3QgZ2NoYXIgKiBkZXZpY2VfbmFtZSwKKyAgICAgICBicmVhazsK
KyAgIH0KKyAKKy0KKysgIGdzdF9zdHJ1Y3R1cmVfc2V0IChwcm9wcywgImlzLWRlZmF1bHQiLCBH
X1RZUEVfQk9PTEVBTiwgaXNfZGVmYXVsdCwgTlVMTCk7CisgICBnc3RkZXYgPSBnX29iamVjdF9u
ZXcgKEdTVF9UWVBFX1BVTFNFX0RFVklDRSwKKyAgICAgICAiZGlzcGxheS1uYW1lIiwgZGV2aWNl
X25hbWUsICJjYXBzIiwgY2FwcywgImRldmljZS1jbGFzcyIsIGtsYXNzLAorICAgICAgICJpbnRl
cm5hbC1uYW1lIiwgaW50ZXJuYWxfbmFtZSwgInByb3BlcnRpZXMiLCBwcm9wcywgTlVMTCk7CitA
QCAtNjQ0LDYgKzY3OCw3IEBAIGdzdF9wdWxzZV9kZXZpY2VfbmV3IChndWludCBkZXZpY2VfaW5k
ZXgsIGNvbnN0IGdjaGFyICogZGV2aWNlX25hbWUsCisgICBnc3RkZXYtPnR5cGUgPSB0eXBlOwor
ICAgZ3N0ZGV2LT5kZXZpY2VfaW5kZXggPSBkZXZpY2VfaW5kZXg7CisgICBnc3RkZXYtPmVsZW1l
bnQgPSBlbGVtZW50OworKyAgZ3N0ZGV2LT5pc19kZWZhdWx0ID0gaXNfZGVmYXVsdDsKKyAKKyAg
IGdzdF9zdHJ1Y3R1cmVfZnJlZSAocHJvcHMpOworICAgZ3N0X2NhcHNfdW5yZWYgKGNhcHMpOwor
ZGlmZiAtLWdpdCBhL2V4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmggYi9leHQvcHVsc2Uv
cHVsc2VkZXZpY2Vwcm92aWRlci5oCitpbmRleCAwODkyYWQ1ODYuLjdiY2QxYmM0NyAxMDA2NDQK
Ky0tLSBhL2V4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmgKKysrKyBiL2V4dC9wdWxzZS9w
dWxzZWRldmljZXByb3ZpZGVyLmgKK0BAIC01MCw2ICs1MCw4IEBAIHN0cnVjdCBfR3N0UHVsc2VE
ZXZpY2VQcm92aWRlciB7CisgCisgICBnY2hhciAqc2VydmVyOworICAgZ2NoYXIgKmNsaWVudF9u
YW1lOworKyAgZ2NoYXIgKmRlZmF1bHRfc291cmNlX25hbWU7CisrICBnY2hhciAqZGVmYXVsdF9z
aW5rX25hbWU7CisgCisgICBwYV90aHJlYWRlZF9tYWlubG9vcCAqbWFpbmxvb3A7CisgICBwYV9j
b250ZXh0ICpjb250ZXh0OworQEAgLTg0LDYgKzg2LDcgQEAgc3RydWN0IF9Hc3RQdWxzZURldmlj
ZSB7CisgICBHc3RQdWxzZURldmljZVR5cGUgdHlwZTsKKyAgIGd1aW50ICAgICAgICAgICAgIGRl
dmljZV9pbmRleDsKKyAgIGdjaGFyICAgICAgICAgICAgKmludGVybmFsX25hbWU7CisrICBnYm9v
bGVhbiAgICAgICAgIGlzX2RlZmF1bHQ7CisgICBjb25zdCBnY2hhciAgICAgICplbGVtZW50Owor
IH07CisgCistLSAKKzIuMTkuMQorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355867</attachid>
            <date>2018-11-28 05:56:41 -0800</date>
            <delta_ts>2018-11-28 06:04:41 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-192026-20181128105639.patch</filename>
            <type>text/plain</type>
            <size>18936</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NjA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI4ZDlkZTE3ZTIwYmFm
NTRiYmNhNzVhZDJhMzBjN2VjYmMzZWVmZC4uZjJhMjVmMDJmMTBjZTBlNTIyZmFjOTUwMTEyYTFj
ZDc1Mzg4YzBiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTI3ICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRDXVtH
U3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24gdGhl
IHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFuZC4K
KworICAgICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNzIG9u
ZSBpbiBzb21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBhcHBs
aWNhdGlvbiBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3NlZCBh
cyBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5zLWdv
b2QvbWVyZ2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpzb3J0RGV2aWNlcyk6CisgICAgICAgIChXZWJDb3JlOjpHU3RyZWFtZXJDYXB0
dXJlRGV2aWNlTWFuYWdlcjo6YWRkRGV2aWNlKToKKyAgICAgICAgKFdlYkNvcmU6OkdTdHJlYW1l
ckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQ2FwdHVyZURldmljZXMpOgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFu
YWdlci5oOgorCiAyMDE4LTExLTI4ICBUaGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbV2ViUlRDXVtHU3RyZWFtZXJdIFRhZyBhbGwgY2FtZXJhcyB3aXRo
IGFzICdVbmtub3duJyBmYWNpbmcgbW9kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3Ry
ZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKaW5kZXggYTI3M2Q0NGE1ODFkYzVmNjM3ODBh
ODc1YTVkZmM5Njg1MjJkOGI2Yi4uYzdjZjMzYjhiZDZkOTI0YjM4MTgyY2RmNDg1YTAzZmRkMjI5
MjIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0
cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmlj
ZU1hbmFnZXIuY3BwCkBAIC0yOCw2ICsyOCwyNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
K3N0YXRpYyBnaW50IHNvcnREZXZpY2VzKGdjb25zdHBvaW50ZXIgYSwgZ2NvbnN0cG9pbnRlciBi
KQoreworICAgIEdzdERldmljZSogYWRldiA9IEdTVF9ERVZJQ0UoYSksICpiZGV2ID0gR1NUX0RF
VklDRShiKTsKKyAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gYXByb3BzKGdzdF9kZXZpY2Vf
Z2V0X3Byb3BlcnRpZXMoYWRldikpOworICAgIEdVbmlxdWVQdHI8R3N0U3RydWN0dXJlPiBicHJv
cHMoZ3N0X2RldmljZV9nZXRfcHJvcGVydGllcyhiZGV2KSk7CisgICAgZ2Jvb2xlYW4gYUlzRGVm
YXVsdCA9IEZBTFNFLCBiSXNEZWZhdWx0ID0gRkFMU0U7CisKKyAgICBnc3Rfc3RydWN0dXJlX2dl
dF9ib29sZWFuKGFwcm9wcy5nZXQoKSwgImlzLWRlZmF1bHQiLCAmYUlzRGVmYXVsdCk7CisgICAg
Z3N0X3N0cnVjdHVyZV9nZXRfYm9vbGVhbihicHJvcHMuZ2V0KCksICJpcy1kZWZhdWx0IiwgJmJJ
c0RlZmF1bHQpOworCisgICAgaWYgKGFJc0RlZmF1bHQgPT0gYklzRGVmYXVsdCkgeworICAgICAg
ICBHVW5pcXVlUHRyPGNoYXI+IGFOYW1lKGdzdF9kZXZpY2VfZ2V0X2Rpc3BsYXlfbmFtZShhZGV2
KSk7CisgICAgICAgIEdVbmlxdWVQdHI8Y2hhcj4gYk5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxh
eV9uYW1lKGJkZXYpKTsKKworICAgICAgICByZXR1cm4gZ19zdHJjbXAwKGFOYW1lLmdldCgpLCBi
TmFtZS5nZXQoKSk7CisgICAgfQorCisgICAgcmV0dXJuIGFJc0RlZmF1bHQgPiBiSXNEZWZhdWx0
ID8gLTEgOiAxOworfQorCiBHU3RyZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyJiBHU3Ry
ZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0b24oKQogewogICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxHU3RyZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyPiBtYW5h
Z2VyOwpAQCAtNjYsNyArODYsNyBAQCBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIEdTdHJl
YW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpjYXB0dXJlRGV2aWNlcygpCiAgICAgcmV0dXJuIG1f
ZGV2aWNlczsKIH0KIAotdm9pZCBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6ZGV2aWNl
QWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYgZGV2aWNlKQordm9pZCBHU3RyZWFtZXJDYXB0dXJl
RGV2aWNlTWFuYWdlcjo6YWRkRGV2aWNlKEdSZWZQdHI8R3N0RGV2aWNlPiYmIGRldmljZSkKIHsK
ICAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gcHJvcGVydGllcyhnc3RfZGV2aWNlX2dldF9w
cm9wZXJ0aWVzKGRldmljZS5nZXQoKSkpOwogICAgIGNvbnN0IGNoYXIqIGtsYXNzID0gZ3N0X3N0
cnVjdHVyZV9nZXRfc3RyaW5nKHByb3BlcnRpZXMuZ2V0KCksICJkZXZpY2UuY2xhc3MiKTsKQEAg
LTg1LDcgKzEwNSwxMCBAQCB2b2lkIEdTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpkZXZp
Y2VBZGRlZChHUmVmUHRyPEdzdERldmljZT4mJiBkZXZpY2UpCiAgICAgLy8gVGhpcyBpc24ndCBy
ZWFsbHkgYSBVSUQgYnV0IHNob3VsZCBiZSBnb29kIGVub3VnaCAobGlid2VicnRjCiAgICAgLy8g
aXRzZWxmIGRvZXMgdGhhdCBhdCBsZWFzdCBmb3IgcHVsc2VhdWRpbyBkZXZpY2VzKS4KICAgICBH
VW5pcXVlUHRyPGNoYXI+IGRldmljZU5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxheV9uYW1lKGRl
dmljZS5nZXQoKSkpOwotICAgIFN0cmluZyBpZGVudGlmaWVyID0gU3RyaW5nOjpmcm9tVVRGOChk
ZXZpY2VOYW1lLmdldCgpKTsKKyAgICBnYm9vbGVhbiBpc0RlZmF1bHQgPSBGQUxTRTsKKyAgICBn
c3Rfc3RydWN0dXJlX2dldF9ib29sZWFuKHByb3BlcnRpZXMuZ2V0KCksICJpcy1kZWZhdWx0Iiwg
JmlzRGVmYXVsdCk7CisKKyAgICBTdHJpbmcgaWRlbnRpZmllciA9IFN0cmluZzo6Zm9ybWF0KCIl
cyVzIiwgaXNEZWZhdWx0ID8gImRlZmF1bHQ6ICIgOiAiIiwgZGV2aWNlTmFtZS5nZXQoKSk7CiAK
ICAgICBhdXRvIGdzdENhcHR1cmVEZXZpY2UgPSBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlKFdURk1v
dmUoZGV2aWNlKSwgaWRlbnRpZmllciwgdHlwZSwgaWRlbnRpZmllcik7CiAgICAgZ3N0Q2FwdHVy
ZURldmljZS5zZXRFbmFibGVkKHRydWUpOwpAQCAtMTIwLDEwICsxNDMsMTEgQEAgdm9pZCBHU3Ry
ZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaENhcHR1cmVEZXZpY2VzKCkKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIEdMaXN0KiBkZXZpY2VzID0gZ3N0X2RldmljZV9tb25p
dG9yX2dldF9kZXZpY2VzKG1fZGV2aWNlTW9uaXRvci5nZXQoKSk7CisgICAgR0xpc3QqIGRldmlj
ZXMgPSBnX2xpc3Rfc29ydChnc3RfZGV2aWNlX21vbml0b3JfZ2V0X2RldmljZXMobV9kZXZpY2VN
b25pdG9yLmdldCgpKSwgc29ydERldmljZXMpOwogICAgIHdoaWxlIChkZXZpY2VzKSB7CiAgICAg
ICAgIEdSZWZQdHI8R3N0RGV2aWNlPiBkZXZpY2UgPSBhZG9wdEdSZWYoR1NUX0RFVklDRV9DQVNU
KGRldmljZXMtPmRhdGEpKTsKLSAgICAgICAgZGV2aWNlQWRkZWQoV1RGTW92ZShkZXZpY2UpKTsK
KworICAgICAgICBhZGREZXZpY2UoV1RGTW92ZShkZXZpY2UpKTsKICAgICAgICAgZGV2aWNlcyA9
IGdfbGlzdF9kZWxldGVfbGluayhkZXZpY2VzLCBkZXZpY2VzKTsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFt
ZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggMmE2
NDJmM2QxZTM5MDU1ZmJmZDlmNjM2YzRkZmYzYWY5ODVlYzBiOC4uY2UxMWM0ZjNhOGMzZmYxNTZh
ODVlY2FkMzIzMmM4NWYwNzk2NzFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJl
YW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTM4LDcgKzM4LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSBkZXZpY2VUeXBlKCkgPSAwOwogCiBw
cml2YXRlOgotICAgIHZvaWQgZGV2aWNlQWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYpOworICAg
IHZvaWQgYWRkRGV2aWNlKEdSZWZQdHI8R3N0RGV2aWNlPiYmKTsKICAgICB2b2lkIHJlZnJlc2hD
YXB0dXJlRGV2aWNlcygpOwogCiAgICAgR1JlZlB0cjxHc3REZXZpY2VNb25pdG9yPiBtX2Rldmlj
ZU1vbml0b3I7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggZjg2YjhmY2QwMzc4NDU2MTNiNjViYzEyY2YyZjY5ZDUwZmI4ZDY3My4uN2Y5MGFlM2Jj
MmFiNDMwNmM0NjQwYzU2YmMzYTdjNDcxZjJiMmY5MiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw5ICsxLDI1IEBACisyMDE4LTExLTI3ICBU
aGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRD
XVtHU3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24g
dGhlIHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFu
ZC4KKworICAgICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNz
IG9uZSBpbiBzb21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBh
cHBsaWNhdGlvbiBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3Nl
ZCBhcyBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5z
LWdvb2QvbWVyZ2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIGZsYXRwYWsvb3JnLndl
YmtpdC5Db21tb25Nb2R1bGVzLnlhbWw6CisgICAgICAgICogZ3N0cmVhbWVyL2poYnVpbGQubW9k
dWxlczoKKyAgICAgICAgKiBnc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQt
cHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaDogQWRkZWQuCisKIDIw
MTgtMTEtMTMgIFRoaWJhdWx0IFNhdW5pZXIgIDx0c2F1bmllckBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHVEtdW01pbmlCcm93c2VyXSBIYW5kbGUgRGV2aWNlIEluZm8gcGVybWlzc2lvbiByZXF1
ZXN0cwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkx
NTg1CiAKLSAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIFJldmll
d2VkIGJ5IFBoaWxpcHBlIE5vcm1hbmQuCiAKICAgICAgICAgKiBNaW5pQnJvd3Nlci9ndGsvQnJv
d3NlclRhYi5jOgogICAgICAgICAocGVybWlzc2lvblJlcXVlc3REYXRhTmV3KToKZGlmZiAtLWdp
dCBhL1Rvb2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21tb25Nb2R1bGVzLnlhbWwgYi9Ub29scy9m
bGF0cGFrL29yZy53ZWJraXQuQ29tbW9uTW9kdWxlcy55YW1sCmluZGV4IDZiZjdkODZhZmMyM2Ni
ZDE1MWViMDZiZTk3YmM5ZDIxOWZjNzBhMTcuLjI0NzU5NmUwOGRiYzJjOWRiYTQ4ZjI3MjQ1MGNh
ZDM5ZTIxMDQ0ZDIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21tb25N
b2R1bGVzLnlhbWwKKysrIGIvVG9vbHMvZmxhdHBhay9vcmcud2Via2l0LkNvbW1vbk1vZHVsZXMu
eWFtbApAQCAtMTcxLDYgKzE3MSw4IEBACiAgICAgICBwYXRoOiAuLi9nc3RyZWFtZXIvcGF0Y2hl
cy9nc3QtcGx1Z2lucy1nb29kLTAwMTItbWF0cm9za2RlbXV4LWRvLW5vdC11c2UtTWFwSW5mby5k
YXRhLWFmdGVyLXVubWFwcGluZy5wYXRjaAogICAgIC0gdHlwZTogcGF0Y2gKICAgICAgIHBhdGg6
IC4uL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxMy1Bdm9pZC13YXJuaW5n
LXdoZW4tcmVwb3J0aW5nLWFib3V0LWRlY3J5cHRvcnMucGF0Y2gKKyAgICAtIHR5cGU6IHBhdGNo
CisgICAgICBwYXRoOiAuLi9nc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQt
cHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaAogICBjb25maWctb3B0
czoKICAgICAtIC1EZGlzYWJsZV9ndGtkb2M9dHJ1ZQogLSBuYW1lOiB4MjY0CmRpZmYgLS1naXQg
YS9Ub29scy9nc3RyZWFtZXIvamhidWlsZC5tb2R1bGVzIGIvVG9vbHMvZ3N0cmVhbWVyL2poYnVp
bGQubW9kdWxlcwppbmRleCA2MGRlMDE5NGYzNWVjYWQ2ZWRmNTc0NzU0NmEwMmMxYzQxN2ZlNmRl
Li5jN2NkNGQ5N2I0Yzc3MDY1ZDYwOTY0NjBmMDNiYTIxZTQxZjZkNjU1IDEwMDY0NAotLS0gYS9U
b29scy9nc3RyZWFtZXIvamhidWlsZC5tb2R1bGVzCisrKyBiL1Rvb2xzL2dzdHJlYW1lci9qaGJ1
aWxkLm1vZHVsZXMKQEAgLTkwLDYgKzkwLDcgQEAKICAgICAgIDxwYXRjaCBmaWxlPSJnc3QtcGx1
Z2lucy1nb29kLTAwMTEtbWF0cm9za2EtQWRkLXRoZS1XZWJNLWVuY3J5cHRlZC1jb250ZW50LXN1
cHBvcnQtaW4tbS5wYXRjaCIgc3RyaXA9IjEiIC8+IDwhLS0gTWVyZ2VkIGFzIDA0MzI4MjY5NTBk
NGQ4MGZlMmI1MGZmZDM3NTdkYzA4MTU1ZGU5ZTMgLS0+CiAgICAgICA8cGF0Y2ggZmlsZT0iZ3N0
LXBsdWdpbnMtZ29vZC0wMDEyLW1hdHJvc2tkZW11eC1kby1ub3QtdXNlLU1hcEluZm8uZGF0YS1h
ZnRlci11bm1hcHBpbmcucGF0Y2giIHN0cmlwPSIxIiAvPiA8IS0tIE1lcmdlZCBhcyBkZWZhZTM1
MDM1ODY2MGU1NTdjNzRlNDFhNGZlOGE4YmIzMjdlOWM4IC0tPgogICAgICAgPHBhdGNoIGZpbGU9
ImdzdC1wbHVnaW5zLWdvb2QtMDAxMy1Bdm9pZC13YXJuaW5nLXdoZW4tcmVwb3J0aW5nLWFib3V0
LWRlY3J5cHRvcnMucGF0Y2giIHN0cmlwPSIxIiAvPiA8IS0tIE1lcmdlZCBhcyA1NjY2OTIwNWVi
MmQwODg3NTk2NTc0ZWFiYjc4MDZiMzFjNWJhNWNmIC0tPgorICAgICAgPHBhdGNoIGZpbGU9Imdz
dC1wbHVnaW5zLWdvb2QtMDAxNC1wdWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0
LnBhdGNoIiBzdHJpcD0iMSIgLz4KICAgICA8L2JyYW5jaD4KICAgPC9hdXRvdG9vbHM+CiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxNC1w
dWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0LnBhdGNoIGIvVG9vbHMvZ3N0cmVh
bWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZp
Y2VzLWFzLWRlZmF1bHQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDM1YjZkN2Q5N2Y4NDJiNmMzYjVkZjc1
ODJmYThkZmFjOGMxYzM2YgotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2dzdHJlYW1lci9wYXRj
aGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxNC1wdWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1k
ZWZhdWx0LnBhdGNoCkBAIC0wLDAgKzEsMzE4IEBACitGcm9tIDMyYzgzM2ViYjQyYjhlOGY0NmM1
YTcyYTE2YTg3NGJjMDBmYzU1NTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBUaGli
YXVsdCBTYXVuaWVyIDx0c2F1bmllckBpZ2FsaWEuY29tPgorRGF0ZTogTW9uLCAyNiBOb3YgMjAx
OCAxMzo0ODo1NiAtMDMwMAorU3ViamVjdDogW1BBVENIXSBwdWxzZTogTWFyayBkZWZhdWx0IGRl
dmljZXMgYXMgImRlZmF1bHQiCisKKy0tLQorIGV4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVy
LmMgfCAxMTcgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBleHQvcHVsc2UvcHVs
c2VkZXZpY2Vwcm92aWRlci5oIHwgICAzICsKKyAyIGZpbGVzIGNoYW5nZWQsIDc5IGluc2VydGlv
bnMoKyksIDQxIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvZXh0L3B1bHNlL3B1bHNlZGV2
aWNlcHJvdmlkZXIuYyBiL2V4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmMKK2luZGV4IGEx
OTY0ZGFiMi4uOWI2NmEwZTMzIDEwMDY0NAorLS0tIGEvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJv
dmlkZXIuYworKysrIGIvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuYworQEAgLTQwLDcg
KzQwLDcgQEAgR1NUX0RFQlVHX0NBVEVHT1JZX0VYVEVSTiAocHVsc2VfZGVidWcpOworIAorIHN0
YXRpYyBHc3REZXZpY2UgKmdzdF9wdWxzZV9kZXZpY2VfbmV3IChndWludCBpZCwKKyAgICAgY29u
c3QgZ2NoYXIgKiBkZXZpY2VfbmFtZSwgR3N0Q2FwcyAqIGNhcHMsIGNvbnN0IGdjaGFyICogaW50
ZXJuYWxfbmFtZSwKKy0gICAgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGUsIEdzdFN0cnVjdHVyZSAq
IHByb3BlcnRpZXMpOworKyAgICBHc3RQdWxzZURldmljZVR5cGUgdHlwZSwgR3N0U3RydWN0dXJl
ICogcHJvcGVydGllcywgZ2Jvb2xlYW4gaXNfZGVmYXVsdCk7CisgCisgR19ERUZJTkVfVFlQRSAo
R3N0UHVsc2VEZXZpY2VQcm92aWRlciwgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlciwKKyAgICAg
R1NUX1RZUEVfREVWSUNFX1BST1ZJREVSKTsKK0BAIC02NSw2ICs2NSwxMiBAQCBlbnVtCisgfTsK
KyAKKyAKKyt0eXBlZGVmIHN0cnVjdAorK3sKKysgIEdMaXN0ICpkZXZpY2VzOworKyAgR3N0UHVs
c2VEZXZpY2VQcm92aWRlciAqc2VsZjsKKyt9IExpc3REZXZpY2VzRGF0YTsKKysKKyBzdGF0aWMg
dm9pZAorIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfY2xhc3NfaW5pdCAoR3N0UHVsc2VEZXZp
Y2VQcm92aWRlckNsYXNzICoga2xhc3MpCisgeworQEAgLTExNCw2ICsxMjAsOCBAQCBnc3RfcHVs
c2VfZGV2aWNlX3Byb3ZpZGVyX2ZpbmFsaXplIChHT2JqZWN0ICogb2JqZWN0KQorIAorICAgZ19m
cmVlIChzZWxmLT5jbGllbnRfbmFtZSk7CisgICBnX2ZyZWUgKHNlbGYtPnNlcnZlcik7CisrICBn
X2ZyZWUgKHNlbGYtPmRlZmF1bHRfc2lua19uYW1lKTsKKysgIGdfZnJlZSAoc2VsZi0+ZGVmYXVs
dF9zb3VyY2VfbmFtZSk7CisgCisgICBHX09CSkVDVF9DTEFTUyAoZ3N0X3B1bHNlX2RldmljZV9w
cm92aWRlcl9wYXJlbnRfY2xhc3MpLT5maW5hbGl6ZSAob2JqZWN0KTsKKyB9CitAQCAtMTg2LDcg
KzE5NCw3IEBAIGNvbnRleHRfc3RhdGVfY2IgKHBhX2NvbnRleHQgKiBjLCB2b2lkICp1c2VyZGF0
YSkKKyB9CisgCisgc3RhdGljIEdzdERldmljZSAqCistbmV3X3NvdXJjZSAoY29uc3QgcGFfc291
cmNlX2luZm8gKiBpbmZvKQorK25ld19zb3VyY2UgKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKiBz
ZWxmLCBjb25zdCBwYV9zb3VyY2VfaW5mbyAqIGluZm8pCisgeworICAgR3N0Q2FwcyAqY2FwczsK
KyAgIEdzdFN0cnVjdHVyZSAqcHJvcHM7CitAQCAtMjAwLDExICsyMDgsMTIgQEAgbmV3X3NvdXJj
ZSAoY29uc3QgcGFfc291cmNlX2luZm8gKiBpbmZvKQorICAgcHJvcHMgPSBnc3RfcHVsc2VfbWFr
ZV9zdHJ1Y3R1cmUgKGluZm8tPnByb3BsaXN0KTsKKyAKKyAgIHJldHVybiBnc3RfcHVsc2VfZGV2
aWNlX25ldyAoaW5mby0+aW5kZXgsIGluZm8tPmRlc2NyaXB0aW9uLAorLSAgICAgIGNhcHMsIGlu
Zm8tPm5hbWUsIEdTVF9QVUxTRV9ERVZJQ0VfVFlQRV9TT1VSQ0UsIHByb3BzKTsKKysgICAgICBj
YXBzLCBpbmZvLT5uYW1lLCBHU1RfUFVMU0VfREVWSUNFX1RZUEVfU09VUkNFLCBwcm9wcywKKysg
ICAgICAhZ19zdHJjbXAwIChpbmZvLT5uYW1lLCBzZWxmLT5kZWZhdWx0X3NvdXJjZV9uYW1lKSk7
CisgfQorIAorIHN0YXRpYyBHc3REZXZpY2UgKgorLW5ld19zaW5rIChjb25zdCBwYV9zaW5rX2lu
Zm8gKiBpbmZvKQorK25ld19zaW5rIChHc3RQdWxzZURldmljZVByb3ZpZGVyICogc2VsZiwgY29u
c3QgcGFfc2lua19pbmZvICogaW5mbykKKyB7CisgICBHc3RDYXBzICpjYXBzOworICAgR3N0U3Ry
dWN0dXJlICpwcm9wczsKK0BAIC0yMTgsNyArMjI3LDggQEAgbmV3X3NpbmsgKGNvbnN0IHBhX3Np
bmtfaW5mbyAqIGluZm8pCisgICBwcm9wcyA9IGdzdF9wdWxzZV9tYWtlX3N0cnVjdHVyZSAoaW5m
by0+cHJvcGxpc3QpOworIAorICAgcmV0dXJuIGdzdF9wdWxzZV9kZXZpY2VfbmV3IChpbmZvLT5p
bmRleCwgaW5mby0+ZGVzY3JpcHRpb24sCistICAgICAgY2FwcywgaW5mby0+bmFtZSwgR1NUX1BV
TFNFX0RFVklDRV9UWVBFX1NJTkssIHByb3BzKTsKKysgICAgICBjYXBzLCBpbmZvLT5uYW1lLCBH
U1RfUFVMU0VfREVWSUNFX1RZUEVfU0lOSywgcHJvcHMsCisrICAgICAgIWdfc3RyY21wMCAoaW5m
by0+bmFtZSwgc2VsZi0+ZGVmYXVsdF9zaW5rX25hbWUpKTsKKyB9CisgCisgc3RhdGljIHZvaWQK
K0BAIC0yMzMsMTIgKzI0MywyNiBAQCBnZXRfc291cmNlX2luZm9fY2IgKHBhX2NvbnRleHQgKiBj
b250ZXh0LAorICAgICByZXR1cm47CisgICB9CisgCistICBkZXYgPSBuZXdfc291cmNlIChpbmZv
KTsKKysgIGRldiA9IG5ld19zb3VyY2UgKHNlbGYsIGluZm8pOworIAorICAgaWYgKGRldikKKyAg
ICAgZ3N0X2RldmljZV9wcm92aWRlcl9kZXZpY2VfYWRkIChHU1RfREVWSUNFX1BST1ZJREVSIChz
ZWxmKSwgZGV2KTsKKyB9CisgCisrc3RhdGljIHZvaWQKKytnZXRfc2VydmVyX2luZm9fY2IgKHBh
X2NvbnRleHQgKiBjb250ZXh0LCBjb25zdCBwYV9zZXJ2ZXJfaW5mbyAqIGluZm8sCisrICAgIHZv
aWQgKnVzZXJkYXRhKQorK3sKKysgIEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKnNlbGYgPSB1c2Vy
ZGF0YTsKKysKKysgIGdfZnJlZSAoc2VsZi0+ZGVmYXVsdF9zaW5rX25hbWUpOworKyAgZ19mcmVl
IChzZWxmLT5kZWZhdWx0X3NvdXJjZV9uYW1lKTsKKysgIHNlbGYtPmRlZmF1bHRfc2lua19uYW1l
ID0gZ19zdHJkdXAgKGluZm8tPmRlZmF1bHRfc2lua19uYW1lKTsKKysgIHNlbGYtPmRlZmF1bHRf
c291cmNlX25hbWUgPSBnX3N0cmR1cCAoaW5mby0+ZGVmYXVsdF9zb3VyY2VfbmFtZSk7CisrCisr
ICBwYV90aHJlYWRlZF9tYWlubG9vcF9zaWduYWwgKHNlbGYtPm1haW5sb29wLCAwKTsKKyt9Cisr
Cisgc3RhdGljIHZvaWQKKyBnZXRfc2lua19pbmZvX2NiIChwYV9jb250ZXh0ICogY29udGV4dCwK
KyAgICAgY29uc3QgcGFfc2lua19pbmZvICogaW5mbywgaW50IGVvbCwgdm9pZCAqdXNlcmRhdGEp
CitAQCAtMjUxLDcgKzI3NSw3IEBAIGdldF9zaW5rX2luZm9fY2IgKHBhX2NvbnRleHQgKiBjb250
ZXh0LAorICAgICByZXR1cm47CisgICB9CisgCistICBkZXYgPSBuZXdfc2luayAoaW5mbyk7Cisr
ICBkZXYgPSBuZXdfc2luayAoc2VsZiwgaW5mbyk7CisgCisgICBpZiAoZGV2KQorICAgICBnc3Rf
ZGV2aWNlX3Byb3ZpZGVyX2RldmljZV9hZGQgKEdTVF9ERVZJQ0VfUFJPVklERVIgKHNlbGYpLCBk
ZXYpOworQEAgLTMxMiwzNCArMzM2LDM4IEBAIHN0YXRpYyB2b2lkCisgZ2V0X3NvdXJjZV9pbmZv
X2xpc3RfY2IgKHBhX2NvbnRleHQgKiBjb250ZXh0LCBjb25zdCBwYV9zb3VyY2VfaW5mbyAqIGlu
Zm8sCisgICAgIGludCBlb2wsIHZvaWQgKnVzZXJkYXRhKQorIHsKKy0gIEdMaXN0ICoqZGV2aWNl
cyA9IHVzZXJkYXRhOworKyAgTGlzdERldmljZXNEYXRhICpkYXRhID0gdXNlcmRhdGE7CisgCisg
ICBpZiAoZW9sKQorICAgICByZXR1cm47CisgCistICAqZGV2aWNlcyA9IGdfbGlzdF9wcmVwZW5k
ICgqZGV2aWNlcywgZ3N0X29iamVjdF9yZWZfc2luayAobmV3X3NvdXJjZSAoaW5mbykpKTsKKysg
IGRhdGEtPmRldmljZXMgPQorKyAgICAgIGdfbGlzdF9wcmVwZW5kIChkYXRhLT5kZXZpY2VzLAor
KyAgICAgIGdzdF9vYmplY3RfcmVmX3NpbmsgKG5ld19zb3VyY2UgKGRhdGEtPnNlbGYsIGluZm8p
KSk7CisgfQorIAorIHN0YXRpYyB2b2lkCisgZ2V0X3NpbmtfaW5mb19saXN0X2NiIChwYV9jb250
ZXh0ICogY29udGV4dCwgY29uc3QgcGFfc2lua19pbmZvICogaW5mbywKKyAgICAgaW50IGVvbCwg
dm9pZCAqdXNlcmRhdGEpCisgeworLSAgR0xpc3QgKipkZXZpY2VzID0gdXNlcmRhdGE7CisrICBM
aXN0RGV2aWNlc0RhdGEgKmRhdGEgPSB1c2VyZGF0YTsKKyAKKyAgIGlmIChlb2wpCisgICAgIHJl
dHVybjsKKyAKKy0gICpkZXZpY2VzID0gZ19saXN0X3ByZXBlbmQgKCpkZXZpY2VzLCBnc3Rfb2Jq
ZWN0X3JlZl9zaW5rIChuZXdfc2luayAoaW5mbykpKTsKKysgIGRhdGEtPmRldmljZXMgPQorKyAg
ICAgIGdfbGlzdF9wcmVwZW5kIChkYXRhLT5kZXZpY2VzLCBnc3Rfb2JqZWN0X3JlZl9zaW5rIChu
ZXdfc2luayAoZGF0YS0+c2VsZiwKKysgICAgICAgICAgICAgIGluZm8pKSk7CisgfQorIAorIHN0
YXRpYyBHTGlzdCAqCisgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9wcm9iZSAoR3N0RGV2aWNl
UHJvdmlkZXIgKiBwcm92aWRlcikKKyB7CisgICBHc3RQdWxzZURldmljZVByb3ZpZGVyICpzZWxm
ID0gR1NUX1BVTFNFX0RFVklDRV9QUk9WSURFUiAocHJvdmlkZXIpOworLSAgR0xpc3QgKmRldmlj
ZXMgPSBOVUxMOworICAgcGFfbWFpbmxvb3AgKm0gPSBOVUxMOworICAgcGFfY29udGV4dCAqYyA9
IE5VTEw7CisgICBwYV9vcGVyYXRpb24gKm87CisrICBMaXN0RGV2aWNlc0RhdGEgZGF0YSA9IHsg
TlVMTCwgc2VsZiB9OworIAorICAgaWYgKCEobSA9IHBhX21haW5sb29wX25ldyAoKSkpCisgICAg
IHJldHVybiBOVUxMOworQEAgLTM3Niw3ICs0MDQsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX3Byb3Zp
ZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3ZpZGVyKQorICAgfQorICAgR1NUX0RF
QlVHX09CSkVDVCAoc2VsZiwgImNvbm5lY3RlZCIpOworIAorLSAgbyA9IHBhX2NvbnRleHRfZ2V0
X3NpbmtfaW5mb19saXN0IChjLCBnZXRfc2lua19pbmZvX2xpc3RfY2IsICZkZXZpY2VzKTsKKysg
IG8gPSBwYV9jb250ZXh0X2dldF9zaW5rX2luZm9fbGlzdCAoYywgZ2V0X3NpbmtfaW5mb19saXN0
X2NiLCAmZGF0YSk7CisgICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAobykgPT0gUEFf
T1BFUkFUSU9OX1JVTk5JTkcgJiYKKyAgICAgICBwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvKSA9
PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworICAgICBpZiAocGFfbWFpbmxvb3BfaXRlcmF0ZSAo
bSwgVFJVRSwgTlVMTCkgPCAwKQorQEAgLTM4NCw3ICs0MTIsNyBAQCBnc3RfcHVsc2VfZGV2aWNl
X3Byb3ZpZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3ZpZGVyKQorICAgfQorICAg
cGFfb3BlcmF0aW9uX3VucmVmIChvKTsKKyAKKy0gIG8gPSBwYV9jb250ZXh0X2dldF9zb3VyY2Vf
aW5mb19saXN0IChjLCBnZXRfc291cmNlX2luZm9fbGlzdF9jYiwgJmRldmljZXMpOworKyAgbyA9
IHBhX2NvbnRleHRfZ2V0X3NvdXJjZV9pbmZvX2xpc3QgKGMsIGdldF9zb3VyY2VfaW5mb19saXN0
X2NiLCAmZGF0YSk7CisgICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAobykgPT0gUEFf
T1BFUkFUSU9OX1JVTk5JTkcgJiYKKyAgICAgICBwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvKSA9
PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworICAgICBpZiAocGFfbWFpbmxvb3BfaXRlcmF0ZSAo
bSwgVFJVRSwgTlVMTCkgPCAwKQorQEAgLTM5NSwxOCArNDIzLDM4IEBAIGdzdF9wdWxzZV9kZXZp
Y2VfcHJvdmlkZXJfcHJvYmUgKEdzdERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisgICBwYV9j
b250ZXh0X2Rpc2Nvbm5lY3QgKGMpOworICAgcGFfbWFpbmxvb3BfZnJlZSAobSk7CisgCistICBy
ZXR1cm4gZGV2aWNlczsKKysgIHJldHVybiBkYXRhLmRldmljZXM7CisgCisgZmFpbGVkOgorIAor
ICAgcmV0dXJuIE5VTEw7CisgfQorIAorK3N0YXRpYyBnYm9vbGVhbgorK3J1bl9wdWxzZV9vcGVy
YXRpb24gKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKiBzZWxmLCBwYV9vcGVyYXRpb24gKiBvcGVy
YXRpb24pCisreworKyAgaWYgKCFvcGVyYXRpb24pCisrICAgIHJldHVybiBGQUxTRTsKKysKKysg
IHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvcGVyYXRpb24pID09IFBBX09QRVJBVElP
Tl9SVU5OSU5HKSB7CisrICAgIGlmICghUEFfQ09OVEVYVF9JU19HT09EIChwYV9jb250ZXh0X2dl
dF9zdGF0ZSAoKHNlbGYtPmNvbnRleHQpKSkpIHsKKysgICAgICBwYV9vcGVyYXRpb25fY2FuY2Vs
IChvcGVyYXRpb24pOworKyAgICAgIHBhX29wZXJhdGlvbl91bnJlZiAob3BlcmF0aW9uKTsKKysg
ICAgICByZXR1cm4gRkFMU0U7CisrICAgIH0KKysKKysgICAgcGFfdGhyZWFkZWRfbWFpbmxvb3Bf
d2FpdCAoc2VsZi0+bWFpbmxvb3ApOworKyAgfQorKworKyAgcGFfb3BlcmF0aW9uX3VucmVmIChv
cGVyYXRpb24pOworKworKyAgcmV0dXJuIFRSVUU7CisrfQorKworIHN0YXRpYyBnYm9vbGVhbgor
IGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfc3RhcnQgKEdzdERldmljZVByb3ZpZGVyICogcHJv
dmlkZXIpCisgeworICAgR3N0UHVsc2VEZXZpY2VQcm92aWRlciAqc2VsZiA9IEdTVF9QVUxTRV9E
RVZJQ0VfUFJPVklERVIgKHByb3ZpZGVyKTsKKy0gIHBhX29wZXJhdGlvbiAqaW5pdGlhbF9vcGVy
YXRpb247CisgCisgICBpZiAoIShzZWxmLT5tYWlubG9vcCA9IHBhX3RocmVhZGVkX21haW5sb29w
X25ldyAoKSkpIHsKKyAgICAgR1NUX0VSUk9SX09CSkVDVCAoc2VsZiwgIkNvdWxkIG5vdCBjcmVh
dGUgcHVsc2VhdWRpbyBtYWlubG9vcCIpOworQEAgLTQ2MiwyNyArNTEwLDE4IEBAIGdzdF9wdWxz
ZV9kZXZpY2VfcHJvdmlkZXJfc3RhcnQgKEdzdERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisg
ICBwYV9jb250ZXh0X3N1YnNjcmliZSAoc2VsZi0+Y29udGV4dCwKKyAgICAgICBQQV9TVUJTQ1JJ
UFRJT05fTUFTS19TT1VSQ0UgfCBQQV9TVUJTQ1JJUFRJT05fTUFTS19TSU5LLCBOVUxMLCBOVUxM
KTsKKyAKKy0gIGluaXRpYWxfb3BlcmF0aW9uID0gcGFfY29udGV4dF9nZXRfc291cmNlX2luZm9f
bGlzdCAoc2VsZi0+Y29udGV4dCwKKy0gICAgICBnZXRfc291cmNlX2luZm9fY2IsIHNlbGYpOwor
LSAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUgKGluaXRpYWxfb3BlcmF0aW9uKSA9PSBQ
QV9PUEVSQVRJT05fUlVOTklORykgeworLSAgICBpZiAoIVBBX0NPTlRFWFRfSVNfR09PRCAocGFf
Y29udGV4dF9nZXRfc3RhdGUgKChzZWxmLT5jb250ZXh0KSkpKQorLSAgICAgIGdvdG8gY2FuY2Vs
X2FuZF9mYWlsOworLQorLSAgICBwYV90aHJlYWRlZF9tYWlubG9vcF93YWl0IChzZWxmLT5tYWlu
bG9vcCk7CistICB9CistICBwYV9vcGVyYXRpb25fdW5yZWYgKGluaXRpYWxfb3BlcmF0aW9uKTsK
KysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwgcGFfY29udGV4dF9nZXRfc2VydmVy
X2luZm8gKHNlbGYtPmNvbnRleHQsCisrICAgICAgICAgICAgICBnZXRfc2VydmVyX2luZm9fY2Is
IHNlbGYpKSkKKysgICAgZ290byB1bmxvY2tfYW5kX2ZhaWw7CisgCistICBpbml0aWFsX29wZXJh
dGlvbiA9IHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5mb19saXN0IChzZWxmLT5jb250ZXh0LAorLSAg
ICAgIGdldF9zaW5rX2luZm9fY2IsIHNlbGYpOworLSAgaWYgKCFpbml0aWFsX29wZXJhdGlvbikK
KysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwKKysgICAgICAgICAgcGFfY29udGV4
dF9nZXRfc291cmNlX2luZm9fbGlzdCAoc2VsZi0+Y29udGV4dCwgZ2V0X3NvdXJjZV9pbmZvX2Ni
LAorKyAgICAgICAgICAgICAgc2VsZikpKQorICAgICBnb3RvIHVubG9ja19hbmRfZmFpbDsKKy0g
IHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChpbml0aWFsX29wZXJhdGlvbikgPT0gUEFf
T1BFUkFUSU9OX1JVTk5JTkcpIHsKKy0gICAgaWYgKCFQQV9DT05URVhUX0lTX0dPT0QgKHBhX2Nv
bnRleHRfZ2V0X3N0YXRlICgoc2VsZi0+Y29udGV4dCkpKSkKKy0gICAgICBnb3RvIGNhbmNlbF9h
bmRfZmFpbDsKKyAKKy0gICAgcGFfdGhyZWFkZWRfbWFpbmxvb3Bfd2FpdCAoc2VsZi0+bWFpbmxv
b3ApOworLSAgfQorLSAgcGFfb3BlcmF0aW9uX3VucmVmIChpbml0aWFsX29wZXJhdGlvbik7Cisr
ICBpZiAoIXJ1bl9wdWxzZV9vcGVyYXRpb24gKHNlbGYsIHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5m
b19saXN0IChzZWxmLT5jb250ZXh0LAorKyAgICAgICAgICAgICAgZ2V0X3NpbmtfaW5mb19jYiwg
c2VsZikpKQorKyAgICBnb3RvIHVubG9ja19hbmRfZmFpbDsKKyAKKyAgIHBhX3RocmVhZGVkX21h
aW5sb29wX3VubG9jayAoc2VsZi0+bWFpbmxvb3ApOworIAorQEAgLTQ5NSwxMSArNTM0LDYgQEAg
dW5sb2NrX2FuZF9mYWlsOgorIAorIG1haW5sb29wX2ZhaWxlZDoKKyAgIHJldHVybiBGQUxTRTsK
Ky0KKy1jYW5jZWxfYW5kX2ZhaWw6CistICBwYV9vcGVyYXRpb25fY2FuY2VsIChpbml0aWFsX29w
ZXJhdGlvbik7CistICBwYV9vcGVyYXRpb25fdW5yZWYgKGluaXRpYWxfb3BlcmF0aW9uKTsKKy0g
IGdvdG8gdW5sb2NrX2FuZF9mYWlsOworIH0KKyAKKyBzdGF0aWMgdm9pZAorQEAgLTYxMSw3ICs2
NDUsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX3JlY29uZmlndXJlX2VsZW1lbnQgKEdzdERldmljZSAq
IGRldmljZSwgR3N0RWxlbWVudCAqIGVsZW1lbnQpCisgc3RhdGljIEdzdERldmljZSAqCisgZ3N0
X3B1bHNlX2RldmljZV9uZXcgKGd1aW50IGRldmljZV9pbmRleCwgY29uc3QgZ2NoYXIgKiBkZXZp
Y2VfbmFtZSwKKyAgICAgR3N0Q2FwcyAqIGNhcHMsIGNvbnN0IGdjaGFyICogaW50ZXJuYWxfbmFt
ZSwgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGUsCistICAgIEdzdFN0cnVjdHVyZSAqIHByb3BzKQor
KyAgICBHc3RTdHJ1Y3R1cmUgKiBwcm9wcywgZ2Jvb2xlYW4gaXNfZGVmYXVsdCkKKyB7CisgICBH
c3RQdWxzZURldmljZSAqZ3N0ZGV2OworICAgY29uc3QgZ2NoYXIgKmVsZW1lbnQgPSBOVUxMOwor
QEAgLTYzNiw3ICs2NzAsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX25ldyAoZ3VpbnQgZGV2aWNlX2lu
ZGV4LCBjb25zdCBnY2hhciAqIGRldmljZV9uYW1lLAorICAgICAgIGJyZWFrOworICAgfQorIAor
LQorKyAgZ3N0X3N0cnVjdHVyZV9zZXQgKHByb3BzLCAiaXMtZGVmYXVsdCIsIEdfVFlQRV9CT09M
RUFOLCBpc19kZWZhdWx0LCBOVUxMKTsKKyAgIGdzdGRldiA9IGdfb2JqZWN0X25ldyAoR1NUX1RZ
UEVfUFVMU0VfREVWSUNFLAorICAgICAgICJkaXNwbGF5LW5hbWUiLCBkZXZpY2VfbmFtZSwgImNh
cHMiLCBjYXBzLCAiZGV2aWNlLWNsYXNzIiwga2xhc3MsCisgICAgICAgImludGVybmFsLW5hbWUi
LCBpbnRlcm5hbF9uYW1lLCAicHJvcGVydGllcyIsIHByb3BzLCBOVUxMKTsKK0BAIC02NDQsNiAr
Njc4LDcgQEAgZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50IGRldmljZV9pbmRleCwgY29uc3Qg
Z2NoYXIgKiBkZXZpY2VfbmFtZSwKKyAgIGdzdGRldi0+dHlwZSA9IHR5cGU7CisgICBnc3RkZXYt
PmRldmljZV9pbmRleCA9IGRldmljZV9pbmRleDsKKyAgIGdzdGRldi0+ZWxlbWVudCA9IGVsZW1l
bnQ7CisrICBnc3RkZXYtPmlzX2RlZmF1bHQgPSBpc19kZWZhdWx0OworIAorICAgZ3N0X3N0cnVj
dHVyZV9mcmVlIChwcm9wcyk7CisgICBnc3RfY2Fwc191bnJlZiAoY2Fwcyk7CitkaWZmIC0tZ2l0
IGEvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaCBiL2V4dC9wdWxzZS9wdWxzZWRldmlj
ZXByb3ZpZGVyLmgKK2luZGV4IDA4OTJhZDU4Ni4uN2JjZDFiYzQ3IDEwMDY0NAorLS0tIGEvZXh0
L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaAorKysrIGIvZXh0L3B1bHNlL3B1bHNlZGV2aWNl
cHJvdmlkZXIuaAorQEAgLTUwLDYgKzUwLDggQEAgc3RydWN0IF9Hc3RQdWxzZURldmljZVByb3Zp
ZGVyIHsKKyAKKyAgIGdjaGFyICpzZXJ2ZXI7CisgICBnY2hhciAqY2xpZW50X25hbWU7CisrICBn
Y2hhciAqZGVmYXVsdF9zb3VyY2VfbmFtZTsKKysgIGdjaGFyICpkZWZhdWx0X3NpbmtfbmFtZTsK
KyAKKyAgIHBhX3RocmVhZGVkX21haW5sb29wICptYWlubG9vcDsKKyAgIHBhX2NvbnRleHQgKmNv
bnRleHQ7CitAQCAtODQsNiArODYsNyBAQCBzdHJ1Y3QgX0dzdFB1bHNlRGV2aWNlIHsKKyAgIEdz
dFB1bHNlRGV2aWNlVHlwZSB0eXBlOworICAgZ3VpbnQgICAgICAgICAgICAgZGV2aWNlX2luZGV4
OworICAgZ2NoYXIgICAgICAgICAgICAqaW50ZXJuYWxfbmFtZTsKKysgIGdib29sZWFuICAgICAg
ICAgaXNfZGVmYXVsdDsKKyAgIGNvbnN0IGdjaGFyICAgICAgKmVsZW1lbnQ7CisgfTsKKyAKKy0t
IAorMi4xOS4xCisK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355868</attachid>
            <date>2018-11-28 06:04:45 -0800</date>
            <delta_ts>2018-11-28 06:19:13 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-192026-20181128110443.patch</filename>
            <type>text/plain</type>
            <size>18936</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI4ZDlkZTE3ZTIwYmFm
NTRiYmNhNzVhZDJhMzBjN2VjYmMzZWVmZC4uZjJhMjVmMDJmMTBjZTBlNTIyZmFjOTUwMTEyYTFj
ZDc1Mzg4YzBiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTI3ICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRDXVtH
U3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24gdGhl
IHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFuZC4K
KworICAgICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNzIG9u
ZSBpbiBzb21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBhcHBs
aWNhdGlvbiBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3NlZCBh
cyBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5zLWdv
b2QvbWVyZ2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpzb3J0RGV2aWNlcyk6CisgICAgICAgIChXZWJDb3JlOjpHU3RyZWFtZXJDYXB0
dXJlRGV2aWNlTWFuYWdlcjo6YWRkRGV2aWNlKToKKyAgICAgICAgKFdlYkNvcmU6OkdTdHJlYW1l
ckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQ2FwdHVyZURldmljZXMpOgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFu
YWdlci5oOgorCiAyMDE4LTExLTI4ICBUaGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbV2ViUlRDXVtHU3RyZWFtZXJdIFRhZyBhbGwgY2FtZXJhcyB3aXRo
IGFzICdVbmtub3duJyBmYWNpbmcgbW9kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3Ry
ZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKaW5kZXggYTI3M2Q0NGE1ODFkYzVmNjM3ODBh
ODc1YTVkZmM5Njg1MjJkOGI2Yi4uYzdjZjMzYjhiZDZkOTI0YjM4MTgyY2RmNDg1YTAzZmRkMjI5
MjIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0
cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmlj
ZU1hbmFnZXIuY3BwCkBAIC0yOCw2ICsyOCwyNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
K3N0YXRpYyBnaW50IHNvcnREZXZpY2VzKGdjb25zdHBvaW50ZXIgYSwgZ2NvbnN0cG9pbnRlciBi
KQoreworICAgIEdzdERldmljZSogYWRldiA9IEdTVF9ERVZJQ0UoYSksICpiZGV2ID0gR1NUX0RF
VklDRShiKTsKKyAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gYXByb3BzKGdzdF9kZXZpY2Vf
Z2V0X3Byb3BlcnRpZXMoYWRldikpOworICAgIEdVbmlxdWVQdHI8R3N0U3RydWN0dXJlPiBicHJv
cHMoZ3N0X2RldmljZV9nZXRfcHJvcGVydGllcyhiZGV2KSk7CisgICAgZ2Jvb2xlYW4gYUlzRGVm
YXVsdCA9IEZBTFNFLCBiSXNEZWZhdWx0ID0gRkFMU0U7CisKKyAgICBnc3Rfc3RydWN0dXJlX2dl
dF9ib29sZWFuKGFwcm9wcy5nZXQoKSwgImlzLWRlZmF1bHQiLCAmYUlzRGVmYXVsdCk7CisgICAg
Z3N0X3N0cnVjdHVyZV9nZXRfYm9vbGVhbihicHJvcHMuZ2V0KCksICJpcy1kZWZhdWx0IiwgJmJJ
c0RlZmF1bHQpOworCisgICAgaWYgKGFJc0RlZmF1bHQgPT0gYklzRGVmYXVsdCkgeworICAgICAg
ICBHVW5pcXVlUHRyPGNoYXI+IGFOYW1lKGdzdF9kZXZpY2VfZ2V0X2Rpc3BsYXlfbmFtZShhZGV2
KSk7CisgICAgICAgIEdVbmlxdWVQdHI8Y2hhcj4gYk5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxh
eV9uYW1lKGJkZXYpKTsKKworICAgICAgICByZXR1cm4gZ19zdHJjbXAwKGFOYW1lLmdldCgpLCBi
TmFtZS5nZXQoKSk7CisgICAgfQorCisgICAgcmV0dXJuIGFJc0RlZmF1bHQgPiBiSXNEZWZhdWx0
ID8gLTEgOiAxOworfQorCiBHU3RyZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyJiBHU3Ry
ZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0b24oKQogewogICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxHU3RyZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyPiBtYW5h
Z2VyOwpAQCAtNjYsNyArODYsNyBAQCBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIEdTdHJl
YW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpjYXB0dXJlRGV2aWNlcygpCiAgICAgcmV0dXJuIG1f
ZGV2aWNlczsKIH0KIAotdm9pZCBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6ZGV2aWNl
QWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYgZGV2aWNlKQordm9pZCBHU3RyZWFtZXJDYXB0dXJl
RGV2aWNlTWFuYWdlcjo6YWRkRGV2aWNlKEdSZWZQdHI8R3N0RGV2aWNlPiYmIGRldmljZSkKIHsK
ICAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gcHJvcGVydGllcyhnc3RfZGV2aWNlX2dldF9w
cm9wZXJ0aWVzKGRldmljZS5nZXQoKSkpOwogICAgIGNvbnN0IGNoYXIqIGtsYXNzID0gZ3N0X3N0
cnVjdHVyZV9nZXRfc3RyaW5nKHByb3BlcnRpZXMuZ2V0KCksICJkZXZpY2UuY2xhc3MiKTsKQEAg
LTg1LDcgKzEwNSwxMCBAQCB2b2lkIEdTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpkZXZp
Y2VBZGRlZChHUmVmUHRyPEdzdERldmljZT4mJiBkZXZpY2UpCiAgICAgLy8gVGhpcyBpc24ndCBy
ZWFsbHkgYSBVSUQgYnV0IHNob3VsZCBiZSBnb29kIGVub3VnaCAobGlid2VicnRjCiAgICAgLy8g
aXRzZWxmIGRvZXMgdGhhdCBhdCBsZWFzdCBmb3IgcHVsc2VhdWRpbyBkZXZpY2VzKS4KICAgICBH
VW5pcXVlUHRyPGNoYXI+IGRldmljZU5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxheV9uYW1lKGRl
dmljZS5nZXQoKSkpOwotICAgIFN0cmluZyBpZGVudGlmaWVyID0gU3RyaW5nOjpmcm9tVVRGOChk
ZXZpY2VOYW1lLmdldCgpKTsKKyAgICBnYm9vbGVhbiBpc0RlZmF1bHQgPSBGQUxTRTsKKyAgICBn
c3Rfc3RydWN0dXJlX2dldF9ib29sZWFuKHByb3BlcnRpZXMuZ2V0KCksICJpcy1kZWZhdWx0Iiwg
JmlzRGVmYXVsdCk7CisKKyAgICBTdHJpbmcgaWRlbnRpZmllciA9IFN0cmluZzo6Zm9ybWF0KCIl
cyVzIiwgaXNEZWZhdWx0ID8gImRlZmF1bHQ6ICIgOiAiIiwgZGV2aWNlTmFtZS5nZXQoKSk7CiAK
ICAgICBhdXRvIGdzdENhcHR1cmVEZXZpY2UgPSBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlKFdURk1v
dmUoZGV2aWNlKSwgaWRlbnRpZmllciwgdHlwZSwgaWRlbnRpZmllcik7CiAgICAgZ3N0Q2FwdHVy
ZURldmljZS5zZXRFbmFibGVkKHRydWUpOwpAQCAtMTIwLDEwICsxNDMsMTEgQEAgdm9pZCBHU3Ry
ZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaENhcHR1cmVEZXZpY2VzKCkKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIEdMaXN0KiBkZXZpY2VzID0gZ3N0X2RldmljZV9tb25p
dG9yX2dldF9kZXZpY2VzKG1fZGV2aWNlTW9uaXRvci5nZXQoKSk7CisgICAgR0xpc3QqIGRldmlj
ZXMgPSBnX2xpc3Rfc29ydChnc3RfZGV2aWNlX21vbml0b3JfZ2V0X2RldmljZXMobV9kZXZpY2VN
b25pdG9yLmdldCgpKSwgc29ydERldmljZXMpOwogICAgIHdoaWxlIChkZXZpY2VzKSB7CiAgICAg
ICAgIEdSZWZQdHI8R3N0RGV2aWNlPiBkZXZpY2UgPSBhZG9wdEdSZWYoR1NUX0RFVklDRV9DQVNU
KGRldmljZXMtPmRhdGEpKTsKLSAgICAgICAgZGV2aWNlQWRkZWQoV1RGTW92ZShkZXZpY2UpKTsK
KworICAgICAgICBhZGREZXZpY2UoV1RGTW92ZShkZXZpY2UpKTsKICAgICAgICAgZGV2aWNlcyA9
IGdfbGlzdF9kZWxldGVfbGluayhkZXZpY2VzLCBkZXZpY2VzKTsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFt
ZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggMmE2
NDJmM2QxZTM5MDU1ZmJmZDlmNjM2YzRkZmYzYWY5ODVlYzBiOC4uY2UxMWM0ZjNhOGMzZmYxNTZh
ODVlY2FkMzIzMmM4NWYwNzk2NzFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJl
YW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTM4LDcgKzM4LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSBkZXZpY2VUeXBlKCkgPSAwOwogCiBw
cml2YXRlOgotICAgIHZvaWQgZGV2aWNlQWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYpOworICAg
IHZvaWQgYWRkRGV2aWNlKEdSZWZQdHI8R3N0RGV2aWNlPiYmKTsKICAgICB2b2lkIHJlZnJlc2hD
YXB0dXJlRGV2aWNlcygpOwogCiAgICAgR1JlZlB0cjxHc3REZXZpY2VNb25pdG9yPiBtX2Rldmlj
ZU1vbml0b3I7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggOTg0YjE1Mzg2YjZhMWIwZTA4MWZlMDVkNTE1ZGNmMjllMGE2Yjk0Ny4uMGM4NDM0MThm
Y2QxOTIwNTk0NDNmMDQ4YWIxYjRjYzVkZjhmYTA1OSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw5ICsxLDI1IEBACisyMDE4LTExLTI3ICBU
aGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRD
XVtHU3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24g
dGhlIHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFu
ZC4KKworICAgICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNz
IG9uZSBpbiBzb21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBh
cHBsaWNhdGlvbiBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3Nl
ZCBhcyBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5z
LWdvb2QvbWVyZ2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIGZsYXRwYWsvb3JnLndl
YmtpdC5Db21tb25Nb2R1bGVzLnlhbWw6CisgICAgICAgICogZ3N0cmVhbWVyL2poYnVpbGQubW9k
dWxlczoKKyAgICAgICAgKiBnc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQt
cHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaDogQWRkZWQuCisKIDIw
MTgtMTEtMTMgIFRoaWJhdWx0IFNhdW5pZXIgIDx0c2F1bmllckBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHVEtdW01pbmlCcm93c2VyXSBIYW5kbGUgRGV2aWNlIEluZm8gcGVybWlzc2lvbiByZXF1
ZXN0cwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkx
NTg1CiAKLSAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIFJldmll
d2VkIGJ5IFBoaWxpcHBlIE5vcm1hbmQuCiAKICAgICAgICAgKiBNaW5pQnJvd3Nlci9ndGsvQnJv
d3NlclRhYi5jOgogICAgICAgICAocGVybWlzc2lvblJlcXVlc3REYXRhTmV3KToKZGlmZiAtLWdp
dCBhL1Rvb2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21tb25Nb2R1bGVzLnlhbWwgYi9Ub29scy9m
bGF0cGFrL29yZy53ZWJraXQuQ29tbW9uTW9kdWxlcy55YW1sCmluZGV4IDZiZjdkODZhZmMyM2Ni
ZDE1MWViMDZiZTk3YmM5ZDIxOWZjNzBhMTcuLjI0NzU5NmUwOGRiYzJjOWRiYTQ4ZjI3MjQ1MGNh
ZDM5ZTIxMDQ0ZDIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21tb25N
b2R1bGVzLnlhbWwKKysrIGIvVG9vbHMvZmxhdHBhay9vcmcud2Via2l0LkNvbW1vbk1vZHVsZXMu
eWFtbApAQCAtMTcxLDYgKzE3MSw4IEBACiAgICAgICBwYXRoOiAuLi9nc3RyZWFtZXIvcGF0Y2hl
cy9nc3QtcGx1Z2lucy1nb29kLTAwMTItbWF0cm9za2RlbXV4LWRvLW5vdC11c2UtTWFwSW5mby5k
YXRhLWFmdGVyLXVubWFwcGluZy5wYXRjaAogICAgIC0gdHlwZTogcGF0Y2gKICAgICAgIHBhdGg6
IC4uL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxMy1Bdm9pZC13YXJuaW5n
LXdoZW4tcmVwb3J0aW5nLWFib3V0LWRlY3J5cHRvcnMucGF0Y2gKKyAgICAtIHR5cGU6IHBhdGNo
CisgICAgICBwYXRoOiAuLi9nc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQt
cHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaAogICBjb25maWctb3B0
czoKICAgICAtIC1EZGlzYWJsZV9ndGtkb2M9dHJ1ZQogLSBuYW1lOiB4MjY0CmRpZmYgLS1naXQg
YS9Ub29scy9nc3RyZWFtZXIvamhidWlsZC5tb2R1bGVzIGIvVG9vbHMvZ3N0cmVhbWVyL2poYnVp
bGQubW9kdWxlcwppbmRleCA2MGRlMDE5NGYzNWVjYWQ2ZWRmNTc0NzU0NmEwMmMxYzQxN2ZlNmRl
Li5jN2NkNGQ5N2I0Yzc3MDY1ZDYwOTY0NjBmMDNiYTIxZTQxZjZkNjU1IDEwMDY0NAotLS0gYS9U
b29scy9nc3RyZWFtZXIvamhidWlsZC5tb2R1bGVzCisrKyBiL1Rvb2xzL2dzdHJlYW1lci9qaGJ1
aWxkLm1vZHVsZXMKQEAgLTkwLDYgKzkwLDcgQEAKICAgICAgIDxwYXRjaCBmaWxlPSJnc3QtcGx1
Z2lucy1nb29kLTAwMTEtbWF0cm9za2EtQWRkLXRoZS1XZWJNLWVuY3J5cHRlZC1jb250ZW50LXN1
cHBvcnQtaW4tbS5wYXRjaCIgc3RyaXA9IjEiIC8+IDwhLS0gTWVyZ2VkIGFzIDA0MzI4MjY5NTBk
NGQ4MGZlMmI1MGZmZDM3NTdkYzA4MTU1ZGU5ZTMgLS0+CiAgICAgICA8cGF0Y2ggZmlsZT0iZ3N0
LXBsdWdpbnMtZ29vZC0wMDEyLW1hdHJvc2tkZW11eC1kby1ub3QtdXNlLU1hcEluZm8uZGF0YS1h
ZnRlci11bm1hcHBpbmcucGF0Y2giIHN0cmlwPSIxIiAvPiA8IS0tIE1lcmdlZCBhcyBkZWZhZTM1
MDM1ODY2MGU1NTdjNzRlNDFhNGZlOGE4YmIzMjdlOWM4IC0tPgogICAgICAgPHBhdGNoIGZpbGU9
ImdzdC1wbHVnaW5zLWdvb2QtMDAxMy1Bdm9pZC13YXJuaW5nLXdoZW4tcmVwb3J0aW5nLWFib3V0
LWRlY3J5cHRvcnMucGF0Y2giIHN0cmlwPSIxIiAvPiA8IS0tIE1lcmdlZCBhcyA1NjY2OTIwNWVi
MmQwODg3NTk2NTc0ZWFiYjc4MDZiMzFjNWJhNWNmIC0tPgorICAgICAgPHBhdGNoIGZpbGU9Imdz
dC1wbHVnaW5zLWdvb2QtMDAxNC1wdWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0
LnBhdGNoIiBzdHJpcD0iMSIgLz4KICAgICA8L2JyYW5jaD4KICAgPC9hdXRvdG9vbHM+CiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxNC1w
dWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0LnBhdGNoIGIvVG9vbHMvZ3N0cmVh
bWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZp
Y2VzLWFzLWRlZmF1bHQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDM1YjZkN2Q5N2Y4NDJiNmMzYjVkZjc1
ODJmYThkZmFjOGMxYzM2YgotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2dzdHJlYW1lci9wYXRj
aGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxNC1wdWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1k
ZWZhdWx0LnBhdGNoCkBAIC0wLDAgKzEsMzE4IEBACitGcm9tIDMyYzgzM2ViYjQyYjhlOGY0NmM1
YTcyYTE2YTg3NGJjMDBmYzU1NTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBUaGli
YXVsdCBTYXVuaWVyIDx0c2F1bmllckBpZ2FsaWEuY29tPgorRGF0ZTogTW9uLCAyNiBOb3YgMjAx
OCAxMzo0ODo1NiAtMDMwMAorU3ViamVjdDogW1BBVENIXSBwdWxzZTogTWFyayBkZWZhdWx0IGRl
dmljZXMgYXMgImRlZmF1bHQiCisKKy0tLQorIGV4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVy
LmMgfCAxMTcgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBleHQvcHVsc2UvcHVs
c2VkZXZpY2Vwcm92aWRlci5oIHwgICAzICsKKyAyIGZpbGVzIGNoYW5nZWQsIDc5IGluc2VydGlv
bnMoKyksIDQxIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvZXh0L3B1bHNlL3B1bHNlZGV2
aWNlcHJvdmlkZXIuYyBiL2V4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmMKK2luZGV4IGEx
OTY0ZGFiMi4uOWI2NmEwZTMzIDEwMDY0NAorLS0tIGEvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJv
dmlkZXIuYworKysrIGIvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuYworQEAgLTQwLDcg
KzQwLDcgQEAgR1NUX0RFQlVHX0NBVEVHT1JZX0VYVEVSTiAocHVsc2VfZGVidWcpOworIAorIHN0
YXRpYyBHc3REZXZpY2UgKmdzdF9wdWxzZV9kZXZpY2VfbmV3IChndWludCBpZCwKKyAgICAgY29u
c3QgZ2NoYXIgKiBkZXZpY2VfbmFtZSwgR3N0Q2FwcyAqIGNhcHMsIGNvbnN0IGdjaGFyICogaW50
ZXJuYWxfbmFtZSwKKy0gICAgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGUsIEdzdFN0cnVjdHVyZSAq
IHByb3BlcnRpZXMpOworKyAgICBHc3RQdWxzZURldmljZVR5cGUgdHlwZSwgR3N0U3RydWN0dXJl
ICogcHJvcGVydGllcywgZ2Jvb2xlYW4gaXNfZGVmYXVsdCk7CisgCisgR19ERUZJTkVfVFlQRSAo
R3N0UHVsc2VEZXZpY2VQcm92aWRlciwgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlciwKKyAgICAg
R1NUX1RZUEVfREVWSUNFX1BST1ZJREVSKTsKK0BAIC02NSw2ICs2NSwxMiBAQCBlbnVtCisgfTsK
KyAKKyAKKyt0eXBlZGVmIHN0cnVjdAorK3sKKysgIEdMaXN0ICpkZXZpY2VzOworKyAgR3N0UHVs
c2VEZXZpY2VQcm92aWRlciAqc2VsZjsKKyt9IExpc3REZXZpY2VzRGF0YTsKKysKKyBzdGF0aWMg
dm9pZAorIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfY2xhc3NfaW5pdCAoR3N0UHVsc2VEZXZp
Y2VQcm92aWRlckNsYXNzICoga2xhc3MpCisgeworQEAgLTExNCw2ICsxMjAsOCBAQCBnc3RfcHVs
c2VfZGV2aWNlX3Byb3ZpZGVyX2ZpbmFsaXplIChHT2JqZWN0ICogb2JqZWN0KQorIAorICAgZ19m
cmVlIChzZWxmLT5jbGllbnRfbmFtZSk7CisgICBnX2ZyZWUgKHNlbGYtPnNlcnZlcik7CisrICBn
X2ZyZWUgKHNlbGYtPmRlZmF1bHRfc2lua19uYW1lKTsKKysgIGdfZnJlZSAoc2VsZi0+ZGVmYXVs
dF9zb3VyY2VfbmFtZSk7CisgCisgICBHX09CSkVDVF9DTEFTUyAoZ3N0X3B1bHNlX2RldmljZV9w
cm92aWRlcl9wYXJlbnRfY2xhc3MpLT5maW5hbGl6ZSAob2JqZWN0KTsKKyB9CitAQCAtMTg2LDcg
KzE5NCw3IEBAIGNvbnRleHRfc3RhdGVfY2IgKHBhX2NvbnRleHQgKiBjLCB2b2lkICp1c2VyZGF0
YSkKKyB9CisgCisgc3RhdGljIEdzdERldmljZSAqCistbmV3X3NvdXJjZSAoY29uc3QgcGFfc291
cmNlX2luZm8gKiBpbmZvKQorK25ld19zb3VyY2UgKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKiBz
ZWxmLCBjb25zdCBwYV9zb3VyY2VfaW5mbyAqIGluZm8pCisgeworICAgR3N0Q2FwcyAqY2FwczsK
KyAgIEdzdFN0cnVjdHVyZSAqcHJvcHM7CitAQCAtMjAwLDExICsyMDgsMTIgQEAgbmV3X3NvdXJj
ZSAoY29uc3QgcGFfc291cmNlX2luZm8gKiBpbmZvKQorICAgcHJvcHMgPSBnc3RfcHVsc2VfbWFr
ZV9zdHJ1Y3R1cmUgKGluZm8tPnByb3BsaXN0KTsKKyAKKyAgIHJldHVybiBnc3RfcHVsc2VfZGV2
aWNlX25ldyAoaW5mby0+aW5kZXgsIGluZm8tPmRlc2NyaXB0aW9uLAorLSAgICAgIGNhcHMsIGlu
Zm8tPm5hbWUsIEdTVF9QVUxTRV9ERVZJQ0VfVFlQRV9TT1VSQ0UsIHByb3BzKTsKKysgICAgICBj
YXBzLCBpbmZvLT5uYW1lLCBHU1RfUFVMU0VfREVWSUNFX1RZUEVfU09VUkNFLCBwcm9wcywKKysg
ICAgICAhZ19zdHJjbXAwIChpbmZvLT5uYW1lLCBzZWxmLT5kZWZhdWx0X3NvdXJjZV9uYW1lKSk7
CisgfQorIAorIHN0YXRpYyBHc3REZXZpY2UgKgorLW5ld19zaW5rIChjb25zdCBwYV9zaW5rX2lu
Zm8gKiBpbmZvKQorK25ld19zaW5rIChHc3RQdWxzZURldmljZVByb3ZpZGVyICogc2VsZiwgY29u
c3QgcGFfc2lua19pbmZvICogaW5mbykKKyB7CisgICBHc3RDYXBzICpjYXBzOworICAgR3N0U3Ry
dWN0dXJlICpwcm9wczsKK0BAIC0yMTgsNyArMjI3LDggQEAgbmV3X3NpbmsgKGNvbnN0IHBhX3Np
bmtfaW5mbyAqIGluZm8pCisgICBwcm9wcyA9IGdzdF9wdWxzZV9tYWtlX3N0cnVjdHVyZSAoaW5m
by0+cHJvcGxpc3QpOworIAorICAgcmV0dXJuIGdzdF9wdWxzZV9kZXZpY2VfbmV3IChpbmZvLT5p
bmRleCwgaW5mby0+ZGVzY3JpcHRpb24sCistICAgICAgY2FwcywgaW5mby0+bmFtZSwgR1NUX1BV
TFNFX0RFVklDRV9UWVBFX1NJTkssIHByb3BzKTsKKysgICAgICBjYXBzLCBpbmZvLT5uYW1lLCBH
U1RfUFVMU0VfREVWSUNFX1RZUEVfU0lOSywgcHJvcHMsCisrICAgICAgIWdfc3RyY21wMCAoaW5m
by0+bmFtZSwgc2VsZi0+ZGVmYXVsdF9zaW5rX25hbWUpKTsKKyB9CisgCisgc3RhdGljIHZvaWQK
K0BAIC0yMzMsMTIgKzI0MywyNiBAQCBnZXRfc291cmNlX2luZm9fY2IgKHBhX2NvbnRleHQgKiBj
b250ZXh0LAorICAgICByZXR1cm47CisgICB9CisgCistICBkZXYgPSBuZXdfc291cmNlIChpbmZv
KTsKKysgIGRldiA9IG5ld19zb3VyY2UgKHNlbGYsIGluZm8pOworIAorICAgaWYgKGRldikKKyAg
ICAgZ3N0X2RldmljZV9wcm92aWRlcl9kZXZpY2VfYWRkIChHU1RfREVWSUNFX1BST1ZJREVSIChz
ZWxmKSwgZGV2KTsKKyB9CisgCisrc3RhdGljIHZvaWQKKytnZXRfc2VydmVyX2luZm9fY2IgKHBh
X2NvbnRleHQgKiBjb250ZXh0LCBjb25zdCBwYV9zZXJ2ZXJfaW5mbyAqIGluZm8sCisrICAgIHZv
aWQgKnVzZXJkYXRhKQorK3sKKysgIEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKnNlbGYgPSB1c2Vy
ZGF0YTsKKysKKysgIGdfZnJlZSAoc2VsZi0+ZGVmYXVsdF9zaW5rX25hbWUpOworKyAgZ19mcmVl
IChzZWxmLT5kZWZhdWx0X3NvdXJjZV9uYW1lKTsKKysgIHNlbGYtPmRlZmF1bHRfc2lua19uYW1l
ID0gZ19zdHJkdXAgKGluZm8tPmRlZmF1bHRfc2lua19uYW1lKTsKKysgIHNlbGYtPmRlZmF1bHRf
c291cmNlX25hbWUgPSBnX3N0cmR1cCAoaW5mby0+ZGVmYXVsdF9zb3VyY2VfbmFtZSk7CisrCisr
ICBwYV90aHJlYWRlZF9tYWlubG9vcF9zaWduYWwgKHNlbGYtPm1haW5sb29wLCAwKTsKKyt9Cisr
Cisgc3RhdGljIHZvaWQKKyBnZXRfc2lua19pbmZvX2NiIChwYV9jb250ZXh0ICogY29udGV4dCwK
KyAgICAgY29uc3QgcGFfc2lua19pbmZvICogaW5mbywgaW50IGVvbCwgdm9pZCAqdXNlcmRhdGEp
CitAQCAtMjUxLDcgKzI3NSw3IEBAIGdldF9zaW5rX2luZm9fY2IgKHBhX2NvbnRleHQgKiBjb250
ZXh0LAorICAgICByZXR1cm47CisgICB9CisgCistICBkZXYgPSBuZXdfc2luayAoaW5mbyk7Cisr
ICBkZXYgPSBuZXdfc2luayAoc2VsZiwgaW5mbyk7CisgCisgICBpZiAoZGV2KQorICAgICBnc3Rf
ZGV2aWNlX3Byb3ZpZGVyX2RldmljZV9hZGQgKEdTVF9ERVZJQ0VfUFJPVklERVIgKHNlbGYpLCBk
ZXYpOworQEAgLTMxMiwzNCArMzM2LDM4IEBAIHN0YXRpYyB2b2lkCisgZ2V0X3NvdXJjZV9pbmZv
X2xpc3RfY2IgKHBhX2NvbnRleHQgKiBjb250ZXh0LCBjb25zdCBwYV9zb3VyY2VfaW5mbyAqIGlu
Zm8sCisgICAgIGludCBlb2wsIHZvaWQgKnVzZXJkYXRhKQorIHsKKy0gIEdMaXN0ICoqZGV2aWNl
cyA9IHVzZXJkYXRhOworKyAgTGlzdERldmljZXNEYXRhICpkYXRhID0gdXNlcmRhdGE7CisgCisg
ICBpZiAoZW9sKQorICAgICByZXR1cm47CisgCistICAqZGV2aWNlcyA9IGdfbGlzdF9wcmVwZW5k
ICgqZGV2aWNlcywgZ3N0X29iamVjdF9yZWZfc2luayAobmV3X3NvdXJjZSAoaW5mbykpKTsKKysg
IGRhdGEtPmRldmljZXMgPQorKyAgICAgIGdfbGlzdF9wcmVwZW5kIChkYXRhLT5kZXZpY2VzLAor
KyAgICAgIGdzdF9vYmplY3RfcmVmX3NpbmsgKG5ld19zb3VyY2UgKGRhdGEtPnNlbGYsIGluZm8p
KSk7CisgfQorIAorIHN0YXRpYyB2b2lkCisgZ2V0X3NpbmtfaW5mb19saXN0X2NiIChwYV9jb250
ZXh0ICogY29udGV4dCwgY29uc3QgcGFfc2lua19pbmZvICogaW5mbywKKyAgICAgaW50IGVvbCwg
dm9pZCAqdXNlcmRhdGEpCisgeworLSAgR0xpc3QgKipkZXZpY2VzID0gdXNlcmRhdGE7CisrICBM
aXN0RGV2aWNlc0RhdGEgKmRhdGEgPSB1c2VyZGF0YTsKKyAKKyAgIGlmIChlb2wpCisgICAgIHJl
dHVybjsKKyAKKy0gICpkZXZpY2VzID0gZ19saXN0X3ByZXBlbmQgKCpkZXZpY2VzLCBnc3Rfb2Jq
ZWN0X3JlZl9zaW5rIChuZXdfc2luayAoaW5mbykpKTsKKysgIGRhdGEtPmRldmljZXMgPQorKyAg
ICAgIGdfbGlzdF9wcmVwZW5kIChkYXRhLT5kZXZpY2VzLCBnc3Rfb2JqZWN0X3JlZl9zaW5rIChu
ZXdfc2luayAoZGF0YS0+c2VsZiwKKysgICAgICAgICAgICAgIGluZm8pKSk7CisgfQorIAorIHN0
YXRpYyBHTGlzdCAqCisgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9wcm9iZSAoR3N0RGV2aWNl
UHJvdmlkZXIgKiBwcm92aWRlcikKKyB7CisgICBHc3RQdWxzZURldmljZVByb3ZpZGVyICpzZWxm
ID0gR1NUX1BVTFNFX0RFVklDRV9QUk9WSURFUiAocHJvdmlkZXIpOworLSAgR0xpc3QgKmRldmlj
ZXMgPSBOVUxMOworICAgcGFfbWFpbmxvb3AgKm0gPSBOVUxMOworICAgcGFfY29udGV4dCAqYyA9
IE5VTEw7CisgICBwYV9vcGVyYXRpb24gKm87CisrICBMaXN0RGV2aWNlc0RhdGEgZGF0YSA9IHsg
TlVMTCwgc2VsZiB9OworIAorICAgaWYgKCEobSA9IHBhX21haW5sb29wX25ldyAoKSkpCisgICAg
IHJldHVybiBOVUxMOworQEAgLTM3Niw3ICs0MDQsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX3Byb3Zp
ZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3ZpZGVyKQorICAgfQorICAgR1NUX0RF
QlVHX09CSkVDVCAoc2VsZiwgImNvbm5lY3RlZCIpOworIAorLSAgbyA9IHBhX2NvbnRleHRfZ2V0
X3NpbmtfaW5mb19saXN0IChjLCBnZXRfc2lua19pbmZvX2xpc3RfY2IsICZkZXZpY2VzKTsKKysg
IG8gPSBwYV9jb250ZXh0X2dldF9zaW5rX2luZm9fbGlzdCAoYywgZ2V0X3NpbmtfaW5mb19saXN0
X2NiLCAmZGF0YSk7CisgICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAobykgPT0gUEFf
T1BFUkFUSU9OX1JVTk5JTkcgJiYKKyAgICAgICBwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvKSA9
PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworICAgICBpZiAocGFfbWFpbmxvb3BfaXRlcmF0ZSAo
bSwgVFJVRSwgTlVMTCkgPCAwKQorQEAgLTM4NCw3ICs0MTIsNyBAQCBnc3RfcHVsc2VfZGV2aWNl
X3Byb3ZpZGVyX3Byb2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3ZpZGVyKQorICAgfQorICAg
cGFfb3BlcmF0aW9uX3VucmVmIChvKTsKKyAKKy0gIG8gPSBwYV9jb250ZXh0X2dldF9zb3VyY2Vf
aW5mb19saXN0IChjLCBnZXRfc291cmNlX2luZm9fbGlzdF9jYiwgJmRldmljZXMpOworKyAgbyA9
IHBhX2NvbnRleHRfZ2V0X3NvdXJjZV9pbmZvX2xpc3QgKGMsIGdldF9zb3VyY2VfaW5mb19saXN0
X2NiLCAmZGF0YSk7CisgICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAobykgPT0gUEFf
T1BFUkFUSU9OX1JVTk5JTkcgJiYKKyAgICAgICBwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvKSA9
PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworICAgICBpZiAocGFfbWFpbmxvb3BfaXRlcmF0ZSAo
bSwgVFJVRSwgTlVMTCkgPCAwKQorQEAgLTM5NSwxOCArNDIzLDM4IEBAIGdzdF9wdWxzZV9kZXZp
Y2VfcHJvdmlkZXJfcHJvYmUgKEdzdERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisgICBwYV9j
b250ZXh0X2Rpc2Nvbm5lY3QgKGMpOworICAgcGFfbWFpbmxvb3BfZnJlZSAobSk7CisgCistICBy
ZXR1cm4gZGV2aWNlczsKKysgIHJldHVybiBkYXRhLmRldmljZXM7CisgCisgZmFpbGVkOgorIAor
ICAgcmV0dXJuIE5VTEw7CisgfQorIAorK3N0YXRpYyBnYm9vbGVhbgorK3J1bl9wdWxzZV9vcGVy
YXRpb24gKEdzdFB1bHNlRGV2aWNlUHJvdmlkZXIgKiBzZWxmLCBwYV9vcGVyYXRpb24gKiBvcGVy
YXRpb24pCisreworKyAgaWYgKCFvcGVyYXRpb24pCisrICAgIHJldHVybiBGQUxTRTsKKysKKysg
IHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChvcGVyYXRpb24pID09IFBBX09QRVJBVElP
Tl9SVU5OSU5HKSB7CisrICAgIGlmICghUEFfQ09OVEVYVF9JU19HT09EIChwYV9jb250ZXh0X2dl
dF9zdGF0ZSAoKHNlbGYtPmNvbnRleHQpKSkpIHsKKysgICAgICBwYV9vcGVyYXRpb25fY2FuY2Vs
IChvcGVyYXRpb24pOworKyAgICAgIHBhX29wZXJhdGlvbl91bnJlZiAob3BlcmF0aW9uKTsKKysg
ICAgICByZXR1cm4gRkFMU0U7CisrICAgIH0KKysKKysgICAgcGFfdGhyZWFkZWRfbWFpbmxvb3Bf
d2FpdCAoc2VsZi0+bWFpbmxvb3ApOworKyAgfQorKworKyAgcGFfb3BlcmF0aW9uX3VucmVmIChv
cGVyYXRpb24pOworKworKyAgcmV0dXJuIFRSVUU7CisrfQorKworIHN0YXRpYyBnYm9vbGVhbgor
IGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfc3RhcnQgKEdzdERldmljZVByb3ZpZGVyICogcHJv
dmlkZXIpCisgeworICAgR3N0UHVsc2VEZXZpY2VQcm92aWRlciAqc2VsZiA9IEdTVF9QVUxTRV9E
RVZJQ0VfUFJPVklERVIgKHByb3ZpZGVyKTsKKy0gIHBhX29wZXJhdGlvbiAqaW5pdGlhbF9vcGVy
YXRpb247CisgCisgICBpZiAoIShzZWxmLT5tYWlubG9vcCA9IHBhX3RocmVhZGVkX21haW5sb29w
X25ldyAoKSkpIHsKKyAgICAgR1NUX0VSUk9SX09CSkVDVCAoc2VsZiwgIkNvdWxkIG5vdCBjcmVh
dGUgcHVsc2VhdWRpbyBtYWlubG9vcCIpOworQEAgLTQ2MiwyNyArNTEwLDE4IEBAIGdzdF9wdWxz
ZV9kZXZpY2VfcHJvdmlkZXJfc3RhcnQgKEdzdERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisg
ICBwYV9jb250ZXh0X3N1YnNjcmliZSAoc2VsZi0+Y29udGV4dCwKKyAgICAgICBQQV9TVUJTQ1JJ
UFRJT05fTUFTS19TT1VSQ0UgfCBQQV9TVUJTQ1JJUFRJT05fTUFTS19TSU5LLCBOVUxMLCBOVUxM
KTsKKyAKKy0gIGluaXRpYWxfb3BlcmF0aW9uID0gcGFfY29udGV4dF9nZXRfc291cmNlX2luZm9f
bGlzdCAoc2VsZi0+Y29udGV4dCwKKy0gICAgICBnZXRfc291cmNlX2luZm9fY2IsIHNlbGYpOwor
LSAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUgKGluaXRpYWxfb3BlcmF0aW9uKSA9PSBQ
QV9PUEVSQVRJT05fUlVOTklORykgeworLSAgICBpZiAoIVBBX0NPTlRFWFRfSVNfR09PRCAocGFf
Y29udGV4dF9nZXRfc3RhdGUgKChzZWxmLT5jb250ZXh0KSkpKQorLSAgICAgIGdvdG8gY2FuY2Vs
X2FuZF9mYWlsOworLQorLSAgICBwYV90aHJlYWRlZF9tYWlubG9vcF93YWl0IChzZWxmLT5tYWlu
bG9vcCk7CistICB9CistICBwYV9vcGVyYXRpb25fdW5yZWYgKGluaXRpYWxfb3BlcmF0aW9uKTsK
KysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwgcGFfY29udGV4dF9nZXRfc2VydmVy
X2luZm8gKHNlbGYtPmNvbnRleHQsCisrICAgICAgICAgICAgICBnZXRfc2VydmVyX2luZm9fY2Is
IHNlbGYpKSkKKysgICAgZ290byB1bmxvY2tfYW5kX2ZhaWw7CisgCistICBpbml0aWFsX29wZXJh
dGlvbiA9IHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5mb19saXN0IChzZWxmLT5jb250ZXh0LAorLSAg
ICAgIGdldF9zaW5rX2luZm9fY2IsIHNlbGYpOworLSAgaWYgKCFpbml0aWFsX29wZXJhdGlvbikK
KysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwKKysgICAgICAgICAgcGFfY29udGV4
dF9nZXRfc291cmNlX2luZm9fbGlzdCAoc2VsZi0+Y29udGV4dCwgZ2V0X3NvdXJjZV9pbmZvX2Ni
LAorKyAgICAgICAgICAgICAgc2VsZikpKQorICAgICBnb3RvIHVubG9ja19hbmRfZmFpbDsKKy0g
IHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0YXRlIChpbml0aWFsX29wZXJhdGlvbikgPT0gUEFf
T1BFUkFUSU9OX1JVTk5JTkcpIHsKKy0gICAgaWYgKCFQQV9DT05URVhUX0lTX0dPT0QgKHBhX2Nv
bnRleHRfZ2V0X3N0YXRlICgoc2VsZi0+Y29udGV4dCkpKSkKKy0gICAgICBnb3RvIGNhbmNlbF9h
bmRfZmFpbDsKKyAKKy0gICAgcGFfdGhyZWFkZWRfbWFpbmxvb3Bfd2FpdCAoc2VsZi0+bWFpbmxv
b3ApOworLSAgfQorLSAgcGFfb3BlcmF0aW9uX3VucmVmIChpbml0aWFsX29wZXJhdGlvbik7Cisr
ICBpZiAoIXJ1bl9wdWxzZV9vcGVyYXRpb24gKHNlbGYsIHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5m
b19saXN0IChzZWxmLT5jb250ZXh0LAorKyAgICAgICAgICAgICAgZ2V0X3NpbmtfaW5mb19jYiwg
c2VsZikpKQorKyAgICBnb3RvIHVubG9ja19hbmRfZmFpbDsKKyAKKyAgIHBhX3RocmVhZGVkX21h
aW5sb29wX3VubG9jayAoc2VsZi0+bWFpbmxvb3ApOworIAorQEAgLTQ5NSwxMSArNTM0LDYgQEAg
dW5sb2NrX2FuZF9mYWlsOgorIAorIG1haW5sb29wX2ZhaWxlZDoKKyAgIHJldHVybiBGQUxTRTsK
Ky0KKy1jYW5jZWxfYW5kX2ZhaWw6CistICBwYV9vcGVyYXRpb25fY2FuY2VsIChpbml0aWFsX29w
ZXJhdGlvbik7CistICBwYV9vcGVyYXRpb25fdW5yZWYgKGluaXRpYWxfb3BlcmF0aW9uKTsKKy0g
IGdvdG8gdW5sb2NrX2FuZF9mYWlsOworIH0KKyAKKyBzdGF0aWMgdm9pZAorQEAgLTYxMSw3ICs2
NDUsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX3JlY29uZmlndXJlX2VsZW1lbnQgKEdzdERldmljZSAq
IGRldmljZSwgR3N0RWxlbWVudCAqIGVsZW1lbnQpCisgc3RhdGljIEdzdERldmljZSAqCisgZ3N0
X3B1bHNlX2RldmljZV9uZXcgKGd1aW50IGRldmljZV9pbmRleCwgY29uc3QgZ2NoYXIgKiBkZXZp
Y2VfbmFtZSwKKyAgICAgR3N0Q2FwcyAqIGNhcHMsIGNvbnN0IGdjaGFyICogaW50ZXJuYWxfbmFt
ZSwgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGUsCistICAgIEdzdFN0cnVjdHVyZSAqIHByb3BzKQor
KyAgICBHc3RTdHJ1Y3R1cmUgKiBwcm9wcywgZ2Jvb2xlYW4gaXNfZGVmYXVsdCkKKyB7CisgICBH
c3RQdWxzZURldmljZSAqZ3N0ZGV2OworICAgY29uc3QgZ2NoYXIgKmVsZW1lbnQgPSBOVUxMOwor
QEAgLTYzNiw3ICs2NzAsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX25ldyAoZ3VpbnQgZGV2aWNlX2lu
ZGV4LCBjb25zdCBnY2hhciAqIGRldmljZV9uYW1lLAorICAgICAgIGJyZWFrOworICAgfQorIAor
LQorKyAgZ3N0X3N0cnVjdHVyZV9zZXQgKHByb3BzLCAiaXMtZGVmYXVsdCIsIEdfVFlQRV9CT09M
RUFOLCBpc19kZWZhdWx0LCBOVUxMKTsKKyAgIGdzdGRldiA9IGdfb2JqZWN0X25ldyAoR1NUX1RZ
UEVfUFVMU0VfREVWSUNFLAorICAgICAgICJkaXNwbGF5LW5hbWUiLCBkZXZpY2VfbmFtZSwgImNh
cHMiLCBjYXBzLCAiZGV2aWNlLWNsYXNzIiwga2xhc3MsCisgICAgICAgImludGVybmFsLW5hbWUi
LCBpbnRlcm5hbF9uYW1lLCAicHJvcGVydGllcyIsIHByb3BzLCBOVUxMKTsKK0BAIC02NDQsNiAr
Njc4LDcgQEAgZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50IGRldmljZV9pbmRleCwgY29uc3Qg
Z2NoYXIgKiBkZXZpY2VfbmFtZSwKKyAgIGdzdGRldi0+dHlwZSA9IHR5cGU7CisgICBnc3RkZXYt
PmRldmljZV9pbmRleCA9IGRldmljZV9pbmRleDsKKyAgIGdzdGRldi0+ZWxlbWVudCA9IGVsZW1l
bnQ7CisrICBnc3RkZXYtPmlzX2RlZmF1bHQgPSBpc19kZWZhdWx0OworIAorICAgZ3N0X3N0cnVj
dHVyZV9mcmVlIChwcm9wcyk7CisgICBnc3RfY2Fwc191bnJlZiAoY2Fwcyk7CitkaWZmIC0tZ2l0
IGEvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaCBiL2V4dC9wdWxzZS9wdWxzZWRldmlj
ZXByb3ZpZGVyLmgKK2luZGV4IDA4OTJhZDU4Ni4uN2JjZDFiYzQ3IDEwMDY0NAorLS0tIGEvZXh0
L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaAorKysrIGIvZXh0L3B1bHNlL3B1bHNlZGV2aWNl
cHJvdmlkZXIuaAorQEAgLTUwLDYgKzUwLDggQEAgc3RydWN0IF9Hc3RQdWxzZURldmljZVByb3Zp
ZGVyIHsKKyAKKyAgIGdjaGFyICpzZXJ2ZXI7CisgICBnY2hhciAqY2xpZW50X25hbWU7CisrICBn
Y2hhciAqZGVmYXVsdF9zb3VyY2VfbmFtZTsKKysgIGdjaGFyICpkZWZhdWx0X3NpbmtfbmFtZTsK
KyAKKyAgIHBhX3RocmVhZGVkX21haW5sb29wICptYWlubG9vcDsKKyAgIHBhX2NvbnRleHQgKmNv
bnRleHQ7CitAQCAtODQsNiArODYsNyBAQCBzdHJ1Y3QgX0dzdFB1bHNlRGV2aWNlIHsKKyAgIEdz
dFB1bHNlRGV2aWNlVHlwZSB0eXBlOworICAgZ3VpbnQgICAgICAgICAgICAgZGV2aWNlX2luZGV4
OworICAgZ2NoYXIgICAgICAgICAgICAqaW50ZXJuYWxfbmFtZTsKKysgIGdib29sZWFuICAgICAg
ICAgaXNfZGVmYXVsdDsKKyAgIGNvbnN0IGdjaGFyICAgICAgKmVsZW1lbnQ7CisgfTsKKyAKKy0t
IAorMi4xOS4xCisK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355869</attachid>
            <date>2018-11-28 06:19:18 -0800</date>
            <delta_ts>2018-11-28 06:56:18 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-192026-20181128111917.patch</filename>
            <type>text/plain</type>
            <size>18722</size>
            <attacher name="Thibault Saunier">tsaunier</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NjA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGI4ZDlkZTE3ZTIwYmFm
NTRiYmNhNzVhZDJhMzBjN2VjYmMzZWVmZC4uZjJhMjVmMDJmMTBjZTBlNTIyZmFjOTUwMTEyYTFj
ZDc1Mzg4YzBiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTExLTI3ICBUaGli
YXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRDXVtH
U3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24gdGhl
IHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFuZC4K
KworICAgICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNzIG9u
ZSBpbiBzb21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBhcHBs
aWNhdGlvbiBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3NlZCBh
cyBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5zLWdv
b2QvbWVyZ2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpzb3J0RGV2aWNlcyk6CisgICAgICAgIChXZWJDb3JlOjpHU3RyZWFtZXJDYXB0
dXJlRGV2aWNlTWFuYWdlcjo6YWRkRGV2aWNlKToKKyAgICAgICAgKFdlYkNvcmU6OkdTdHJlYW1l
ckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQ2FwdHVyZURldmljZXMpOgorICAgICAgICAq
IHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFu
YWdlci5oOgorCiAyMDE4LTExLTI4ICBUaGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbV2ViUlRDXVtHU3RyZWFtZXJdIFRhZyBhbGwgY2FtZXJhcyB3aXRo
IGFzICdVbmtub3duJyBmYWNpbmcgbW9kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3Ry
ZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5jcHAKaW5kZXggYTI3M2Q0NGE1ODFkYzVmNjM3ODBh
ODc1YTVkZmM5Njg1MjJkOGI2Yi4uYzdjZjMzYjhiZDZkOTI0YjM4MTgyY2RmNDg1YTAzZmRkMjI5
MjIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0
cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvR1N0cmVhbWVyQ2FwdHVyZURldmlj
ZU1hbmFnZXIuY3BwCkBAIC0yOCw2ICsyOCwyNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
K3N0YXRpYyBnaW50IHNvcnREZXZpY2VzKGdjb25zdHBvaW50ZXIgYSwgZ2NvbnN0cG9pbnRlciBi
KQoreworICAgIEdzdERldmljZSogYWRldiA9IEdTVF9ERVZJQ0UoYSksICpiZGV2ID0gR1NUX0RF
VklDRShiKTsKKyAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gYXByb3BzKGdzdF9kZXZpY2Vf
Z2V0X3Byb3BlcnRpZXMoYWRldikpOworICAgIEdVbmlxdWVQdHI8R3N0U3RydWN0dXJlPiBicHJv
cHMoZ3N0X2RldmljZV9nZXRfcHJvcGVydGllcyhiZGV2KSk7CisgICAgZ2Jvb2xlYW4gYUlzRGVm
YXVsdCA9IEZBTFNFLCBiSXNEZWZhdWx0ID0gRkFMU0U7CisKKyAgICBnc3Rfc3RydWN0dXJlX2dl
dF9ib29sZWFuKGFwcm9wcy5nZXQoKSwgImlzLWRlZmF1bHQiLCAmYUlzRGVmYXVsdCk7CisgICAg
Z3N0X3N0cnVjdHVyZV9nZXRfYm9vbGVhbihicHJvcHMuZ2V0KCksICJpcy1kZWZhdWx0IiwgJmJJ
c0RlZmF1bHQpOworCisgICAgaWYgKGFJc0RlZmF1bHQgPT0gYklzRGVmYXVsdCkgeworICAgICAg
ICBHVW5pcXVlUHRyPGNoYXI+IGFOYW1lKGdzdF9kZXZpY2VfZ2V0X2Rpc3BsYXlfbmFtZShhZGV2
KSk7CisgICAgICAgIEdVbmlxdWVQdHI8Y2hhcj4gYk5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxh
eV9uYW1lKGJkZXYpKTsKKworICAgICAgICByZXR1cm4gZ19zdHJjbXAwKGFOYW1lLmdldCgpLCBi
TmFtZS5nZXQoKSk7CisgICAgfQorCisgICAgcmV0dXJuIGFJc0RlZmF1bHQgPiBiSXNEZWZhdWx0
ID8gLTEgOiAxOworfQorCiBHU3RyZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyJiBHU3Ry
ZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyOjpzaW5nbGV0b24oKQogewogICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxHU3RyZWFtZXJBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyPiBtYW5h
Z2VyOwpAQCAtNjYsNyArODYsNyBAQCBjb25zdCBWZWN0b3I8Q2FwdHVyZURldmljZT4mIEdTdHJl
YW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpjYXB0dXJlRGV2aWNlcygpCiAgICAgcmV0dXJuIG1f
ZGV2aWNlczsKIH0KIAotdm9pZCBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6ZGV2aWNl
QWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYgZGV2aWNlKQordm9pZCBHU3RyZWFtZXJDYXB0dXJl
RGV2aWNlTWFuYWdlcjo6YWRkRGV2aWNlKEdSZWZQdHI8R3N0RGV2aWNlPiYmIGRldmljZSkKIHsK
ICAgICBHVW5pcXVlUHRyPEdzdFN0cnVjdHVyZT4gcHJvcGVydGllcyhnc3RfZGV2aWNlX2dldF9w
cm9wZXJ0aWVzKGRldmljZS5nZXQoKSkpOwogICAgIGNvbnN0IGNoYXIqIGtsYXNzID0gZ3N0X3N0
cnVjdHVyZV9nZXRfc3RyaW5nKHByb3BlcnRpZXMuZ2V0KCksICJkZXZpY2UuY2xhc3MiKTsKQEAg
LTg1LDcgKzEwNSwxMCBAQCB2b2lkIEdTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpkZXZp
Y2VBZGRlZChHUmVmUHRyPEdzdERldmljZT4mJiBkZXZpY2UpCiAgICAgLy8gVGhpcyBpc24ndCBy
ZWFsbHkgYSBVSUQgYnV0IHNob3VsZCBiZSBnb29kIGVub3VnaCAobGlid2VicnRjCiAgICAgLy8g
aXRzZWxmIGRvZXMgdGhhdCBhdCBsZWFzdCBmb3IgcHVsc2VhdWRpbyBkZXZpY2VzKS4KICAgICBH
VW5pcXVlUHRyPGNoYXI+IGRldmljZU5hbWUoZ3N0X2RldmljZV9nZXRfZGlzcGxheV9uYW1lKGRl
dmljZS5nZXQoKSkpOwotICAgIFN0cmluZyBpZGVudGlmaWVyID0gU3RyaW5nOjpmcm9tVVRGOChk
ZXZpY2VOYW1lLmdldCgpKTsKKyAgICBnYm9vbGVhbiBpc0RlZmF1bHQgPSBGQUxTRTsKKyAgICBn
c3Rfc3RydWN0dXJlX2dldF9ib29sZWFuKHByb3BlcnRpZXMuZ2V0KCksICJpcy1kZWZhdWx0Iiwg
JmlzRGVmYXVsdCk7CisKKyAgICBTdHJpbmcgaWRlbnRpZmllciA9IFN0cmluZzo6Zm9ybWF0KCIl
cyVzIiwgaXNEZWZhdWx0ID8gImRlZmF1bHQ6ICIgOiAiIiwgZGV2aWNlTmFtZS5nZXQoKSk7CiAK
ICAgICBhdXRvIGdzdENhcHR1cmVEZXZpY2UgPSBHU3RyZWFtZXJDYXB0dXJlRGV2aWNlKFdURk1v
dmUoZGV2aWNlKSwgaWRlbnRpZmllciwgdHlwZSwgaWRlbnRpZmllcik7CiAgICAgZ3N0Q2FwdHVy
ZURldmljZS5zZXRFbmFibGVkKHRydWUpOwpAQCAtMTIwLDEwICsxNDMsMTEgQEAgdm9pZCBHU3Ry
ZWFtZXJDYXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaENhcHR1cmVEZXZpY2VzKCkKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIEdMaXN0KiBkZXZpY2VzID0gZ3N0X2RldmljZV9tb25p
dG9yX2dldF9kZXZpY2VzKG1fZGV2aWNlTW9uaXRvci5nZXQoKSk7CisgICAgR0xpc3QqIGRldmlj
ZXMgPSBnX2xpc3Rfc29ydChnc3RfZGV2aWNlX21vbml0b3JfZ2V0X2RldmljZXMobV9kZXZpY2VN
b25pdG9yLmdldCgpKSwgc29ydERldmljZXMpOwogICAgIHdoaWxlIChkZXZpY2VzKSB7CiAgICAg
ICAgIEdSZWZQdHI8R3N0RGV2aWNlPiBkZXZpY2UgPSBhZG9wdEdSZWYoR1NUX0RFVklDRV9DQVNU
KGRldmljZXMtPmRhdGEpKTsKLSAgICAgICAgZGV2aWNlQWRkZWQoV1RGTW92ZShkZXZpY2UpKTsK
KworICAgICAgICBhZGREZXZpY2UoV1RGTW92ZShkZXZpY2UpKTsKICAgICAgICAgZGV2aWNlcyA9
IGdfbGlzdF9kZWxldGVfbGluayhkZXZpY2VzLCBkZXZpY2VzKTsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9HU3RyZWFt
ZXJDYXB0dXJlRGV2aWNlTWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKaW5kZXggMmE2
NDJmM2QxZTM5MDU1ZmJmZDlmNjM2YzRkZmYzYWY5ODVlYzBiOC4uY2UxMWM0ZjNhOGMzZmYxNTZh
ODVlY2FkMzIzMmM4NWYwNzk2NzFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJlYW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL0dTdHJl
YW1lckNhcHR1cmVEZXZpY2VNYW5hZ2VyLmgKQEAgLTM4LDcgKzM4LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgQ2FwdHVyZURldmljZTo6RGV2aWNlVHlwZSBkZXZpY2VUeXBlKCkgPSAwOwogCiBw
cml2YXRlOgotICAgIHZvaWQgZGV2aWNlQWRkZWQoR1JlZlB0cjxHc3REZXZpY2U+JiYpOworICAg
IHZvaWQgYWRkRGV2aWNlKEdSZWZQdHI8R3N0RGV2aWNlPiYmKTsKICAgICB2b2lkIHJlZnJlc2hD
YXB0dXJlRGV2aWNlcygpOwogCiAgICAgR1JlZlB0cjxHc3REZXZpY2VNb25pdG9yPiBtX2Rldmlj
ZU1vbml0b3I7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cK
aW5kZXggOTg0YjE1Mzg2YjZhMWIwZTA4MWZlMDVkNTE1ZGNmMjllMGE2Yjk0Ny4uYjEyNDZhMzE2
MTBlNWQ3MDc2ZDNjNzk0YzA2MzY4NDVmZmE3OGFiYiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE4LTExLTI3ICBU
aGliYXVsdCBTYXVuaWVyICA8dHNhdW5pZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbV2ViUlRD
XVtHU3RyZWFtZXJdIE1ha2Ugc3VyZSB0byBoYXZlIHRoZSBkZWZhdWx0IG1pY3JvcGhvbmUgb24g
dGhlIHRvcCBvZiB0aGUgbGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTkyMDI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgUGhpbGlwcGUgTm9ybWFu
ZC4KKworICAgICAgICBPdGhlcndpc2Ugd2UgbWlnaHQgZW5kIHVwIHBpY2tpbmcgYSB1c2VsZXNz
IG9uZSBpbiBzb21lIGFwcGxpY2F0aW9ucworICAgICAgICAobm90IHN1cmUgd2hhdCB0aG9zZSBh
cHBsaWNhdGlvbiBkbyB0aG91Z2gpLgorCisgICAgICAgIEdTdHJlYW1lciBwYXRjaCBwcm9wb3Nl
ZCBhcyBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvZ3N0cmVhbWVyL2dzdC1wbHVnaW5z
LWdvb2QvbWVyZ2VfcmVxdWVzdHMvMzQvZGlmZnMKKworICAgICAgICAqIGZsYXRwYWsvb3JnLndl
YmtpdC5Db21tb25Nb2R1bGVzLnlhbWw6CisgICAgICAgICogZ3N0cmVhbWVyL2poYnVpbGQubW9k
dWxlczoKKyAgICAgICAgKiBnc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQt
cHVsc2UtTWFyay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaDogQWRkZWQuCisKIDIw
MTgtMTEtMTMgIFRoaWJhdWx0IFNhdW5pZXIgIDx0c2F1bmllckBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHVEtdW01pbmlCcm93c2VyXSBIYW5kbGUgRGV2aWNlIEluZm8gcGVybWlzc2lvbiByZXF1
ZXN0cwpkaWZmIC0tZ2l0IGEvVG9vbHMvZmxhdHBhay9vcmcud2Via2l0LkNvbW1vbk1vZHVsZXMu
eWFtbCBiL1Rvb2xzL2ZsYXRwYWsvb3JnLndlYmtpdC5Db21tb25Nb2R1bGVzLnlhbWwKaW5kZXgg
NmJmN2Q4NmFmYzIzY2JkMTUxZWIwNmJlOTdiYzlkMjE5ZmM3MGExNy4uMjQ3NTk2ZTA4ZGJjMmM5
ZGJhNDhmMjcyNDUwY2FkMzllMjEwNDRkMiAxMDA2NDQKLS0tIGEvVG9vbHMvZmxhdHBhay9vcmcu
d2Via2l0LkNvbW1vbk1vZHVsZXMueWFtbAorKysgYi9Ub29scy9mbGF0cGFrL29yZy53ZWJraXQu
Q29tbW9uTW9kdWxlcy55YW1sCkBAIC0xNzEsNiArMTcxLDggQEAKICAgICAgIHBhdGg6IC4uL2dz
dHJlYW1lci9wYXRjaGVzL2dzdC1wbHVnaW5zLWdvb2QtMDAxMi1tYXRyb3NrZGVtdXgtZG8tbm90
LXVzZS1NYXBJbmZvLmRhdGEtYWZ0ZXItdW5tYXBwaW5nLnBhdGNoCiAgICAgLSB0eXBlOiBwYXRj
aAogICAgICAgcGF0aDogLi4vZ3N0cmVhbWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDEz
LUF2b2lkLXdhcm5pbmctd2hlbi1yZXBvcnRpbmctYWJvdXQtZGVjcnlwdG9ycy5wYXRjaAorICAg
IC0gdHlwZTogcGF0Y2gKKyAgICAgIHBhdGg6IC4uL2dzdHJlYW1lci9wYXRjaGVzL2dzdC1wbHVn
aW5zLWdvb2QtMDAxNC1wdWxzZS1NYXJrLWRlZmF1bHQtZGV2aWNlcy1hcy1kZWZhdWx0LnBhdGNo
CiAgIGNvbmZpZy1vcHRzOgogICAgIC0gLURkaXNhYmxlX2d0a2RvYz10cnVlCiAtIG5hbWU6IHgy
NjQKZGlmZiAtLWdpdCBhL1Rvb2xzL2dzdHJlYW1lci9qaGJ1aWxkLm1vZHVsZXMgYi9Ub29scy9n
c3RyZWFtZXIvamhidWlsZC5tb2R1bGVzCmluZGV4IDYwZGUwMTk0ZjM1ZWNhZDZlZGY1NzQ3NTQ2
YTAyYzFjNDE3ZmU2ZGUuLmM3Y2Q0ZDk3YjRjNzcwNjVkNjA5NjQ2MGYwM2JhMjFlNDFmNmQ2NTUg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL2dzdHJlYW1lci9qaGJ1aWxkLm1vZHVsZXMKKysrIGIvVG9vbHMv
Z3N0cmVhbWVyL2poYnVpbGQubW9kdWxlcwpAQCAtOTAsNiArOTAsNyBAQAogICAgICAgPHBhdGNo
IGZpbGU9ImdzdC1wbHVnaW5zLWdvb2QtMDAxMS1tYXRyb3NrYS1BZGQtdGhlLVdlYk0tZW5jcnlw
dGVkLWNvbnRlbnQtc3VwcG9ydC1pbi1tLnBhdGNoIiBzdHJpcD0iMSIgLz4gPCEtLSBNZXJnZWQg
YXMgMDQzMjgyNjk1MGQ0ZDgwZmUyYjUwZmZkMzc1N2RjMDgxNTVkZTllMyAtLT4KICAgICAgIDxw
YXRjaCBmaWxlPSJnc3QtcGx1Z2lucy1nb29kLTAwMTItbWF0cm9za2RlbXV4LWRvLW5vdC11c2Ut
TWFwSW5mby5kYXRhLWFmdGVyLXVubWFwcGluZy5wYXRjaCIgc3RyaXA9IjEiIC8+IDwhLS0gTWVy
Z2VkIGFzIGRlZmFlMzUwMzU4NjYwZTU1N2M3NGU0MWE0ZmU4YThiYjMyN2U5YzggLS0+CiAgICAg
ICA8cGF0Y2ggZmlsZT0iZ3N0LXBsdWdpbnMtZ29vZC0wMDEzLUF2b2lkLXdhcm5pbmctd2hlbi1y
ZXBvcnRpbmctYWJvdXQtZGVjcnlwdG9ycy5wYXRjaCIgc3RyaXA9IjEiIC8+IDwhLS0gTWVyZ2Vk
IGFzIDU2NjY5MjA1ZWIyZDA4ODc1OTY1NzRlYWJiNzgwNmIzMWM1YmE1Y2YgLS0+CisgICAgICA8
cGF0Y2ggZmlsZT0iZ3N0LXBsdWdpbnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZp
Y2VzLWFzLWRlZmF1bHQucGF0Y2giIHN0cmlwPSIxIiAvPgogICAgIDwvYnJhbmNoPgogICA8L2F1
dG90b29scz4KIApkaWZmIC0tZ2l0IGEvVG9vbHMvZ3N0cmVhbWVyL3BhdGNoZXMvZ3N0LXBsdWdp
bnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVsdC1kZXZpY2VzLWFzLWRlZmF1bHQucGF0Y2gg
Yi9Ub29scy9nc3RyZWFtZXIvcGF0Y2hlcy9nc3QtcGx1Z2lucy1nb29kLTAwMTQtcHVsc2UtTWFy
ay1kZWZhdWx0LWRldmljZXMtYXMtZGVmYXVsdC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MzViNmQ3ZDk3
Zjg0MmI2YzNiNWRmNzU4MmZhOGRmYWM4YzFjMzZiCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMv
Z3N0cmVhbWVyL3BhdGNoZXMvZ3N0LXBsdWdpbnMtZ29vZC0wMDE0LXB1bHNlLU1hcmstZGVmYXVs
dC1kZXZpY2VzLWFzLWRlZmF1bHQucGF0Y2gKQEAgLTAsMCArMSwzMTggQEAKK0Zyb20gMzJjODMz
ZWJiNDJiOGU4ZjQ2YzVhNzJhMTZhODc0YmMwMGZjNTU1MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw
MDEKK0Zyb206IFRoaWJhdWx0IFNhdW5pZXIgPHRzYXVuaWVyQGlnYWxpYS5jb20+CitEYXRlOiBN
b24sIDI2IE5vdiAyMDE4IDEzOjQ4OjU2IC0wMzAwCitTdWJqZWN0OiBbUEFUQ0hdIHB1bHNlOiBN
YXJrIGRlZmF1bHQgZGV2aWNlcyBhcyAiZGVmYXVsdCIKKworLS0tCisgZXh0L3B1bHNlL3B1bHNl
ZGV2aWNlcHJvdmlkZXIuYyB8IDExNyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQor
IGV4dC9wdWxzZS9wdWxzZWRldmljZXByb3ZpZGVyLmggfCAgIDMgKworIDIgZmlsZXMgY2hhbmdl
ZCwgNzkgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9leHQv
cHVsc2UvcHVsc2VkZXZpY2Vwcm92aWRlci5jIGIvZXh0L3B1bHNlL3B1bHNlZGV2aWNlcHJvdmlk
ZXIuYworaW5kZXggYTE5NjRkYWIyLi45YjY2YTBlMzMgMTAwNjQ0CistLS0gYS9leHQvcHVsc2Uv
cHVsc2VkZXZpY2Vwcm92aWRlci5jCisrKysgYi9leHQvcHVsc2UvcHVsc2VkZXZpY2Vwcm92aWRl
ci5jCitAQCAtNDAsNyArNDAsNyBAQCBHU1RfREVCVUdfQ0FURUdPUllfRVhURVJOIChwdWxzZV9k
ZWJ1Zyk7CisgCisgc3RhdGljIEdzdERldmljZSAqZ3N0X3B1bHNlX2RldmljZV9uZXcgKGd1aW50
IGlkLAorICAgICBjb25zdCBnY2hhciAqIGRldmljZV9uYW1lLCBHc3RDYXBzICogY2FwcywgY29u
c3QgZ2NoYXIgKiBpbnRlcm5hbF9uYW1lLAorLSAgICBHc3RQdWxzZURldmljZVR5cGUgdHlwZSwg
R3N0U3RydWN0dXJlICogcHJvcGVydGllcyk7CisrICAgIEdzdFB1bHNlRGV2aWNlVHlwZSB0eXBl
LCBHc3RTdHJ1Y3R1cmUgKiBwcm9wZXJ0aWVzLCBnYm9vbGVhbiBpc19kZWZhdWx0KTsKKyAKKyBH
X0RFRklORV9UWVBFIChHc3RQdWxzZURldmljZVByb3ZpZGVyLCBnc3RfcHVsc2VfZGV2aWNlX3By
b3ZpZGVyLAorICAgICBHU1RfVFlQRV9ERVZJQ0VfUFJPVklERVIpOworQEAgLTY1LDYgKzY1LDEy
IEBAIGVudW0KKyB9OworIAorIAorK3R5cGVkZWYgc3RydWN0CisreworKyAgR0xpc3QgKmRldmlj
ZXM7CisrICBHc3RQdWxzZURldmljZVByb3ZpZGVyICpzZWxmOworK30gTGlzdERldmljZXNEYXRh
OworKworIHN0YXRpYyB2b2lkCisgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9jbGFzc19pbml0
IChHc3RQdWxzZURldmljZVByb3ZpZGVyQ2xhc3MgKiBrbGFzcykKKyB7CitAQCAtMTE0LDYgKzEy
MCw4IEBAIGdzdF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfZmluYWxpemUgKEdPYmplY3QgKiBvYmpl
Y3QpCisgCisgICBnX2ZyZWUgKHNlbGYtPmNsaWVudF9uYW1lKTsKKyAgIGdfZnJlZSAoc2VsZi0+
c2VydmVyKTsKKysgIGdfZnJlZSAoc2VsZi0+ZGVmYXVsdF9zaW5rX25hbWUpOworKyAgZ19mcmVl
IChzZWxmLT5kZWZhdWx0X3NvdXJjZV9uYW1lKTsKKyAKKyAgIEdfT0JKRUNUX0NMQVNTIChnc3Rf
cHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3BhcmVudF9jbGFzcyktPmZpbmFsaXplIChvYmplY3QpOwor
IH0KK0BAIC0xODYsNyArMTk0LDcgQEAgY29udGV4dF9zdGF0ZV9jYiAocGFfY29udGV4dCAqIGMs
IHZvaWQgKnVzZXJkYXRhKQorIH0KKyAKKyBzdGF0aWMgR3N0RGV2aWNlICoKKy1uZXdfc291cmNl
IChjb25zdCBwYV9zb3VyY2VfaW5mbyAqIGluZm8pCisrbmV3X3NvdXJjZSAoR3N0UHVsc2VEZXZp
Y2VQcm92aWRlciAqIHNlbGYsIGNvbnN0IHBhX3NvdXJjZV9pbmZvICogaW5mbykKKyB7CisgICBH
c3RDYXBzICpjYXBzOworICAgR3N0U3RydWN0dXJlICpwcm9wczsKK0BAIC0yMDAsMTEgKzIwOCwx
MiBAQCBuZXdfc291cmNlIChjb25zdCBwYV9zb3VyY2VfaW5mbyAqIGluZm8pCisgICBwcm9wcyA9
IGdzdF9wdWxzZV9tYWtlX3N0cnVjdHVyZSAoaW5mby0+cHJvcGxpc3QpOworIAorICAgcmV0dXJu
IGdzdF9wdWxzZV9kZXZpY2VfbmV3IChpbmZvLT5pbmRleCwgaW5mby0+ZGVzY3JpcHRpb24sCist
ICAgICAgY2FwcywgaW5mby0+bmFtZSwgR1NUX1BVTFNFX0RFVklDRV9UWVBFX1NPVVJDRSwgcHJv
cHMpOworKyAgICAgIGNhcHMsIGluZm8tPm5hbWUsIEdTVF9QVUxTRV9ERVZJQ0VfVFlQRV9TT1VS
Q0UsIHByb3BzLAorKyAgICAgICFnX3N0cmNtcDAgKGluZm8tPm5hbWUsIHNlbGYtPmRlZmF1bHRf
c291cmNlX25hbWUpKTsKKyB9CisgCisgc3RhdGljIEdzdERldmljZSAqCistbmV3X3NpbmsgKGNv
bnN0IHBhX3NpbmtfaW5mbyAqIGluZm8pCisrbmV3X3NpbmsgKEdzdFB1bHNlRGV2aWNlUHJvdmlk
ZXIgKiBzZWxmLCBjb25zdCBwYV9zaW5rX2luZm8gKiBpbmZvKQorIHsKKyAgIEdzdENhcHMgKmNh
cHM7CisgICBHc3RTdHJ1Y3R1cmUgKnByb3BzOworQEAgLTIxOCw3ICsyMjcsOCBAQCBuZXdfc2lu
ayAoY29uc3QgcGFfc2lua19pbmZvICogaW5mbykKKyAgIHByb3BzID0gZ3N0X3B1bHNlX21ha2Vf
c3RydWN0dXJlIChpbmZvLT5wcm9wbGlzdCk7CisgCisgICByZXR1cm4gZ3N0X3B1bHNlX2Rldmlj
ZV9uZXcgKGluZm8tPmluZGV4LCBpbmZvLT5kZXNjcmlwdGlvbiwKKy0gICAgICBjYXBzLCBpbmZv
LT5uYW1lLCBHU1RfUFVMU0VfREVWSUNFX1RZUEVfU0lOSywgcHJvcHMpOworKyAgICAgIGNhcHMs
IGluZm8tPm5hbWUsIEdTVF9QVUxTRV9ERVZJQ0VfVFlQRV9TSU5LLCBwcm9wcywKKysgICAgICAh
Z19zdHJjbXAwIChpbmZvLT5uYW1lLCBzZWxmLT5kZWZhdWx0X3NpbmtfbmFtZSkpOworIH0KKyAK
KyBzdGF0aWMgdm9pZAorQEAgLTIzMywxMiArMjQzLDI2IEBAIGdldF9zb3VyY2VfaW5mb19jYiAo
cGFfY29udGV4dCAqIGNvbnRleHQsCisgICAgIHJldHVybjsKKyAgIH0KKyAKKy0gIGRldiA9IG5l
d19zb3VyY2UgKGluZm8pOworKyAgZGV2ID0gbmV3X3NvdXJjZSAoc2VsZiwgaW5mbyk7CisgCisg
ICBpZiAoZGV2KQorICAgICBnc3RfZGV2aWNlX3Byb3ZpZGVyX2RldmljZV9hZGQgKEdTVF9ERVZJ
Q0VfUFJPVklERVIgKHNlbGYpLCBkZXYpOworIH0KKyAKKytzdGF0aWMgdm9pZAorK2dldF9zZXJ2
ZXJfaW5mb19jYiAocGFfY29udGV4dCAqIGNvbnRleHQsIGNvbnN0IHBhX3NlcnZlcl9pbmZvICog
aW5mbywKKysgICAgdm9pZCAqdXNlcmRhdGEpCisreworKyAgR3N0UHVsc2VEZXZpY2VQcm92aWRl
ciAqc2VsZiA9IHVzZXJkYXRhOworKworKyAgZ19mcmVlIChzZWxmLT5kZWZhdWx0X3NpbmtfbmFt
ZSk7CisrICBnX2ZyZWUgKHNlbGYtPmRlZmF1bHRfc291cmNlX25hbWUpOworKyAgc2VsZi0+ZGVm
YXVsdF9zaW5rX25hbWUgPSBnX3N0cmR1cCAoaW5mby0+ZGVmYXVsdF9zaW5rX25hbWUpOworKyAg
c2VsZi0+ZGVmYXVsdF9zb3VyY2VfbmFtZSA9IGdfc3RyZHVwIChpbmZvLT5kZWZhdWx0X3NvdXJj
ZV9uYW1lKTsKKysKKysgIHBhX3RocmVhZGVkX21haW5sb29wX3NpZ25hbCAoc2VsZi0+bWFpbmxv
b3AsIDApOworK30KKysKKyBzdGF0aWMgdm9pZAorIGdldF9zaW5rX2luZm9fY2IgKHBhX2NvbnRl
eHQgKiBjb250ZXh0LAorICAgICBjb25zdCBwYV9zaW5rX2luZm8gKiBpbmZvLCBpbnQgZW9sLCB2
b2lkICp1c2VyZGF0YSkKK0BAIC0yNTEsNyArMjc1LDcgQEAgZ2V0X3NpbmtfaW5mb19jYiAocGFf
Y29udGV4dCAqIGNvbnRleHQsCisgICAgIHJldHVybjsKKyAgIH0KKyAKKy0gIGRldiA9IG5ld19z
aW5rIChpbmZvKTsKKysgIGRldiA9IG5ld19zaW5rIChzZWxmLCBpbmZvKTsKKyAKKyAgIGlmIChk
ZXYpCisgICAgIGdzdF9kZXZpY2VfcHJvdmlkZXJfZGV2aWNlX2FkZCAoR1NUX0RFVklDRV9QUk9W
SURFUiAoc2VsZiksIGRldik7CitAQCAtMzEyLDM0ICszMzYsMzggQEAgc3RhdGljIHZvaWQKKyBn
ZXRfc291cmNlX2luZm9fbGlzdF9jYiAocGFfY29udGV4dCAqIGNvbnRleHQsIGNvbnN0IHBhX3Nv
dXJjZV9pbmZvICogaW5mbywKKyAgICAgaW50IGVvbCwgdm9pZCAqdXNlcmRhdGEpCisgeworLSAg
R0xpc3QgKipkZXZpY2VzID0gdXNlcmRhdGE7CisrICBMaXN0RGV2aWNlc0RhdGEgKmRhdGEgPSB1
c2VyZGF0YTsKKyAKKyAgIGlmIChlb2wpCisgICAgIHJldHVybjsKKyAKKy0gICpkZXZpY2VzID0g
Z19saXN0X3ByZXBlbmQgKCpkZXZpY2VzLCBnc3Rfb2JqZWN0X3JlZl9zaW5rIChuZXdfc291cmNl
IChpbmZvKSkpOworKyAgZGF0YS0+ZGV2aWNlcyA9CisrICAgICAgZ19saXN0X3ByZXBlbmQgKGRh
dGEtPmRldmljZXMsCisrICAgICAgZ3N0X29iamVjdF9yZWZfc2luayAobmV3X3NvdXJjZSAoZGF0
YS0+c2VsZiwgaW5mbykpKTsKKyB9CisgCisgc3RhdGljIHZvaWQKKyBnZXRfc2lua19pbmZvX2xp
c3RfY2IgKHBhX2NvbnRleHQgKiBjb250ZXh0LCBjb25zdCBwYV9zaW5rX2luZm8gKiBpbmZvLAor
ICAgICBpbnQgZW9sLCB2b2lkICp1c2VyZGF0YSkKKyB7CistICBHTGlzdCAqKmRldmljZXMgPSB1
c2VyZGF0YTsKKysgIExpc3REZXZpY2VzRGF0YSAqZGF0YSA9IHVzZXJkYXRhOworIAorICAgaWYg
KGVvbCkKKyAgICAgcmV0dXJuOworIAorLSAgKmRldmljZXMgPSBnX2xpc3RfcHJlcGVuZCAoKmRl
dmljZXMsIGdzdF9vYmplY3RfcmVmX3NpbmsgKG5ld19zaW5rIChpbmZvKSkpOworKyAgZGF0YS0+
ZGV2aWNlcyA9CisrICAgICAgZ19saXN0X3ByZXBlbmQgKGRhdGEtPmRldmljZXMsIGdzdF9vYmpl
Y3RfcmVmX3NpbmsgKG5ld19zaW5rIChkYXRhLT5zZWxmLAorKyAgICAgICAgICAgICAgaW5mbykp
KTsKKyB9CisgCisgc3RhdGljIEdMaXN0ICoKKyBnc3RfcHVsc2VfZGV2aWNlX3Byb3ZpZGVyX3By
b2JlIChHc3REZXZpY2VQcm92aWRlciAqIHByb3ZpZGVyKQorIHsKKyAgIEdzdFB1bHNlRGV2aWNl
UHJvdmlkZXIgKnNlbGYgPSBHU1RfUFVMU0VfREVWSUNFX1BST1ZJREVSIChwcm92aWRlcik7Cist
ICBHTGlzdCAqZGV2aWNlcyA9IE5VTEw7CisgICBwYV9tYWlubG9vcCAqbSA9IE5VTEw7CisgICBw
YV9jb250ZXh0ICpjID0gTlVMTDsKKyAgIHBhX29wZXJhdGlvbiAqbzsKKysgIExpc3REZXZpY2Vz
RGF0YSBkYXRhID0geyBOVUxMLCBzZWxmIH07CisgCisgICBpZiAoIShtID0gcGFfbWFpbmxvb3Bf
bmV3ICgpKSkKKyAgICAgcmV0dXJuIE5VTEw7CitAQCAtMzc2LDcgKzQwNCw3IEBAIGdzdF9wdWxz
ZV9kZXZpY2VfcHJvdmlkZXJfcHJvYmUgKEdzdERldmljZVByb3ZpZGVyICogcHJvdmlkZXIpCisg
ICB9CisgICBHU1RfREVCVUdfT0JKRUNUIChzZWxmLCAiY29ubmVjdGVkIik7CisgCistICBvID0g
cGFfY29udGV4dF9nZXRfc2lua19pbmZvX2xpc3QgKGMsIGdldF9zaW5rX2luZm9fbGlzdF9jYiwg
JmRldmljZXMpOworKyAgbyA9IHBhX2NvbnRleHRfZ2V0X3NpbmtfaW5mb19saXN0IChjLCBnZXRf
c2lua19pbmZvX2xpc3RfY2IsICZkYXRhKTsKKyAgIHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0
YXRlIChvKSA9PSBQQV9PUEVSQVRJT05fUlVOTklORyAmJgorICAgICAgIHBhX29wZXJhdGlvbl9n
ZXRfc3RhdGUgKG8pID09IFBBX09QRVJBVElPTl9SVU5OSU5HKSB7CisgICAgIGlmIChwYV9tYWlu
bG9vcF9pdGVyYXRlIChtLCBUUlVFLCBOVUxMKSA8IDApCitAQCAtMzg0LDcgKzQxMiw3IEBAIGdz
dF9wdWxzZV9kZXZpY2VfcHJvdmlkZXJfcHJvYmUgKEdzdERldmljZVByb3ZpZGVyICogcHJvdmlk
ZXIpCisgICB9CisgICBwYV9vcGVyYXRpb25fdW5yZWYgKG8pOworIAorLSAgbyA9IHBhX2NvbnRl
eHRfZ2V0X3NvdXJjZV9pbmZvX2xpc3QgKGMsIGdldF9zb3VyY2VfaW5mb19saXN0X2NiLCAmZGV2
aWNlcyk7CisrICBvID0gcGFfY29udGV4dF9nZXRfc291cmNlX2luZm9fbGlzdCAoYywgZ2V0X3Nv
dXJjZV9pbmZvX2xpc3RfY2IsICZkYXRhKTsKKyAgIHdoaWxlIChwYV9vcGVyYXRpb25fZ2V0X3N0
YXRlIChvKSA9PSBQQV9PUEVSQVRJT05fUlVOTklORyAmJgorICAgICAgIHBhX29wZXJhdGlvbl9n
ZXRfc3RhdGUgKG8pID09IFBBX09QRVJBVElPTl9SVU5OSU5HKSB7CisgICAgIGlmIChwYV9tYWlu
bG9vcF9pdGVyYXRlIChtLCBUUlVFLCBOVUxMKSA8IDApCitAQCAtMzk1LDE4ICs0MjMsMzggQEAg
Z3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9wcm9iZSAoR3N0RGV2aWNlUHJvdmlkZXIgKiBwcm92
aWRlcikKKyAgIHBhX2NvbnRleHRfZGlzY29ubmVjdCAoYyk7CisgICBwYV9tYWlubG9vcF9mcmVl
IChtKTsKKyAKKy0gIHJldHVybiBkZXZpY2VzOworKyAgcmV0dXJuIGRhdGEuZGV2aWNlczsKKyAK
KyBmYWlsZWQ6CisgCisgICByZXR1cm4gTlVMTDsKKyB9CisgCisrc3RhdGljIGdib29sZWFuCisr
cnVuX3B1bHNlX29wZXJhdGlvbiAoR3N0UHVsc2VEZXZpY2VQcm92aWRlciAqIHNlbGYsIHBhX29w
ZXJhdGlvbiAqIG9wZXJhdGlvbikKKyt7CisrICBpZiAoIW9wZXJhdGlvbikKKysgICAgcmV0dXJu
IEZBTFNFOworKworKyAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUgKG9wZXJhdGlvbikg
PT0gUEFfT1BFUkFUSU9OX1JVTk5JTkcpIHsKKysgICAgaWYgKCFQQV9DT05URVhUX0lTX0dPT0Qg
KHBhX2NvbnRleHRfZ2V0X3N0YXRlICgoc2VsZi0+Y29udGV4dCkpKSkgeworKyAgICAgIHBhX29w
ZXJhdGlvbl9jYW5jZWwgKG9wZXJhdGlvbik7CisrICAgICAgcGFfb3BlcmF0aW9uX3VucmVmIChv
cGVyYXRpb24pOworKyAgICAgIHJldHVybiBGQUxTRTsKKysgICAgfQorKworKyAgICBwYV90aHJl
YWRlZF9tYWlubG9vcF93YWl0IChzZWxmLT5tYWlubG9vcCk7CisrICB9CisrCisrICBwYV9vcGVy
YXRpb25fdW5yZWYgKG9wZXJhdGlvbik7CisrCisrICByZXR1cm4gVFJVRTsKKyt9CisrCisgc3Rh
dGljIGdib29sZWFuCisgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9zdGFydCAoR3N0RGV2aWNl
UHJvdmlkZXIgKiBwcm92aWRlcikKKyB7CisgICBHc3RQdWxzZURldmljZVByb3ZpZGVyICpzZWxm
ID0gR1NUX1BVTFNFX0RFVklDRV9QUk9WSURFUiAocHJvdmlkZXIpOworLSAgcGFfb3BlcmF0aW9u
ICppbml0aWFsX29wZXJhdGlvbjsKKyAKKyAgIGlmICghKHNlbGYtPm1haW5sb29wID0gcGFfdGhy
ZWFkZWRfbWFpbmxvb3BfbmV3ICgpKSkgeworICAgICBHU1RfRVJST1JfT0JKRUNUIChzZWxmLCAi
Q291bGQgbm90IGNyZWF0ZSBwdWxzZWF1ZGlvIG1haW5sb29wIik7CitAQCAtNDYyLDI3ICs1MTAs
MTggQEAgZ3N0X3B1bHNlX2RldmljZV9wcm92aWRlcl9zdGFydCAoR3N0RGV2aWNlUHJvdmlkZXIg
KiBwcm92aWRlcikKKyAgIHBhX2NvbnRleHRfc3Vic2NyaWJlIChzZWxmLT5jb250ZXh0LAorICAg
ICAgIFBBX1NVQlNDUklQVElPTl9NQVNLX1NPVVJDRSB8IFBBX1NVQlNDUklQVElPTl9NQVNLX1NJ
TkssIE5VTEwsIE5VTEwpOworIAorLSAgaW5pdGlhbF9vcGVyYXRpb24gPSBwYV9jb250ZXh0X2dl
dF9zb3VyY2VfaW5mb19saXN0IChzZWxmLT5jb250ZXh0LAorLSAgICAgIGdldF9zb3VyY2VfaW5m
b19jYiwgc2VsZik7CistICB3aGlsZSAocGFfb3BlcmF0aW9uX2dldF9zdGF0ZSAoaW5pdGlhbF9v
cGVyYXRpb24pID09IFBBX09QRVJBVElPTl9SVU5OSU5HKSB7CistICAgIGlmICghUEFfQ09OVEVY
VF9JU19HT09EIChwYV9jb250ZXh0X2dldF9zdGF0ZSAoKHNlbGYtPmNvbnRleHQpKSkpCistICAg
ICAgZ290byBjYW5jZWxfYW5kX2ZhaWw7CistCistICAgIHBhX3RocmVhZGVkX21haW5sb29wX3dh
aXQgKHNlbGYtPm1haW5sb29wKTsKKy0gIH0KKy0gIHBhX29wZXJhdGlvbl91bnJlZiAoaW5pdGlh
bF9vcGVyYXRpb24pOworKyAgaWYgKCFydW5fcHVsc2Vfb3BlcmF0aW9uIChzZWxmLCBwYV9jb250
ZXh0X2dldF9zZXJ2ZXJfaW5mbyAoc2VsZi0+Y29udGV4dCwKKysgICAgICAgICAgICAgIGdldF9z
ZXJ2ZXJfaW5mb19jYiwgc2VsZikpKQorKyAgICBnb3RvIHVubG9ja19hbmRfZmFpbDsKKyAKKy0g
IGluaXRpYWxfb3BlcmF0aW9uID0gcGFfY29udGV4dF9nZXRfc2lua19pbmZvX2xpc3QgKHNlbGYt
PmNvbnRleHQsCistICAgICAgZ2V0X3NpbmtfaW5mb19jYiwgc2VsZik7CistICBpZiAoIWluaXRp
YWxfb3BlcmF0aW9uKQorKyAgaWYgKCFydW5fcHVsc2Vfb3BlcmF0aW9uIChzZWxmLAorKyAgICAg
ICAgICBwYV9jb250ZXh0X2dldF9zb3VyY2VfaW5mb19saXN0IChzZWxmLT5jb250ZXh0LCBnZXRf
c291cmNlX2luZm9fY2IsCisrICAgICAgICAgICAgICBzZWxmKSkpCisgICAgIGdvdG8gdW5sb2Nr
X2FuZF9mYWlsOworLSAgd2hpbGUgKHBhX29wZXJhdGlvbl9nZXRfc3RhdGUgKGluaXRpYWxfb3Bl
cmF0aW9uKSA9PSBQQV9PUEVSQVRJT05fUlVOTklORykgeworLSAgICBpZiAoIVBBX0NPTlRFWFRf
SVNfR09PRCAocGFfY29udGV4dF9nZXRfc3RhdGUgKChzZWxmLT5jb250ZXh0KSkpKQorLSAgICAg
IGdvdG8gY2FuY2VsX2FuZF9mYWlsOworIAorLSAgICBwYV90aHJlYWRlZF9tYWlubG9vcF93YWl0
IChzZWxmLT5tYWlubG9vcCk7CistICB9CistICBwYV9vcGVyYXRpb25fdW5yZWYgKGluaXRpYWxf
b3BlcmF0aW9uKTsKKysgIGlmICghcnVuX3B1bHNlX29wZXJhdGlvbiAoc2VsZiwgcGFfY29udGV4
dF9nZXRfc2lua19pbmZvX2xpc3QgKHNlbGYtPmNvbnRleHQsCisrICAgICAgICAgICAgICBnZXRf
c2lua19pbmZvX2NiLCBzZWxmKSkpCisrICAgIGdvdG8gdW5sb2NrX2FuZF9mYWlsOworIAorICAg
cGFfdGhyZWFkZWRfbWFpbmxvb3BfdW5sb2NrIChzZWxmLT5tYWlubG9vcCk7CisgCitAQCAtNDk1
LDExICs1MzQsNiBAQCB1bmxvY2tfYW5kX2ZhaWw6CisgCisgbWFpbmxvb3BfZmFpbGVkOgorICAg
cmV0dXJuIEZBTFNFOworLQorLWNhbmNlbF9hbmRfZmFpbDoKKy0gIHBhX29wZXJhdGlvbl9jYW5j
ZWwgKGluaXRpYWxfb3BlcmF0aW9uKTsKKy0gIHBhX29wZXJhdGlvbl91bnJlZiAoaW5pdGlhbF9v
cGVyYXRpb24pOworLSAgZ290byB1bmxvY2tfYW5kX2ZhaWw7CisgfQorIAorIHN0YXRpYyB2b2lk
CitAQCAtNjExLDcgKzY0NSw3IEBAIGdzdF9wdWxzZV9kZXZpY2VfcmVjb25maWd1cmVfZWxlbWVu
dCAoR3N0RGV2aWNlICogZGV2aWNlLCBHc3RFbGVtZW50ICogZWxlbWVudCkKKyBzdGF0aWMgR3N0
RGV2aWNlICoKKyBnc3RfcHVsc2VfZGV2aWNlX25ldyAoZ3VpbnQgZGV2aWNlX2luZGV4LCBjb25z
dCBnY2hhciAqIGRldmljZV9uYW1lLAorICAgICBHc3RDYXBzICogY2FwcywgY29uc3QgZ2NoYXIg
KiBpbnRlcm5hbF9uYW1lLCBHc3RQdWxzZURldmljZVR5cGUgdHlwZSwKKy0gICAgR3N0U3RydWN0
dXJlICogcHJvcHMpCisrICAgIEdzdFN0cnVjdHVyZSAqIHByb3BzLCBnYm9vbGVhbiBpc19kZWZh
dWx0KQorIHsKKyAgIEdzdFB1bHNlRGV2aWNlICpnc3RkZXY7CisgICBjb25zdCBnY2hhciAqZWxl
bWVudCA9IE5VTEw7CitAQCAtNjM2LDcgKzY3MCw3IEBAIGdzdF9wdWxzZV9kZXZpY2VfbmV3IChn
dWludCBkZXZpY2VfaW5kZXgsIGNvbnN0IGdjaGFyICogZGV2aWNlX25hbWUsCisgICAgICAgYnJl
YWs7CisgICB9CisgCistCisrICBnc3Rfc3RydWN0dXJlX3NldCAocHJvcHMsICJpcy1kZWZhdWx0
IiwgR19UWVBFX0JPT0xFQU4sIGlzX2RlZmF1bHQsIE5VTEwpOworICAgZ3N0ZGV2ID0gZ19vYmpl
Y3RfbmV3IChHU1RfVFlQRV9QVUxTRV9ERVZJQ0UsCisgICAgICAgImRpc3BsYXktbmFtZSIsIGRl
dmljZV9uYW1lLCAiY2FwcyIsIGNhcHMsICJkZXZpY2UtY2xhc3MiLCBrbGFzcywKKyAgICAgICAi
aW50ZXJuYWwtbmFtZSIsIGludGVybmFsX25hbWUsICJwcm9wZXJ0aWVzIiwgcHJvcHMsIE5VTEwp
OworQEAgLTY0NCw2ICs2NzgsNyBAQCBnc3RfcHVsc2VfZGV2aWNlX25ldyAoZ3VpbnQgZGV2aWNl
X2luZGV4LCBjb25zdCBnY2hhciAqIGRldmljZV9uYW1lLAorICAgZ3N0ZGV2LT50eXBlID0gdHlw
ZTsKKyAgIGdzdGRldi0+ZGV2aWNlX2luZGV4ID0gZGV2aWNlX2luZGV4OworICAgZ3N0ZGV2LT5l
bGVtZW50ID0gZWxlbWVudDsKKysgIGdzdGRldi0+aXNfZGVmYXVsdCA9IGlzX2RlZmF1bHQ7Cisg
CisgICBnc3Rfc3RydWN0dXJlX2ZyZWUgKHByb3BzKTsKKyAgIGdzdF9jYXBzX3VucmVmIChjYXBz
KTsKK2RpZmYgLS1naXQgYS9leHQvcHVsc2UvcHVsc2VkZXZpY2Vwcm92aWRlci5oIGIvZXh0L3B1
bHNlL3B1bHNlZGV2aWNlcHJvdmlkZXIuaAoraW5kZXggMDg5MmFkNTg2Li43YmNkMWJjNDcgMTAw
NjQ0CistLS0gYS9leHQvcHVsc2UvcHVsc2VkZXZpY2Vwcm92aWRlci5oCisrKysgYi9leHQvcHVs
c2UvcHVsc2VkZXZpY2Vwcm92aWRlci5oCitAQCAtNTAsNiArNTAsOCBAQCBzdHJ1Y3QgX0dzdFB1
bHNlRGV2aWNlUHJvdmlkZXIgeworIAorICAgZ2NoYXIgKnNlcnZlcjsKKyAgIGdjaGFyICpjbGll
bnRfbmFtZTsKKysgIGdjaGFyICpkZWZhdWx0X3NvdXJjZV9uYW1lOworKyAgZ2NoYXIgKmRlZmF1
bHRfc2lua19uYW1lOworIAorICAgcGFfdGhyZWFkZWRfbWFpbmxvb3AgKm1haW5sb29wOworICAg
cGFfY29udGV4dCAqY29udGV4dDsKK0BAIC04NCw2ICs4Niw3IEBAIHN0cnVjdCBfR3N0UHVsc2VE
ZXZpY2UgeworICAgR3N0UHVsc2VEZXZpY2VUeXBlIHR5cGU7CisgICBndWludCAgICAgICAgICAg
ICBkZXZpY2VfaW5kZXg7CisgICBnY2hhciAgICAgICAgICAgICppbnRlcm5hbF9uYW1lOworKyAg
Z2Jvb2xlYW4gICAgICAgICBpc19kZWZhdWx0OworICAgY29uc3QgZ2NoYXIgICAgICAqZWxlbWVu
dDsKKyB9OworIAorLS0gCisyLjE5LjEKKwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>